Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add chan4lk/specclaw --skill bf-analyzegit clone --depth 1 https://github.com/chan4lk/specclawWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/chan4lk/specclaw/bf-analyze)<a href="https://agentmods.dev/skills/chan4lk/specclaw/bf-analyze"><img src="https://agentmods.dev/badge/skills/chan4lk/specclaw/bf-analyze/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/chan4lk/specclaw/bf-analyze"><img src="https://agentmods.dev/badge/skills/chan4lk/specclaw/bf-analyze.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00105 | $0.00910 |
| Opus 5 | $0.00053 | $0.00455 |
| Sonnet 5 | $0.00021 | $0.00182 |
| Haiku 4.5 | $0.00011 | $0.00091 |
Grade A, and why
bf-analyze scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
specclaw bf-analyze
First, run specclaw-ensure-init .specclaw — idempotently creates .specclaw/ if it doesn't exist (silent if already initialized; auto-inits using the current directory's basename as the project name).
Analyze an existing codebase and write .specclaw/analysis/codebase-report.md. Read-only side-command — no specclaw-validate-change call, no <change> involved, matching the patterns/status pattern.
-
Resolve and collect:
specclaw-bf-analyze-codebase collect .specclaw [path][path]defaults to the repository root when omitted. The script itself validates that[path]exists, resolves inside the repository, and is not.specclawitself or nested inside it. If it exits non-zero, surface its stderr message to the user verbatim and stop — don't retry, don't guess a different path. -
Migrate a pre-upgrade report, if present, before archiving: if
.specclaw/codebase-report.md(the old path) exists and.specclaw/analysis/codebase-report.md(the new path) does not yet exist, move it into the new archive location so it is never orphaned:mkdir -p .specclaw/analysis/archive mv .specclaw/codebase-report.md .specclaw/analysis/archive/$(date +%Y-%m-%d-%H%M%S)-codebase-report.mdSkip this step once the old path is gone — on every run after the first post-upgrade run for a given project, this is a no-op.
-
Archive the prior report, if any, before writing a new one:
mkdir -p .specclaw/analysis/archive mv .specclaw/analysis/codebase-report.md .specclaw/analysis/archive/$(date +%Y-%m-%d-%H%M%S)-codebase-report.mdSkip this step if
.specclaw/analysis/codebase-report.mddoesn't exist yet. -
Spawn the analysis agent:
Agenttool,subagent_type: "bf-codebase-analyst", on the model fromconfig.yamlmodels.review(default:anthropic/claude-sonnet-4-5). Pass as context:- The collected JSON (stdout of Step 1).
- The resolved target path.
-
The agent writes
.specclaw/analysis/codebase-report.mditself, per its own Output section — this skill does not write the file. -
Present a short summary to the user: the path analyzed, which report sections were written, and any low-confidence flags (
Inference (low confidence): ...) the report surfaced. -
Show what comes next:
specclaw-bf-status .specclaw --nextRender its output verbatim, after the summary above — never instead of it. Read-only, writes nothing, costs a second.
Only if this run completed. Step 1 says to surface
collect's stderr and stop; that means stop. A run that did not finish must never print a next step, which would read as though the phase advanced when it did not.Never work the next step out yourself.
specclaw-bf-statusowns the lifecycle ordering for everybf-*command — which phase follows which, which open items are human work, and which command clears them. A next phase decided here would be a second copy of that ordering, diverging the moment either side changes.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 48 lines · 0 tokens per session scan A 387e59757e7f
bf-analyze is a skill published in the GitHub repository chan4lk/specclaw (12 stars, last pushed 5d ago), licensed MIT. It adds 105 tokens to every session and 910 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-05.
Other skills, from other repositories
from-intake
A workflow for reviewing material brought from another workspace and carrying relevant brand evidence into the project's assets. It checks inventories, brand guides, logos, and image sources before anything is used.
upload-assets
An asset-upload workflow that sends files to a console’s content-delivery network and prepares a review-request payload for a person to submit.
review-spec
A workflow for comparing an existing feature specification with the project's review checklist and implementation. It looks for missing requirements, differences between documented screens and actual screens, and lessons from rejected submissions.
wire-sdk
An SDK integration guide for 앱인토스, a platform for building apps inside Toss. It covers permissions, persistent storage, sharing links, screen controls, safe-area spacing, and secure WebSocket connections.
optimize-seo-geo
A workflow for filling only the SEO and GEO sections of a post's front matter. SEO helps a page appear in search results, while GEO prepares information for answer systems that may quote or cite it.
write-spec
A feature-specification workflow that turns a feature request into a Markdown file describing screens, acceptance checks, boundaries, and unanswered questions.