Intent in-essentials
Core Intent workflow rules for steel threads, agents, treeindex, and session management
install
source · Clone the upstream repo
git clone https://github.com/matthewsinclair/intent
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/matthewsinclair/intent "$T" && mkdir -p ~/.claude/skills && cp -r "$T/intent/plugins/claude/skills/in-essentials" ~/.claude/skills/matthewsinclair-intent-in-essentials && rm -rf "$T"
manifest:
intent/plugins/claude/skills/in-essentials/SKILL.mdsource content
Intent Essentials
Core Intent workflow rules enforced on every interaction. These are mandatory -- no exceptions.
Rules
1. Use intent st
commands for steel thread management
intent stNEVER manually create directories under
intent/st/. NEVER manually edit status: fields in steel thread frontmatter. Use the CLI to manage lifecycle.
# BAD — manual creation mkdir -p intent/st/ST0005 echo "status: active" > intent/st/ST0005/info.md # GOOD — use the CLI intent st new "My steel thread" intent st list intent st show ST0005 intent st edit ST0005
2. Use intent agents sync
to update AGENTS.md
intent agents syncNEVER edit
intent/llm/AGENTS.md directly — it is auto-generated from project state. Manual edits will be overwritten on next sync.
# BAD — direct edit echo "New section" >> intent/llm/AGENTS.md # GOOD — regenerate from project state intent agents sync
3. Use intent treeindex
on subdirectories only
intent treeindexNEVER run
intent treeindex on the project root. Always target specific subdirectories. Run multiple in parallel for speed.
# BAD — project root intent treeindex . # GOOD — target subdirectories intent treeindex bin intent treeindex lib intent treeindex docs # GOOD — parallel execution intent treeindex bin & intent treeindex lib & intent treeindex docs & wait
4. Check .treeindex
before exploring unfamiliar directories
.treeindexBefore deep-diving into an unfamiliar directory with Glob/Grep/Read, check if a pre-computed summary exists. This saves context and avoids redundant exploration.
# GOOD — check the summary first cat intent/.treeindex/lib/.treeindex cat intent/.treeindex/bin/.treeindex
Read
intent/.treeindex/<dir>/.treeindex before scanning the directory contents.
5. Use intent claude skills
for skill management
intent claude skillsNEVER manually create or edit files in
.claude/skills/. Use the CLI for install, sync, and removal. Skills use SHA256 manifests for tracking.
# BAD — manual copy cp some-skill/SKILL.md ~/.claude/skills/my-skill/SKILL.md # GOOD — use the CLI intent claude skills install in-elixir-essentials intent claude skills sync intent claude skills uninstall in-elixir-essentials
6. Steel thread document conventions
Each steel thread lives in
intent/st/<ID>/. The minimum required file is info.md with frontmatter metadata. Optional companion files provide design and tracking.
— required, contains title, status, dates, descriptioninfo.md
— architecture and design decisionsdesign.md
— implementation notes and as-built stateimpl.md
— work breakdown and progress trackingtasks.md
— work packages within a steel threadWP/<NN>/info.md
Frontmatter uses
verblock: format: "DD Mon YYYY:vX.Y: Author - Description"
7. Session wrap-up workflow
Before ending a session, update tracking files to preserve context for the next session:
- Update
with current state and what is nextintent/wip.md - Update
with session restart contextintent/restart.md - Update
with WIP/TODO focus.claude/restart.md - Commit changes before ending session
8. Use intent wp
commands for work package management
intent wpNEVER manually create directories under
intent/st/STXXXX/WP/. Use the CLI.
# BAD -- manual creation mkdir -p intent/st/ST0005/WP/01 echo "status: WIP" > intent/st/ST0005/WP/01/info.md # GOOD -- use the CLI intent wp new ST0005 "Implement core logic" intent wp list ST0005 intent wp start ST0005/01 intent wp done ST0005/01
Red Flags
| Rationalization | Reality |
|---|---|
| "I'll use the CLI later" | Manual creation causes drift. Use the CLI now. |
| "This is too small for a steel thread" | Every piece of work gets tracked. No exceptions. |
| "I know where things are, skip treeindex" | You lose context on compaction. Check treeindex first. |
| "I'll update docs at the end" | Sessions get interrupted. Update docs as you go. |