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 mystilleef/spae-framework --skill spae-inspectgit clone --depth 1 https://github.com/mystilleef/spae-frameworkWrote 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/mystilleef/spae-framework/spae-inspect)<a href="https://agentmods.dev/skills/mystilleef/spae-framework/spae-inspect"><img src="https://agentmods.dev/badge/skills/mystilleef/spae-framework/spae-inspect.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.00024 | $0.01965 |
| Opus 5 | $0.00012 | $0.00983 |
| Sonnet 5 | $0.00005 | $0.00393 |
| Haiku 4.5 | $0.00002 | $0.00197 |
Grade C, and why
spae-inspect scanned grade C with 1 finding 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 6d 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.
Hidden instructionshighPrompt injection
Directives inside HTML comments, invisible characters or bidirectional overrides are read by the model and not by the person reviewing the file.
<!-- prettier-ignore-start --> How it starts
The opening of the file, as written. The whole thing — 195 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Inspect (SPAE)
When to use
STATE.jsonhasphase: inspect.PLAN.mdneeds validation againstSPEC.md, codebase patterns, or technical constraints before execution.
Goal
- Tighten the atomic task graph before execution while keeping the repository source read-only.
- Find gaps between
SPEC.md,PLAN.md, and relevant codebase context. - Fix each classified gap fully; match correction depth to finding severity, not diff size.
- Advance the
workstreamto execution readiness.
Input
Read only what the inspection requires:
.spae/current/SPEC.md.spae/current/PLAN.md.spae/current/STATE.json(consultreferences/STATE.mdfor field reference, directives, and phase snapshots)- Relevant source files for context only.
Never read .spae/current/VERIFY.md—not an input to this phase.
Reading qualifies as content-blocking.
Workflow
- GATE—Read
.spae/current/STATE.json,.spae/current/SPEC.md, and.spae/current/PLAN.md. Halt whenphase ≠ inspect. - ORIENT—Goal: tighten the task graph for execution readiness.
Source stays read-only;
SPEC.mdunchanged. - PLAN—Classify each gap before editing
PLAN.md. Declare the minimal refinements the findings demand. - ACT—Apply classified findings only. Compare requirements, plan
tasks, acceptance criteria, verification steps, dependencies, and
codebase patterns.
- Flag any
SPEC.mdrequirement absent from every task asMust fix. - Flag any task missing an
IntentasMust fix; flag a vague or non-actionableIntentasShould fix; backfill or sharpen it fromSPEC.md(or, for enabling tasks, fromContextand the plan## Goal) during refinement. - Flag any
Satisfies-bearing task's Acceptance section omitting test requirements specified inSPEC.mdor required by task logic asShould fix. - Flag any Verification section lacking test execution commands as
Should fix. - Flag any
Dependenciesentry with aT-NNNID ≥ the declaring task's own ID asMust fix(topological violation). - Flag any cycle—a task transitively depending on itself—as
Must fix. - Flag any
Dependenciesentry referencing aT-NNNabsent fromPLAN.mdasMust fix(dangling reference). - Flag any mismatch between
Task graphmermaid edges and per-taskDependenciesfields asShould fix. - Flag any task with
Satisfies: nonelacking a credible enabling-task rationale in itsContextasShould fix(orphan task—likely scope creep). - Flag any ≥2 adjacent tasks sharing no independent acceptance value
and no dependency-ordering reason for separation as
Should fix(merge candidate). - Classify findings:
Must fix: gaps breaking requirements, contracts, safety, or verification.Should fix: refinements reducing risk or simplifying execution.Observations: useful notes that shouldn't expand scope.
- Refine
PLAN.md: Rewrite what eachMust fixorShould fixdemands—re-split, reorder, add, or remove tasks. Make no change absent a classified finding. Preserve atomic, independently verifiable tasks and contiguous sequentialT-NNNIDs. Consultreferences/prose-protocol.mdbefore rewriting task prose.- Renumber atomically: when adding, removing, or reordering,
update every
T-NNNreference in lockstep—task headers,Task graphmermaid edges, the dependency overview list, and eachDependenciesfield. Leave no dangling or stale ID. - Topological correction: when fixing a topological violation, reorder tasks so every dependency precedes its dependent by ID, then renumber atomically.
- Renumber atomically: when adding, removing, or reordering,
update every
- Flag any
- VERIFY—Loop over every item in
## Verification:- For each failing item: return to
ACT, address it, then re-enterVERIFY. - Exit only when all items pass.
- Fail only for out-of-scope conditions.
- For each failing item: return to
- PERSIST—Write
.spae/current/STATE.jsononce, atomically: setphase: build; set cursoractive_task_idtoT-001; rebuild thetasksregistry to mirror the refinedPLAN.mdIDs, each mapped to todo. Re-readSTATE.jsonafter writing; on a field mismatch, rewrite and re-read beforeREPORT. - REPORT—Emit the result following the result directives and using the result template.
What ships with it
2 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.
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.
- 6d ago First seen · 195 lines · 24 tokens per session scan C 797e58251023
spae-inspect is a skill published in the GitHub repository mystilleef/spae-framework (1 stars, last pushed 1mo ago), licensed MIT. It adds 24 tokens to every session and 1,965 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it C with 1 finding (hidden instructions). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
ahk-review
Preview a code review against ticket/objective alignment, with deep semantic (name-vs-behavior) analysis. No tasks created, no harness tracking.
red-team-assessment
Run an evidence-backed adversarial security assessment through the local llm-cli-gateway stdio MCP server. Use for code, architecture, configuration, data-flow, or supply-chain security review across the full Claude, Codex, Gemini, Grok, Mistral, Devin, and Cursor roster.
multi-llm-consensus
Obtain complete, evidence-backed agreement from a required roster of llm-cli-gateway providers. Use for high-stakes generation, conflict resolution, or final quality gates that require unconditional approval from every required reviewer.
agent-codex-gate
Pattern for spawning subagents whose work must receive an evidence-backed, unconditional Codex review through the local llm-cli-gateway stdio MCP server. Use when parallel implementation tasks need an independent Codex quality gate.
codex-review-gate
Submit completed work to Codex through the local llm-cli-gateway stdio MCP server and continue until an evidence-backed, unconditional approval. Use after implementation, before merging, or whenever a process requires Codex sign-off.
assumptions
Generate an evidence-backed Assumptions ledger for a Git diff, feature, endpoint, worker, migration, or code path. Use when reviewing a change, asking what could break, preparing a release, finding edge cases, assessing deployment safety, analyzing retries or concurrency, or designing failure-focused tests.