Auto-discovered marketplace from adham90/trail
npx claudepluginhub adham90/trailPersistent markdown planning for Claude Code sessions with automatic session recovery
A CLI planning tool that keeps persistent plan files for AI coding agent sessions.
Plans are pure Markdown — the agent reads and edits them directly. Trail handles scaffolding, tracking which plan is active, and parsing task progress.
# 1. Add the marketplace (one-time)
/plugin marketplace add adham90/trail
# 2. Install the plugin
/plugin install trail@trail
That's it. Trail is now active in your project with automatic session recovery.
To manage the plugin later:
/plugin disable trail@trail # Disable without uninstalling
/plugin enable trail@trail # Re-enable
/plugin uninstall trail@trail # Remove completely
Clone the plugin into your project's .claude/plugins/ directory:
mkdir -p .claude/plugins
git clone https://github.com/adham90/trail.git .claude/plugins/trail
The plugin works without the Go binary — hook scripts parse plan files directly. Install the binary for richer trail status output and atomic file operations:
go install github.com/adham90/trail@latest
Once installed, initialize trail in your project:
trail init
This creates:
plans/ directory for your plan filesplans/.current to .gitignoreCLAUDE.mdtrail plan "auth-rewrite" # Create a new plan (or select existing)
# Edit plans/auth-rewrite.md — add tasks, specs, notes
trail status # See progress across all plans
trail archive # Archive when done
When installed as a plugin, trail hooks into Claude Code's lifecycle:
[trail] Active plan: Auth Rewrite (3/7 tasks done)
[trail] Read plans/auth-rewrite.md to resume work.
[trail] Progress: 5/7 tasks done.
[trail] Update checkboxes in plans/auth-rewrite.md before stopping.
This means starting a new session or running /clear never loses plan context.
If you don't have the trail binary installed, you can work with plans directly:
plans/ at your git rootplans/my-plan.md) using the format belowplans/.current to make it activeThe plugin hooks will still detect and display progress from the raw Markdown.
| Command | Description |
|---|---|
trail init | Set up trail in current project (creates plans/, .gitignore, CLAUDE.md) |
trail plan "name" | Create plan (or select if it exists) |
trail plan | List all plans with progress |
trail status | Show progress across all plans |
trail archive [name] | Archive a completed plan |
# Auth Rewrite
## Tasks
- [x] Set up OAuth2 provider
- [x] Configure client credentials
- [x] Test token exchange
- [ ] Replace JWT middleware
Swap out JWT validation for OAuth2 token introspection.
- [ ] Update middleware chain
- [ ] Integration tests pass
- [ ] Migrate sessions
## Notes
Check with DevOps on token rotation policy.
Trail counts only top-level checkboxes (no leading whitespace) under ## Tasks. Indented checkboxes (sub-tasks), descriptions, and other sections are the agent's responsibility.
Running trail init automatically adds instructions to your project's CLAUDE.md. If you prefer to add them manually:
## Planning: trail
Use `trail` for planning across sessions. Plans live in `plans/` as Markdown — read and edit them directly for tasks, specs, notes.
- `trail plan "name"` — create or select a plan
- `trail plan` — list all plans
- `trail status` — progress overview
- `trail archive` — archive completed plan
Plan format: top-level `- [ ]` / `- [x]` under `## Tasks` are counted for progress. Sub-tasks (indented) are for your own tracking.
When installed as a plugin, trail automatically recovers context across sessions:
UserPromptSubmit hook checks for plans/.current[trail] Active plan: Auth Rewrite (3/7 tasks done)Stop hook reminds to update checkboxesThis means /clear or starting a new session never loses plan context.