Skill: Text hygiene

FREE with proof-of-work · or $0.009 in USDC · POST /api/skill/text-hygiene

Turn a wall of dirty text - chat logs, scraped pages, user-generated content, log dumps - into something safe to store, search, and pipe into the next step. Send POST /api/skill/text-hygiene with the required field text and pay $0.009 per call over x402 or MPP, or call it free by solving a proof-of-work challenge. It returns a JSON object with pack, args, steps and summary.

Measure first, redact PII before anything else touches the data, then dedupe, sort, extract entities, surface keywords, and grade the readability of what's left. Text hygiene skill pack: one x402 payment runs 7 underlying tools (text-stats, redact, dedupe-lines, sort-lines, extract-entities, keywords, readability); partial-success per step.

Category: Skill packs · Tags: skill-pack workflow text-hygiene · Pack overview

TRY IN PLAYGROUND →

Parameters

NameTypeRequiredDescription
textstringyesThe raw text dump to clean (max 500KB) Also accepted as content, str, string, input, body, data.

Example request

curl -i -X POST https://agent402.tools/api/skill/text-hygiene \
  -H "Content-Type: application/json" \
  -d '{"text":"support log dump"}'

Without payment this returns HTTP 402 Payment Required with the exact price for skill-text-hygiene; any x402 v2 or MPP client pays it and retries.

Example response

{
  "pack": "text-hygiene",
  "args": {
    "text": "support log dump"
  },
  "steps": [
    {
      "slug": "text-stats",
      "ok": true,
      "result": {}
    },
    {
      "slug": "redact",
      "ok": true,
      "result": {}
    },
    {
      "slug": "dedupe-lines",
      "ok": true,
      "result": {}
    },
    {
      "slug": "sort-lines",
      "ok": true,
      "result": {}
    },
    {
      "slug": "extract-entities",
      "ok": true,
      "result": {}
    },
    {
      "slug": "keywords",
      "ok": true,
      "result": {}
    },
    {
      "slug": "readability",
      "ok": true,
      "result": {}
    }
  ],
  "summary": "7/7 steps succeeded"
}
FieldTypeAlways presentIn the example
packstringyestext-hygiene
argsobjectyes1 field: text
stepsarray of objectsyes7 items in the example
summarystringyes7/7 steps succeeded

From an MCP client

catalog.call {
  "slug": "skill-text-hygiene",
  "params": {
    "text": "support log dump"
  }
}

On the hosted connector at https://agent402.tools/mcp, catalog.call runs skill-text-hygiene free (rate-limited, no wallet). Local install: npx -y agent402-mcp.

Errors and behavior

Paid call (JavaScript agent)

import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
client.setSpendControls?.(false); // keep your own spending ceiling in code
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);

const res = await payFetch("https://agent402.tools/api/skill/text-hygiene", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    "text": "support log dump"
  }),
});

No wallet? Pay with compute

Fetch a challenge, solve the sha256 puzzle (16 leading zero bits, a fraction of a second of CPU), and resend with the X-Pow-Solution header:

import { createHash } from "node:crypto";
const lz = (b) => { let t = 0; for (const x of b) { if (!x) { t += 8; continue; } t += Math.clz32(x) - 24; break; } return t; };
const c = await (await fetch("https://agent402.tools/api/pow/challenge?slug=skill-text-hygiene")).json();
let n = 0;
while (lz(createHash("sha256").update(c.challenge + ":" + n).digest()) < c.difficulty) n++;
await fetch("https://agent402.tools/api/skill/text-hygiene", { method: "POST", headers: { "X-Pow-Solution": c.token + ":" + n, "Content-Type": "application/json" }, body: JSON.stringify({"text":"support log dump"}) });

Related tools

Skill: Convert anything to markdown

$0.026 · POST /api/skill/any-to-markdown

Convert anything at a URL - HTML, PDF, or an image - to clean markdown. The 'I have a URL but it might be any content-ty…

Skill: API health check

$0.005 · POST /api/skill/api-health

Is this API endpoint healthy? Liveness check, response headers, and TLS certificate status in one pass. API health check…

Skill: API investigation

$0.017 · POST /api/skill/api-investigation

Point at an unknown API endpoint and figure out how to use it: auth scheme, content type, version, rate limits, OpenAPI/…

Skill: Article digest

$0.09 · POST /api/skill/article-digest

Quick research brief on any topic - web search results plus an AI-generated answer in one pass. Article digest skill pac…

Skill: Brand protection

$0.018 · POST /api/skill/brand-protection

Is this domain legitimate? WHOIS age, DNS resolution, scam/phishing search results, and HTTP headers for a quick trust a…

Skill: Cheapest rail right now

$0.009 · POST /api/skill/cheapest-rail

Where should an agent transact this minute? Live gas on Ethereum + every major L2 side by side, Base gas tiers, a fee es…