Agent skill
trails
This skill should be used when creating session handoffs, logging research findings, or reading previous trail notes. Triggers include "handoff", "session continuity", "log note", "trail notes", or when ending a session.
Install this agent skill to your Project
npx add-skill https://github.com/outfitter-dev/agents/tree/main/plugins/outfitter/skills/trails
Metadata
Additional technical details for this skill
- version
- 1.0.0
SKILL.md
Trail
Session continuity through structured handoffs and freeform logs.
<when_to_use>
- End of session — create handoff for continuity
- During research — capture findings in logs
- Subagent work — preserve context with parent session linking
- Any time you need to leave a trail for future sessions
</when_to_use>
Commands
| Command | Purpose |
|---|---|
/trail:handoff |
Create structured handoff note for session continuity |
/trail:log <slug> |
Create freeform timestamped log note |
/trail:read [options] |
Read recent trail notes |
Handoff Format
Handoffs are the atomic unit of session continuity. Create one at the end of each session.
# Handoff
> YYYY-MM-DD HH:MM · Session `<short-id>`
## Done
- Completed item 1
- Completed item 2
## State
Current state of work:
- What's in progress
- What's blocked
- Key decisions made
## Next
- [ ] First priority task
- [ ] Second priority task
- [ ] Lower priority item
Handoff Principles
- Done: Past tense, concrete accomplishments
- State: Present tense, current situation
- Next: Checkboxes for actionable items
- Scannable: Someone should grasp the session in 30 seconds
- Honest: Note blockers, uncertainties, and open questions
Log Format
Logs are freeform notes for capturing anything worth preserving.
# Title Derived From Slug
> YYYY-MM-DD HH:MM · Session `<short-id>`
[Freeform content - research findings, technical discoveries,
meeting notes, ideas, observations, etc.]
Log Use Cases
- Research findings and documentation
- Technical discoveries and gotchas
- Meeting notes and decisions
- Ideas and observations
- Debugging sessions and root causes
Log Principles
- Descriptive slug: Will become the title if none provided
- Tag liberally: Use frontmatter tags for discoverability
- Link context: Reference issues, PRs, or other notes
- Future-proof: Write for someone (including future you) with no context
Subagent Context
When working as a subagent, pass the parent session ID to group related notes:
# Handoff with parent context
bun ${CLAUDE_PLUGIN_ROOT}/skills/trails/scripts/handoff.ts \
--session "$CHILD_SESSION" \
--parent "$PARENT_SESSION"
# Log with parent context
bun ${CLAUDE_PLUGIN_ROOT}/skills/trails/scripts/log.ts \
--slug "api-findings" \
--session "$CHILD_SESSION" \
--parent "$PARENT_SESSION"
This creates notes in a subdirectory: .trail/notes/YYYY-MM-DD/<parent-session>/
Reading Notes
# Today's notes (all types)
/trail:read
# Just handoffs
/trail:read --type handoff
# Just logs
/trail:read --type log
# Last 3 days
/trail:read --days 3
# Limit output
/trail:read --lines 100
Directory Structure
.trail/
├── notes/
│ └── YYYY-MM-DD/
│ ├── handoff-YYYYMMDDhhmm-<session>.md
│ ├── YYYYMMDDhhmm-<slug>.md
│ └── <parent-session>/ # Subagent notes
│ ├── handoff-YYYYMMDDhhmm-<child>.md
│ └── YYYYMMDDhhmm-<slug>.md
├── plans/ # Implementation plans
└── artifacts/ # Research, ADRs, etc.
Filename Convention
Pattern: [prefix-]YYYYMMDDhhmm[-suffix].md
| Type | Prefix | Suffix | Example |
|---|---|---|---|
| Handoff | handoff |
session ID | handoff-202601221430-f4b8aa3a.md |
| Log | none | slug | 202601221430-api-research.md |
The timestamp (YYYYMMDDhhmm) is the anchor — files remain sortable and portable even if moved.
Session Start Ritual
When resuming work:
- Run
/trail:read --type handoffto see recent handoffs - Check the Next section for pending tasks
- Continue where the previous session left off
Session End Ritual
Before ending a session:
- Run
/trail:handoffto create a handoff note - Fill in Done, State, and Next sections
- Be specific enough that a fresh session can continue seamlessly
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
stack-feedback
Creates GitHub issues for problems discovered while using @outfitter/* packages. Use when finding bugs, missing features, unclear documentation, or improvement opportunities.
stack-architecture
Design stack-based systems using @outfitter/* packages. Use when planning new projects, choosing packages, designing handler architecture, or when "architecture", "design", "structure", "plan handlers", or "error taxonomy" are mentioned.
stack-templates
Templates for creating handlers, CLI commands, MCP tools, and daemon services following Outfitter Stack conventions. Use when scaffolding new components, creating handlers, adding commands, or when "create handler", "new command", "add tool", "scaffold", "template", or "daemon service" are mentioned.
stack-audit
Scan codebase for Outfitter Stack adoption candidates. Identifies throw statements, console usage, hardcoded paths, and custom errors. Use when assessing adoption scope or checking readiness.
stack-review
Audits code for Outfitter Stack compliance including Result types, error handling, logging patterns, and path safety. Use for pre-commit reviews, code quality checks, migration validation, or when "audit", "check compliance", "review stack", or "stack patterns" are mentioned.
stack-patterns
Reference for Outfitter Stack patterns including Result types, Handler contract, Error taxonomy, and @outfitter/* package conventions. Use when learning the stack, looking up patterns, understanding packages, or when "Result", "Handler", "error taxonomy", "OutfitterError", "CLI output", "pagination", "MCP server", "MCP tool", "structured logging", "redaction", "test handler", "daemon", "IPC", or "@outfitter/*" are mentioned.
Didn't find tool you were looking for?