harvest

Promotes durable knowledge, files gaps, and closes completed spec issues.

1|1|Updated May 11, 2026
One-click install
npx skills add https://github.com/taxmaxi/taxmaxi --skill harvest-taxmaxi
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: harvest
Source: https://github.com/taxmaxi/taxmaxi/tree/main/.agents/skills/harvest
Command: npx skills add https://github.com/taxmaxi/taxmaxi --skill harvest-taxmaxi

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When a spec issue finishes, its decisions, lessons, and unresolved findings risk being lost or scattered across PRs and comments. This Skill runs the final harvest task so durable knowledge lands in permanent homes and remaining gaps become tracked issues. ## Core Features & Use Cases - Knowledge Promotion: Moves qualifying decisions into ADRs, AGENTS.md, CONTEXT.md glossaries, or legal reference data based on explicit promotion criteria. - Gap Filing: Converts every unresolved finding into a needs-triage issue with evidence links, including a blocker sweep that queries the live database via psql for unhandled blocker codes. - Cleanup and Closure: Deletes the spec's scaffolding skill directory, folds lessons into reusable templates, posts a closing summary, and ticks the harvest checkbox before closing the issue. - Use Case: After merging the last PR for spec issue #212, run the harvest to promote two decisions to ADRs, file three gap issues for unhandled blocker codes, and close the spec with a summary comment. ## Quick Start Run the harvest for spec issue 212 by passing the issue number to the harvest command.

Frequently Asked Questions about harvest

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run the harvest for a finished spec issue?▼

Pass the spec's issue number to the harvest command, for example /harvest 212. The skill collects decisions from merged PRs and reports, promotes durable knowledge, files gap issues, deletes scaffolding, and closes the issue with a summary comment.

What qualifies a decision for promotion to an ADR?▼

A decision is promoted when it is quoted from outside the spec, marked as a deliberate do-not-undo choice, changes user-visible numbers, defines agent working rules, or introduces a new domain term. Decisions meeting none of these bars intentionally die with the spec.

How does the blocker sweep query the database?▼

The sweep connects through psql using the PG environment values from apps/server/.env, joins active_calculation_runs to calculation_run_blockers, and groups results by code. Any blocker code with no recorded rule and no open issue gets its own gap issue.

Why does the harvest check run ages before trusting blocker counts?▼

Active runs that predate the last fact replay can point at deleted rows, making their blockers stale. A past harvest found 2022-2025 runs predating leg replays, so counts must come from fresh runs and staleness is filed as its own gap.

What happens to the spec's scaffolding after harvest?▼

The .agents/skills/implement-NNN directory and its .claude/skills symlink are deleted because they reference dead checklist state. Keeping them invites accidental reuse after the spec closes.

Can real user data appear in the gap issues filed during harvest?▼

No. Real user data stays out of public issues per the issue-tracker policy in docs/agents/issue-tracker.md. Gap issues contain only the problem statement and evidence links back to the spec's PRs and reports.