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 agentmods add commands/nguyenthienthanh/aura-frog/extendgit clone --depth 1 https://github.com/nguyenthienthanh/aura-frogWrote 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/commands/nguyenthienthanh/aura-frog/extend)<a href="https://agentmods.dev/commands/nguyenthienthanh/aura-frog/extend"><img src="https://agentmods.dev/badge/commands/nguyenthienthanh/aura-frog/extend.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00000 | $0.01170 |
| Opus 5 | $0.00000 | $0.00585 |
| Sonnet 5 | $0.00000 | $0.00234 |
| Haiku 4.5 | $0.00000 | $0.00117 |
Grade A, and why
extend 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.
How it starts
The opening of the file, as written. The whole thing — 84 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/aura-frog:extend
Create project-level skills / rules / commands. Always writes to .claude/ in the user's project — NEVER to the plugin's aura-frog/ folder.
Usage
/aura-frog:extend propose <kind> <description> # interview-driven skeleton; no write yet
/aura-frog:extend create <kind> <name> # write file from approved skeleton
/aura-frog:extend list # show project extensions
/aura-frog:extend remove <kind> <name> # delete a project extension (confirm required)
<kind> ∈ skill | rule | command.
Protocol — propose <kind> <description>
- Verify project context. Refuse if no
.claude/CLAUDE.mdexists ("not an Aura Frog project; run/project initfirst"). - Read project context —
.claude/CLAUDE.md, recent prompts/turns, file tree. Ground the proposal in actual usage. - Draft a skeleton with the right frontmatter for the kind:
skill→ name, description, when_to_use, autoInvoke (default false), user-invocable: false, allowed-tools, effortrule→ priority (Critical/High/Medium), tier (core/agent/workflow), applies_tocommand→ usage block, protocol (imperative), tie-ins
- Show the skeleton to the user with the target path printed.
- Wait for explicit confirmation.
y/yes/looks good/create itadvances to step 6. Anything else aborts. - Run
/aura-frog:extend create <kind> <name>with the approved skeleton.
Protocol — create <kind> <name>
- Resolve target path based on kind:
- skill →
.claude/skills/<name>/SKILL.md - rule →
.claude/rules/<tier>/<name>.md(tier from frontmatter) - command →
.claude/commands/<name>.md
- skill →
- Refuse if path collides with
aura-frog/— explicit error: "/aura-frog:extend writes only to .claude/, never to plugin folder". - Refuse if file already exists — suggest
proposeto draft an update instead. - Create parent directory if missing (
.claude/skills/<name>/etc.). - Write the approved skeleton verbatim.
- Run reference integrity audit (per CLAUDE.md "LESSON LEARNED — Reference Integrity Rule"):
- For new rules: confirm ≥1 inbound reference will exist (or output: "rule created but currently orphaned — wire it from a skill/agent")
- For new skills: confirm description triggers don't shadow an existing plugin skill
- For new commands: confirm name doesn't collide with a plugin command
- Append
.claude/extensions.log(project-local, gitignored by default):{"ts":"<ISO>","kind":"skill","name":"<name>","path":"<rel-path>","reason":"<one-line>"} - Render the post-create summary: kind, path, audit findings.
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 · 84 lines · 0 tokens per session scan A ccf229524fa9
extend is a command published in the GitHub repository nguyenthienthanh/aura-frog (24 stars, last pushed 10d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,170 tokens. 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-08-30.
Other commands, from other repositories
review-agentready
AgentReady-specific code review with attribute mapping and score impact analysis.
speckit.specify
Create or update the feature specification from a natural language feature description.
speckit.checklist
Generate a custom checklist for the current feature based on user requirements.
speckit.implement
Execute the implementation plan by processing and executing all tasks defined in tasks.md.
speckit.tasks
Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
speckit.clarify
Identify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.