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 skills/armanfatemi/nullius/intent-to-proposalnpx skills add armanfatemi/nullius --skill intent-to-proposalgit clone --depth 1 https://github.com/armanfatemi/nulliusWrote 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/armanfatemi/nullius/intent-to-proposal)<a href="https://agentmods.dev/skills/armanfatemi/nullius/intent-to-proposal"><img src="https://agentmods.dev/badge/skills/armanfatemi/nullius/intent-to-proposal.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.00087 | $0.07846 |
| Opus 5 | $0.00044 | $0.03923 |
| Sonnet 5 | $0.00017 | $0.01569 |
| Haiku 4.5 | $0.00009 | $0.00785 |
Grade A, and why
intent-to-proposal 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 — 529 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Idea → OpenSpec Proposal
This skill turns a rough idea into a well-scoped, implementation-ready OpenSpec proposal (or set of proposals). Proposals generated without a codebase survey produce under-specified artifacts that cost a full refinement iteration in Stage 2 — closing that gap is why this skill exists.
Boundary with openspec-propose
This repo also has .claude/skills/openspec-propose/SKILL.md — a real, separate tool, not a duplicate of this one. Do not chain into it from here. It takes a change name or a short description, runs openspec new change, and walks the openspec CLI's own schema-driven loop (openspec status, openspec instructions) to fill in the generic template for proposal.md / design.md / tasks.md. That is the right tool when the shape of the change is already decided and what's needed is the paperwork; this skill writes richer artifacts directly, using this repo's enriched templates below, precisely for the case where the shape is not yet decided.
intent-to-proposal owns the opposite case: the idea is still raw. Its phases — the Phase 1 dialogue, the Phase 2 codebase survey, the Phase 3 devil's-advocate refutation, the Phase 4 decomposition call — are the actual work; Phase 5's artifacts are the output of that work, not a template fill-in. If a request already reads like a settled, scoped change, use openspec-propose. If it is a rough problem statement, a symptom, or "figure out what to build," use this skill — the survey-then-refute loop is what openspec-propose's straight-line template loop does not do.
Entry conditions — adapt when you're not starting cold
The phases below assume a cold start from a raw idea. In practice the skill is often invoked mid-session, after work that already did some of Phase 1–2. Adapt rather than redo:
- Continuation (already mid-investigation/debug). If the current session already root-caused a bug or surveyed the touched code, that work is your Phase 1 understanding and part of your Phase 2 survey — don't re-dispatch a redundant Explore over ground you've already covered. But still (a) run the Phase 2 active-changes cross-check (
openspec/changes/) and the per-change-type red-flag check — both are easy to drop when reusing prior work — and (b) run the Phase 3 devil's advocate as a fresh agent. The prior investigation carries the most context bias, so the independent critic matters more, not less. - Idea sourced from a detailed task description. Phase 1 may legitimately produce zero
AskUserQuestionquestions — if the task already answers them, confirm understanding in prose and proceed. Zero questions is correct here, not a skipped phase. - Second idea in the same session. Each new idea gets its own full Phase 1–5. You MAY reuse a prior devil's advocate ONLY when the new idea is in the same architectural class as one already critiqued this session — and only if you say so and why. Otherwise dispatch a fresh one. Do not silently abbreviate the phases.
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 · 529 lines · 87 tokens per session scan A 80f0c0cafd88
intent-to-proposal is a skill published in the GitHub repository armanfatemi/nullius (5 stars, last pushed today), licensed MIT. It adds 87 tokens to every session and 7,846 once invoked, about $0.0004 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
developer-code-organization
Code organization patterns, file structure guidelines, WASM build variants, and string processing conventions for gh-aw Go code.
error-messages
Write consistent, actionable validation error messages in gh-aw.
gh-agent-session
Use gh agent-session commands to inspect and manage agent sessions.
optimize-agentic-workflow
Analyze and reduce token consumption in agentic workflows — guardrail-specific entry points, measurement, and optimization techniques.
github-labels-query
List GitHub repository labels with perpage pagination and name filtering support.
restricted-tool-triage
Operate safely and efficiently inside a gh-aw workflow with a restricted tools/bash allowlist, and correctly triage tool-denial events before they exhaust the session's denial budget.