Agent skill

JSON Repair Docs Demo Local Test

by mangiucugna in mangiucugna/json_repair

Runs the json_repair docs demo against a local Flask API and static server, so changes to docs/app.py or the docs UI are checked end to end before publishing.

MITAuto-check passedTesting & QA

Install JSON Repair Docs Demo Local Test

skills CLI
$ npx skills add mangiucugna/json_repair --skill docs-demo-local-test -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mangiucugna/json_repair docs-demo-local-test --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mangiucugna/json_repair.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/docs-demo-local-test .claude/skills/docs-demo-local-test && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
docs-demo-local-test
GitHub stars
5.1k
Token cost
~549 tokens
SKILL.md length
159 words
Files
2
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Runs the json_repair docs demo against a local Flask API and static server, so changes to docs/app.py or the docs UI are checked end to end before publishing.

  • Works in 5 steps: Start the local demo API server → Start the local static site server → Open http://127.0.0.1:4173/index.html. → …
  • Verifying changes to docs/app.py before publishing the demo
  • SKILL.md covers Overview, Workflow and Troubleshooting
  • Calls uv and python3; reaches mangiucugna.pythonanywhere.com

What it does

This workflow checks the docs demo with local code only, without calling the deployed PythonAnywhere API. It is the default way to verify changes to `docs/app.py`, `docs/index.js`, `docs/index.html`, `docs/index.zh.html` and `docs/styles.css`. The agent starts the demo API with `uv run --with flask --with flask-cors python docs/app.py`, serves the docs folder with Python's http.server on port 4173 and opens the page in a browser.

Because the page normally calls the hosted API, a snippet in devtools patches `fetch` so requests go to the local server on port 5000. The agent then runs a schema coercion check: a JSON object whose value is the string 1, with a trailing comma, and an integer schema should come back with the number 1 and a log line saying a string was coerced to an integer. It confirms the POST goes to the local repair-json endpoint, optionally takes a screenshot and stops both servers with Ctrl+C. Troubleshooting notes cover uv cache permission errors, missing Flask modules and a fetch patch that did not apply.

When your agent uses it

  • Verifying changes to docs/app.py before publishing the demo
  • Testing docs UI edits against the local repair API
  • Confirming schema coercion behavior in the browser demo

Example prompts

  • “I changed docs/app.py. Test the JSON repair demo locally before I publish.”
  • “Run the docs demo against the local backend and confirm the request goes to 127.0.0.1.”
  • “The demo still shows production output after my edit. Check whether the fetch patch applied.”

Requirements

  • uv and Python 3
  • Flask and flask-cors, installed through uv run
  • A browser with devtools

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Start the local demo API server
  2. Start the local static site server
  3. Open http://127.0.0.1:4173/index.html.
  4. In browser devtools, patch fetch so the page hits local API instead of PythonAnywhere
  5. Run a schema coercion check

What it can do on your machine

Read from SKILL.md and the folder at commit 975ea5f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uv
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • mangiucugna.pythonanywhere.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

JSON Repair Docs Demo Local Test loads about 549 tokens when it runs. Until then it costs about 49 tokens; SKILL.md has 159 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~49
When it runs · the whole SKILL.md, loaded when a task matches
~549

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from mangiucugna/json_repair at commit 975ea5f, republished under its MIT licence (© mangiucugna). 159 words, ~549 tokens.

Download SKILL.mdSave it as .claude/skills/docs-demo-local-test/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
docs-demo-local-test
description
Test the docs JSON repair demo against local backend changes before publishing. Use this when modifying docs/app.py or docs UI files and you need local end-to-end verification.

Docs Demo Local Test

Overview

Use this workflow to validate docs demo behavior with local code only, without relying on the deployed PythonAnywhere API. This is the default verification path for docs/app.py, docs/index.js, docs/index.html, docs/index.zh.html, and docs/styles.css changes.

Workflow

  1. Start the local demo API server:
bash
UV_CACHE_DIR=/tmp/uv-cache uv run --with flask --with flask-cors python docs/app.py
  1. Start the local static site server:
bash
python3 -m http.server 4173 --directory docs
  1. Open http://127.0.0.1:4173/index.html.
  2. In browser devtools, patch fetch so the page hits local API instead of PythonAnywhere:
javascript
() => {
  const target = "https://mangiucugna.pythonanywhere.com/api/repair-json";
  const local = "http://127.0.0.1:5000/api/repair-json";
  const originalFetch = window.fetch.bind(window);
  window.fetch = (input, init) => {
    let nextInput = input;
    if (typeof input === "string" && input === target) {
      nextInput = local;
    } else if (input instanceof Request && input.url === target) {
      nextInput = new Request(local, input);
    }
    return originalFetch(nextInput, init);
  };
  return "fetch patched";
}
  1. Run a schema coercion check:
  • Input JSON: {"value":"1",}
  • Schema: {"type":"object","properties":{"value":{"type":"integer"}},"required":["value"]}
  • Expected output JSON: {"value": 1}
  • Expected log contains: Coerced string to integer
  1. Confirm network request target is local:
  • POST http://127.0.0.1:5000/api/repair-json
  1. Capture screenshot if needed.
  2. Stop both local servers with Ctrl+C.

Troubleshooting

  • If uv run fails with cache permission errors, rerun with UV_CACHE_DIR=/tmp/uv-cache.
  • If Flask modules are missing, keep using uv run --with flask --with flask-cors ....
  • If output still matches production behavior, the fetch patch did not apply; reload and patch again before typing input.

