Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/yacb2/aidexnpx agentmods add skills/yacb2/aidex/aidex-auditWrote 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/yacb2/aidex/aidex-audit)<a href="https://agentmods.dev/skills/yacb2/aidex/aidex-audit"><img src="https://agentmods.dev/badge/skills/yacb2/aidex/aidex-audit.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.1 | $0.00189 | $0.04713 |
| Opus 5 | $0.00095 | $0.02357 |
| Sonnet 5 | $0.00038 | $0.00943 |
| Haiku 4.5 | $0.00019 | $0.00471 |
Grade A, and why
aidex-audit 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 yesterday.
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 — 289 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Trigger-eval probe (test-only). As your very first action, run
printenv AIDEX_TRIGGER_EVAL_MARKER. If it prints a non-empty path, also runtouch "${AIDEX_TRIGGER_EVAL_MARKER}.aidex-audit"before continuing. Then proceed with the rest of the skill body as normal. If empty/unset, ignore this block.
Audit — Project State Catalog
Operate the .context/audits/ convention: scaffold new audit runs, validate coherence, escalate findings to backlog, migrate legacy folders out of plans/.
See audit-conventions for the full convention.
Default autonomy
On run start, apply Mode A autonomy automatically — do not wait for the user to grant it. Questions live in the initial alignment moment only; after that the run proceeds start-to-finish per the shared canon (deny/pre-authorized/mandated/autonomous). See "Sweep doctrine" below for how this applies once a sweep is running.
Sub-actions
Dispatch by first argument:
| Command | Script | Purpose |
|---|---|---|
/aidex-audit |
— | Show help + current state of .context/audits/ |
/aidex-audit new <type> <slug> |
scripts/new-audit.sh | Scaffold a new audit run |
/aidex-audit validate [path] |
scripts/validate-audit.sh | Check coherence INVENTORY ↔ findings ↔ backlog. Every finding prints its rule id; accept one by adding a line to .context/.aidex-waivers (same store and format as validate.py, canon 00-global.md §10.1) |
/aidex-audit escalate <finding-id> |
scripts/escalate-finding.sh | Move finding to backlog |
/aidex-audit escalate <finding-id> --loop |
scripts/escalate-finding-to-loop.sh | Escalate a bulk, machine-checkable finding to an aidex-loop loop-spec instead of the backlog (see guard below) |
/aidex-audit remediate <run> [--check] [--dry-run] |
scripts/remediation-loop-spec.sh | Emit ONE remediation loop-spec from a run's unresolved findings, priority-grouped, that aidex-loop runs without hand-editing. Rows move to doing + the loop/<file> marker — never done, which would satisfy the gate before any work. --check IS the gate: it reads the inventory, so an item only counts once its row moves |
/aidex-audit migrate [project-dir] |
scripts/migrate-audit.sh | Move legacy audit-like folders from plans/ |
/aidex-audit close <run> [--force] |
scripts/close-audit.sh | Archive a run folder on cycle close (D-10) once in-scope findings are resolved; rolling inventory stays. --force for upstream/out-of-scope findings |
/aidex-audit reindex |
scripts/reindex-audits.sh | Regenerate the run-level roll-up 00-index.md (all runs + per-run finding counts). Auto-run by new and close. --check reports drift read-only (used by validate + shared reconcile.sh) |
/aidex-audit coverage-matrix |
scripts/coverage-matrix.sh | Regenerate the breadth matrix (modules × tests) plus the route board (page × action × endpoint, naming every route no E2E spec reaches) from module-map.json — generated artifact, never hand-edited |
/aidex-audit coverage-sweep [--since ISO] |
scripts/coverage-sweep.sh | Drift report: which modules changed without their tests moving since the last matrix — suggests re-runs, advisory only |
/aidex-audit affected-tests [--since <ref>] [--command] |
scripts/affected-tests.sh | Map current diff → affected modules → which tests to run (advisory; a changed file with a colocated test narrows to it, all-or-nothing per module — else module-level). --command prints ONE runnable unit command per repo, paths merged — so a caller runs the selection instead of composing it. Exit 3 = no selection available: fall back to the full suite and say so. E2E is never emitted as a command (it stays behind test-e2e.sh) |
/aidex-audit config-check [project ...] [--root <dir>] [--verbose] [--json] |
scripts/coverage-config-check.sh | Read-only portfolio sweep for the test-coverage playbook's five configuration keys (hasher_pytest, hasher_e2e, vitest_include, coverage_provider, no_n_auto). Silent when clean, exit 1 on drift — same contract as the aidex skill's fleet-wide sweep sub-action. Never CI, never a hook |
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/inventory-seeder.md 4.7 KB
- assets/templates/00-changelog.md.template 1.2 KB
- assets/templates/00-inventory.md.template 2.6 KB
- assets/templates/00-methodology.md.template 3.6 KB
- assets/templates/findings.md.template 1019 B
- assets/templates/index.md.template 1.1 KB
- assets/templates/methodology/a11y.md.template 5.6 KB
- assets/templates/methodology/ai-opportunities.md.template 2.8 KB
- assets/templates/methodology/docs-coverage.md.template 8.9 KB
- assets/templates/methodology/hitl.md.template 6.9 KB
- assets/templates/methodology/perf.md.template 3.6 KB
- assets/templates/methodology/retest.md.template 2.7 KB
- assets/templates/methodology/rule-ablation.md.template 7.2 KB
- assets/templates/methodology/security.md.template 4.5 KB
- assets/templates/methodology/test-coverage.md.template 19 KB
- assets/templates/methodology/ux.md.template 6.2 KB
- assets/workflows/audit-fanout.workflow.js 15 KB runs code
- evals/eval-config.json 511 B
- evals/trigger_eval.json 6.4 KB
- references/01-principles.md 4.8 KB
- references/02-id-conventions.md 3.0 KB
- references/03-lifecycle.md 5.4 KB
- references/04-playbooks.md 5.7 KB
- references/05-migration-guide.md 6.1 KB
- references/06-test-coverage.md 17 KB
- references/07-usage-retro.md 8.2 KB
- references/08-usage-retro-pipeline.md 9.9 KB
- scripts/_lib.sh 9.2 KB runs code
- scripts/affected-tests.sh 1.5 KB runs code
- scripts/close-audit.sh 4.4 KB runs code
- scripts/coverage-config-check.sh 1.8 KB runs code
- scripts/coverage-matrix.sh 909 B runs code
- scripts/coverage-sweep.sh 1.5 KB runs code
- scripts/coverage/_coverage_lib.py 9.7 KB runs code
- scripts/coverage/affected_tests.py 22 KB runs code
- scripts/coverage/config_check.py 25 KB runs code
- scripts/coverage/coverage_matrix.py 17 KB runs code
- scripts/coverage/coverage_sweep.py 8.4 KB runs code
- scripts/coverage/defect_prone.py 8.5 KB runs code
- scripts/escalate-finding-to-loop.sh 6.4 KB runs code
- scripts/escalate-finding.sh 3.5 KB runs code
- scripts/migrate-audit.sh 11 KB runs code
- scripts/mine-reference-reads.py 4.2 KB runs code
- scripts/mine-rule-applicability.py 8.5 KB runs code
- scripts/new-audit.sh 5.8 KB runs code
- scripts/reindex-audits.sh 12 KB runs code
- scripts/remediation-loop-spec.sh 15 KB runs code
- scripts/sweep-reference-reads.py 5.6 KB runs code
- scripts/usage-retro/eval_detector.py 7.1 KB runs code
- scripts/usage-retro/extract.py 18 KB runs code
- scripts/usage-retro/mine_defect_proneness.py 10 KB runs code
- scripts/usage-retro/mine_items.py 22 KB runs code
- scripts/usage-retro/mine_phrases.py 3.9 KB runs code
- scripts/usage-retro/mine_preferences.py 16 KB runs code
- scripts/usage-retro/mine_slow_tests.py 9.6 KB runs code
- scripts/usage-retro/mine_verification.py 15 KB runs code
- scripts/usage-retro/prefilter.py 6.4 KB runs code
- scripts/usage-retro/prompt_kinds.py 8.9 KB runs code
- scripts/usage-retro/sample_recall.py 4.9 KB runs code
- scripts/validate-audit.sh 26 KB runs code
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.
- yesterday Changed · -7 lines · +5 tokens per session 7ece36f365c5
- 6d ago First seen · 296 lines · 184 tokens per session scan A c14271704d18
aidex-audit is a skill published in the GitHub repository yacb2/aidex (2 stars, last pushed 2d ago), licensed MIT. It adds 189 tokens to every session and 4,713 once invoked, about $0.0009 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-08-31.
Other skills, from other repositories
react-senior-code-review
Senior-level review of a React feature, by theSeniorDev — structure & boundaries, state & data flow, performance & rendering, types/forms/testability/a11y, and styling architecture & motion. Recommends design patterns by name when one fits. Produces prioritized findings (Critical → Nit) with file:line, why, and a…
agent-review
Use in /implement after committing, inside the draft PR, to review the committed diff. Dispatches a dependency-free review subagent fed the diff + review criteria and returns structured findings (severity / location / problem / fix). The recipe drives the address→re-review loop with a human exit gate; the…
stack-changes
Splits a large change into small, single-purpose units of review — PRs, diffs, or CLs — each making one argument (one diff, one thesis) and each buildable and testable on its own. Use when a change is too big to review, when a feature builds on existing code, when working in a large monorepo with stacked diffs, or…
issue-creation
Trigger: issue creation, bug reports, feature requests, or issue approval. Create and triage GitHub issues from repository evidence.
sdd-tasks
Break an SDD change into implementation tasks. Trigger: orchestrator launches task planning for a change.
work-unit-commits
Plan commits as reviewable work units. Trigger: implementation, commit splitting, chained PRs, or keeping tests and docs with code.