Feedback-driven skill improvement through tool outcome analysis. Collects execution data and surfaces insights for skill refinement...
Collects PostToolUse feedback, attributes outcomes to skills semantically, and surfaces actionable insights for improving skills.
# Set up feedback collection (one time)
voyager feedback setup
# Use Claude Code normally - feedback is collected automatically
# View insights
voyager feedback insights
# View insights for a specific skill
voyager feedback insights --skill session-brain --errors
feedback-setup / voyager feedback setupInitialize feedback collection by:
.claude/voyager/feedback.db.claude/hooks/post_tool_use_feedback.py.claude/settings.local.json with hook configurationOptions:
--dry-run / -n: Show what would be done without making changes--reset: Delete existing feedback data and start fresh--db PATH: Use a custom database pathskill-insights / voyager feedback insightsAnalyze collected feedback and generate improvement recommendations.
Options:
--skill SKILL / -s SKILL: Filter insights for a specific skill--errors / -e: Show common errors--json: Output results as JSON--db PATH: Use a custom database pathThe system uses a cascade of strategies to attribute tool executions to skills without hardcoded mappings:
Transcript Context (most accurate)
Learned Associations (fast)
ColBERT Index Query (semantic, if available)
find-skill command is availableLLM Inference (comprehensive, disabled by default in hooks)
.claude/voyager/feedback.db (SQLite).claude/hooks/post_tool_use_feedback.pytool_executions: Per-tool execution logs
session_summaries: Per-session aggregates
learned_associations: Tool context → skill mappings
The insights command shows:
voyager feedback insights --errors to see problem areasvoyager feedback insights --skill NAMEreference.md - Technical reference for implementation detailsskills/skill-retrieval/ - Skill indexing for semantic attributionskills/skill-factory/ - Creating new skills from observed patterns