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/ariel-frischer/autospec/autospec.plangit clone --depth 1 https://github.com/ariel-frischer/autospecWhat 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.00008 | $0.01405 |
| Opus 5 | $0.00004 | $0.00702 |
| Sonnet 5 | $0.00002 | $0.00281 |
| Haiku 4.5 | $0.00001 | $0.00140 |
Grade A, and why
autospec.plan 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 — 205 lines — stays where its author put it; the contents beside it link to each section on GitHub.
User Input
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
Pre-computed Context
The following paths have been pre-computed and are available for use:
- FEATURE_DIR:
{{.FeatureDir}} - FEATURE_SPEC:
{{.FeatureSpec}} - AUTOSPEC_VERSION:
{{.AutospecVersion}} - CREATED_DATE:
{{.CreatedDate}}
Outline
-
Load context:
- Read the spec file at
{{.FeatureSpec}} - Read project constitution if exists (
.autospec/constitution.yamlorAGENTS.md, falling back to agent-specific file likeCLAUDE.md) - Extract: feature description, user stories, requirements, constraints
- Read the spec file at
-
Execute plan workflow:
Phase 0: Outline & Research
a. Identify technical unknowns from the spec:
- For each unclear technology choice → research task
- For each dependency → best practices research
- For each integration → patterns research
b. Resolve unknowns through exploration:
- Examine existing codebase patterns
- Consider project constraints
- Make informed technology decisions
c. Document research findings for inclusion in plan
Phase 1: Design & Architecture
a. Define technical context based on spec and research:
- Language/framework (detect from existing code or choose)
- Primary dependencies
- Storage requirements
- Testing approach
- Target platform
b. Design project structure:
- Documentation files to create
- Source code organization
- Test file locations
c. Identify data model entities from spec requirements
d. Design API contracts if applicable
-
Generate plan.yaml: Create the YAML plan file with this structure:
plan: branch: "<current git branch>" created: "<today's date YYYY-MM-DD>" spec_path: "<relative path to spec file>" summary: | <1-2 paragraph summary of the implementation approach. Explain key technical decisions and how they address the spec requirements.> technical_context: language: "<primary language>" framework: "<framework if applicable, or 'None'>" primary_dependencies: - name: "<dependency name>" version: "<version constraint>" purpose: "<why needed>" storage: "<storage technology or 'None'>" testing: framework: "<test framework>" approach: "<unit/integration/e2e strategy>" target_platform: "<platform(s)>" project_type: "<cli|web|mobile|library|service>" performance_goals: "<specific targets from spec>" constraints: - "<constraint from spec or technical>" scale_scope: "<expected scale/scope>" constitution_check: constitution_path: "<path to constitution file or 'Not found'>" gates: - name: "<principle name from constitution>" status: "PASS" # or "FAIL" or "N/A" notes: "<how this plan addresses the principle>" research_findings: decisions: - topic: "<what was researched>" decision: "<what was chosen>" rationale: "<why chosen>" alternatives_considered: - "<alternative 1>" - "<alternative 2>" data_model: entities: - name: "<entity name>" description: "<what it represents>" fields: - name: "<field name>" type: "<data type>" description: "<purpose>" constraints: "<validation rules>" relationships: - target: "<related entity>" type: "<one-to-many|many-to-many|etc>" description: "<relationship meaning>" api_contracts: endpoints: - method: "<HTTP method>" path: "<endpoint path>" description: "<what it does>" request: content_type: "<content type>" body_schema: "<inline schema or reference>" response: success_code: 200 body_schema: "<inline schema or reference>" errors: - code: 400 description: "<when this occurs>" project_structure: documentation: - path: "<relative path>" description: "<purpose of this file>" source_code: - path: "<relative path or pattern>" description: "<what this contains>" tests: - path: "<relative path or pattern>" description: "<what tests live here>" implementation_phases: - phase: 1 name: "<phase name>" goal: "<what this phase accomplishes>" deliverables: - "<deliverable 1>" - "<deliverable 2>" - phase: 2 name: "<phase name>" goal: "<what this phase accomplishes>" dependencies: - "Phase 1" deliverables: - "<deliverable>" open_questions: - question: "<unresolved question>" context: "<why it matters>" proposed_resolution: "<suggested approach>" _meta: version: "1.0.0" generator: "autospec" generator_version: "{{.AutospecVersion}}" created: "{{.CreatedDate}}" artifact_type: "plan"
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 First seen · 205 lines · 8 tokens per session scan A 60df35831d25
autospec.plan is a command published in the GitHub repository ariel-frischer/autospec (141 stars, last pushed 23d ago), licensed MIT. It adds 8 tokens to every session and 1,405 once invoked, about $0.0000 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-30.
Other commands, from other repositories
spek-knowledge
Search, contribute to, or update the project's knowledge base.
spek-implement
Execute an approved Plan to implement the feature.
spek-new
Create a new Specification for a feature.
spek-plan
Create a new Plan from an approved Specification.
wrapper
Run the {{skill}} skill.
speckit.analyze
Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation. (project).