{"openapi":"3.1.0","info":{"title":"AISkills402","version":"1.0.0","summary":"Tested AI agent skill files (SKILL.md), bought once over x402.","description":"What is sold is the SKILL.md file itself, as a one-time purchase in USDC on Base: you keep it forever, re-download it free and get new versions free. No account, no API key.","x-guidance":"Buy a skill file: GET /v1/skills lists skills with prices and buy_url. GET the buy_url with no payment header: the answer is 402 with a PAYMENT-REQUIRED header (base64 JSON, x402 v2). Sign accepts[0] with an x402 client (for example x402HTTPClient from @x402/core/http plus @x402/evm) and repeat the SAME GET with the PAYMENT-SIGNATURE header. The 200 answer is JSON: file.content (the SKILL.md text), sha256, receipt and redownload.token. The token is shown ONCE: store it; GET /v1/purchases/{token} re-downloads for free, including new versions. Every single-skill price is under the default $1 per-payment cap of @x402/core clients. Packs: choose any 10 to 200 skills and pay once with a discount (10+ skills: 20% off, 30+ skills: 30% off). GET https://api.aiskills402.com/v1/packs/file?skills=slug-a,slug-b,... with no payment header: the answer is a 402 with the pack price (the sum of the skill prices minus the discount, rounded down). Pay it exactly like a single skill. The 200 answer lists every skill with its file and its OWN redownload token. A pack above $1.00 needs the client cap raised (spendControls.maxAmountPerPayment) or two packs of at least 10. Skills you already own are charged again in this release. Paid API calls: POST /v1/run/{slug} {input}; list: GET /v1/run. If a 402 body or /health says selling:false, or /health says payment.paused:true, the till is closed: do not sign. Refusals carry a snake_case `error` code: branch on the code, never on the prose."},"servers":[{"url":"https://api.aiskills402.com"}],"externalDocs":{"description":"Documentation","url":"https://aiskills402.com/docs"},"x-discovery":{"ownershipProofs":["0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"]},"tags":[{"name":"payment","description":"Buying a skill file, or one paid API call of a skill, with x402"},{"name":"public","description":"Open endpoints, no payment and no key"}],"paths":{"/v1/skills/pr-description-from-diff/file":{"get":{"operationId":"buy_pr_description_from_diff","summary":"Buy the PR Description From a Diff skill file (SKILL.md)","description":"Writes a pull request title and description from a pasted unified diff, as Markdown only - a title line of at most 72 characters, then four fixed sections - Summary, Changes, Tests and Risks - where every file the diff touches is named once, including renames, deletions, binary files, mode changes, lockfiles and formatting-only edits, and nothing is claimed that the diff does not show. It describes what the hunks change and leaves out a reason, a speed gain, a security fix or a test result unless the author's note supplies it, flags what can break callers, links an issue only when one is given, never copies a secret into the text, treats a note addressed to the AI inside a code comment as data, and says so when the diff is cut off. Use when asked to write a pr description, pull request body or merge request text from a git diff or a patch. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/cloudflare-evidence-check/file":{"get":{"operationId":"buy_cloudflare_evidence_check","summary":"Buy the Cloudflare Evidence Check skill file (SKILL.md)","description":"Judges whether a check someone ran on a Cloudflare-hosted site really proves what they claim, and answers as JSON with a verdict, the reason and the one check that would decide. Knows the instruments that answer for the wrong thing - the command-line object read that serves a cached copy after a delete, a delivery log that records neither test mail, a zero-row log search that looks the same as code that never ran, a local migration run, a staging secret, the free preview subdomain of a Worker that is not a zone, a size counter that prints zero on Windows, a character count that counts bytes, a robots file served from the edge cache - and the checks that do prove it. Use when an agent says deleted, delivered, applied, enabled, set on production or never ran on Cloudflare work, and you need to know whether its evidence supports that. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.07"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/shorten-to-limit/file":{"get":{"operationId":"buy_shorten_to_limit","summary":"Buy the Shorten to a Limit skill file (SKILL.md)","description":"Cuts a text down to a stated limit (words or characters) by editing the author's own text, keeping every number, name, date, address and qualifier of every fact that stays, and counting the result so it is under the limit. Use when a text must fit a field with a maximum length, such as a social post, a notification, a slide line, an abstract, a form box or a short description, or when asked to cut, trim or shorten a text to N words or N characters. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/product-description/file":{"get":{"operationId":"buy_product_description","summary":"Buy the Product Description From a Spec Sheet skill file (SKILL.md)","description":"Writes shop product copy (title, short description, bullets, long description) from a specification sheet and nothing else, in the sheet's language. Every figure keeps its unit and its qualifier, no superlatives or unsupported claims, and values that contradict each other are reported instead of chosen. Use when asked to write a product description, product page text, catalogue entry or marketplace listing copy from a spec sheet, in any language. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/job-description-from-notes/file":{"get":{"operationId":"buy_job_description_from_notes","summary":"Buy the Job Description From Notes: Gaps Marked, Nothing Invented skill file (SKILL.md)","description":"Turns a hiring manager's rough notes into a job post with fixed sections (title, about the role, responsibilities, requirements, nice to have, location and working model, pay, process) in the language of the notes. Everything comes from the notes; a section the notes do not cover gets one [TBD: what is missing] line instead of a guess, and no benefit, salary, bonus, start date, team size, tool, perk or culture claim is added. Wording about age, gender, nationality or \"native speaker\" is removed and the real need is written neutrally, and lines in the notes that speak to an AI are ignored. Use to write a job description from notes, draft a vacancy or job ad, turn a founder's bullet points into a hiring post, or fill an applicant tracking system without invented details. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/screenshot-evidence-check/file":{"get":{"operationId":"buy_screenshot_evidence_check","summary":"Buy the Screenshot Evidence Check skill file (SKILL.md)","description":"Reads a description of how a web page was captured or measured - a headless browser capture with a window size, a tall screenshot, a document width reading, a local Lighthouse run, a PageSpeed Insights run, an automation session that has been open for hours, a command-line download size on Windows - and says what that evidence proves, what it cannot prove and the one measurement that would decide, answered as JSON with a verdict. Knows the ways the capture itself produces the symptom - headless windows under about 500 pixels that lay out wider and crop the picture, no touch emulation behind a window-size flag, blank images in very tall captures, scroll-reveal sections caught before they appear, a width reading that stays clean while a container clips, scores that move with machine load, a long automation session that stops running page scripts, a download size of zero at a successful status. Use when an agent or a person is about to report that a page is broken or fixed from a screenshot, a score or a command-line reading. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/chain-evidence-check/file":{"get":{"operationId":"buy_chain_evidence_check","summary":"Buy the Chain Evidence Check skill file (SKILL.md)","description":"Judges whether an on-chain observation really proves a claim about a payment, a wallet or an RPC endpoint on an EVM chain, and answers as JSON with a binary verdict, the reason and the one check that would decide. Knows the readings that answer for the wrong thing - a null transaction receipt seconds after settlement, a block explorer that indexes a minute late and a balance view that lags its own transfer list, a public RPC endpoint that refuses receipts with an error or with an HTML page behind status 200, a reader that returns zero when the call failed, a chain of endpoints that says ok when two of three are dead, a transfer of the right amount that matches three open orders, a payment header copied from public calldata - and the readings that do prove it. Use when an agent says paid, settled, not found, reverted, empty, missing funds or endpoint dead from chain data and you need to know whether its evidence supports that. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/yaml-repair/file":{"get":{"operationId":"buy_yaml_repair","summary":"Buy the YAML Repair: Fix Broken YAML, Keep Every Value skill file (SKILL.md)","description":"Repairs broken YAML and Markdown front matter so a program can parse it, without changing any value's text or type, and answers with the YAML only, no code fence. Fixes tabs used as indentation, indentation that fits no parent, a missing closing quote or bracket, values that need quotes (a colon inside, a leading star or at sign), and output cut off in the middle, where the cut value is kept as cut and never completed. Yes, no, on, off and NO stay strings, 1,250 stays a string, 1.10 and 01234 stay as written. Duplicate keys, input that is not YAML, and input with two readings get a fixed one-line answer instead of a guess. Use when a tool, an API or another model returned YAML or front matter that does not parse, or when asked to fix, clean up or close invalid or truncated YAML. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/env-file-repair/file":{"get":{"operationId":"buy_env_file_repair","summary":"Buy the Env File Repair: Fix .env and INI Syntax, Keep Values skill file (SKILL.md)","description":"Repairs a broken .env file or INI file so the program that loads it reads every variable with the value its author meant, and answers with the file only, no code fence. Quotes a value that holds a hash sign or must keep its leading or trailing spaces, closes a quote that was left open, joins a key pasted over several lines, picks the quote style that keeps backslashes and mixed quotes intact, and leaves numbers such as 007 and 1.10, empty values and placeholders exactly as written. A key set twice to different values, a bare line that may be a lost key, a quote with two ways to close, and input that is JSON or another format get a one-line CANNOT REPAIR answer instead of a guess. Use when a config pasted from chat or model output loads wrongly, cuts a value short, or fails to parse, or when asked to fix, clean up or close a broken env file. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/toml-repair/file":{"get":{"operationId":"buy_toml_repair","summary":"Buy the TOML Repair: Fix Broken TOML, Keep Every Value skill file (SKILL.md)","description":"Repairs TOML 1.0 that does not parse (pyproject, Cargo manifests, Worker config files, tool settings) without changing any value's text or type, and answers with the TOML only, no code fence. Fixes unquoted strings, keys with spaces, a missing equals sign, an unclosed quote, bracket or table header, backslashes in Windows paths, numbers with leading zeros, decimal commas, slash dates, a multi-line inline table, and chat text or a fence around the file. A version such as 1.10 is kept as the text 1.10 when the other versions in the file are strings. A table defined twice, a dotted key that writes into a table a header already defined, a key given twice with different values, input that is INI and not TOML, and input with two readings get one line starting with CANNOT REPAIR instead of a guess. Use when a tool, an API or another model returned broken TOML that ends in a TOML parse error, or when asked to fix or clean up invalid TOML. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/bulgarian-transliteration/file":{"get":{"operationId":"buy_bulgarian_transliteration","summary":"Buy the Bulgarian Transliteration (Official Latin Spelling) skill file (SKILL.md)","description":"Turns Bulgarian Cyrillic text into Latin letters by the official Bulgarian system, the one the Transliteration Act of 2009 makes mandatory for names, addresses, passports, forms and place names. One letter table, the word-final ия written ia, the country written Bulgaria, ъ written a, щ written sht, and every digit, punctuation mark, Latin word and line break kept byte for byte. Also makes URL slugs and flags letters that Bulgarian does not have. Use when asked to transliterate Bulgarian, write a Bulgarian name or address in Latin letters, make a slug from a Bulgarian title, or convert Cyrillic to the official Latin spelling. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/image-prompts-one-style/file":{"get":{"operationId":"buy_image_prompts_one_style","summary":"Buy the Image Prompts in One Style: Clean Pictures for a Site skill file (SKILL.md)","description":"Writes prompts for image models (FLUX, Stable Diffusion, ChatGPT images, Gemini and the like) that give a website, a blog or a product one recognisable style and come back without garbled letters. The scene comes first and the site's style recipe follows it word for word; absence is described positively instead of \"no text, no watermark\", which in a single prompt box summons those very things; anything that would need readable writing (a price list, a chart, a date) becomes a metaphor without characters; the scene ends with a closed list of what is in it; people and hands, the usual weak spots, are shown through objects; the aspect ratio is stated in numbers; and several pictures become several prompts, never one. Use when you write or fix prompts for hero images, blog headers, cards or illustrations, when generated pictures come back with pseudo-letters, cluttered scenes or a different style each time, or when a brief arrives in another language. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/social-api-reality-2026/file":{"get":{"operationId":"buy_social_api_reality_2026","summary":"Buy the Social Posting APIs 2026: Limits and Costs skill file (SKILL.md)","description":"Tells a publishing agent what the social networks allow, cost and return in autumn 2026, checked on 8 October 2026, before it plans or writes the posting code. Covers X (no free tier, pay per request, a post with a link costs more), Hashnode (public API now needs a paid plan), Pinterest feed auto-publish (domain claim, first board by alphabet, image tag, first pins within the hour), Mastodon (media 202, scopes, token replacement, one-hour Idempotency-Key, no card fetched), Bluesky (three length units, byte offsets, card thumbnail upload, write budget) and Meta (Development mode versus Live). Answers as JSON when asked and says which facts to re-check. Use when asked to plan, write, fix or review automatic posting of articles to social networks, or why posts do not appear. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/traffic-reality-check/file":{"get":{"operationId":"buy_traffic_reality_check","summary":"Buy the Traffic Reality Check: Real Readers vs Bots skill file (SKILL.md)","description":"Reads the numbers from Cloudflare Web Analytics and zone analytics (GraphQL or the dashboard) and says how many of them are real readers or real server errors, answered as JSON with the computed figures and a short reason. Knows what pollutes the table - the owner's own headless-browser checks, link-preview fetches from the social network that show up as referrals, the site's own Worker and its cache calls counted as visitors or as 5xx errors, the regional cache host of OpenNext, staging sharing a token - and what makes a true zero - the EU exclusion setting, a content security policy that allows the script but not the measurement request, sampling of data older than seven days. Use when asked how much traffic a site really has, whether a spike or an error count is real, why Web Analytics shows zero, or how to query per-address detail on the Free plan. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.07"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/frontend-layout-review/file":{"get":{"operationId":"buy_frontend_layout_review","summary":"Buy the Frontend Layout Review: CSS Grid, Hydration, Next.js skill file (SKILL.md)","description":"Reviews pasted CSS, Tailwind classes, JSX and Next.js client components for the layout and hydration defects that look fine on a desktop screenshot and then break on a phone or wipe the page in the browser. It flags a grid column written as a bare 1fr that refuses to shrink and, inside a clipping container, cuts the content without any horizontal scroll, width media queries written in pixels beside rem-based breakpoints, dates formatted inside a client component, server-only environment variables read in the browser, a schema default that silently stands in for a missing value, client components that pull a heavy dependency tree into every page, theme colour tokens painted on surfaces that do not flip with the theme, a fixed bar whose height is typed in several places, scroll-locking panels that stay open when the viewport crosses a breakpoint, and window.confirm. Each finding has a fixed code, the place, the reason and a fix; sound code gets No findings. Use to review a layout, a component or a stylesheet before release, or when a page looks cut off or resets itself on one route. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/social-dispatch-code-review/file":{"get":{"operationId":"buy_social_dispatch_code_review","summary":"Buy the Social Auto-Posting Code Review: Bluesky, Mastodon, DEV skill file (SKILL.md)","description":"Reviews pasted code that announces published articles to social channels (Bluesky, Mastodon, a Facebook page, Pinterest through a feed, Tumblr, DEV) for the ways a channel stays silent or posts twice, which tests with a fake network and a green build do not catch. It flags a shared HTTP helper that cuts a response body the Bluesky login then parses, a text cut by UTF-16 position or link offsets taken from character positions instead of UTF-8 bytes, a Mastodon media upload judged by status 200 only, a link posted without uploading the picture, a missing write:media scope, an Idempotency-Key reused after its one hour, an alert cut to N characters of an HTML error page, dispatch called from cache invalidation, a new \"announced\" column without a backfill, Promise.all or no timeout around channels, a missing token treated as an error, staging that posts, a full article copied to a blog platform, an OAuth 1.0a signature that leaves out the form body, a DEV request from a Worker without a User-Agent, and duplicates counted by searching a title in an RSS feed. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use to review article-announcing code before release, to find why a channel never posts, or to check a new channel before its first live post. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/workers-pitfalls-review/file":{"get":{"operationId":"buy_workers_pitfalls_review","summary":"Buy the Cloudflare Workers Review: D1, OpenNext, Fetch skill file (SKILL.md)","description":"Reviews pasted Cloudflare Workers code and configuration (a Worker, a Next.js app on OpenNext, D1 queries, wrangler config) for platform pitfalls that pass every local test and then fail in production or quietly cost money. It flags the edge runtime under OpenNext, a fetch to your own Worker's workers.dev address (error 1042), D1 queries that bind more than 100 parameters as data grows, LIKE patterns over D1's 50-byte limit, reading rowsAffected where D1 returns meta.changes, interactive transactions D1 does not have, secrets kept in plain vars, outbound fetch code that treats only a thrown error as failure, a browser User-Agent that bot protection challenges, client hop-by-hop headers forwarded to fetch, cron triggers whose day of the week is written as numbers, and unbounded queries on the request path. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use to review a Cloudflare Worker before deploy, check D1 or wrangler code, or audit a Next.js app running on Cloudflare. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/spend-guard-review/file":{"get":{"operationId":"buy_spend_guard_review","summary":"Buy the Spend Cap Review: Do Cost Limits Really Stop? skill file (SKILL.md)","description":"Reviews pasted code and configuration that spends money (paid AI or API calls, purchases, paid lookups, anything billed per use) and checks whether the limit on that spending really stands in the way of the spending. It flags a cap that sits beside the path instead of on it (a gateway limit while a script calls the provider directly, a counter only in the browser), a missing setting that means no limit, an alert or a budget email used as the protection, a cap that the caller sets through a header or a request field, a paid job that runs by default, a per-call cap with no running total, a total kept where it resets, a cap checked only after the money is gone, and a spend counter whose failure or missing value lets the call through. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use before deploying a Worker, script or job that pays per call, or when a cap exists and you want to know if it can fail silently. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/test-guard-review/file":{"get":{"operationId":"buy_test_guard_review","summary":"Buy the Test Review: Can This Test Ever Fail? skill file (SKILL.md)","description":"Reviews a pasted test, check script, smoke test, mutation script or CI step and says whether it can fail when the thing it guards is broken, so a green result is worth something. It finds a completeness guard that counts its own hard-coded list instead of the directory, a one-star glob that never enters subfolders, a mutation script that restores with git checkout and wipes the uncommitted fix under test, a null test that an empty string passes, a status 200 that is only the login page, a wait loop without sleep that measures network speed instead of time, a test that calls the pure function directly and never the call site, a counterfactual control whose data does not create the condition, a fix copied into two branches and tested in one, a limit tested only with ordinary values, and a catch that turns a failure into success. Each finding has a fixed code, the place, why it passes and the one input that would make it fail, or exactly No findings. Use to review a test that cannot fail, a check script that always passes, or a guard before you trust it. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/cf-rate-limit-design/file":{"get":{"operationId":"buy_cf_rate_limit_design","summary":"Buy the Cloudflare Rate Limit Review: WAF, Workers, 429 skill file (SKILL.md)","description":"Reviews a rate-limiting setup on Cloudflare (a WAF rate limiting rule, a Workers Rate Limiting binding, or a counter in your own code) and lists every reason it will not limit what its author thinks it limits. It flags free-plan rules that use the client address or a header field, which the plan refuses, windows the plan does not offer, an address key for callers that are themselves Workers and share one outbound address, a binding number treated as a global figure when each isolate counts for itself, a raw IPv6 address as a key, per-client limits with no global ceiling on a costly action, load tests fired without waiting a full window, one known attacker handled with a rule instead of an IP Access Rule, and a 429 without Retry-After. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use to check or design rate limiting for an API, a pay endpoint or an agent-facing endpoint on Cloudflare. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/image-pipeline-review/file":{"get":{"operationId":"buy_image_pipeline_review","summary":"Buy the Cloudflare Image Review: Quota, WebP, R2 skill file (SKILL.md)","description":"Reviews a pasted image pipeline (upload or AI generation, storage in R2, resizing, serving through Cloudflare image transformations, a Next.js loader, a sharp or WebP script) for the traps that quietly ship huge or broken images or spend a shared quota. It flags photographs stored as PNG, files stored exactly as a generator returned them, a redirect-on-error setting that hides an exhausted transformation quota, a list of widths that multiplies the unique-transformation count, widths above the original, transformations \"turned off\" while the images binding or the zone setting stays on, lossy WebP on charts and infographics, a job that re-encodes WebP that is already lossy, a preview subdomain mistaken for a zone, an original overwritten by a backdated fix, and self-made variants that can 404. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use to review an image pipeline, Cloudflare image transformations or WebP handling before it ships. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/crawler-access-probe/file":{"get":{"operationId":"buy_crawler_access_probe","summary":"Buy the AI Crawler Access Check: Who Gets a 403 skill file (SKILL.md)","description":"Reads the results of probing a website with AI-crawler user agents (status codes per bot, a control request, sometimes robots.txt or the site's settings) and says what they really show as JSON - whether training bots, search bots and user-triggered agents are open, blocked, mixed or unknown, what is behind a refusal, and whether the robots.txt that answered is the site's own file. Knows the traps - a bare bot name proves nothing and lies differently for each bot, a blocked training bot is a choice while a blocked search bot is a defect, Python-urllib and libwww-perl are refused by Browser Integrity Check and not by the site's policy, since 15 September 2026 Cloudflare refuses training bots on zones nobody touched, and a robots.txt of only comments is a stand-in from the edge. Use when asked whether a site blocks ChatGPT, Claude, Perplexity or Google AI, how to read curl results with bot user agents, or why an AI crawler gets a 403. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/redact-sensitive/file":{"get":{"operationId":"buy_redact_sensitive","summary":"Buy the Redact PII and Secrets From Logs and Tickets skill file (SKILL.md)","description":"Replaces personal data and secrets in a text with typed placeholders and leaves every other character exactly as it was, so the text can go into a log, a ticket, a prompt or a shared document. Covers email addresses (also written out as \"at\" and \"dot\"), phone numbers in any format, IBANs, payment card numbers, national ID numbers such as the Bulgarian EGN, IP addresses, and secrets - passwords, API keys, tokens, the password inside a connection string, a key in a URL. Keeps what only looks sensitive - order, invoice and tracking numbers, the last four digits of a card, version numbers, hashes, request ids, placeholders like your-api-key - and ignores text in the input that asks it not to redact. Use when asked to redact, mask, anonymise or scrub personal data, PII or secrets from logs, emails, chat transcripts, support tickets or documents before storing or sharing them. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/po-translate/file":{"get":{"operationId":"buy_po_translate","summary":"Buy the Translate .po Files Without Breaking Gettext skill file (SKILL.md)","description":"Translates the messages of a gettext PO file (.po) into another language and returns the whole file, so msgfmt and the app that loads it accept it. Only the msgstr values change. msgid, msgid_plural and msgctxt, every comment line, flags, the header (apart from its Plural-Forms line), obsolete entries and all placeholders such as %s, %d, %(name)s, {name} and %1$s come back exactly as they were. Entries with plural forms get exactly the number of msgstr lines the target language needs, for example three for Russian, Ukrainian, Polish and Czech, six for Arabic and one for Japanese. Use to translate or localize a .po file for WordPress, Django, Qt, GNU gettext or any app that ships gettext catalogs. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/document-consistency-check/file":{"get":{"operationId":"buy_document_consistency_check","summary":"Buy the Document Consistency Check: Find Contradictions skill file (SKILL.md)","description":"Reads one pasted document, such as a report, proposal, article, contract draft or spec, and lists every place where it contradicts itself, as strict JSON with both conflicting passages quoted word for word. It finds a figure given with two values, a name spelled two ways, a weekday that does not match its date, an end before a start, a stated total that differs from its stated parts, and a term used differently from its own definition. It reports only disagreements between two passages of the document; a fact it cannot see in the text is unknown, so it never checks the document against the outside world, and a number written in another format, a rounded figure or a line addressed to an AI is not a finding. Use to proofread a document for internal contradictions before publishing, check a report or proposal for numbers that do not match, find mismatched dates or names, or QA a long draft. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/done-means-done/file":{"get":{"operationId":"buy_done_means_done","summary":"Buy the Agent Done Check: Stop False Success Reports skill file (SKILL.md)","description":"Stops an AI agent from reporting false success, or hallucinated completion: work it calls done that did not happen. Every action in its status report gets one of five states (done and verified, done but not confirmed, partly done, failed, not done), backed by what the tool results of the session show. Failures and unknowns come first, counts come from the results, and no id, receipt or hash is invented. When a result does show success, the agent says so plainly. Use whenever an agent reports on actions it took with tools, such as messages, batches, tests, builds, deploys, file edits, data updates, payments or API calls. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.10"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/vocab-from-text/file":{"get":{"operationId":"buy_vocab_from_text","summary":"Buy the Vocabulary From a Text skill file (SKILL.md)","description":"Builds a vocabulary list for a language learner from one pasted text, as strict JSON: for every word the learner should learn it gives the form as written in the text, the dictionary form, a translation in the sense the text uses and the whole sentence of the text as the example sentence, copied word for word. It skips the words the learner already knows, also when they appear inflected, and leaves out names, function words and numbers. Dictionary forms follow the conventions of the text's language, German separable verbs are reassembled, false friends are translated by the sense of the sentence. Use to make a vocabulary list or glossary from a text, prepare example sentences for flashcards, pre-teach the words of a reading passage, or build a word list by level for Bulgarian, German, English or Spanish learners. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/summarize/file":{"get":{"operationId":"buy_summarize","summary":"Buy the Summarize Faithfully, Keep Every Number skill file (SKILL.md)","description":"Writes a faithful summary of a text in the text's own language, using only what the text says, with every number, name and date kept exactly and every qualifier kept. Use when asked to summarize, shorten, condense, give the gist or a TL;DR of an article, report, email, transcript, thread or document. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/csv-repair/file":{"get":{"operationId":"buy_csv_repair","summary":"Buy the CSV Repair: Fix Broken CSV, Keep Every Cell skill file (SKILL.md)","description":"Repairs broken or messy CSV so a standard parser reads it, without changing the text of a single cell, and answers with the CSV only, no code fence. Fixes quotes that do not close, a quote inside an unquoted cell, cells that hold the delimiter or a line break, rows shorter than the header, a Markdown table, and chat text or a fence around the data. Numbers such as 1,250, 007 and 1.10, dates, spaces inside cells and values that look like formulas stay exactly as written. Semicolon and tab files keep their delimiter. A row longer than the header, a row that could be read two ways, an unbalanced quote that no reading closes, an HTML page and prose with no table get a fixed one-line CANNOT REPAIR answer instead of a guess that moves data between columns. Use when an export, an API or another model returned CSV that does not parse, or when asked to fix, clean up, close or convert a table to valid CSV. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/xml-repair/file":{"get":{"operationId":"buy_xml_repair","summary":"Buy the XML Repair: Fix Broken XML, Change No Text skill file (SKILL.md)","description":"Repairs broken XML so a standard parser accepts it, without changing a single text node, attribute value, comment or CDATA section, and answers with the XML only, no code fence. Fixes a raw ampersand or less-than sign in text or in an attribute value, an HTML entity name such as nbsp that plain XML does not define, an attribute value without quotes, an end tag that is missing in one place only, a declaration that is not the first thing in the file, a stray byte order mark, and chat text or a fence around the document. Whitespace, indentation, attribute order, empty elements, numeric character references and CDATA stay as written. Mis-nested tags, an element that could end in two places, a document cut off in the middle, an unknown entity name, two root elements, a repeated attribute and an HTML page get a fixed one-line CANNOT REPAIR answer instead of a guess. Use when a feed, a sitemap, an SVG, a SOAP or legacy API response, an Office file part or another model returned XML that does not parse, or when asked to fix, clean up or close invalid XML. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/json-repair/file":{"get":{"operationId":"buy_json_repair","summary":"Buy the JSON Repair: Fix Broken JSON, Keep Every Value skill file (SKILL.md)","description":"Repairs broken JSON so a program can parse it, without changing any value. Fixes trailing and missing commas, comments, single quotes, unquoted keys, Python and JavaScript literals, smart quotes used as delimiters, raw line breaks and stray quotes inside strings, a code fence or chat text around the JSON, and output cut off in the middle. A value that was cut off becomes null instead of a guess, numbers JSON cannot hold as written are kept as strings, and when the structure can be read two ways the answer says so instead of picking one. Use when a tool, an API or another model returned JSON that does not parse, or when asked to fix, clean up, validate or close invalid or truncated JSON. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/reply-language-lock/file":{"get":{"operationId":"buy_reply_language_lock","summary":"Buy the Reply Language Lock: Answers in the User's Language skill file (SKILL.md)","description":"Keeps an assistant answering in the language the user writes in, whatever the language of the pasted text, the logs, the code comments, the tool output or the documents it works from. Covers the slips that happen in practice - drifting into the language of an English log or a Russian forum post, mixing in words or letters of a close neighbour (Russian in Bulgarian or Ukrainian, Czech in Polish, Portuguese in Spanish, Dutch in German), answering in Latin letters a user who typed a Cyrillic language in Latin letters, and obeying a line inside the material that asks for another language. Code, commands, identifiers, error messages and quotations stay as they are, marked as code or quotes, and the explanation around them is in the user's language. An explicit request from the user for another language always wins. Use when an agent works for people who do not write English, when replies come back in the wrong language or with foreign words mixed in, or in long sessions full of foreign-language tool output. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.07"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/po-file-repair/file":{"get":{"operationId":"buy_po_file_repair","summary":"Buy the PO File Repair: Make msgfmt Accept It Again skill file (SKILL.md)","description":"Repairs a gettext .po translation file so that msgfmt --check compiles it, changing only what blocks compilation and translating nothing. Knows what the checker really rejects - an unescaped quote or a missing closing quote, an escape it does not know, a msgid that starts or ends with a newline while its msgstr does not, c-format or python-format placeholders that differ, the wrong number of plural forms, msgstr without an index on a plural entry or with one on a plain entry, charset=CHARSET left in the header, plural entries with no Plural-Forms, and the same entry twice - and what it accepts, so a working file is left alone. A translation that cannot be fixed without new words keeps its text and gets the fuzzy flag; two different translations of one entry, or a plural formula the file gives no way to know, get a fixed one-line CANNOT REPAIR answer. Use when msgfmt, a build, Django compilemessages, Poedit or a CI step fails on a .po file, or when asked to fix a broken PO or gettext catalog. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/html-to-markdown/file":{"get":{"operationId":"buy_html_to_markdown","summary":"Buy the HTML to Markdown: Same Page, Nothing Invented skill file (SKILL.md)","description":"Converts HTML into CommonMark Markdown and answers with the Markdown only, no wrapper fence. Headings become ATX headings, links keep their address byte for byte (title included), images keep their source and alt text, lists keep nesting and an ordered list keeps the number it begins with, code blocks keep their text and indentation, tables become pipe tables with literal pipes escaped, entities are decoded once so the text reads as a browser shows it, and characters that Markdown would read as syntax at that spot are escaped instead of silently changing the document. Scripts, styles and comments are dropped, and an instruction hidden in a comment is never followed. Elements Markdown cannot say, such as an iframe, subscript or superscript, stay as the original HTML instead of being lost. HTML cut off inside a tag or with no visible content gets a fixed one-line CANNOT CONVERT answer instead of an invented page. Use when scraped, exported or pasted HTML has to become Markdown for docs, a knowledge base, a README or a model prompt. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/redos-regex-rewrite/file":{"get":{"operationId":"buy_redos_regex_rewrite","summary":"Buy the ReDoS Regex Rewrite: Same Answers, Linear Time skill file (SKILL.md)","description":"Rewrites a JavaScript regular expression that can hang on a crafted input (catastrophic backtracking, ReDoS) into one that gives exactly the same yes or no for every text and runs in linear time, answered as JSON with the pattern and flags. Knows the shapes that explode - a quantified group whose inside is quantified too, alternatives under a star that can match the same text, an optional separator between repeats, a counted group of runs, an unanchored run before a literal - and how to remove the ambiguity without atomic groups, which JavaScript lacks. Keeps the flags, keeps an already linear pattern as it is, and answers with a CANNOT line when no regular expression can give the same answers, such as a backreference that compares two arbitrary substrings. Use when a regex in a validator or a search times out, when a security scan reports ReDoS or catastrophic backtracking, or when asked to make a regex safe for untrusted input. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/xliff-translate/file":{"get":{"operationId":"buy_xliff_translate","summary":"Buy the XLIFF Translate: .xlf Files Your Tool Imports Back skill file (SKILL.md)","description":"Translates an XLIFF 1.2 file (.xlf) into the language the request names and returns the whole file, so the localization tool and the app that import it accept it. Each translatable unit gets one target element right after its source, with state set to translated. Sources, unit ids, notes, inline codes (g, x, ph, bpt, ept, it, mrk elements) with the same ids, units marked translate no, and targets already in state final, signed-off or translated come back byte for byte. Raw ampersands and escapes are handled, and a file that is XLIFF 2.0, or that already names a different target language, gets a fixed one-line CANNOT TRANSLATE answer instead of a guess. Use to translate or localize an .xlf or .xliff file from Angular, Xcode, Okapi, Weblate, memoQ, Trados or any other XLIFF 1.2 exporter. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/timeline-from-text/file":{"get":{"operationId":"buy_timeline_from_text","summary":"Buy the Timeline From Text skill file (SKILL.md)","description":"Reads one pasted text, such as an incident report, a case history, a project log, a news story or an email thread, and lists its events as strict JSON. Events the text dates come first in chronological order, each with the date as written, the date in ISO form, a short event and the exact quote. Events with no date are listed apart in the order of the text. It resolves a relative date such as \"two days later\" only when the text gives the date it counts from, takes a date only from the event it belongs to, keeps a year-only date or a range as the text gives it, never borrows a missing year, leaves a numeric date such as 03/04/2026 open when nothing says how it is read, and never fills a gap from its own knowledge. Lines addressed to an AI are ignored. Use to build a timeline from a report, put the events of a long text in order, extract dates and events for a chronology, or check which events of a story have no date. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/markdown-toc-anchors/file":{"get":{"operationId":"buy_markdown_toc_anchors","summary":"Buy the Markdown TOC Anchors: Contents Links That Really Jump skill file (SKILL.md)","description":"Builds the table of contents of a Markdown document with the exact heading anchors that GitHub or GitLab generate, and answers with the list only, no code fence. Finds the real headings (hash headings with closing hashes, underline headings, none inside code fences, indented code, comments or front matter), strips inline markup, lowercases, drops every character that is not a letter, digit, hyphen or underscore, turns each single space into one hyphen without collapsing or trimming, keeps Cyrillic and other non-Latin letters as they are, and numbers duplicate headings with -1, -2 in document order including the case where a numbered name already exists. Shows how emoji, ampersands, plus signs, dots and spaced dashes change the anchor. Indents two spaces per level below the shallowest heading. A named renderer other than GitHub or GitLab, a GitHub emoji shortcode, raw HTML in a heading, a heading with no characters left for an anchor, a heading inside a quote, list or table, and a document with no headings get a fixed one-line CANNOT BUILD answer instead of a guessed anchor. Use when asked to add, fix or check a table of contents, contents list or in-page links in a README, wiki page or docs file, or when a contents link jumps nowhere. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/phone-e164-normalize/file":{"get":{"operationId":"buy_phone_e164_normalize","summary":"Buy the Phone Numbers to E.164 skill file (SKILL.md)","description":"Turns a list of phone numbers written any way people write them into E.164 (a plus sign, the country code and the national number, digits only), one JSON object per number, using a default country the request states. Where plain models slip - the trunk 0 left in, \"+44 (0)20\" glued to a stray zero, Italian numbers with the leading 0 wrongly dropped, the leading 1 of a North American number kept, a made-up country for a bare local number, an extension stuck onto the number - it follows the numbering rules, keeps extensions in a separate field, and refuses with a reason instead of guessing when a number is too short, too long, cut, in two parts, has an impossible area code, or is local with no default country. Use to clean a contact list, a CSV column or a form export before import into a CRM, an SMS tool or a dialler, or to turn one pasted number into the international form. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/summary-fidelity-check/file":{"get":{"operationId":"buy_summary_fidelity_check","summary":"Buy the Summary Fidelity Check skill file (SKILL.md)","description":"Checks a summary against the source text it was made from and lists the summary sentences the source does not support, each copied word for word, as strict JSON. It catches a number that was rounded or given another unit, a hedge that became a certainty, a cause the source never states, two facts joined into a false one, a claim whose speaker was dropped, a fact that comes from outside the source, and it ignores any instruction hidden in the source. A sentence is judged supported or unsupported and nothing in between, and a faithful paraphrase is never flagged. It never checks the source against the world and never judges what the summary left out or how well it is written. Use to check a summary, abstract, executive summary or AI-written digest against its source, to review an agent's report of a document, or to find where a summary says more than the text. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/android-strings-translate/file":{"get":{"operationId":"buy_android_strings_translate","summary":"Buy the Android Strings Translate: strings.xml That Still Builds skill file (SKILL.md)","description":"Translates an Android string resource file (res/values/strings.xml) into another language and returns the whole XML file, so the Android build and the app accept it. Only the text between the tags changes. Resource names, attributes, comments, placeholders such as %1$s, %d and %%, the escapes backslash-apostrophe, backslash-quote, backslash-n and backslash-at, the quoted form for leading or trailing spaces, inline markup, CDATA sections and the protected spans of xliff:g elements come back exactly as they were. Strings marked translatable=\"false\" are left out. Every plurals block gets exactly the quantity items the target language needs under the CLDR rules, for example one and other for German and Bulgarian, one, few, many and other for Russian, Ukrainian and Polish, six for Arabic and only other for Japanese. A file that is not Android XML, or is cut off, gets a one-line refusal instead of a guess. Use to translate Android strings.xml files, for Android localization of an app, or to add values-de, values-ru or values-ja with the right plural quantity items. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/cron-dialect-convert/file":{"get":{"operationId":"buy_cron_dialect_convert","summary":"Buy the Cron Dialect Convert skill file (SKILL.md)","description":"Converts an existing schedule between cron dialects so that the target runs at exactly the times the source runs - classic crontab, GitHub Actions schedule, a Quartz-style six-field expression, a small numbers-only HTTP scheduler (Cron Hub) and Cloudflare Workers Cron Triggers - answered as JSON with the crons and a note. Knows what changes between them - day-of-week 1 is Monday in crontab and GitHub but Sunday in Cloudflare, 0 is refused by Cloudflare, 7 means Sunday in crontab and Saturday in Cloudflare, names are refused by the small scheduler; a day of the month plus a day of the week means either in crontab but both in the small scheduler; the at-sign macros, reboot, seconds other than zero and sub-5-minute GitHub intervals have no equivalent; a time zone becomes a timezone key, a CRON_TZ line or two UTC hours. Refuses what cannot be run at the same times. Use when asked to move a job from one scheduler to another, to port a crontab or a workflow schedule to wrangler, or to check that an expression in one dialect means the same in another. For a schedule given in words, use cron-schedule instead. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/mojibake-repair/file":{"get":{"operationId":"buy_mojibake_repair","summary":"Buy the Mojibake Repair: Undo Broken Encoding Exactly skill file (SKILL.md)","description":"Repairs mojibake, text whose accents, Cyrillic letters, quotes, dashes or emoji turned into strings such as Ã¨, Ã¼, â€œ, Ð¿Ñ€ or Р—Рґ because UTF-8 was read as Windows-1252, Latin-1 or Windows-1251, once or twice. Gives back the original text exactly, character for character, by undoing the wrong reading byte by byte, and leaves text that is already correct untouched. When the damage is mixed with good text, mixes two encodings, or lost bytes, so that more than one original is possible, it answers with a fixed CANNOT REPAIR line instead of guessing. Use when text from a file, database, email, web page or export shows garbled characters, or when asked to fix, undo or decode broken encoding, double encoding or strange characters. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/x402-discovery-listing-review/file":{"get":{"operationId":"buy_x402_discovery_listing_review","summary":"Buy the x402 Listing Review: Catalogs, Scanners, Buyers skill file (SKILL.md)","description":"Reviews how a paid HTTP resource sold over x402 is advertised to catalogs, scanners and buyer agents, and how the seller's own scripts read those catalogs back, from pasted 402 bodies, OpenAPI documents, discovery files, liveness guard code, catalog presence check scripts and buyer alerts. Flags a tiered tariff advertised as one row (a comparison bot reads the structured amount, not the description), one liveness clock for several catalog rows that are dropped one by one, a price above the standard buyer client's default cap with no note where agents read before buying, a discovery file the scanner no longer parses, a bearer scheme the scanner's indexer does not recognise by name, a scanner record that was never re-crawled after a fix, a presence check that reads only one of the two response field names or has no control that must return zero, a first buyer that is a crawler paying hundreds of sellers, and discovery endpoints that read the database on every crawl. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use for an x402 listing review, to check x402 discovery or Bazaar catalog presence code before trusting it, or to audit how a paid API is listed and read. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/x402-settlement-review/file":{"get":{"operationId":"buy_x402_settlement_review","summary":"Buy the x402 Settlement Review: Replay and Double Charge skill file (SKILL.md)","description":"Reviews pasted seller-side x402 code that accepts the PAYMENT-SIGNATURE header, talks to the facilitator and delivers the goods (the cash register), for the silent failures that double-charge a buyer, hand the goods to a stranger or bill the seller. It flags an expiry check that runs before the nonce lookup, a repeat path that delivers without proof the chain observer lacks, a repeat window taken from the buyer's validBefore instead of the seller's own clock, settlement_pending treated as failure, a public header that raises the seller's own cost, an attempt bucket keyed on the unverified from, verify calls with no global ceiling, a facilitator health lamp fed by a different facilitator, HTTP 400 reasons logged as unknown, and a money value kept in two places. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use to review an x402 seller's payment handling before launch, audit replay and double-charge handling, or check the facilitator adapter and its health probe. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/sql-dialect-to-sqlite/file":{"get":{"operationId":"buy_sql_dialect_to_sqlite","summary":"Buy the Postgres or MySQL SQL to SQLite and D1 skill file (SKILL.md)","description":"Converts PostgreSQL or MySQL schema statements, migrations and queries into SQLite that Cloudflare D1 and Turso run, so the converted version behaves like the original and not only parses. Knows the conversions that run without an error and then go wrong - a key written as BIGSERIAL or INT AUTO_INCREMENT that SQLite stores as NULL, a custom enum type or an inline enum that stops checking anything, a default now() or gen_random_uuid() that fails on the first insert, a unique email that was case-insensitive in MySQL, ON UPDATE CURRENT_TIMESTAMP that needs a trigger, a foreign key added later with ALTER TABLE, a schema prefix, DISTINCT ON, ILIKE, double-colon casts, date_trunc, interval arithmetic, DATEDIFF, GROUP_CONCAT with SEPARATOR, MySQL division that keeps the fraction, ON DUPLICATE KEY UPDATE, JSON operators. Answers with the SQLite SQL only, and says CANNOT CONVERT when part of the input has no equivalent in SQLite (a procedural function, row level security, notifications, a stored procedure) instead of dropping it. Use when asked to port, convert or migrate Postgres or MySQL SQL to SQLite, D1 or Turso. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/config-format-convert/file":{"get":{"operationId":"buy_config_format_convert","summary":"Buy the Config Format Convert: JSON, YAML, TOML, INI, .env skill file (SKILL.md)","description":"Converts a config file between JSON, YAML 1.2, TOML 1.0, INI and .env with every key, value and type kept, and answers with the converted document only, no code fence. Strings that look like other things are quoted so they stay strings (the text 1.10, 007, 01234, no, null, an empty string, a date in quotes), a YAML 1.10 stays the number 1.1, aliases are expanded, TOML dates become their exact text in JSON and INI, scalars are placed before tables in TOML, and values with a semicolon, a hash sign or spaces are quoted in INI and .env. Whatever the target cannot hold gets one line starting with CANNOT CONVERT instead of a changed file - null into TOML, infinity or NaN into JSON, a second YAML document, an object inside an object in INI, any object or list in .env, a key given twice. Use when asked to convert a config file from one format to another, to change the config format of package, CI or Worker settings, or to move settings from JSON to YAML, YAML to TOML, TOML to JSON or an env file to JSON. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/json-diff-paths/file":{"get":{"operationId":"buy_json_diff_paths","summary":"Buy the JSON Diff Paths skill file (SKILL.md)","description":"Compares two pasted JSON documents, BEFORE and AFTER, and lists every value that differs as strict JSON, one entry per changed path, with the old and the new value. Paths are JSON Pointers, types are strict (the string \"1\" is not the number 1, null is not a missing key, an empty array is not an empty object), arrays are compared by index with no move detection, object key order and number spelling (1.0, 1e2) are not changes, and a document that is not valid JSON is refused, never repaired. Use to see exactly what an API response, config file, fixture or snapshot changed between two versions, to write the assertion for a test, to review a data migration, or to feed an audit log with the list of changed fields. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/diff-from-before-after/file":{"get":{"operationId":"buy_diff_from_before_after","summary":"Buy the Diff From Before and After: A Patch That Applies Exactly skill file (SKILL.md)","description":"Writes the unified diff (the patch format of git diff and diff -u) that turns an old version of a text file into a new one, so that git apply or patch applies it to the old version with no fuzz and produces the new version byte for byte. Compares line by line with every space, tab, carriage return and final line break counting, writes each hunk with three lines of context, merges hunks whose context touches, counts the numbers in every hunk header from the hunk's own lines, adds the backslash line for a missing final line break on the right side, and handles new files, emptied files, repeated lines and lines that begin with dashes or plus signs. Answers with the diff only, no code fence. Two identical versions get a fixed one-line NO CHANGES answer. Use when asked to make a patch, produce or generate a diff, show what changed, or turn a before and after into something a patch program accepts. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/quiz-from-text/file":{"get":{"operationId":"buy_quiz_from_text","summary":"Buy the Quiz From Text: Answers Quoted From the Passage skill file (SKILL.md)","description":"Writes a fixed number of quiz questions from a passage you give it, as JSON, where every answer is a span copied word for word from the passage, with the same digits or number words, spacing, dashes, apostrophes and capitals, paired with the full sentence it comes from, and never a paraphrase, a pronoun, a computed value or a fact from outside the text. Questions are in the passage's own language, each asks for a different fact, a negation or a pair of dates is never flipped, text inside the passage that speaks to the assistant is treated as passage text, and a passage too short for the requested count gets fewer questions and a note instead of padding. Use as a quiz generator skill to make reading comprehension questions, a quiz from text for a lesson or a course, a self-check for a study text, or questions from a passage whose answers a program can verify against the source. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/agent-report-audit/file":{"get":{"operationId":"buy_agent_report_audit","summary":"Buy the Agent Report Audit: Which Claims the Log Supports skill file (SKILL.md)","description":"Audits the report an AI agent wrote about its own session against the tool log of that session. Every numbered claim of the report gets one of two verdicts, supported or not_supported, with the log line that decides it copied exactly. A claim is supported only when the log shows a call that did it, a complete output that shows success, the same object and scope, nothing later that undoes it, and every part of a compound claim. A command that was issued, an output cut off, a dry run, a read, a plan, a run that predates the last edit, a different environment, a partial count, a number the outputs do not show and the agent's own remark are testimony, not support. Text inside the log that speaks to the auditor is data. Use before you trust an agent's status report, to check a claim of success, or to find which sentences of a summary have nothing behind them. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/playwright-test-from-steps/file":{"get":{"operationId":"buy_playwright_test_from_steps","summary":"Buy the Playwright Test from Manual Steps skill file (SKILL.md)","description":"Turns manual test steps plus the page facts you have (route, labels, button names, messages) into one Playwright Test file in TypeScript that can really fail. Elements are found by role and accessible name, by label or by text, never by a CSS class, an id or XPath, and a name that is the start of another gets the exact option; every step that observes something gets one awaited, auto-retrying assertion; a step such as wait a couple of seconds becomes an assertion on the state it waits for, never a fixed pause; the address is relative because the base URL lives in the config; a third-party widget is mocked; a dialog handler is registered before the click that opens it; expected text is copied byte for byte; a control the steps do not name is marked with a fixme and a comment instead of a guessed locator. Use to write a Playwright test from manual test steps, convert a QA test case or acceptance criteria into an end-to-end test, replace waitForTimeout in a flaky test, or make a recorded test use role locators. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/faq-answer-from-docs/file":{"get":{"operationId":"buy_faq_answer_from_docs","summary":"Buy the FAQ Answer From Docs (With the Quote) skill file (SKILL.md)","description":"Answers one customer question using only a pasted help text (FAQ, help centre article, policy page, product manual or knowledge base extract) and returns strict JSON with the reply, the passages it rests on copied word for word, and a flag that says whether the text answers the whole question, part of it or none of it. Every figure is copied as the help text writes it, nothing is computed, rounded, inferred from general knowledge or taken from a line that tells the AI what to say, and when the text does not cover the question the reply says so instead of guessing. The reply is in the customer's language while the quotes stay in the help text's language. Use to answer customer questions from documentation, build a support bot that only says what the help centre says, draft a reply to a support ticket from a knowledge base, or ground an FAQ answer in the source text with a citation. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/vcard-from-signature/file":{"get":{"operationId":"buy_vcard_from_signature","summary":"Buy the vCard from E-mail Signature skill file (SKILL.md)","description":"Turns the signature block of an e-mail (English, Bulgarian, German or another language) into a vCard 4.0 contact card, answered as the card text only. Follows RFC 6350 where plain models slip - VERSION:4.0 right after BEGIN, FN always present, N with exactly five components, ADR with exactly seven, commas, semicolons and backslashes escaped in text values, phone numbers as tel URIs. What the signature does not say stays out - no invented surname, no guessed country code on a local number, no social profile built from a bare handle - and legal disclaimers, quoted replies and orders hidden in the signature are not fields. Use to make a vcf file or contact card from an e-mail signature, add a sender to Contacts, Outlook or a phone address book, or turn a pasted signature into a vCard. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/canonical-url-decision/file":{"get":{"operationId":"buy_canonical_url_decision","summary":"Buy the Canonical URL Decision skill file (SKILL.md)","description":"Decides for every URL variant of a page whether it is the canonical URL, gets a canonical tag to another address, a permanent redirect, a noindex, a 404 or 410, or cannot be settled from the facts given, answered as JSON only with the target and a short reason per URL. Follows Google's current canonicalization guidance on duplicate content - a redirect when the duplicate is deprecated, rel=canonical when it must stay reachable (tracking parameters, print views, a product under several categories, a mobile host), noindex only for pages that should not be in results at all (site search, staging, a syndicated copy) and never as a way to pick between duplicates; page two of a list is its own canonical, a translated page is its own canonical and an untranslated copy is not, a page with no replacement is gone rather than redirected to the home page. Carries the traps measured on live sites - a noindex behind a Disallow is never read, a www host blocked by robots.txt hides its own 301, a redirect added over a cached 404 can answer 308 with no Location, a 302 left in place keeps the old address canonical. Use when asked which URL should be canonical, whether to redirect, canonical or noindex a duplicate, what to do with www, http, trailing-slash, parameter, print, mobile, paginated, language or staging variants, or how to fix a wrong Google-selected canonical. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/llms-txt/file":{"get":{"operationId":"buy_llms_txt","summary":"Buy the llms.txt Writer skill file (SKILL.md)","description":"Writes an llms.txt file in the shape the llms.txt proposal defines, from a site description and a list of pages, answered as the Markdown file only. One H1 with the site name, a blockquote summary, optional plain notes, then H2 sections that hold lists of links in the form \"- [name](address): notes\". Every address is absolute (a relative one is joined to the stated origin) and copied exactly, never invented; pages marked noindex, private or behind a login are left out; a page listed twice appears once; the section named Optional holds only what the input marks as secondary. Notes use only facts from the input, in the language of the site, with no marketing words the input does not use. Use when asked to write, generate, fix or check an llms.txt for a site, a documentation area or a shop. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/subtitle-timing-repair/file":{"get":{"operationId":"buy_subtitle_timing_repair","summary":"Buy the Subtitle Timing Repair: Fix SRT and VTT, Words Stay skill file (SKILL.md)","description":"Repairs the structure of an SRT or WebVTT subtitle file so a video player reads it, without changing a single word and without changing the value of a single time, and answers with the file only, no code fence. Fixes the separator before the milliseconds (a comma in SRT, a dot in VTT), broken arrows, short hours and short millisecond fields, missing or doubled blank lines between cues, cue numbers that skip, repeat or are out of order after cues were deleted (renumbered in file order, cues never reordered), cues with no number, a missing WEBVTT header or the blank line after it, a byte order mark and mixed line endings. Tells a cue number from a text line that only looks like one (a year, a count), keeps a text line that contains an arrow, keeps VTT cue settings, identifiers and NOTE blocks, and leaves overlapping cues exactly as they are, since overlap is legal. A cue that ends before or at its own start, a cue with no timing line, seconds above 59 and a garbled timestamp get a fixed one-line CANNOT REPAIR answer, because only a person knows which time is right. Use when a subtitle file will not load, shows as one block or is rejected by a player or an upload form, or when asked to fix, clean up or validate SRT or VTT structure. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/sqlite-query-from-question/file":{"get":{"operationId":"buy_sqlite_query_from_question","summary":"Buy the SQLite Query From a Question for D1 skill file (SKILL.md)","description":"Writes the SQL query for SQLite or Cloudflare D1 that answers a question about the data, from the question and the table definitions you paste, so it returns the right rows and not only rows that look right. Knows where plain-language questions turn into wrong results on SQLite - NOT IN against a column that holds NULL, integer division in percentages and money, COUNT of a column that holds NULLs, a LEFT JOIN that a WHERE turns back into an inner join, two one-to-many joins that multiply each other, ties at a LIMIT, NULLs that sort first, dates stored as text in a format that does not sort, a month end that cuts off the last day's timestamps, pairs listed twice, \"both A and B\" and \"top N of each group\". Answers with the one statement and nothing else, and says CANNOT ANSWER when the tables do not hold what the question needs, instead of inventing a column. Use when asked to write, check or fix a SELECT for SQLite, D1 or Turso from a question, a report request or a schema. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/sql-dump-to-sqlite/file":{"get":{"operationId":"buy_sql_dump_to_sqlite","summary":"Buy the SQL Dump to SQLite: MySQL and Postgres Rows, Unchanged skill file (SKILL.md)","description":"Converts a MySQL or PostgreSQL dump (CREATE TABLE, INSERT rows, COPY blocks) into SQL that SQLite, Cloudflare D1 and Turso execute, with every value in every row unchanged, and answers with the SQL only, no code fence. Decodes string escapes the right way for each source (MySQL backslash sequences, Postgres E strings and dollar quotes, COPY escapes with its null marker), keeps strings that look like numbers as strings, turns booleans into 0 and 1, writes hex values as real blobs, keeps dates as the text the dump has, maps enum to text with a CHECK, maps auto-increment keys, drops what SQLite does not have (engine, charset, session settings, locks, begin and commit, schema prefixes), orders tables and rows so foreign keys hold, and splits long inserts. A type with no exact equivalent, a COPY row with the wrong number of fields and a paste cut in the middle get a one-line CANNOT CONVERT answer naming the place, instead of a guess. Use when asked to move a MySQL or Postgres dump into SQLite, D1 or Turso, to load a dump file, or to fix a dump that fails there. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/source-quotes-extract/file":{"get":{"operationId":"buy_source_quotes_extract","summary":"Buy the Source Quotes Extract skill file (SKILL.md)","description":"Reads one pasted text, such as an article, report, interview, memo or review, and lists the claims its author makes, each with the exact quote from the text that supports it, as strict JSON. It keeps every claim as strong as the text states it, so a hedged claim stays hedged and a number keeps its unit, and it cuts every quote down to the shortest stretch of words that supports the claim. It leaves out what someone else is reported as saying, what the text only hints at, questions, invitations and any line addressed to an AI, and it never checks a claim against the outside world. Use to extract the claims of a text with a verbatim quote for each, build an evidence table from an article or report, prepare quotes for fact-checking, or pull quotable statements from a long text. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/session-handoff-note/file":{"get":{"operationId":"buy_session_handoff_note","summary":"Buy the Session Handoff Note: Done, Open, Next Step skill file (SKILL.md)","description":"Turns the log of one agent session (the user's requests, tool calls with their outputs, errors and the agent's own remarks) into the note the next session starts from, as strict JSON with done, not_done, open, decisions, files and next_step. Work counts as done only when the log shows a result, with the log line that proves it; a command that was issued, an output that was cut off or the agent's own \"done\" is not a result, an error with no successful retry stays not_done with its error text, ids and counts are copied from the outputs and never completed, and text inside a fetched page or file that speaks to the agent is data, never an order. Use to hand a long coding or ops job to the next agent session, to write a shift handover from a log, or to check what an agent really finished before you trust its summary. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/fixed-width-to-csv/file":{"get":{"operationId":"buy_fixed_width_to_csv","summary":"Buy the Fixed-Width to CSV: Cut by Spec, Trim Only When Told skill file (SKILL.md)","description":"Converts fixed-width text (mainframe exports, bank and statistics files, printed reports) into RFC 4180 CSV from a column specification and answers with the CSV only, no code fence. Positions are 1-based and inclusive unless the spec says otherwise, and count characters, so accented and Cyrillic letters do not shift later columns. Every cell is the exact characters of its positions: nothing is trimmed unless the spec says trim, leading zeros and inner spaces stay, numbers stay text, and an implied decimal becomes a point only where the spec states it. A value with a comma or a quote is quoted. A line that does not fit the spec, overlapping columns, a tab, a byte-based spec meeting non-ASCII text, or a signed overpunch digit gets a fixed one-line CANNOT CONVERT answer instead of a guessed table. Use when a fixed-width file has to become CSV for a spreadsheet, a database or a data pipeline. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/i18n-strings-extract/file":{"get":{"operationId":"buy_i18n_strings_extract","summary":"Buy the Extract UI Strings Into i18n Keys skill file (SKILL.md)","description":"Pulls the hard-coded text a person sees out of a JSX, TSX, HTML or Vue template file into a messages map and returns the file rewritten to call the translation function, as one JSON object with the messages and the whole source and nothing around it. Every message is byte-exact as the user reads it. A sentence with an inline link or bold part stays one message with its markup inside, a sentence built from a string, a variable and another string becomes one message with a named placeholder, and a sentence with a count becomes one ICU plural. The alt, title, placeholder and aria-label attributes, the page title, the meta description and a submit button's value are extracted; class names, ids, URLs, data attributes, test ids, log lines, enum values, comments and text already inside a translation call are left alone. Use when an agent must add i18n to an existing component or page, find the hard-coded strings in a file, prepare a locale file for i18next, react-i18next, next-intl or vue-i18n, or replace literals with t calls. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/unified-diff-repair/file":{"get":{"operationId":"buy_unified_diff_repair","summary":"Buy the Unified Diff Repair: Fix the Counts, Keep the Change skill file (SKILL.md)","description":"Repairs a unified diff (the patch format of git diff and diff -u) so that git apply and patch accept it against the file it was written for, and answers with the diff only, no code fence. Recounts the numbers in each hunk header from the hunk's own lines, puts back context lines and removed lines exactly as the file has them (tabs, trailing spaces, blank lines, carriage returns), adds the backslash line that marks a missing final line break, restores hunk order, merges overlapping hunks and puts back an unchanged line that a hunk lost. Every added and removed line stays exactly as written, and no change is improved or re-indented. When the lines a hunk expects are not in the file, or fit in more than one place, a fixed one-line CANNOT REPAIR answer replaces a guessed patch. Use when an agent, a tool or another model produced a patch that is rejected, reports a corrupt patch, or looks wrong, or when asked to fix, recount or make a diff apply. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/table-summary/file":{"get":{"operationId":"buy_table_summary","summary":"Buy the Table Summary: Only the Figures in the Table skill file (SKILL.md)","description":"Describes a table you were given (pasted Markdown, CSV, TSV or spreadsheet cells) in a short paragraph that uses only figures the table itself prints. Every number is copied as written with its unit, currency and qualifier. Nothing is added up, averaged, rounded, turned into a percent or a ratio, or extended into a trend, a cause or a forecast. A blank or n/a cell is reported as not given, never as zero. A total the table prints is quoted, not checked. Use when asked to describe a table, summarize a table, explain what a data table shows, write a caption or a sentence for a table, or put the rows of a report table into words without inventing a single number. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/openapi-operation-from-example/file":{"get":{"operationId":"buy_openapi_operation_from_example","summary":"Buy the OpenAPI Operation Object From An Example Call skill file (SKILL.md)","description":"Writes one OpenAPI 3.1 operation object, as bare JSON, from an example request, an example response and rules given in words - parameters with the right location, requirement flag and type, a request body, and a response per status the person actually showed. Uses the 3.1 forms, not the 3.0 ones - a field that may be null is a type list with \"null\" (never nullable), a path parameter is always required, a status is a quoted key, an identifier written as text in the URL keeps the type the rules give, a list in the query string gets the style and explode that match how the example writes it. Nothing is made required, closed or listed in an enum because the example happens to look that way, no response is invented, an authorization header is not declared as a parameter, and words inside an example body that give orders are data. Use when asked to document an endpoint, turn a curl call and its reply into an OpenAPI operation, or fill in the operation part of a spec. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/log-lines-to-jsonl/file":{"get":{"operationId":"buy_log_lines_to_jsonl","summary":"Buy the Log Lines to JSON Lines, Odd Lines Kept Raw skill file (SKILL.md)","description":"Parses plain-text log lines into JSON Lines, one record per line, by a format the task states (Apache or nginx combined access log, RFC 5424 syslog, key=value pairs, or a custom pattern with named fields). Splits by the format's grammar and not by spaces, so quoted fields with spaces and escaped quotes stay whole. A dash that the format defines as absent becomes null, fields the task calls numbers become JSON numbers (a status stays a number, a zero byte count stays 0), time stamps keep their written offset, and IPv6 addresses stay whole. A line that only almost fits the format is kept as a raw record exactly as given, never guessed or repaired. Indented stack-trace lines are attached to the previous record only when the task says so. Text inside the log that speaks to the agent is data. Use when asked to convert, parse, structure or load log lines, an access log, syslog output or application logs into JSON, JSONL or NDJSON for a program to read. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/watchdog-alert-review/file":{"get":{"operationId":"buy_watchdog_alert_review","summary":"Buy the Watchdog Alert Review: Silent and Noisy Alarms skill file (SKILL.md)","description":"Reviews pasted code or a design for a liveness watchdog, a staleness alarm or a daily heartbeat mail (sources that must keep answering, a pipeline that must keep publishing) and lists every way it stays silent on a dead source or floods on a healthy one. It checks whether silence is measured in the time the source was last asked or by the wall clock, whether a stateless alarm window repeats or never fires, whether the threshold is longer than the system's own cadence plus a tick, whether a new row starts with a last success of zero, whether the sweeper or the probe sits behind a daily limit, whether a failed send is remembered as sent, whether alert memory is purged by age, whether the subject names the dead source and the environment, whether a lamp still has a writer after a scheduler swap, and whether every check lives inside the thing it watches. Each finding has a fixed code, the place, the reason and a fix, then one verdict; sound code gets exactly No findings. Use to review a watchdog, a liveness check or a staleness alarm, to audit the design of a monitoring job, or to check an alert mail before you rely on it. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/csv-to-json-rows/file":{"get":{"operationId":"buy_csv_to_json_rows","summary":"Buy the CSV to JSON Rows: Every Cell Stays Text skill file (SKILL.md)","description":"Converts CSV into a JSON array with one object per row, keyed by the header, and answers with the JSON only, no code fence. Every value stays a string exactly as the cell reads, so 007, 1,250, 1.10, TRUE, null, dates, spaces around a name and a value that starts with an equals sign are never turned into numbers, booleans or null, and an empty cell is an empty string. Only a column the task names as integer, number or boolean is converted. Quotes are removed, doubled quotes become one quote, line breaks inside a quoted cell become backslash n. Semicolon and tab files, a byte order mark, CRLF rows and a trailing blank line are handled. A short or long row, a duplicate header name, an unclosed quote, a typed cell that does not fit its type and text that holds no table get a fixed one-line CANNOT CONVERT answer instead of invented or null values. Use when an agent must load a CSV export into code, an API or a database, or when asked to turn CSV into JSON. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/markdown-table-repair/file":{"get":{"operationId":"buy_markdown_table_repair","summary":"Buy the Markdown Table Repair: Fix the Table, Keep Every Cell skill file (SKILL.md)","description":"Repairs a broken Markdown table so GitHub Flavored Markdown renders it as one table with the right columns, without changing the text of any cell, and answers with the table only, no code fence. Adds a missing or malformed alignment row and keeps the alignment colons it finds, adds the missing leading and trailing pipes, escapes a literal pipe inside a cell as backslash-pipe (also inside inline code), pads a short row with empty cells without moving a cell, and turns a tab-separated or HTML table into a Markdown table. Bold, links, code, emoji, numbers such as 007 and 1.10, backslashes and double spaces inside a cell stay exactly as written. A row with more cells than the header, an alignment row that cannot be matched to its columns, a pipe that cannot be told from a border and text with no table get a fixed one-line CANNOT REPAIR answer instead of a guess that moves data between columns. Use when a README, wiki page or another model's answer shows a table as plain text with pipes, or when asked to fix, clean up or convert a table to Markdown. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/json-to-csv-flatten/file":{"get":{"operationId":"buy_json_to_csv_flatten","summary":"Buy the JSON to CSV: Flatten Nested Records, Keep Every Value skill file (SKILL.md)","description":"Turns JSON that holds a list of records, with nested objects and arrays, into one flat CSV table that a standard parser reads, and answers with the CSV only, no code fence. Nested keys become dotted column names such as address.town, array elements become index columns such as tags.0 and tags.1, or one cell joined with a separator, or one row per element when asked to explode. Numbers are copied as the JSON token (1.10 stays 1.10, 1e5 stays 1e5, -0 stays -0), true and false stay lowercase text, null and a missing key become an empty cell, a string such as 007 or 1,250 stays exactly as written. Columns follow the order in which keys first appear, so a key that shows up only in the last record still gets its column. A field that is a string in one record and an object in another, a dotted key that collides with a nested path, a list holding something other than records and JSON that is cut off get a fixed one-line CANNOT FLATTEN answer instead of a guess. Use when asked to convert, export, flatten or tabulate JSON or an API response as CSV for a sheet, a database import or a report. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/jsonl-repair/file":{"get":{"operationId":"buy_jsonl_repair","summary":"Buy the JSON Lines Repair: One Record Per Line skill file (SKILL.md)","description":"Repairs broken JSON Lines (NDJSON) so that every line is exactly one JSON record and no value changes. Re-joins records that were pretty-printed over several lines, splits records that were glued together on one line, unwraps a JSON array into lines, drops blank lines, code fences and chat text between records, and fixes trailing commas, single quotes, unquoted keys, comments and Python literals inside each record. Numbers are copied as written, never re-serialised. A last record that was cut off, a record with a repeated key, and a leading-zero number that could be a string or a number are refused with a fixed CANNOT REPAIR line instead of being completed or guessed. Use when a log export, a training dataset, a model answer or an API stream was meant to be JSON Lines and a line-by-line parser rejects it, or when asked to fix, clean up or validate NDJSON or JSONL. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/email-dns-cutover-review/file":{"get":{"operationId":"buy_email_dns_cutover_review","summary":"Buy the Email and DNS Cutover Review skill file (SKILL.md)","description":"Reviews a pasted plan, script or configuration for a change to a domain's mail and DNS on Cloudflare (turning on Email Routing, moving MX records, forwarding rules, sending alert mail from a Worker with the send_email binding, SPF, DKIM and DMARC records, deleting the records of an old host, the subject and sender name of automatic mail) and lists the ways it fails without any error. It flags sends to addresses the binding cannot reach, recipient lists that stop at the first bad address, two forwarding rules for one address, foreign MX records that block the switch, two SPF records, deletions without a saved copy, environment markers in square brackets or after the brand, a routing log or one early test mail taken as proof, DMARC or DNS edits attempted through an API token, a noindex element trusted to hide a site from Google, and enforcement switched on before any report. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use before a mail or DNS cutover, when alert or contact-form mail is set up from a Worker, or when someone says a test mail never arrived. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/html-table-to-csv/file":{"get":{"operationId":"buy_html_table_to_csv","summary":"Buy the HTML Table to CSV: Merged Cells and Entities Done Right skill file (SKILL.md)","description":"Converts one HTML table into RFC 4180 CSV and answers with the CSV only, no code fence. The header is the first row, every cell keeps the text a browser shows after entities are decoded (&amp;, &euro;, &#8212;, a no-break space), links, bold and other inline markup vanish and their text stays, a line-break tag becomes a space, and numbers such as 1,250 stay text in quotes. A cell that spans rows or columns (rowspan, colspan) repeats its value in every slot it covers, so the columns line up under the right header. Footer rows go last, a caption is not a row, nothing is summed, sorted or converted. A page with no table, with two tables, or with a table inside a table gets a fixed one-line CANNOT CONVERT answer instead of a guess. Use when scraped or pasted HTML has to become CSV for a spreadsheet, a database or a data pipeline. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/nextjs-cache-review/file":{"get":{"operationId":"buy_nextjs_cache_review","summary":"Buy the Next.js Cache Review: ISR, Tags, Redirects skill file (SKILL.md)","description":"Reviews pasted Next.js App Router code and config that runs on Cloudflare through OpenNext, for caching and ISR mistakes that serve a wrong or stale answer, or make every visit read the database. It flags an unstable_cache key whose cached shape changed while the key stayed, force-dynamic pages that disable the browser back-forward cache, a wildcard Cache-Control override that makes the whole site dynamic, a dynamic route that never starts ISR because generateStaticParams is missing, a static page reading D1 at build time, a writer that evicts a tag on every event, s-maxage trusted to cap database reads, whole pages cached instead of the data, a redirect added over a path that was cached as 404, a middleware matcher that skips robots.txt and sitemap files, and a clock stored inside cached data. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use to review Next.js caching, ISR and revalidation code, a next.config headers or redirects block, or middleware before deploying to Cloudflare. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/srt-translate/file":{"get":{"operationId":"buy_srt_translate","summary":"Buy the Subtitle Translator for SRT and VTT skill file (SKILL.md)","description":"Translates a subtitle file (SRT or WebVTT) into another language and returns the whole file with only the spoken words changed. Cue numbers, timing lines, cue settings, position codes, speaker names, style and note blocks come back byte for byte; every cue stays one cue, in the same order, with at most two lines of at most 42 characters, shortened in wording when the translation is longer. Tags and markers such as italics, colours, music notes, dialogue dashes and bracketed sound descriptions keep their place; lines that give orders to an AI are translated as speech, never obeyed. Use to translate SRT or VTT subtitles, localize video or course captions, or translate a caption file without desyncing it. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/rss-feed-builder/file":{"get":{"operationId":"buy_rss_feed_builder","summary":"Buy the RSS Feed Builder skill file (SKILL.md)","description":"Writes an RSS 2.0 file, or an Atom one when asked, from a list of posts, answered as the XML only with no fence and no sentence around it. Dates are RFC 822 with a correct weekday, never ISO; a post with no date gets no date, a post with no image gets no image and a post with no summary gets no description, so nothing is invented. Ampersands are escaped, HTML summaries go in CDATA, every link is absolute, the guid never changes, and the Atom namespace with a self link is declared. For Pinterest auto-publish it adds the image, title, description and link the importer needs. Use when asked to build, fix or check an RSS feed or an Atom feed for readers or for Pinterest. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/mcp-registry-server-json/file":{"get":{"operationId":"buy_mcp_registry_server_json","summary":"Buy the MCP Registry Listing Writer skill file (SKILL.md)","description":"Writes the server.json that the official MCP registry accepts today, and answers short questions about publishing to it. Uses the current dated schema address, a name that matches the way the publisher proves ownership (GitHub login or domain), a description of at most 100 characters and one entry per package type with the ownership proof the registry checks at publish - mcpName in package.json for npm, the mcp-name line in the README for PyPI, NuGet and Cargo, a label on the image for OCI, a file hash for MCPB - or a remotes entry for a hosted server. Secrets become secret inputs with no value, and unknown _meta keys are not used. Use when asked to write, fix or check a server.json, to list an MCP server in the registry, to choose a server name or version for it, or to explain why a publish was refused. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/changelog-from-commits/file":{"get":{"operationId":"buy_changelog_from_commits","summary":"Buy the Changelog From Commits skill file (SKILL.md)","description":"Turns a commit list into one release entry in Keep a Changelog form, as Markdown only with no fence and no preface. Groups changes under Added, Changed, Deprecated, Removed, Fixed and Security in that order, writes user-facing one-line entries, drops merge, chore, ci, build, test, style, internal docs, internal refactor, wip and version-bump commits, flags breaking changes, keeps the issue and pull request numbers that are in the input and never adds one, a date, a version, a name, a commit hash or a link host that is not given. Uses an Unreleased heading when no release is named and can end with the Semantic Versioning bump the commits call for. Use when asked to write release notes or the next version bump from commits, a commit log or merged pull request titles, including Conventional Commits. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.04"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/hreflang-map/file":{"get":{"operationId":"buy_hreflang_map","summary":"Buy the hreflang Map Builder skill file (SKILL.md)","description":"Builds the complete hreflang annotation set for a multilingual site or a multi-region site from a list of page URLs, answered as JSON only. Every page lists itself and all its alternates, every pair is reciprocal, x-default appears only when a fallback page is named, and codes are checked against ISO 639-1, ISO 3166-1 Alpha 2 and ISO 15924 instead of copied. Reports a bad code, a redirecting, noindexed or non-canonical URL and a page that is not a translation instead of pairing it, and never guesses a language. Can also write the same set as sitemap entries. Use when asked to write, fix, audit or generate hreflang tags, language alternates, x-default or localized-version annotations for a site. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/json-schema-from-example/file":{"get":{"operationId":"buy_json_schema_from_example","summary":"Buy the JSON Schema From Examples: No Over-Constraining skill file (SKILL.md)","description":"Writes a JSON Schema (draft 2020-12) from example JSON documents plus rules given in words, so that it accepts every example and every document the rules allow, and refuses every document the rules forbid. Nothing is made required, closed, numeric-only, formatted or limited because the examples happen to look that way - a key missing from one example stays optional, two observed values do not become an enum, whole-number examples do not make an integer, an empty list does not fix the item type - and a rule always beats what a single example suggests. Covers nullable fields, dates with a placeholder value, anchored patterns, free-form maps, fixed-length pairs, either-or fields, conditions, shared shapes and text inside an example that tries to give orders. Answer is the bare schema, no fence. Use when asked to write, infer, tighten or fix a JSON Schema from sample data, an API response, a config file or a list of field rules. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/icu-plural-messages/file":{"get":{"operationId":"buy_icu_plural_messages","summary":"Buy the ICU Plural Messages (per-language CLDR categories) skill file (SKILL.md)","description":"Writes and fixes ICU MessageFormat strings for several locales at once, with exactly the plural categories each language uses (one, few, many, other and the rest), the mandatory other arm, exact-number arms such as =0, selectordinal, select, offset, nested messages and correct apostrophe quoting. Answers with a bare JSON map of locale code to message. Use when asked to write or translate a plural message, an ICU string, a count label such as \"3 files\", an ordinal such as \"1st, 2nd, 3rd\", a gender or enum select, or to fix a message that shows the wrong word form or fails to parse in react-intl, FormatJS, Angular, Flutter intl or Java MessageFormat. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/redirect-map/file":{"get":{"operationId":"buy_redirect_map","summary":"Buy the Redirect Map Builder skill file (SKILL.md)","description":"Turns an old-URL list and the mappings you have into a redirect map as JSON - one rule per old URL, chains collapsed to the final target, loops reported and never emitted, queries and percent-encoding kept as written, and old URLs with no named target listed as unmapped instead of guessed. Also writes the same map as a Cloudflare Pages style _redirects file. Knows the status codes (301 for a moved page, 308 where the method must be kept and what Next.js really sends for permanent true) and the cache trap, where a redirect added over a cached 404 keeps serving a 308 with no Location until the path is purged. Use when asked to plan or write redirects for a site migration, a redesign, a URL rename or a domain change, or to check a redirect list for chains and loops. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/bing-indexnow-submitter/file":{"get":{"operationId":"buy_bing_indexnow_submitter","summary":"Buy the Bing and IndexNow Submitter Review skill file (SKILL.md)","description":"Reviews code and answers questions about sending page addresses to search engines through IndexNow and the Bing Webmaster URL submission API, and catches the mistakes that make a submitter report success that never happened. It flags a Bing call judged only by its HTTP status when the refusal sits inside the body, a retired XML or SOAP endpoint, a fallback chain that retries after a refusal that is ours, a quota read as one number instead of two, an unread quota printed as zero, a report that does not say which engine accepted, a 200 or 202 read as proof of indexing, a key file that cannot validate, and batches over the limits. For a question it answers in the JSON shape asked. Use to review a URL submission function, work out how many addresses may be sent, or explain what a submission status code means. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.04"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/claude-code-settings-review/file":{"get":{"operationId":"buy_claude_code_settings_review","summary":"Buy the Claude Code Settings Review: Hooks, Permissions, MCP skill file (SKILL.md)","description":"Reviews a pasted Claude Code configuration (settings.json, hooks, permission rules, MCP server switches, scripts that start Claude Code) for keys and meanings that are easy to get wrong and that fail without an error. It flags disabledMcpjsonServers used on a server that does not come from a project's .mcp.json, a settings file with a JSON syntax error, a blocking hook that exits 1 instead of 2, the deprecated top-level approve or block decision of a PreToolUse hook, hook event names that do not exist, matchers that match too much or nothing (the matcher is an unanchored regular expression, and plugin MCP tools carry a plugin prefix), path rules written for Write instead of Edit, single-slash absolute paths, an allow rule for src that matches only the top-level folder, Bash rule patterns with the colon or the space in the wrong place, hook timeouts that are expected to block, bypassPermissions in project settings, and many claude -p runs started at once. Each finding has a fixed code, the place, the reason and a fix, then one verdict. Use to review Claude Code settings, check hook and permission rules, or disable an MCP server correctly before the team relies on the configuration. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/sitemap-builder/file":{"get":{"operationId":"buy_sitemap_builder","summary":"Buy the Sitemap Builder skill file (SKILL.md)","description":"Builds a correct XML sitemap, or a sitemap index file, from a list of pages, answered as the XML document only. Lists only canonical, indexable pages that return 200 on one host, and leaves out redirecting, noindex, non-canonical, removed and other-host addresses. Writes every address absolute and entity-escaped (an ampersand in a query string becomes the escape code), and writes lastmod only when the input gives a real date for that page - never the day the file was generated, never a guess. Writes no priority and no changefreq, which Google ignores. Splits a site above 50,000 URLs or 50 MB uncompressed into several files under an index. Says where the file should live and how to submit it. Use when asked to write, generate, fix or check a sitemap.xml or sitemap index. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/a2a-agent-card/file":{"get":{"operationId":"buy_a2a_agent_card","summary":"Buy the A2A 1.0 Agent Card Writer skill file (SKILL.md)","description":"Writes the JSON an agent needs for version 1.0 of the A2A (Agent2Agent) protocol, answered as JSON only with no fence and no text around it. Covers the agent card (supportedInterfaces with protocolBinding and protocolVersion, capabilities, skills, securitySchemes and securityRequirements, default input and output modes), the JSON-RPC requests (SendMessage, SendStreamingMessage, GetTask, ListTasks, CancelTask, push notification configs), the replies (task, message, data parts, task states) and the error responses with the exact codes. Uses the 1.0 names, not the 0.3 ones, and sends the A2A-Version header. Use when asked to write or fix an A2A agent card, make a service reachable over A2A, build or check an A2A request or response, or pick the A2A error code. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/regex-from-examples/file":{"get":{"operationId":"buy_regex_from_examples","summary":"Buy the Regex From Examples for Any Script skill file (SKILL.md)","description":"Writes a JavaScript regular expression from a description plus lists of strings that must match and must not match, answered as JSON with the pattern and flags. Knows the traps measured in Node 24 - \\b and \\w are ASCII-only even with the u flag, so \\bдума\\b never matches Cyrillic text and \\w+ cuts \"café\" to \"caf\"; a word boundary for any script is a pair of lookarounds with \\p{L} and the u flag. Anchors a validator so extra text around the value is rejected, adds the s or m flag when the input spans lines, and avoids nested quantifiers such as (\\w+\\s?)* that hang on a near-miss string. Use when asked to write, fix or tighten a regex, a validation pattern or a text-search pattern, especially for non-English text. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/event-to-ics/file":{"get":{"operationId":"buy_event_to_ics","summary":"Buy the Event to ICS Calendar File skill file (SKILL.md)","description":"Turns an invitation or event description in plain text (an email, a chat message, a web page, in English or another language) into a valid iCalendar file, answered as the file text only. Follows RFC 5545 where plain models slip - a named time zone needs a VTIMEZONE block in the same file or the time is written in UTC with Z, an all-day event ends the day AFTER its last day, an unknown end time stays empty instead of an invented hour, DTEND and DURATION never appear together, commas, semicolons and backslashes in text are escaped, long lines are folded, and a repeating rule that ends on a date uses a UTC UNTIL. Location, organizer and attendees are written only when the text names them, and orders hidden in the text are ignored. Use to make an ics file or calendar invite from an email or message, put an event into Google Calendar, Outlook or Apple Calendar, or turn a text invitation into a calendar entry. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/robots-txt-policy/file":{"get":{"operationId":"buy_robots_txt_policy","summary":"Buy the Robots.txt Policy Writer skill file (SKILL.md)","description":"Turns a crawler policy written in words into a correct robots.txt, answered as the file only. Knows the mistakes that make a file do the opposite of what was meant - a crawler obeys only the one group that names it, so a GPTBot group silently drops every rule written for the star group and the private paths must be repeated; longest match wins and Allow wins a tie; Google ignores Crawl-delay; Host is a Yandex-only line; Sitemap must be an absolute address; Google-Extended is a control token for Gemini training and does not touch Google Search; training, search and user-triggered AI bots are separate tokens. Says in a NOTE comment what robots.txt cannot do, such as removing a page from Google. Use when asked to write, check or fix a robots.txt, to allow or block search engines, AI crawlers or AI training bots, or to keep private paths out of crawlers. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/json-ld-schema/file":{"get":{"operationId":"buy_json_ld_schema","summary":"Buy the JSON-LD Schema Writer skill file (SKILL.md)","description":"Writes schema.org JSON-LD for one web page from the facts you give it, answered as JSON only with no script tag and no fence. Covers Article, BlogPosting, Product with Offer, BreadcrumbList, FAQPage, Event, Organization, LocalBusiness, Recipe and JobPosting. Leaves out every fact that was not given instead of inventing it: no rating, review, price, availability, author, date or salary appears unless the page states it. Writes prices as plain numbers with an ISO currency code, dates in ISO 8601 with the stated offset, absolute URLs built from the site origin, and breadcrumb positions from 1. Use when asked to write, fix or check JSON-LD, structured data or schema markup for a page, product, article, event, FAQ or breadcrumb. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/search-console-actions/file":{"get":{"operationId":"buy_search_console_actions","summary":"Buy the Search Console Next Action skill file (SKILL.md)","description":"Takes one situation from Google Search Console - a report row, a status, a URL with the way it answers, or a button the site owner is about to press - and returns the single right next action as JSON with a fixed action code, a reason and steps. Knows the cases where the obvious click is wrong - a URL that redirects gets Validate fix and never Request indexing, which creates a Redirect error; a Domain property needs the full sitemap address; Couldn't fetch right after submitting is proven with a live test; a red robots.txt row for a host that answers 404 needs nothing; a missing max-image-preview setting keeps pages out of Discover; Disallow does not remove a page from Google; a redirect added over a cached 404 needs the cache purged. Use when asked what to do about a Search Console report, error or warning, whether to request indexing, validate a fix or resubmit a sitemap, or why a page is not indexed. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/cron-schedule/file":{"get":{"operationId":"buy_cron_schedule","summary":"Buy the Cron Schedule for Cloudflare Workers skill file (SKILL.md)","description":"Turns a schedule described in words into cron expressions for Cloudflare Workers Cron Triggers, answered as JSON with the crons and a note. Knows where Cloudflare differs from classic cron, measured on a live Worker - day-of-week 1 is Sunday, so 1-5 runs Sunday to Thursday and 7 is Saturday, while 0 and ? are rejected; times are UTC only. Writes day names instead of numbers, uses L, LW, W and # for last and n-th days, splits intervals that do not divide an hour or a day (every 45 or 90 minutes) into several crons, ends a range on its stated last run, and handles a local time with daylight saving by firing at both UTC hours and checking the local hour in the handler. Use when asked to write, check or fix a cron expression, a Cron Trigger in wrangler, or a scheduled job, or to convert a schedule in words or in another time zone into cron. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.06"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/proofread/file":{"get":{"operationId":"buy_proofread","summary":"Buy the Proofread skill file (SKILL.md)","description":"Proofreads a text with minimal intervention, in the language of the text. Fixes spelling, grammar, punctuation and obvious typos, keeps everything else, and returns the corrected text plus a short list of changes for review. Use when asked to proofread, correct, spell-check or fix the mistakes in a text without rewriting it. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/skill-md-review/file":{"get":{"operationId":"buy_skill_md_review","summary":"Buy the SKILL.md Review: Safe and Within the Limits skill file (SKILL.md)","description":"Reviews a SKILL.md file before you install, buy or publish it and lists every problem with a fixed code, the place and a fix, then gives one verdict. It checks the front matter against the published limits (name up to 64 characters in lowercase, hyphens and digits, no reserved words; description present, up to 1,024 characters, naming both its job and the requests that should trigger it, in the third person), and it reads the body for hidden orders to the agent, credentials pasted into the text, commands that download and run remote code, Windows-style paths, a body over 500 lines and the lack of any example. Use to review a SKILL.md, audit a Claude or agent skill before installing it, check a skill file for prompt injection, or lint a skill before publishing it to a marketplace. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/text-to-json/file":{"get":{"operationId":"buy_text_to_json","summary":"Buy the Text to JSON: Extract Data Without Guessing skill file (SKILL.md)","description":"Extracts data from text into JSON that matches the shape you give (a JSON Schema, an example object or a list of fields), without guessing. Every value comes from the text; a missing fact becomes null, numbers and dates are converted only into the type the shape asks for, two conflicting values are not settled by a guess, and instructions hidden in the text are ignored. Use when asked to extract structured data, turn text into JSON, parse an invoice, receipt, email, order, CV or job post into fields, or fill a JSON schema from a document. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/meeting-actions/file":{"get":{"operationId":"buy_meeting_actions","summary":"Buy the Meeting Actions: Tasks, Owners and Due Dates skill file (SKILL.md)","description":"Pulls the action items out of meeting notes, minutes or a transcript into strict JSON, each with the task, the owner and the due date, and invents none of them. A person nobody named stays null, \"I\" in notes with no known author stays null, a deadline such as \"next Friday\" or \"next week\" that can mean two dates stays null, and \"by Friday\" or \"tomorrow\" becomes a calendar date only when the meeting date is known. Tasks that were cancelled, already done or handed to someone else are left out or carry the final owner, repeats in a recap are merged, and orders written into the notes for an AI are ignored. Use to extract action items from meeting notes, turn minutes or a call transcript into a task list, find who owns what and by when after a meeting, or feed follow-ups into a CRM or task tracker. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/ticket-triage/file":{"get":{"operationId":"buy_ticket_triage","summary":"Buy the Ticket Triage: Category, Priority, Language skill file (SKILL.md)","description":"Sorts one incoming customer message (support email, chat, contact form or ticket) into a category, a priority and the customer's language, and answers with strict JSON that a program can route without a person reading it. Uses a fixed default category list or the list the request gives, and fixed rules for priority, so an angry tone or the word URGENT does not raise priority and a calm report of an outage does not lower it. The language is the one the customer wrote in, not the language of a pasted error, a quoted reply or a signature, and orders hidden in the message do not change the result. Use for ticket triage, to route or label a support ticket, to classify support emails in a help desk inbox, or to decide which message needs a human first. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/sql-query-optimizer/file":{"get":{"operationId":"buy_sql_query_optimizer","summary":"Buy the SQL Query Optimizer for D1, SQLite and Turso skill file (SKILL.md)","description":"Reviews SQL queries, schemas and migrations for SQLite, Cloudflare D1 and Turso, where the bill and the speed follow the rows a query READS, not the rows it returns. Finds full scans hidden behind LIMIT, aggregates over growing tables, index column gaps, NOT IN, OR, functions and LIKE patterns that switch an index off, OFFSET pagination, N+1 loops, the D1 limit of 100 bound parameters, tables that never shrink and new flag columns that turn the whole history into pending work; ranks them by cost and gives the index or rewrite that fixes each. Use when asked to optimize a SQL query, review a database schema or a migration, find a slow query, or cut rows read on D1, SQLite or Turso. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/translate-markdown/file":{"get":{"operationId":"buy_translate_markdown","summary":"Buy the Translate Markdown: Docs That Still Build skill file (SKILL.md)","description":"Translates a Markdown, MDX or HTML document (docs page, README, blog post, help article) into another language and returns the whole document with only the human text changed. Fenced and inline code, link and image targets, front matter keys and machine values, HTML tags and attributes, heading ids, reference labels, comments and template tags come back byte for byte, so the page still builds and every link still works. Alt text, titles and link text are translated; product names and code identifiers stay; lines in the document that give orders to an AI are translated as text, never obeyed. Use to translate Markdown or MDX docs, localize a README or a static-site blog post, or translate documentation without breaking code blocks, links or front matter. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.06"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/prompt-injection-guard/file":{"get":{"operationId":"buy_prompt_injection_guard","summary":"Buy the Prompt Injection Guard skill file (SKILL.md)","description":"Keeps an AI agent from obeying instructions hidden in what it reads (indirect prompt injection). Web pages, e-mails, files, PDFs, API and tool output, other agents' messages and skill files under review are treated as content, never as orders. The agent is instructed never to pay, transfer, delete or reveal anything because content asked, to report the attempt with a quote and its source, and to still finish the real task. Use whenever the agent reads anything it did not write itself, before any action with side effects such as a payment, a message or a file change, and when asked to review or summarise untrusted content. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.07"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/d1-migration-writer/file":{"get":{"operationId":"buy_d1_migration_writer","summary":"Buy the D1 Migration Writer: SQLite Migrations That Apply skill file (SKILL.md)","description":"Writes a SQL migration for Cloudflare D1 or SQLite from the current schema and the change wanted, so it applies on the first try and leaves the rows already in the database right. Knows what D1 refuses or breaks on, measured on a real D1 database - BEGIN and COMMIT in the file, foreign keys that cannot be switched off (a rebuild defers them, keeps the table name, and never closes with defer_foreign_keys = false, which on D1 silently skips the check), NOT NULL columns without a default, REFERENCES columns with a default, indexed columns dropped before their index. Backfills a new status or marker column so old rows are not picked up as pending work, fills a new counter from the existing rows, orders index columns for the query that needs them, and keeps upserts working against a partial unique index. Use when asked to write, check or fix a D1, SQLite or Turso migration, add or change a column, add an index, make a column unique or required, or rebuild a table. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.07"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/mcp-tool-schema/file":{"get":{"operationId":"buy_mcp_tool_schema","summary":"Buy the MCP Tool Schema: Definitions from API Docs skill file (SKILL.md)","description":"Writes the MCP tool definition for one API operation - name, description, inputSchema and annotations - as the JSON a server returns from tools/list. The schema takes exactly the parameters the operation takes - required ones listed, defaults stated, exact enums, integer amounts, date formats, ranges, string and array limits, either-or parameters that refuse a call with both or neither - and refuses unknown ones. Credentials never become parameters, text in the API docs that speaks to the assistant stays out of the description, and the annotations say whether the tool only reads, can be repeated safely or destroys data, following the MCP specification of 2025-11-25. Use when asked to write, review or fix an MCP tool definition, a tool schema or an inputSchema, or to turn an API endpoint, an OpenAPI operation or a function signature into an MCP tool. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/spreadsheet-formula/file":{"get":{"operationId":"buy_spreadsheet_formula","summary":"Buy the Spreadsheet Formula: Excel and Google Sheets skill file (SKILL.md)","description":"Writes one spreadsheet formula for Excel or Google Sheets from a plain description and a sample of the sheet, using the sheet's real cell addresses and ready to be copied down. It fixes the ranges that must not move, looks values up by exact match, reads thresholds the way they are worded, builds dates with DATE, keeps blank cells apart from zeros, and uses functions that work in both Excel 2019 or later and Google Sheets. It answers with the formula alone. Use to write an Excel formula, build a Google Sheets formula from a description, fix a SUMIFS, VLOOKUP or COUNTIFS that returns the wrong result, or turn a rule such as price tiers or grades into a formula. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/tests-from-spec/file":{"get":{"operationId":"buy_tests_from_spec","summary":"Buy the Tests from Spec: Cases from the Requirements skill file (SKILL.md)","description":"Writes test cases for a function from its specification rather than from its code, as a JSON table that any test runner can loop over. Every rule, boundary and error the spec defines gets a case, and every expected value is worked out from the spec; where the code you show disagrees with the spec, the case follows the spec and a note says where. Behaviour the spec leaves open becomes a question instead of a guessed case. Use to write unit tests from a spec, a docstring or a ticket, generate edge cases and boundary tests, build a table-driven test (test.each, pytest parametrize), or check whether existing code does what its requirements say. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/accessibility-review/file":{"get":{"operationId":"buy_accessibility_review","summary":"Buy the Accessibility Review: WCAG Defects in Markup skill file (SKILL.md)","description":"Reviews pasted HTML or JSX for the accessibility defects a screen reader or keyboard user hits first, and names the WCAG 2.2 success criterion for each. It flags images without a text alternative, form fields without a label, buttons and links with no accessible name, clickable elements that a keyboard cannot reach, focusable content hidden from assistive technology, personal-data fields without autocomplete, data tables without header cells and pages without a language, and it marks heading levels that skip and positive tabindex values as best-practice findings, not WCAG failures. Each finding has a fixed code, the element, the criterion and a fix, then one verdict. Use to review HTML for accessibility, audit a component or page markup for WCAG issues, or check a form or template before release. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/cold-email/file":{"get":{"operationId":"buy_cold_email","summary":"Buy the Cold Email skill file (SKILL.md)","description":"Writes a short, honest first outreach message to a stranger in business, in the recipient's language, with a subject line, one specific reason for writing and one small ask. Use when asked to write a cold email, a first outreach message, a sales or partnership introduction, or a prospecting note, in any language. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/bill-spike-finder/file":{"get":{"operationId":"buy_bill_spike_finder","summary":"Buy the Bill Spike Finder skill file (SKILL.md)","description":"Finds the loops behind a bill spike or an unexpected bill. Reviews a web app's code and config for loops and repeats that run up the bill on their own on Vercel, Turso, Cloudflare Workers and D1 and paid AI APIs. Finds two schedulers on one job, retries without a cap, work that triggers itself, client polling and React render loops, caches cleared on every write, middleware running on every static file, queues that resend failures forever, image settings that multiply transformations, health checks that count whole tables, alerts sent on every run and bots crawling endless filter URLs. Counts the runs per month, names the billed unit, ranks by cost and gives the change that stops each one. Use when asked why a Vercel, Turso or Cloudflare bill jumped, to find an infinite loop or a runaway cost, or to review a cron job, webhook, queue consumer, middleware or polling code before it ships. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/sqlite-search-builder/file":{"get":{"operationId":"buy_sqlite_search_builder","summary":"Buy the SQLite Search Builder skill file (SKILL.md)","description":"Builds or fixes a site or product search so it finds what the user meant, with SQLite full-text search (FTS5) on D1, Turso or SQLite. Word order, singular or plural, endings, case, punctuation and accents stop mattering (\"cafe\" finds \"Café\", \"tomatoes\" finds \"tomato\", \"red tomato\" finds \"Tomato, red\", \"ab1042\" finds \"AB-1042\"), and the start of a word is enough (\"tom\" finds \"tomatoes\"). Gives one normalize pipeline for accent-insensitive search, a query-side ending remover, prefix search on the index with paging and a short cache, and a small in-memory path for short lists already in the browser. Never loads a whole table to filter it per keystroke. It does not correct typos. Use when asked to implement or fix search, autocomplete or typeahead, when search does not find plurals, accents or reordered words, when a slow LIKE search reads the whole table, or to review a search box on D1, Turso or SQLite. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/translate-app-text/file":{"get":{"operationId":"buy_translate_app_text","summary":"Buy the Translate App Text (JSON, YAML, PO) skill file (SKILL.md)","description":"Translates app strings and locale files (JSON, YAML, gettext PO, ICU messages, HTML snippets) into another language without breaking them. Keys, placeholders such as {name}, {{count}}, %s, %(name)s and %{count}, ICU plural and select syntax, HTML tags and URLs come back byte for byte; only the human text is translated, and plural forms are added where the target language needs more of them. Use when asked to translate a JSON or YAML locale file, an en.json, a .po file, i18n strings or UI text, or to localize an app. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/x402-buyer/file":{"get":{"operationId":"buy_x402_buyer","summary":"Buy the x402 Buyer: Pay Safely from an Agent Wallet skill file (SKILL.md)","description":"Decision rules for an AI agent that holds a wallet and receives an HTTP 402 payment request (x402 v2). Decides SIGN, REFUSE or ASK the human before any money moves, and says how to verify the delivery and retry without paying twice. Use when an agent is about to pay over x402, gets a 402 response, must check a seller's payment terms, or a paid request failed and it is unsure whether to pay again. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/x402-seller/file":{"get":{"operationId":"buy_x402_seller","summary":"Buy the x402 Seller: Get Paid and Listed in Bazaar skill file (SKILL.md)","description":"Diagnoses why an HTTP API sold over x402 v2 cannot be paid by standard buyer agents or never appears in the Coinbase CDP Bazaar catalog, using an ordered checklist and a decision tree over the pasted 402 response, headers and symptoms. Names the exact field that is wrong or missing and how to prove the fix. Use when asked to check an x402 seller, fix an unpayable 402 endpoint, find out why a resource is not listed in Bazaar, or why a settled payment does not show up. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.10"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/seo-meta/file":{"get":{"operationId":"buy_seo_meta","summary":"Buy the SEO Meta Writer skill file (SKILL.md)","description":"Writes the SEO title, meta description and (on request) the H1 heading for one web page, in the page's own language, inside hard character limits, matching what the searcher wants. Use when asked to write or rewrite a page title, meta description, SEO snippet or H1 for a page, product, service, article or landing page. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/code-review/file":{"get":{"operationId":"buy_code_review","summary":"Buy the Code Review skill file (SKILL.md)","description":"Reviews a code change (a diff or a changed file pasted as text) and reports real problems ranked by severity — correctness bugs, security holes, data loss, missing error handling, edge cases, resource leaks — each with location, reason and a concrete fix in words. Use when asked to review code, a diff or a pull request, check a change for bugs, or find security problems in a snippet. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills/humanize/file":{"get":{"operationId":"buy_humanize","summary":"Buy the Humanize AI Text skill file (SKILL.md)","description":"Rewrites AI-sounding prose so it reads like a person wrote it — in any language, without dropping facts. Use when asked to humanize a text, make it sound less AI-generated or less like ChatGPT, or clean machine phrasing out of an article, post, email, product description or page. One-time purchase of the SKILL.md file: you pay once, keep it forever, and re-download it and get new versions free with the token from the 200 answer.","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Payment settled. JSON with file.content (the SKILL.md text), sha256, receipt and redownload.token (shown once)."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such skill, or it is not sold as a file."},"409":{"description":"payment_in_progress: the same payment is being processed. Retry the identical header; nothing was charged twice. already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the file only within 60 s of purchase and only when signed by the paying wallet; otherwise the reply carries the receipt, not the file. Use the redownload token from your first response."},"429":{"description":"rate_limited: wait retry_after_seconds. The per-wallet limit counts only fresh authorizations whose signature recovers to that wallet; a header carrying your address with someone else's signature, or a replay of an already-settled authorization, does not count against you. reason lane_hourly_ceiling: our own hourly ceiling on fresh attempts toward the payment facilitator (per signature lane, not per wallet) is reached; the reply carries lane and Retry-After, the number of seconds until the top of the next UTC hour. Nothing was charged and the nonce is not spent - resend the identical header after that, re-sign only if it has expired."},"500":{"description":"Branch on `error` and `retryable`. file_missing / file_corrupt (retryable: true): the payment is recorded; do NOT sign a new authorization. Resend the identical payment header within 60 s of purchase to get the file; after that, report it at https://aiskills402.com/trust#report quoting the tx. payment_accepted_not_delivered (retryable: false): do NOT sign a new authorization; quote the nonce from the body, we reconcile by hand."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/run/mojibake-repair":{"post":{"operationId":"run_mojibake_repair","summary":"Mojibake Repair API: one paid call on one input","description":"Mojibake Repair API: undoes broken encoding (UTF-8 read as Windows-1252, Latin-1 or Windows-1251, once or twice) byte by byte. Deterministic code, no language model: mixed, half-damaged or lost-byte text gets a CANNOT REPAIR verdict instead of a guess (still one paid call). $0.004 USDC per call, no account. POST JSON {input}, up to 60000 chars; free example at https://api.aiskills402.com/v1/run/mojibake-repair/example One payment = one call on one input; a CANNOT REPAIR verdict is a paid answer. Free example and schema: https://api.aiskills402.com/v1/run/mojibake-repair/example","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","additionalProperties":false,"required":["input"],"properties":{"input":{"type":"string","minLength":1,"maxLength":60000,"description":"The garbled text. Up to 60000 characters."},"origin":{"type":["string","null"],"enum":["windows-1251",null],"default":null,"description":"Set to \"windows-1251\" only when the text was written in Windows-1251 (one byte per Cyrillic letter) and read as Windows-1252."},"partial":{"type":"boolean","default":false,"description":"true = in mixed text repair only the groups that reverse cleanly and leave the rest as it is; false = refuse mixed text."}}},"example":{"input":"CafÃ© crÃ¨me","origin":null,"partial":false}}}},"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.004"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Paid and computed. JSON: result (or null), refusal (a CANNOT REPAIR / CANNOT CONVERT text, or null), engine, input_sha256, receipt, replay."},"400":{"description":"invalid_json or invalid_input (field names the problem). Nothing was settled or charged: fix the body and call again."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such endpoint."},"405":{"description":"method_not_allowed: this resource is bought with POST; the reply carries Allow: POST, OPTIONS and the same payment requirements."},"409":{"description":"already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the result only within 60 s of the call, only when signed by the paying wallet and only with the identical body; otherwise the reply carries the receipt and input_sha256. payment_in_progress: the same payment is being processed; retry the identical request."},"413":{"description":"input_too_large: the body is over 65536 bytes or an input field is over the limit. Nothing was settled or charged."},"415":{"description":"unsupported_media_type: send Content-Type: application/json."},"429":{"description":"rate_limited: wait retry_after_seconds. reason payer_hourly_ceiling / lane_hourly_ceiling: our own hourly ceilings on fresh attempts; Retry-After is the seconds to the next UTC hour. Nothing was charged."},"500":{"description":"transform_failed (a bug on our side; nothing was charged) or payment_accepted_not_delivered (do NOT sign a new authorization; quote the nonce, we reconcile by hand). Report at https://aiskills402.com/trust#report."},"503":{"description":"not_selling (including paused_by_operator), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/run/mojibake-repair/example":{"get":{"operationId":"run_example_mojibake_repair","summary":"Free example, schema and price of the Mojibake Repair API","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"skill_not_found"}}}},"/v1/run/csv-repair":{"post":{"operationId":"run_csv_repair","summary":"CSV Repair API: one paid call on one input","description":"CSV Repair API: turns CSV a parser rejects into valid CSV without changing any cell - fixes quotes, pads short rows, unwraps Markdown tables, chat text and fences; 1,250 and 007 stay as written. $0.004 USDC per call, no account, no language model: a too-long row, an ambiguous row or prose with no table gets a paid CANNOT REPAIR verdict. POST JSON {input} up to 60 000 chars; free example at https://api.aiskills402.com/v1/run/csv-repair/example One payment = one call on one input; a CANNOT REPAIR verdict is a paid answer. Free example and schema: https://api.aiskills402.com/v1/run/csv-repair/example","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","additionalProperties":false,"required":["input"],"properties":{"input":{"type":"string","minLength":1,"maxLength":60000,"description":"Text that was meant to be a CSV table and does not parse: open quotes, stray quotes, short rows, a Markdown table, chat text or a fence around the data."},"line_endings":{"enum":["lf","crlf"],"default":"lf","description":"Line break between rows in the output; breaks inside cells are kept as written."}}},"example":{"input":"Here is the export:\n\n```csv\nid,amount,note\n7,\"1,250\",ok\n8,40,Bolt 5\" long\n9,12\n```\n\nHope this helps!","line_endings":"lf"}}}},"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.004"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Paid and computed. JSON: result (or null), refusal (a CANNOT REPAIR / CANNOT CONVERT text, or null), engine, input_sha256, receipt, replay."},"400":{"description":"invalid_json or invalid_input (field names the problem). Nothing was settled or charged: fix the body and call again."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such endpoint."},"405":{"description":"method_not_allowed: this resource is bought with POST; the reply carries Allow: POST, OPTIONS and the same payment requirements."},"409":{"description":"already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the result only within 60 s of the call, only when signed by the paying wallet and only with the identical body; otherwise the reply carries the receipt and input_sha256. payment_in_progress: the same payment is being processed; retry the identical request."},"413":{"description":"input_too_large: the body is over 65536 bytes or an input field is over the limit. Nothing was settled or charged."},"415":{"description":"unsupported_media_type: send Content-Type: application/json."},"429":{"description":"rate_limited: wait retry_after_seconds. reason payer_hourly_ceiling / lane_hourly_ceiling: our own hourly ceilings on fresh attempts; Retry-After is the seconds to the next UTC hour. Nothing was charged."},"500":{"description":"transform_failed (a bug on our side; nothing was charged) or payment_accepted_not_delivered (do NOT sign a new authorization; quote the nonce, we reconcile by hand). Report at https://aiskills402.com/trust#report."},"503":{"description":"not_selling (including paused_by_operator), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/run/csv-repair/example":{"get":{"operationId":"run_example_csv_repair","summary":"Free example, schema and price of the CSV Repair API","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"skill_not_found"}}}},"/v1/run/jsonl-repair":{"post":{"operationId":"run_jsonl_repair","summary":"JSONL Repair API: one paid call on one input","description":"JSONL Repair API: turns broken JSON Lines (NDJSON) into one valid record per line - joins, splits, unwraps, drops fences and chat text, fixes quotes, keys, commas, Python literals; numbers copied as written. $0.003 USDC per call, no account, no language model: a cut-off record, repeated key or ambiguous leading zero gets a paid CANNOT REPAIR verdict. POST JSON {input} up to 60 000 chars; free example at https://api.aiskills402.com/v1/run/jsonl-repair/example One payment = one call on one input; a CANNOT REPAIR verdict is a paid answer. Free example and schema: https://api.aiskills402.com/v1/run/jsonl-repair/example","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","additionalProperties":false,"required":["input"],"properties":{"input":{"type":"string","minLength":1,"maxLength":60000,"description":"Text that was meant to be JSON Lines (NDJSON) and is not: glued, pretty-printed, fenced, array-wrapped or sloppy records."}}},"example":{"input":"Here you go:\n{'id': 1, 'ok': True,}{'id': 2, 'ok': None, 'price': 1.10}"}}}},"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.003"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Paid and computed. JSON: result (or null), refusal (a CANNOT REPAIR / CANNOT CONVERT text, or null), engine, input_sha256, receipt, replay."},"400":{"description":"invalid_json or invalid_input (field names the problem). Nothing was settled or charged: fix the body and call again."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such endpoint."},"405":{"description":"method_not_allowed: this resource is bought with POST; the reply carries Allow: POST, OPTIONS and the same payment requirements."},"409":{"description":"already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the result only within 60 s of the call, only when signed by the paying wallet and only with the identical body; otherwise the reply carries the receipt and input_sha256. payment_in_progress: the same payment is being processed; retry the identical request."},"413":{"description":"input_too_large: the body is over 65536 bytes or an input field is over the limit. Nothing was settled or charged."},"415":{"description":"unsupported_media_type: send Content-Type: application/json."},"429":{"description":"rate_limited: wait retry_after_seconds. reason payer_hourly_ceiling / lane_hourly_ceiling: our own hourly ceilings on fresh attempts; Retry-After is the seconds to the next UTC hour. Nothing was charged."},"500":{"description":"transform_failed (a bug on our side; nothing was charged) or payment_accepted_not_delivered (do NOT sign a new authorization; quote the nonce, we reconcile by hand). Report at https://aiskills402.com/trust#report."},"503":{"description":"not_selling (including paused_by_operator), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/run/jsonl-repair/example":{"get":{"operationId":"run_example_jsonl_repair","summary":"Free example, schema and price of the JSONL Repair API","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"skill_not_found"}}}},"/v1/run/markdown-table-repair":{"post":{"operationId":"run_markdown_table_repair","summary":"Markdown Table Repair API: one paid call on one input","description":"Markdown Table Repair API: turns a broken table, tab-separated text or an HTML table into a GFM table without changing any cell - adds the alignment row and pipes, escapes a pipe in a cell, pads short rows; 007 and 1.10 stay as written. $0.003 USDC per call, no account, no language model: a too-long row or an ambiguous pipe gets a paid CANNOT REPAIR verdict. POST JSON {input} up to 60 000 chars; free example at https://api.aiskills402.com/v1/run/markdown-table-repair/example One payment = one call on one input; a CANNOT REPAIR verdict is a paid answer. Free example and schema: https://api.aiskills402.com/v1/run/markdown-table-repair/example","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","additionalProperties":false,"required":["input"],"properties":{"input":{"type":"string","minLength":1,"maxLength":60000,"description":"A table that was meant to render as Markdown and does not (no alignment row, missing pipes, a literal pipe in a cell), or tab-separated or HTML table data."}}},"example":{"input":"Name | Score | Note\nAnn | 007 | `a|b`\nBob | 1.10 |"}}}},"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.003"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Paid and computed. JSON: result (or null), refusal (a CANNOT REPAIR / CANNOT CONVERT text, or null), engine, input_sha256, receipt, replay."},"400":{"description":"invalid_json or invalid_input (field names the problem). Nothing was settled or charged: fix the body and call again."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such endpoint."},"405":{"description":"method_not_allowed: this resource is bought with POST; the reply carries Allow: POST, OPTIONS and the same payment requirements."},"409":{"description":"already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the result only within 60 s of the call, only when signed by the paying wallet and only with the identical body; otherwise the reply carries the receipt and input_sha256. payment_in_progress: the same payment is being processed; retry the identical request."},"413":{"description":"input_too_large: the body is over 65536 bytes or an input field is over the limit. Nothing was settled or charged."},"415":{"description":"unsupported_media_type: send Content-Type: application/json."},"429":{"description":"rate_limited: wait retry_after_seconds. reason payer_hourly_ceiling / lane_hourly_ceiling: our own hourly ceilings on fresh attempts; Retry-After is the seconds to the next UTC hour. Nothing was charged."},"500":{"description":"transform_failed (a bug on our side; nothing was charged) or payment_accepted_not_delivered (do NOT sign a new authorization; quote the nonce, we reconcile by hand). Report at https://aiskills402.com/trust#report."},"503":{"description":"not_selling (including paused_by_operator), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/run/markdown-table-repair/example":{"get":{"operationId":"run_example_markdown_table_repair","summary":"Free example, schema and price of the Markdown Table Repair API","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"skill_not_found"}}}},"/v1/run/cron-dialect-convert":{"post":{"operationId":"run_cron_dialect_convert","summary":"Cron Dialect Convert API: one paid call on one input","description":"Cron Dialect Convert API: moves a schedule between crontab, GitHub Actions, Cron Hub, Quartz and Cloudflare Workers Cron Triggers so the target fires at exactly the same times - weekday numbers, either/both day rules, macros, time zones. $0.005 USDC per call, no account, no language model: what cannot run at the same times gets a paid CANNOT CONVERT verdict. POST JSON {source, target, schedule, timezone}; free example at https://api.aiskills402.com/v1/run/cron-dialect-convert/example One payment = one call on one input; a CANNOT REPAIR verdict is a paid answer. Free example and schema: https://api.aiskills402.com/v1/run/cron-dialect-convert/example","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","additionalProperties":false,"required":["source","target","schedule"],"properties":{"source":{"type":"string","enum":["crontab","github","cronhub","quartz","cloudflare"],"description":"The scheduler the schedule comes from."},"target":{"type":"string","enum":["crontab","github","cronhub","quartz","cloudflare"],"description":"The scheduler to convert it to."},"schedule":{"type":"string","minLength":1,"maxLength":60000,"description":"The schedule as written in the source: a crontab, a workflow snippet, a Cron Hub job, a Quartz expression or a wrangler crons list."},"timezone":{"type":["string","null"],"maxLength":64,"default":null,"description":"IANA zone of the source schedule (for example Asia/Tokyo), when the schedule itself does not name one."}}},"example":{"source":"crontab","target":"cloudflare","schedule":"0 9 * * 1-5 /opt/jobs/report.sh","timezone":null}}}},"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.005"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Paid and computed. JSON: result (or null), refusal (a CANNOT REPAIR / CANNOT CONVERT text, or null), engine, input_sha256, receipt, replay."},"400":{"description":"invalid_json or invalid_input (field names the problem). Nothing was settled or charged: fix the body and call again."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such endpoint."},"405":{"description":"method_not_allowed: this resource is bought with POST; the reply carries Allow: POST, OPTIONS and the same payment requirements."},"409":{"description":"already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the result only within 60 s of the call, only when signed by the paying wallet and only with the identical body; otherwise the reply carries the receipt and input_sha256. payment_in_progress: the same payment is being processed; retry the identical request."},"413":{"description":"input_too_large: the body is over 65536 bytes or an input field is over the limit. Nothing was settled or charged."},"415":{"description":"unsupported_media_type: send Content-Type: application/json."},"429":{"description":"rate_limited: wait retry_after_seconds. reason payer_hourly_ceiling / lane_hourly_ceiling: our own hourly ceilings on fresh attempts; Retry-After is the seconds to the next UTC hour. Nothing was charged."},"500":{"description":"transform_failed (a bug on our side; nothing was charged) or payment_accepted_not_delivered (do NOT sign a new authorization; quote the nonce, we reconcile by hand). Report at https://aiskills402.com/trust#report."},"503":{"description":"not_selling (including paused_by_operator), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/run/cron-dialect-convert/example":{"get":{"operationId":"run_example_cron_dialect_convert","summary":"Free example, schema and price of the Cron Dialect Convert API","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"skill_not_found"}}}},"/v1/run/bulgarian-transliteration":{"post":{"operationId":"run_bulgarian_transliteration","summary":"Bulgarian Transliteration API: one paid call on one input","description":"Bulgarian Transliteration API: Cyrillic to Latin by the official Bulgarian system (Transliteration Act 2009), not ISO 9 or Russian. Returns the text, a URL slug and the letters Bulgarian does not have. Deterministic code, no language model. $0.003 USDC per call, no account. POST JSON {input}, up to 60000 chars; free example at https://api.aiskills402.com/v1/run/bulgarian-transliteration/example One payment = one call on one input; a CANNOT REPAIR verdict is a paid answer. Free example and schema: https://api.aiskills402.com/v1/run/bulgarian-transliteration/example","tags":["payment"],"security":[],"parameters":[{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","additionalProperties":false,"required":["input"],"properties":{"input":{"type":"string","minLength":1,"maxLength":60000,"description":"Bulgarian text in Cyrillic. Up to 60000 characters."}}},"example":{"input":"Нова статия за България"}}}},"x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.003"},"network":"base","asset":"USDC","payTo":"0x8e37022edcf0f21cf3c9f93fee9d4d32519f36f4"},"responses":{"200":{"description":"Paid and computed. JSON: result (or null), refusal (a CANNOT REPAIR / CANNOT CONVERT text, or null), engine, input_sha256, receipt, replay."},"400":{"description":"invalid_json or invalid_input (field names the problem). Nothing was settled or charged: fix the body and call again."},"402":{"description":"Payment required. The requirements travel in the PAYMENT-REQUIRED header (base64 JSON, x402 v2) and in the body. Nothing is charged by a 402. Also returned when the till is closed (selling: false): then do not sign."},"404":{"description":"skill_not_found: no such endpoint."},"405":{"description":"method_not_allowed: this resource is bought with POST; the reply carries Allow: POST, OPTIONS and the same payment requirements."},"409":{"description":"already_paid: this authorization was already settled - do NOT sign a new one. A replayed header returns the result only within 60 s of the call, only when signed by the paying wallet and only with the identical body; otherwise the reply carries the receipt and input_sha256. payment_in_progress: the same payment is being processed; retry the identical request."},"413":{"description":"input_too_large: the body is over 65536 bytes or an input field is over the limit. Nothing was settled or charged."},"415":{"description":"unsupported_media_type: send Content-Type: application/json."},"429":{"description":"rate_limited: wait retry_after_seconds. reason payer_hourly_ceiling / lane_hourly_ceiling: our own hourly ceilings on fresh attempts; Retry-After is the seconds to the next UTC hour. Nothing was charged."},"500":{"description":"transform_failed (a bug on our side; nothing was charged) or payment_accepted_not_delivered (do NOT sign a new authorization; quote the nonce, we reconcile by hand). Report at https://aiskills402.com/trust#report."},"503":{"description":"not_selling (including paused_by_operator), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/run/bulgarian-transliteration/example":{"get":{"operationId":"run_example_bulgarian_transliteration","summary":"Free example, schema and price of the Bulgarian Transliteration API","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"skill_not_found"}}}},"/v1/run":{"get":{"operationId":"list_run","summary":"List the paid API endpoints (skill as an API) with prices and URLs","tags":["public"],"security":[],"responses":{"200":{"description":"OK"}}}},"/v1/packs/file":{"get":{"operationId":"buy_pack","summary":"Buy a pack of 10-200 skill files you choose, with a discount","description":"Packs: choose any 10 to 200 skills and pay once with a discount (10+ skills: 20% off, 30+ skills: 30% off). GET https://api.aiskills402.com/v1/packs/file?skills=slug-a,slug-b,... with no payment header: the answer is a 402 with the pack price (the sum of the skill prices minus the discount, rounded down). Pay it exactly like a single skill. The 200 answer lists every skill with its file and its OWN redownload token. A pack above $1.00 needs the client cap raised (spendControls.maxAmountPerPayment) or two packs of at least 10. Skills you already own are charged again in this release.","tags":["payment"],"security":[],"parameters":[{"name":"skills","in":"query","required":true,"description":"Comma-separated skill slugs, 10 to 200, each once. Order does not matter; wildcards are refused.","schema":{"type":"string"}},{"name":"x402Version","in":"query","required":false,"description":"Force the older protocol version. Only for clients that speak x402 v1.","schema":{"type":"integer","enum":[1,2],"default":2}}],"responses":{"200":{"description":"Payment settled. JSON with complete, receipt and skills[]: each with file.content (or file: null and a message when it could not be read now) and its own redownload token (shown once)."},"400":{"description":"skills_required, invalid_slug, duplicate_slug, pack_too_small or pack_too_large: fix skills= and ask again."},"402":{"description":"Payment required: the pack price in the PAYMENT-REQUIRED header and body (body.pack: count, sum, discount, price, and buyer_cap_note above $1). Nothing is charged by a 402."},"404":{"description":"skill_not_found: body.skills lists the slugs that are not for sale."},"409":{"description":"already_paid or payment_in_progress, exactly as for a single skill: do NOT sign a new authorization."},"429":{"description":"rate_limited: a pack counts as one attempt. Wait retry_after_seconds and resend the identical header."},"503":{"description":"not_selling (reason paused_by_operator: the till is paused by the operator, Retry-After 3600; /health payment.paused shows it), facilitator_unavailable or temporarily_unavailable: nothing was settled; retry later."}}}},"/v1/skills":{"get":{"operationId":"list_skills","summary":"List the skills for sale, with prices and buy URLs","tags":["public"],"security":[],"responses":{"200":{"description":"OK"}},"parameters":[{"name":"limit","in":"query","required":false,"description":"Page size, at most 24.","schema":{"type":"integer","minimum":1,"maximum":24}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page.","schema":{"type":"string"}},{"name":"q","in":"query","required":false,"description":"Text search (ranked by relevance, no cursor).","schema":{"type":"string"}},{"name":"category","in":"query","required":false,"schema":{"type":"string"}},{"name":"tag","in":"query","required":false,"schema":{"type":"string"}},{"name":"language","in":"query","required":false,"schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","enum":["new","price","popular","featured"]}}]}},"/v1/skills/{slug}":{"get":{"operationId":"get_skill","summary":"One skill card: price, tests, outline, versions","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"skill_not_found"}},"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}]}},"/v1/purchases/{token}":{"get":{"operationId":"redownload","summary":"Re-download a purchased file (and new versions) for free with the token","tags":["public"],"security":[],"responses":{"200":{"description":"OK"},"404":{"description":"not_found"}},"parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string"}}]}},"/health":{"get":{"operationId":"health","summary":"Is the guard alive, and are we selling right now","tags":["public"],"security":[],"responses":{"200":{"description":"OK"}}}},"/a2a":{"post":{"operationId":"a2a","summary":"A2A 1.0 JSON-RPC receptionist: every message is answered with the catalogue guide (no payment taken)","tags":["public"],"security":[],"responses":{"200":{"description":"OK"}}}}}}