intent-packets

intent-packets is a skill for Claude Code from ijust/intent-planner. It costs 46 tokens per session (6,003 once invoked), scanned A, original, MIT.

A planning tool that breaks a proposed software change into small, testable work packets before any code is written. Each packet records its scope, expected behavior, safety rules, validation, and rollback plan.

In plain words
What is it for?
Use it to prepare implementation plans for software changes, document decisions and invariants, and create handoff-ready packets.
Why use it?
It makes large or risky changes easier to review and undo while preserving the existing application code during planning.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: names the AskUserQuestion tool.

Good fit Use it to prepare implementation plans for software changes, document decisions and invariants, and create handoff-ready packets.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/ijust/intent-planner/intent-packets
Install

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.

Any agent
npx skills add ijust/intent-planner --skill intent-packets
Clone the repo
git clone --depth 1 https://github.com/ijust/intent-planner

Made for: Claude Code.

Wrote 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.

agentmods badge for intent-packets

README.md
[![agentmods](https://agentmods.dev/badge/skills/ijust/intent-planner/intent-packets/github.svg)](https://agentmods.dev/skills/ijust/intent-planner/intent-packets)
Your own site
<a href="https://agentmods.dev/skills/ijust/intent-planner/intent-packets"><img src="https://agentmods.dev/badge/skills/ijust/intent-planner/intent-packets/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for intent-packets

Your own site · 80×15
<a href="https://agentmods.dev/skills/ijust/intent-planner/intent-packets"><img src="https://agentmods.dev/badge/skills/ijust/intent-planner/intent-packets.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 46 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 6,003 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00046 $0.06003
Opus 5.5 $0.00018 $0.02401
Sonnet 5.5 $0.00009 $0.01201
Haiku 4.5 $0.00005 $0.00600

Measured 1mo ago against content hash 11184f22bc26, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

intent-packets 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 1mo 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.

templates/en/claude/skills/intent-packets/SKILL.md · 123 lines

How it starts

The opening of the file, as written. The whole thing — 123 lines — stays where its author put it; the contents beside it link to each section on GitHub.

intent-packets Skill

Core Mission

  • Success Criteria:
    • There are as many packet candidates as the expected change size warrants (do not pad the count; one packet is fine for very small changes; treat 1–7 as a loose guide), and each packet references a parent intent
    • Each packet is drafted as an individual file under .intent/packets/active/ (1 packet = 1 file)
    • Each packet has Scope / Non-scope / Expected Behavior / Decisions / Safety(Invariants) / Validation / Evidence / Rollback / How to Proceed (keep Evidence as an empty section when there is no result)
    • In each packet's ## Decisions section, the common-core slots from decision-slots.md (plus the mode-specific diffs) are each closed with one of the 4 statuses (answered / undetermined / not-applicable / ADR candidate) (do not fill in defaults; do not silently skip)
    • Each packet is at a behavior-preserving / testable / rollbackable granularity
    • No existing packet file has been destroyed (changes are presented as differential update proposals)
    • No application code has been changed at all

When addressing responsibility/dependency boundaries, read “Reflect boundaries in work” in rules/design-boundaries.md before decomposition. Also apply “Migrate existing code incrementally” when migrating existing code.

Execution Steps

  • Before decomposition and priority presentation, read and apply rules/requirement-coverage.md.

Step 1: Read the prerequisites

  • Read .intent/intent-tree.md and .intent/intent-compass.md. If either is missing, guide the user to "run the corresponding command first" and stop.
  • Check at the packets entry: check important decisions carried over from the Tree and Compass under the important-decision contract in CONTRACT.md. When a separate session starts from an existing packet, do not skip this entry check. If a decision has no allowed outcome, stop only the packets in the affected scope supported by evidence; drafting and review of unrelated packets may continue.
  • While reading, when you see an unsettled verb slipped into the settled phrasing of the compass / intent-tree (assume / reuse / planned / TBD / tentative, etc.), do not fix it by guessing; present it as a conversion proposal into Open Questions or an undetermined slot (with the reason and the revisit condition (Revisit when)). Promotion to a fixed value is left to the user's confirmation. Do not re-convert spots already recorded in Open Questions / Deferred / an undetermined slot.
  • Read the mode state in order: the inherited issue directory's discovery/<slug>-<rand>/mode.md (A34; inherit the issue name that discover output) → else the single .intent/mode.local.md (legacy) → else old .intent/mode.md (the CONTRACT.md read fallback contract). If both are absent, default to standard and announce it in Open Questions (do not stop).
  • Read .intent/packets/index.md and the existing packet files under .intent/packets/active/ (the basis for differential updates).
  • Legacy-install handling: if .intent/packets/, plan.md, index.md, or README.md is missing, the skill creates them itself before proceeding (do not wait for a scaffold reinstall).
  • After-the-fact drafting (when implementation ran ahead): when the invocation context or the user's report makes clear that implementation proceeded / completed without a corresponding Packet, treat it with the same procedure as normal drafting (raise the Packet even after the fact; being already implemented is not a reason to skip drafting). In this case:
    • Record the established facts (the wiring / behavior already implemented) as what + constraints + oracle in the packet file.
    • For the spec that cannot yet be fixed (the trigger, threshold, judgment means, etc. — decisions not yet committed to, or placed provisionally), do not fill them by guessing; put them explicitly into the container as Open Questions and Deferred (undecided (deferred, with a revisit condition), always with the revisit condition). "Not drafting a Packet because the spec cannot be fixed" is wrong — holding the unfixed as-is is exactly the Packet's role.
    • Guide the order: first raise the Packet with this skill (the drafting phase), then return the learnings gained from the implementation reality to canonical via a delta with /intent-writeback (the post-implementation phase). These two run in opposite directions; do not perform only writeback while skipping the Packet drafting (the phase boundary follows writeback-protocol.md §3).

Read the full file on GitHub · 123 lines

Changes

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.

  1. 1mo ago Changed · +6 lines 11184f22bc26
  2. 2mo ago First seen · 117 lines · 46 tokens per session scan A c05242226b48

Subscribe to this mod's changes

intent-packets is a skill published in the GitHub repository ijust/intent-planner (5 stars, last pushed 1mo ago), licensed MIT. It adds 46 tokens to every session and 6,003 once invoked, about $0.0002 per session on Opus 5.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.

Related

Other skills, from other repositories