Trace history
Skill tranhieutt/software_development_department/.claude/skills/trace-history
Reads and filters production/traces/decision_ledger.jsonl to display a timeline of agent decisions. Supports filtering by agent, risk_tier, task_id, outcome, and date range.From its SKILL.md
npx -y skills add tranhieutt/software_development_department --skill trace-historyAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
3.1 KB, 661 tokens by cl100k_base, as published. Nobody here has run it
Trace History
Read production/traces/decision_ledger.jsonl and display a filtered, human-readable
timeline of agent decisions.
Execution
The rendering and filtering logic is implemented in scripts/trace-history.sh.
This skill delegates to that script β do NOT re-implement parsing here.
1. Run the backing script
Invoke exactly once, passing $ARGUMENTS through unchanged:
bash scripts/trace-history.sh $ARGUMENTS
The script handles: flag parsing, filtering, rendering (pretty or JSON), empty-ledger short-circuit, and invalid-argument rejection. Return the script's stdout verbatim to the user.
2. Supported flags (all optional)
| Flag | Default | Meaning |
|---|---|---|
--agent <name> | all | Filter by agent_id |
--risk <High|Medium|Low> | all | Filter by risk_tier |
--task <id> | all | Substring match on task_id |
--outcome <pass|fail|blocked|skipped> | all | Filter by outcome |
--since <YYYY-MM-DD> | no limit | Only entries with ts >= date |
--last <N> | 20 | Keep last N after other filters |
--format <pretty|json> | pretty | Output format |
3. Output format
Pretty (default): timeline with risk badges (π΄π‘π’) and outcome emojis
(β
βββοΈ), grouped with separators and totals. Failed/blocked entries trigger
a /resume-from hint automatically.
JSON: raw matching entries as a JSON array β use when piping to another tool.
4. Empty or no-match
The script emits π messages for an empty ledger or zero-match filter. Return
those messages as-is; do not fabricate data.
How decisions get into the ledger
Agents append one JSON line per significant decision to production/traces/decision_ledger.jsonl.
Append format:
{"ts":"2026-04-16T10:30:00Z","session":"main","agent_id":"backend-developer","task_id":"042","request":"Choose JWT signing algorithm","reasoning":"RS256 supports multi-service verification without sharing secrets","choice":"RS256 over HS256","outcome":"pass","risk_tier":"Medium","duration_s":18}
When to write a ledger entry (per coordination-rules.md Rule 15):
- Any decision with
risk_tierMedium or High - Any decision that was disputed or required fallback
- Any Circuit Breaker state transition (CLOSED β OPEN β HALF-OPEN)
- Any cross-agent handoff with a non-trivial acceptance criteria
- Task completion or failure (final outcome of a checkpoint)
Low-risk decisions (trivial style choices, obvious fixes) may be omitted to keep the ledger focused on decisions worth auditing.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.