intent-packets

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 CodeCodex

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.

agentmods
npx agentmods add skills/ijust/intent-planner/intent-packets
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, Codex.

Per session 46 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,886 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00046 $0.05886
Opus 5 $0.00023 $0.02943
Sonnet 5 $0.00009 $0.01177
Haiku 4.5 $0.00005 $0.00589

Measured 2d ago against content hash c05242226b48, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, 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 2d 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 · 117 lines

How it starts

The opening of the file, as written. The whole thing — 117 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

Execution Steps

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 · 117 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. 2d 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 2d ago), licensed MIT. It adds 46 tokens to every session and 5,886 once invoked, about $0.0002 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.

Related

Other skills, from other repositories

rulesync

Generates and syncs AI rule configuration files (.cursorrules, CLAUDE.md, copilot-instructions.md) across 20+ coding tools from a single source. Use when syncing AI rules, running rulesync commands, importing or generating rule files, or managing shared AI coding configurations.

dyoshikawa/rulesync · 64 tokens

establishing-project-context

Use when the user asks to establish shared project language, or project work exposes a conflicting, renamed, or deprecated domain term that needs active semantic modeling. Routine small tasks stay on the fast path.

GanyuanRan/Aegis · 45 tokens

autoprompt

Explicit-only useful-first orchestration. Invoke /autoprompt to turn a mission into one executable roadmap, build dependency-safe lanes, and verify the result with independent reviewers. Never infer invocation from ordinary requests. Never resume from leftover artifacts without an explicit resume instruction.

Spielewoy/autoprompt-skill · 56 tokens

office-hours

YC Office Hours — two modes. Startup mode: six forcing questions that expose demand reality, status quo, desperate specificity, narrowest wedge, observation, and future-fit. Builder mode: design thinking brainstorming for side projects, hackathons, learning, and open source. Saves a design doc. Use when asked to…

GCWing/BitFun · 168 tokens

memstack-business-gdpr

Use this skill when the user says 'GDPR', 'data protection', 'privacy compliance', 'DPA', 'DSAR', 'data subject request', 'cookie consent', 'privacy audit', 'CCPA', or asks 'do I need GDPR for this repo'. Scans the repository to detect what personal data is collected, classifies sensitivity, determines whether GDPR…

cwinvestments/memstack · 121 tokens

echo

Use when the user references past sessions, asks 'what did we do', 'do you remember', 'last session', 'recall', or 'continue from'.

cwinvestments/memstack · 35 tokens