© mangiucugna, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .agents/skills/docs-demo-local-test of mangiucugna/json_repair.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit 975ea5f

Compare with similar skills

JSON Repair Docs Demo Local Test next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

JSON Repair Docs Demo Local Test compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
JSON Repair Docs Demo Local Test this skillmangiucugna/json_repair5.1k—~549Automated safety check: PassMIT
Web Application Testinganthropics/skills180k51 repos~966Automated safety check: PassApache-2.0
RStudio Selenium to Playwright Migrationrstudio/rstudio5.1k—~3.6kAutomated safety check: PassCustom licence
Webapp TestingxenitV1/Antigravity-Workflows1301 repos~947Automated safety check: NotesMIT
Python Testingmacalbert/envilder138—~3.1kAutomated safety check: PassMIT
Error Explanation GeneratorArabelaTso/Skills-4-SE253—~3.8kAutomated safety check: PassApache-2.0

Similar skills

  • Web Application Testing

    anthropics/skills

    Official

    Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.

    180k GitHub starsUsed in 51 repos~966 tokens
    Testing & QAAuto-check passed
  • Converts RStudio Python Selenium electron tests into TypeScript Playwright tests, checking each against a live RStudio before counting it as migrated.

    5.1k GitHub stars~3.6k tokensUpdated today
    Testing & QAAuto-check passed
  • Webapp Testing

    xenitV1/Antigravity-Workflows

    Web application testing principles. An agent skill from xenitV1/Antigravity-Workflows.

    130 GitHub starsUsed in 1 repo~947 tokens
    Testing & QAAuto-check: notes
  • Python Testing

    macalbert/envilder

    Mandatory testing conventions including AAA pattern, test naming, assertions, and mocks.

    138 GitHub stars~3.1k tokensUpdated 5 days ago
    Testing & QAAuto-check passed
  • Error Explanation Generator

    ArabelaTso/Skills-4-SE

    Explains test failures and provides actionable debugging guidance.

    253 GitHub stars~3.8k tokensUpdated 1 mo ago
    Testing & QAAuto-check passed
  • Playwright

    secondsky/claude-skills

    Browser automation and E2E testing with Playwright. An agent skill from secondsky/claude-skills.

    227 GitHub stars~3.7k tokensUpdated 12 days ago
    Testing & QAAuto-check: notes

Works with

Categories

Questions about JSON Repair Docs Demo Local Test

What does JSON Repair Docs Demo Local Test do?

Runs the json_repair docs demo against a local Flask API and static server, so changes to docs/app.py or the docs UI are checked end to end before publishing. This workflow checks the docs demo with local code only, without calling the deployed PythonAnywhere API.css`.

When should I use JSON Repair Docs Demo Local Test?

JSON Repair Docs Demo Local Test fits situations like: verifying changes to docs/app.py before publishing the demo; testing docs UI edits against the local repair API; confirming schema coercion behavior in the browser demo.

How do I install JSON Repair Docs Demo Local Test in Claude Code?

Run `npx skills add mangiucugna/json_repair --skill docs-demo-local-test -a claude-code`. Or copy the skill folder (.agents/skills/docs-demo-local-test in mangiucugna/json_repair) into .claude/skills/docs-demo-local-test in your project. Claude Code loads it when a task matches its description.

How do I install JSON Repair Docs Demo Local Test in Codex?

Run `npx skills add mangiucugna/json_repair --skill docs-demo-local-test -a codex`. Or copy the skill folder (.agents/skills/docs-demo-local-test in mangiucugna/json_repair) into .agents/skills/docs-demo-local-test in your project. Codex loads it when a task matches its description.

Can I use JSON Repair Docs Demo Local Test in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mangiucugna/json_repair --skill docs-demo-local-test -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/docs-demo-local-test, .gemini/skills/docs-demo-local-test, .github/skills/docs-demo-local-test and .opencode/skills/docs-demo-local-test in your project.

What does JSON Repair Docs Demo Local Test need to run?

Going by SKILL.md and its folder, JSON Repair Docs Demo Local Test needs the command-line tools its instructions call (uv and python3). Our summary lists: uv and Python 3; Flask and flask-cors, installed through uv run; A browser with devtools.

Does JSON Repair Docs Demo Local Test access the network?

SKILL.md names 1 domain. In commands or code: mangiucugna.pythonanywhere.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is JSON Repair Docs Demo Local Test safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does JSON Repair Docs Demo Local Test use?

JSON Repair Docs Demo Local Test is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does JSON Repair Docs Demo Local Test use?

About 549 tokens (SKILL.md is roughly 2.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to JSON Repair Docs Demo Local Test?

Skills that share tags, products or a category with JSON Repair Docs Demo Local Test: Web Application Testing (anthropics/skills, 180k stars), RStudio Selenium to Playwright Migration (rstudio/rstudio, 5.1k stars), Webapp Testing (xenitV1/Antigravity-Workflows, 130 stars) and Python Testing (macalbert/envilder, 138 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains JSON Repair Docs Demo Local Test?

mangiucugna (a GitHub user) maintains it in mangiucugna/json_repair, which has 5,120 GitHub stars. The repository was last updated on October 9, 2026.

Source: mangiucugna/json_repair on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.