Agent skill

Night Market Diagnostics Toolkit

by athola in athola/claude-night-market

Run and interpret repo diagnostic scripts (ratchets, validators, token stats).

MITAuto-check passed

Install Night Market Diagnostics Toolkit

skills CLI
$ npx skills add athola/claude-night-market --skill night-market-diagnostics-toolkit -a claude-code

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

GitHub CLI
$ gh skill install athola/claude-night-market night-market-diagnostics-toolkit --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/athola/claude-night-market.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/night-market-diagnostics-toolkit .claude/skills/night-market-diagnostics-toolkit && 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
night-market-diagnostics-toolkit
GitHub stars
341
Token cost
~3.4k tokens
SKILL.md length
1,558 words
Files
2 (incl. scripts)
Skills in repo
152
Repo updated
First seen
Licence
MIT

At a glance

Run and interpret repo diagnostic scripts (ratchets, validators, token stats).

  • Measuring health
  • SKILL.md covers The ratchet-baseline concept, Tool table, Health snapshot in one command and Blocking vs advisory, plus 3 more sections
  • Runs Shell scripts from its folder; calls python3, bash and make
  • Use night-market-operations

What it does

Night Market Diagnostics Toolkit is an agent skill from athola/claude-night-market. Run and interpret repo diagnostic scripts (ratchets, validators, token stats). Use when measuring health. Do not use to run tests; use night-market-operations.

