Clean Text Toolkit
Local text cleanup and inspection toolkit. Extract structured items (URLs, emails, phones, IPs, dates, hashtags, money), redact PII (email/phone/credit-card-... Skill: Clean Text Toolkit Owner: gopendrasharma89-tech Summary: Local text cleanup and inspection toolkit. Extract structured items (URLs, emails, phones, IPs, dates, hashtags, money), redact PII (email/phone/credit-card-... Tags: agent:0.4.0, dedupe:0.1.0, diff:0.1.0, extract:0.4.0, html:0.4.0, jinja-free:0.3.0, latest:0.4.0, links:0.4.0, markdown:0.3.0, normalize:0.1.0, pii:0.4.0, redact:0.4.0, regex:0.4.0, replace
Rank
62
Safety
84
Downloads
1.1k
Updated
Oct 11, 2026
Version
0.4.0
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 11, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 11, 2026
- Adoption signal
- 1.1K downloadsadoption · observed Oct 11, 2026
- Latest release
- 0.4.0release · observed May 29, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s17cp87fy279ggwne1mqcb6675843tdy:clean-text-toolkit- Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-gopendrasharma89-tech-clean-text-toolkit/snapshot"
Documentation
CLAWHUB
65,638 characters of source documentation, loaded on request.
Extracted files
4 files captured from the source.
SKILL.md
---
name: clean-text-toolkit
description: Local text cleanup and inspection toolkit. Extract structured items (URLs, emails, phones, IPs, dates, hashtags, money), redact PII (email/phone/credit-card-with-Luhn/SSN/JWT/AWS keys/UUIDs), normalize (BOM/CRLF/smart-quotes/whitespace/tabs/case/Unicode NFC), line utilities (count/dedupe/sort/shuffle/head/tail), word-frequency stats with stopwords, three-mode text diffs (unified/side/HTML), no-Jinja2 template renderer with filters and defaults, URL-safe slug generator, and Markdown converter (strip-to-text / minimal HTML / extract headings/links/images/code/lists). Pure Python 3 standard library, no third-party dependencies, no remote calls.
license: MIT
metadata: {"openclaw":{"requires":{"bins":["python3"]},"primaryEnv":null,"homepage":"https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit"}}
---
# clean-text-toolkit
v0.4.0
A small, honest local toolkit for the work agents end up doing constantly: read some text someone sent you, find the structured bits, clean it up, redact the secrets, and forward it downstream. Built on Python 3 standard library only. No `pandas`, no `nltk`, no pip installs, no remote calls.
This skill is the companion to [`clean-csv-toolkit`](https://clawhub.ai/gopendrasharma89-tech/clean-csv-toolkit): that one handles structured tabular data, this one handles unstructured text.
## What this skill does
- `scripts/extract.py` — pull structured items out of any text file. Kinds: `url`, `email`, `phone`, `ipv4`, `ipv6`, `hashtag`, `mention`, `hex-color`, `money`, `iso-date`. Output to stdout (one-per-line or JSON), or to a `.txt` / `.json` / `.jsonl` file. Optional `--unique`, `--sort`, `--with-line` (prefix with the source line number).
- `scripts/normalize.py` — clean up messy text. Chainable transforms applied in command-line order: `--trim`, `--collapse-spaces`, `--strip-blank`, `--to-unix`, `--to-crlf`, `--dehyphenate` (rejoin OCR/PDF hyphenated line-breaks), `--unsmart` (smart quotes / em-dashes → ASCII), `--strip-bom`, `--strip-zwsp` (zero-width spaces and joiners), `--tabs-to-spaces N`, `--spaces-to-tabs N`, `--lower` / `--upper` / `--title`, `--normalize-unicode NFC|NFD|NFKC|NFKD`.
- `scripts/redact.py` — anonymize text by replacing PII-like patterns with placeholder tokens. Kinds: `email`, `phone`, `ipv4`, `ipv6`, `url`, `credit-card` (with Luhn validation to suppress false positives), `ssn-us`, `uuid`, `hex-token` (32+ hex chars, typical for tokens / hashes), `aws-access-key` (AKIA…), `jwt` (three base64url segments with the `eyJ` header). `--keep-counts` makes the same value always get the same placeholder; `--preserve-length` pads/truncates the placeholder to the original length.
- `scripts/lines.py` — line-oriented utilities. `--op count | dedupe | sort | shuffle | head | tail`. Streams `count`, `head`, `tail`. `dedupe` and `sort` are O(N) memory in the number of lines, but each line is small so 1 M lines is fine on a laptop. `--case-insensitive`, `--keep first_meta.json
{
"ownerId": "kn7fkwsa5knkdkkachj1p7rwr9843xts",
"slug": "clean-text-toolkit",
"version": "0.4.0",
"publishedAt": 1780068349206
}skill-card.md
## Description: Local text cleanup and inspection toolkit that helps agents extract structured items, redact PII-like patterns, normalize text, inspect lines and word counts, compare text, render simple templates, generate slugs, and process Markdown or HTML using Python 3 standard library scripts with no remote calls. This skill is ready for commercial/non-commercial use. ## Publisher: [gopendrasharma89-tech](https://clawhub.ai/user/gopendrasharma89-tech) ### License/Terms of Use: MIT ## Use Case: Developers and agents use this skill to clean, inspect, transform, redact, and compare local text files before passing the results into downstream workflows. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: HTML sanitization and Markdown-to-HTML output may not make untrusted content safe for browser or web application use. Mitigation: Use the toolkit for local text processing, and pass untrusted HTML through a maintained allowlist sanitizer before rendering it in a browser or web app. Risk: The scripts can write or overwrite caller-specified output paths. Mitigation: Review output paths before execution and run commands in a working directory where overwrites are acceptable. ## Reference(s): - [Clean Text Toolkit ClawHub skill page](https://clawhub.ai/gopendrasharma89-tech/skills/clean-text-toolkit) - [Clean Text Toolkit OpenClaw homepage](https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit) - [Clean CSV Toolkit companion skill](https://clawhub.ai/gopendrasharma89-tech/clean-csv-toolkit) - [OpenClaw Prompt Shield companion skill](https://clawhub.ai/gopendrasharma89-tech/openclaw-prompt-shield) ## Skill Output: **Output Type(s):** [Text, Markdown, Code, Shell commands, Configuration] **Output Format:** [Markdown with inline shell commands and local script guidance; scripts can produce plain text, JSON, JSONL, TSV, HTML, and diff output.] **Output Parameters:** [1D] **Other Properties Related to Output:** [Outputs are local file or stdout results from Python 3 standard library utilities; some operations write or overwrite caller-specified paths.] ## Skill Version(s): 0.4.0 (source: server release metadata and SKILL.md body) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
LICENSE
MIT License Copyright (c) 2026 gopendrasharma89-tech Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/gopendrasharma89-tech/skills/clean-text-toolkit",
"sourceUrl": "https://clawhub.ai/gopendrasharma89-tech/skills/clean-text-toolkit",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T06:50:57.039Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-gopendrasharma89-tech-clean-text-toolkit/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-gopendrasharma89-tech-clean-text-toolkit/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-11T06:50:57.039Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.1K downloads",
"href": "https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit",
"sourceUrl": "https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T06:50:57.039Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "0.4.0",
"href": "https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit",
"sourceUrl": "https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-05-29T15:25:49.206Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-gopendrasharma89-tech-clean-text-toolkit/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-gopendrasharma89-tech-clean-text-toolkit/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 0.4.0",
"description": "v0.4.0: Add scripts/htmlstrip.py for AI agents that scrape web pages. Three modes - text (HTML to plain readable text, drops script/style content, preserves line breaks at block tags, --keep-links renders anchor as 'text (href)'), html (sanitize - removes script/style/iframe/object/embed/form/input tags + all on* event-handler attributes + inline style attrs, keeps rest of structure intact), extract (pull links/images/headings/tables as JSON/JSONL/TSV with full table cell data). Built on stdlib html.parser, no BeautifulSoup, no lxml. Designed for the single most common agent need: turn raw scraped HTML into something useful in one command. Same safe-path policy and 0/1/2 exit-code contract.",
"href": "https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit",
"sourceUrl": "https://clawhub.ai/gopendrasharma89-tech/clean-text-toolkit",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-05-29T15:25:49.206Z",
"isPublic": true
}
]
}Record generated Oct 11, 2026.
