Are your decisions getting better?
Harvest is the analytics layer for research sprints. It looks across sprints to find patterns, score predictions, and surface knowledge that's gone stale.
npm install -g @grainulation/harvestOr use directly:
npx @grainulation/harvest analyze ./sprints/- Cross-sprint analysis -- claim type distributions, evidence quality, recurring themes
- Prediction calibration -- score past estimates against actual outcomes
- Decision patterns -- what research approaches lead to better results?
- Knowledge decay -- which old claims need refreshing before they mislead you?
- Sprint velocity -- how long do sprints take, where do they stall?
- Retrospective reports -- dark-themed HTML reports for the team
# Cross-sprint claim analysis
harvest analyze ./sprints/
# Score predictions against outcomes
harvest calibrate ./sprints/
# Detect decision patterns and anti-patterns
harvest patterns ./sprints/
# Find stale claims that need refreshing
harvest decay ./sprints/ --days 60
# Sprint timing and phase analysis
harvest velocity ./sprints/
# Generate a full retrospective HTML report
harvest report ./sprints/ -o retrospective.html
# All analyses in one pass
harvest trends ./sprints/ --json
# Start the live dashboard (SSE updates, dark theme)
harvest serve --root ./sprints/ --port 9096
# Connect to farmer for mobile monitoring (farmer's default port is 9090)
harvest connect farmer --url http://localhost:9090Harvest reads standard wheat sprint data:
claims.json-- array of typed claims withid,type,evidence,status,text,createdcompilation.json-- compiled sprint state (optional, enriches analysis)- Git history on
claims.json-- used for velocity and timing analysis
Point harvest at a directory containing sprint subdirectories, or at a single sprint directory.
- Reads, never writes -- harvest is a pure analysis tool; it won't modify your sprint data
- Git-aware -- uses git log timestamps for velocity analysis when available
- Composable -- each module (analyzer, calibration, patterns, decay, velocity) works independently
Depends only on @grainulation/barn (internal ecosystem utilities); no third-party runtime deps. Node built-ins otherwise.
| Tool | Role |
|---|---|
| wheat | Research engine -- grow structured evidence |
| farmer | Permission dashboard -- approve AI actions in real time |
| barn | Shared tools -- templates, validators, sprint detection |
| mill | Format conversion -- export to PDF, CSV, slides, 26 formats |
| silo | Knowledge storage -- reusable claim libraries and packs |
| harvest | Analytics -- cross-sprint patterns and prediction scoring |
| orchard | Orchestration -- multi-sprint coordination and dependencies |
| grainulation | Unified CLI -- single entry point to the ecosystem |
See CHANGELOG.md for release history.
MIT