Its SKILL.md is about 3.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/health-snapshot.sh`).

The repository describes itself as: 23 Claude Code plugins: TDD enforcement hooks, git/PR workflows, spec-driven development, code review, project lifecycle, fix-from-error, maintenance automation, context… The licence is MIT.

When your agent uses it

  • Measuring health
  • Use night-market-operations

Example prompts

  • “/night-market-diagnostics-toolkit”

Requirements

  • Python 3
  • A Bash shell

What it can do on your machine

Read from SKILL.md and the folder at commit 9f3eb00. 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

    Ships 1 file in scripts/ (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • bash
    • make
    • rg
    • uv

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

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

    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

Night Market Diagnostics Toolkit loads about 3.4k tokens when it runs. Until then it costs about 48 tokens; SKILL.md has 1,558 words of instructions outside code blocks.

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

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); the scripts in this folder are not scanned.

SKILL.md

The full file from athola/claude-night-market at commit 9f3eb00, republished under its MIT licence (© athola). 1,558 words, ~3,396 tokens.

Download SKILL.mdSave it as .claude/skills/night-market-diagnostics-toolkit/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
night-market-diagnostics-toolkit
description
Run and interpret repo diagnostic scripts (ratchets, validators, token stats). Use when measuring health. Do not use to run tests; use night-market-operations.

Night Market Diagnostics Toolkit

Measure instead of eyeballing. Every claim about the health of this repo ("the skill graph is clean", "descriptions fit the budget", "no compromised dependencies") has a script that produces a number or a PASS/FAIL. This skill catalogs those scripts, their exact invocations, and how to read their output.

Conventions for everything below:

  • Run all commands from the repo root (/home/alext/claude-night-market).
  • Plain python3 is enough for every script in the table except mutation testing, which needs uv.
  • All checks here are read-only. None of them mutate the repo.

The ratchet-baseline concept

Several checks are ratchets. A ratchet check counts a category of existing debt (for example, SKILL.md files missing an Exit Criteria section), compares the live count against a frozen number in a baseline JSON file, and:

  • passes while the live count is at or below the baseline (pre-existing debt is tolerated),
  • fails the moment a NEW violation pushes the count above the baseline (debt may not grow),
  • nudges you to lower the baseline number when the live count drops (locking in the win so the debt cannot silently return).

The goal is a baseline that only shrinks, eventually to zero. The two ratchet baselines live at scripts/skill_graph_baseline.json (keys max_dangling_bugs, max_uncalled_libraries) and scripts/skill_exit_criteria_baseline.json (key max_missing_exit_criteria). When a ratchet prints a "dropped to N (baseline M). Lower ... to lock the win." line, edit the baseline JSON down to N in the same PR.

Tool table

Jargon used in the table: "dangling Skill() ref" means a Skill(plugin:name) reference in a skill/command/agent file whose target skill does not exist. "Uncalled library" means a library-role skill no other skill invokes (the risk targeted by .claude/rules/shared-utility-consumer-rule.md).

ToolInvocationWhat it measuresHow to interpretWhen to run
Plugin structure validatorpython3 plugins/abstract/scripts/validate_plugin.py plugins/<name>plugin.json validity, kebab-case naming, directory layoutExit 0 with "Plugin validation passed". Any FAIL line names the broken fileBefore committing plugin changes. make validate-all loops it over every plugin
Skill-graph drift ratchetpython3 scripts/check_skill_graph_drift.pyDangling Skill() refs and uncalled libraries vs skill_graph_baseline.jsonExit 0 at/below baseline. Nonzero exit lists the new dangling refs. "Lower ... to lock the win" means shrink the baselineAfter adding, renaming, or deleting skills or Skill() refs
Exit-criteria drift ratchetpython3 scripts/check_skill_exit_criteria_drift.pySKILL.md files under plugins/ missing an ## Exit Criteria heading vs skill_exit_criteria_baseline.jsonSame ratchet semantics as aboveAfter adding or editing any SKILL.md
Pinned-version checkerpython3 scripts/check_pinned_versions.pyGitHub-sourced tool pins vs the latest upstream release (needs network)"N pin(s) current" is healthy. A "holding X at ..." line documents an intentional hold with its reason (for example bandit 1.8.6 for the Python 3.9 hook floor)In pre-commit, and whenever a CI tool-setup step breaks
Capabilities syncbash scripts/capabilities-sync-check.shplugin.json registrations vs the generated capabilities reference in book/src/"PASSED: All capabilities are in sync" plus counts. On drift, run /sanctum:sync-capabilities --fixAfter changing any skill, command, or agent registration
Supply-chain scanpython3 scripts/supply_chain_scan.pyLockfiles vs the known-compromised-versions blocklist, plus known malicious artifactsTwo [OK] lines is clean. Any hit must be resolved before releaseWhen adding dependencies, during incidents, before releases
Token statspython3 plugins/abstract/scripts/context_optimizer.py stats plugins/ --format jsonBytes and estimated tokens per SKILL.md, bucketed small/medium/largeSkills over ~5,000 estimated tokens breach the quality-gates file limit and are split candidatesWhen a skill feels bloated, before modularizing
Description budgetpython3 plugins/abstract/scripts/validate_budget.pySum of all skill/command description characters vs the 90,000-char ecosystem ceiling (ADR-0004, 160 chars per description)Prints used/ceiling and headroom. Exit 0 means within budgetAfter editing any frontmatter description
skrills validateskrills validate --skill-dir plugins --target claudeSkill frontmatter validity per target framework (Claude, Codex, Copilot)"Validated N skills: ..." then an Errors (n): list with file:line. Fix every listed errorSkill audits. make validate-skills falls back to uv run python scripts/check_plugin_hooks.py when skrills is absent
skrills analyzeskrills analyze --skill-dir pluginsSkill token usage and dependency structureLarge-token outliers are split candidatesBudget planning. make analyze-skills falls back to scripts/generate_dependency_map.py
Mutation testingcd plugins/<name> && uv run mutmut run --paths-to-mutate=scripts/,src/ --tests-dir=tests/Whether the test suite kills injected code mutations (surviving mutants = untested behavior)Exit 0 = no survivors. Exit 2 = survivors found (CI treats this as pass-with-report). Any other exit = crash, investigateWeekly CI (Sunday) or manually before hardening a test suite
Markdown link checkerpython3 scripts/check-markdown-links.py [file.md ...]Broken relative links and anchors. No args = scan the whole repoExit 1 prints each broken link as file: linkAfter moving or renaming docs or skills
Lint-suppression guardpython3 scripts/check_noqa.py <files...>Inline lint/type suppressions that lack a stated reason"BLOCKED" plus a hit list. Fix the issue, or append a reason after the suppression markerPre-commit runs it on changed files
Docstring qualitypython3 scripts/check_docstring_quality.py <files.py...>Docstrings that merely restate the function nameEach hit says "delete it or add information". Do exactly thatPre-commit runs it on changed Python files
JSON-utils driftbash scripts/shared/check-json-utils-drift.shVendored JSON helper copies in plugin hooks vs the canonical scripts/shared/json_utils.sh"OK: all vendored JSON utilities match canonical." Anything else names the drifted copyAfter editing json_utils.sh or any inlined copy
Export statspython3 scripts/clawhub_export.py --statsSkill counts per plugin and top-20 membership for cross-framework exportTotals line plus a per-plugin tableBefore cross-framework publishing
Framework detectpython3 scripts/framework_detect.py [--json]Which agent-framework capabilities the current directory exposes (skills, agents, hooks, commands, mcp, a2a)[+]/[-] capability checklistWhen debugging cross-framework export targets
Show full SKILL.md (678 more words)Show less
Interpretation notes
  • context_optimizer stats prints nothing in the default text format. This is a verified quirk: stats on a directory with no --format flag produces empty output and exit 0. Always pass --format json (clean JSON) rather than --format table, which dumps a raw Python dict.
  • Ratchet failures name the new violations. A ratchet that fails after your change means your change added debt. Fix the new ref or add the missing section. Never raise a baseline number to make a check pass, with one documented exception: a brand-new library skill legitimately starts uncalled, and scripts/check_skill_graph_drift.py itself (plus the _comment in scripts/skill_graph_baseline.json) instructs you to raise max_uncalled_libraries to record the 30-day consumer grace period that .claude/rules/shared-utility-consumer-rule.md grants (the rule grants the grace period; the script defines the baseline mechanics). night-market-architecture-contract records the same exception in its ratchet invariants.
  • Mutation exit codes are the contract. CI (.github/workflows/mutation-testing.yml) treats exit 0 and exit 2 as success and posts survivors to the step summary. Only exits other than 0 and 2 fail the workflow. So a green mutation run does NOT mean zero survivors. Read the report.
  • check_pinned_versions needs network access. It queries GitHub for latest releases. Offline, expect failures that are environmental, not real findings.

Health snapshot in one command

scripts/health-snapshot.sh (in this skill directory) runs the six cheap checks and prints a PASS/FAIL table. It is read-only, needs only bash and python3, requires no network, and completes in about 6 seconds (measured 2026-07-02).

bash
bash .claude/skills/night-market-diagnostics-toolkit/scripts/health-snapshot.sh

It runs: plugin structure validation (all plugins), capabilities sync, supply-chain scan, both drift ratchets, and the description budget. Exit 0 means all six passed. Exit 1 means at least one failed, and the failing check's full output is printed to stderr above the table. Run it at session start, before a PR, and after any bulk skill edit.

Blocking vs advisory

Which failures stop a merge and which are signals:

CheckGateEffect on failure
validate_plugin.pypre-commit (19 hook entries)Blocks commit
Skill-graph drift ratchetpre-commitBlocks commit
Exit-criteria drift ratchetpre-commitBlocks commit
check_noqa.pypre-commitBlocks commit
check_docstring_quality.pypre-commitBlocks commit
check-markdown-links.pypre-commitBlocks commit
validate_budget.pypre-commitBlocks commit
check-json-utils-drift.shpre-commitBlocks commit
check_pinned_versions.pypre-commitBlocks commit
capabilities-sync-check.shpre-commit and CI (capabilities-sync.yml)Blocks commit and PR
Mutation testingCI (weekly and manual dispatch)Advisory: survivors reported, workflow stays green
supply_chain_scan.pymanual / make supply-chain-scan (not wired to CI)Advisory day-to-day, treat as blocking before any release
context_optimizer, skrills analyze, clawhub stats, framework_detectmanualAdvisory: measurement only

The dimension-level policy lives in .claude/quality_gates.json: enforce_blocking is true with max_critical_issues: 3, and only the security dimension sets block_on_violation: true. The performance (20KB / 5,000-token file limits, 60-line functions, complexity under 12), maintainability (debt ratio under 0.3, nesting under 5), and compliance dimensions are advisory (block_on_violation: false). So: security findings block, size/complexity findings warn.

When NOT to use

  • Running the test suite, lint, typecheck, or a release: use night-market-operations (command anatomy and artifacts).
  • You already have a failure and need symptom-to-cause triage: use night-market-debugging-playbook.
  • You need the meaning and default of a config knob rather than a measurement: use night-market-config-catalog.
  • You are deciding whether evidence is sufficient to claim work complete: use night-market-validation-and-qa.

Exit Criteria

  • bash .claude/skills/night-market-diagnostics-toolkit/scripts/health-snapshot.sh runs from the repo root, prints a six-row PASS/FAIL table, and exits 0 when all checks pass and 1 when any fails.
  • Every invocation in the tool table is copy-pasteable from the repo root and executes without a usage error.
  • A reader who has only this file can state the ratchet contract: baseline freezes existing debt, new violations fail, shrinking the baseline locks in wins.
  • The blocking/advisory table matches .pre-commit-config.yaml entries and the block_on_violation flags in .claude/quality_gates.json.
  • Mutation exit-code semantics (0 clean, 2 survivors tolerated, anything else is a crash) match .github/workflows/mutation-testing.yml.

Provenance and maintenance

Compiled 2026-07-02 against repo v1.9.15 on branch discussions-fix-1.9.14. Volatile numbers observed that day: 197 skills, 134 commands, 56 agents registered; description budget 73,135 of 90,000 chars used (81.3%); ratchet live counts 5 dangling refs (baseline 31), 7 uncalled libraries (baseline 8), 1 missing Exit Criteria (baseline 127); 13 version pins current with bandit intentionally held at 1.8.6.

Re-verification one-liners:

bash
# Baselines and live ratchet counts
python3 scripts/check_skill_graph_drift.py; python3 scripts/check_skill_exit_criteria_drift.py

# Registration counts and budget usage
bash scripts/capabilities-sync-check.sh | tail -3; python3 plugins/abstract/scripts/validate_budget.py | tail -3

# Pre-commit wiring of the blocking table
rg -n "check_skill_graph_drift|check_noqa|validate_budget|check_pinned_versions" .pre-commit-config.yaml

# Mutation exit-code contract
rg -n "exit_code" .github/workflows/mutation-testing.yml

# Gate dimension block flags
python3 -c "import json;print(json.load(open('.claude/quality_gates.json')))"

© athola, 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 (scripts) in .claude/skills/night-market-diagnostics-toolkit of athola/claude-night-market.

  • SKILL.md
  • scripts/health-snapshot.sh

Open the folder on GitHubat commit 9f3eb00

Compare with similar skills

Night Market Diagnostics Toolkit 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.

Night Market Diagnostics Toolkit compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Night Market Diagnostics Toolkit this skillathola/claude-night-market341—~3.4kAutomated safety check: PassMIT
Form Validationthedaviddias/Front-End-Checklist74k—~633Automated safety check: PassMIT
Triage Snmp Diagnosticsnetdata/netdata81k—~3kAutomated safety check: PassGPL-3.0
Validateagenticnotetaking/arscontexta3.5k—~3kAutomated safety check: PassMIT
Validating And Publishing CanvasesPostHog/posthog40k—~3.2kAutomated safety check: PassCustom licence
N8n Validation Expertsickn33/agentic-awesome-skills47k2 repos~297Automated safety check: PassMIT

Similar skills

  • Form Validation

    thedaviddias/Front-End-Checklist

    A skill your agent uses when reviewing templates, rendered HTML, or shared components related to Validate forms accessibly.

    74k GitHub stars~633 tokensUpdated 5 days ago
    Frontend & DesignAuto-check passed
  • Investigate captured SNMP diagnostics and support bundles, or review diagnostics-tool and evidence-interpretation changes.

    81k GitHub stars~3k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Validate

    agenticnotetaking/arscontexta

    Schema validation for notes. An agent skill from agenticnotetaking/arscontexta.

    3.5k GitHub stars~3k tokensUpdated 7 mo ago
    Frontend & DesignAuto-check passed
  • Official

    Validate and publish a canvas source project safely: the source-project shape, declared capabilities, reading the current version pointer, iterating on validation diagnostics, guarded publishing…

    40k GitHub stars~3.2k tokensUpdated yesterday
    Auto-check passed
  • N8n Validation Expert

    sickn33/agentic-awesome-skills

    Expert guide for interpreting and fixing n8n validation errors.

    47k GitHub starsUsed in 2 repos~297 tokens
    Productivity & AutomationAuto-check passed
  • Zod Validation Expert

    davila7/claude-code-templates

    Expert in Zod — TypeScript-first schema validation. An agent skill from davila7/claude-code-templates.

    33k GitHub starsUsed in 3 repos~2.4k tokens
    Frontend & DesignAuto-check passed

More from athola/claude-night-market

All 152 skills in this repo
  • Skills Eval

    athola/claude-night-market

    Evaluate Claude skill quality through auditing. An agent skill from athola/claude-night-market.

    341 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed
  • Agent Teams

    athola/claude-night-market

    Coordinates Claude agent teams via filesystem protocol. An agent skill from athola/claude-night-market.

    341 GitHub stars~2.5k tokensUpdated yesterday
    Auto-check passed
  • Delegation Core

    athola/claude-night-market

    Delegates execution to eight CLIs (Gemini, Qwen, MiniMax, GLM, Muse, Codex, OpenCode, Glimmer).

    341 GitHub stars~2.5k tokensUpdated yesterday
    Auto-check passed
  • Elegant Code

    athola/claude-night-market

    Guide minimal code via a decision ladder with full safety, edge, and negative-case coverage.

    341 GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed
  • Skill Library Mission

    athola/claude-night-market

    Build a project skill library in .claude/skills/ via discovery, parallel authoring, and review.

    341 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed
  • Mission Orchestrator

    athola/claude-night-market

    Orchestrates full project lifecycle by auto-detecting state and routing to the correct phase.

    341 GitHub stars~3.4k tokensUpdated yesterday
    Auto-check: warnings

Questions about Night Market Diagnostics Toolkit

What does Night Market Diagnostics Toolkit do?

Run and interpret repo diagnostic scripts (ratchets, validators, token stats). Night Market Diagnostics Toolkit is an agent skill from athola/claude-night-market. Run and interpret repo diagnostic scripts (ratchets, validators, token stats).

When should I use Night Market Diagnostics Toolkit?

Night Market Diagnostics Toolkit fits situations like: measuring health; use night-market-operations.

How do I install Night Market Diagnostics Toolkit in Claude Code?

Run `npx skills add athola/claude-night-market --skill night-market-diagnostics-toolkit -a claude-code`. Or copy the skill folder (.claude/skills/night-market-diagnostics-toolkit in athola/claude-night-market) into .claude/skills/night-market-diagnostics-toolkit in your project. Claude Code loads it when a task matches its description.

How do I install Night Market Diagnostics Toolkit in Codex?

Run `npx skills add athola/claude-night-market --skill night-market-diagnostics-toolkit -a codex`. Or copy the skill folder (.claude/skills/night-market-diagnostics-toolkit in athola/claude-night-market) into .agents/skills/night-market-diagnostics-toolkit in your project. Codex loads it when a task matches its description.

Can I use Night Market Diagnostics Toolkit 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 athola/claude-night-market --skill night-market-diagnostics-toolkit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/night-market-diagnostics-toolkit, .gemini/skills/night-market-diagnostics-toolkit, .github/skills/night-market-diagnostics-toolkit and .opencode/skills/night-market-diagnostics-toolkit in your project.

What does Night Market Diagnostics Toolkit need to run?

Going by SKILL.md and its folder, Night Market Diagnostics Toolkit needs a shell for the scripts in its folder and the command-line tools its instructions call (python3, bash, make, rg and uv). Our summary lists: Python 3; A Bash shell.

Does Night Market Diagnostics Toolkit access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Night Market Diagnostics Toolkit 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Night Market Diagnostics Toolkit use?

Night Market Diagnostics Toolkit 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 Night Market Diagnostics Toolkit use?

About 3.4k tokens (SKILL.md is roughly 14k 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 Night Market Diagnostics Toolkit?

Skills that share tags, products or a category with Night Market Diagnostics Toolkit: Form Validation (thedaviddias/Front-End-Checklist, 74k stars), Triage Snmp Diagnostics (netdata/netdata, 81k stars), Validate (agenticnotetaking/arscontexta, 3.5k stars) and Validating And Publishing Canvases (PostHog/posthog, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Night Market Diagnostics Toolkit?

athola (a GitHub user) maintains it in athola/claude-night-market, which has 341 GitHub stars. The repository holds 152 skills in this directory. The repository was last updated on October 9, 2026.

Source: athola/claude-night-market on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.