Karvey archive
Skill MauricioQuezadaHaintech/karvey/plugins/karvey/skills/karvey-archive
Karvey — método spec-driven development agnóstico de stack (Afán, selknam). Plugin de Claude Code. © HainTech, Apache 2.0.
npx -y skills add MauricioQuezadaHaintech/karvey --skill karvey-archiveAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Archive a completed change: merge spec-deltas into living specs, move to archive, close Epic in ClickUp. Triggers include "karvey archive", "archivar", "archive", "cerrar epic", "close epic", "merge specs".
SKILL.md
8.4 KB, as published. Nobody here has run it
Karvey Archive
Purpose
Complete the change's lifecycle: merge spec-deltas into the living specs, archive the change directory, and close the Epic in ClickUp or mark it complete in PLAN.md.
Execution steps
Step 1 — Verify completeness
When: the change has already been deployed with /karvey-deploy (phase: deployed). Archive is PHASE 12 (the last) of the Karvey Method and runs AFTER the deployment.
Read docs/spec/changes/{change-id}/spec.json.
Verify:
-
phase = "deployed"orapprovals.deploy.approved = true— if not met, warn that the change still needs to be deployed with/karvey-deployand stop. -
approvals.tasks.approved = true - Tests executed (
docs/test_evidence.mdexists with entries for the change-id) - QA review completed (
REVISION_PR_*_{date}.mdexists) - No pending critical or high findings
If there are blockers: report and stop.
Since the deployment already happened (/karvey-deploy), create the production marker docs/spec/changes/{change-id}/IMPLEMENTED if it does not already exist. If for some reason the deploy did not complete, warn that it will be archived without the production marker.
Step 2 — Read spec-deltas
Read all files docs/spec/changes/{change-id}/specs/**/*.md.
For each spec-delta, identify the operations:
## ADDED Requirements→ append to the living spec## MODIFIED Requirements→ replace the block in the living spec## REMOVED Requirements→ remove the block + leave a deprecation comment
Step 3 — Merge deltas into living specs
For each affected capability, edit docs/spec/specs/{capability}/spec.md:
ADDED: Add to the end of the file:
cat >> docs/spec/specs/{capability}/spec.md << 'EOF'
{full block of the new requirement}
EOF
MODIFIED: Locate the requirement by name and replace the full block.
Search: grep -n "### Requirement: {name}" docs/spec/specs/{capability}/spec.md
Replace from that line to the next ### Requirement: or end of file.
REMOVED: Locate the block and delete it, leaving a comment:
<!-- Removed {date}: {reason from the spec-delta} -->
Step 4 — Commit the spec merge
git add docs/spec/specs/
git commit -m "spec: merge deltas from {change-id}
- {capability}: ADDED {N} requirements, MODIFIED {N}, REMOVED {N}"
Step 5 — Archive the change directory
TIMESTAMP=$(date +%Y-%m-%d)
mkdir -p docs/spec/changes/archive
mv docs/spec/changes/{change-id} docs/spec/changes/archive/${TIMESTAMP}-{change-id}
Verify:
ls -la docs/spec/changes/archive/${TIMESTAMP}-{change-id}
# change-id must no longer exist in docs/spec/changes/
git add docs/spec/changes/
git commit -m "chore: archive {change-id}
Spec deltas merged into living specs. Change archived."
Step 6A — Close Epic in ClickUp (if management=clickup)
clickup_create_task_comment(epic_id,
"✅ Epic completed and archived.\n\nSpec deltas merged into: docs/spec/specs/{capability}/spec.md\nArchived in: docs/spec/changes/archive/{date}-{change-id}\n\nDone with the Karvey Method")
clickup_update_task(epic_id, status="complete")
Step 6B — Close PLAN.md (if management=markdown)
Update docs/spec/changes/archive/{date}-{change-id}/PLAN.md:
- General status:
✅ Completed and archived - Add a history entry:
| {date} | archive | Spec merged and archived |
Step 6C — Update spec.json
Update docs/spec/changes/archive/{date}-{change-id}/spec.json:
- Set
phase: "archived"(transition fromdeployed).
Step 7 — Validate living specs
grep -n "### Requirement:" docs/spec/specs/{capability}/spec.md
# Verify that the ADDED requirements appear
# Verify that the REMOVED ones are no longer there
Step 7B — Update knowledge graph
Sync knowledge per karvey/rules/knowledge-sync.md (Obsidian if available; at minimum /graphify docs/spec/ --update) to reflect the spec-delta merge and the archiving.
The --update also removes from the graph the nodes of documents that were deleted (REMOVED requirements).
Step 7C — Cycle retrospective (optional, recommended)
Once the specs are merged and the change archived, offer to close the cycle with a retrospective. It is optional but recommended, especially on large Epics or cycles that took several days.
Recommend running the cross-cutting skill karvey-retro to extract learnings from the cycle:
- Velocity: how long each phase took vs. the estimate, where the time went.
- Test health: coverage, flaky tests, recurring QA findings.
- Opportunities: detected technical debt, process improvements, risks for the next cycle.
Do you want to run the cycle retrospective with /karvey-retro {change-id}?
(optional — recommended to capture learnings on velocity, test health, and opportunities)
It is not blocking: if the user skips it, continue anyway with the final output.
Step 7D — Post-release documentation (optional, recommended)
The internal living specs (docs/spec/specs/) were already merged in Step 3 — that is not touched here. This step is for the user / project documentation (READMEs, guides, Diataxis docs), which is distinct from the internal specs.
Recommend running the cross-cutting skill karvey-docs to, after the release:
- Update stale docs: detect and refresh project/user documentation that became outdated by what was shipped in this change.
- Generate Diataxis docs: create new documentation (tutorial / how-to / reference / explanation) for the delivered features, when applicable.
Do you want to update/generate the user documentation with /karvey-docs {change-id}?
(optional — recommended; it distinguishes user/project docs from the internal living specs that archive already merged)
It is not blocking: if the user skips it, continue anyway with the final output.
Step 7E — Discovery backlog sweep (so nothing stays "in the air")
A closing cycle almost always surfaced ideas and out-of-scope work. Before finishing, sweep the discovery backlog (karvey/rules/backlog.md) so those become real future work instead of evaporating.
- Read
docs/spec/backlog.md. List theopenitems whose origin is this change (and any otheropenitems, for visibility). - For each, decide with the user: promote (create a future
change-idnow via/karvey-grillor/karvey-init, carrying the backlog context as PRD seed and recordingseed_backlog_id), keep (leaveopenfor later), or discard (with a reason). - Update each item's
status(promoted+Promoted to change-id, ordiscarded+ reason). Ifmanagement=clickup, mirror the status to the backlog list. - Report the counts explicitly — promoted / kept / discarded. Never sweep silently: a silent sweep reads as "all captured" when it isn't.
This is the step that guarantees post-cycle discoveries don't get lost.
Step 8 — Final output
✅ Change archived: {change-id}
Spec deltas merged:
- docs/spec/specs/{capability}/spec.md
- ADDED: {N} requirements
- MODIFIED: {N} requirements
- REMOVED: {N} requirements
Archived in: docs/spec/changes/archive/{date}-{change-id}
IMPLEMENTED: {yes / no — not marked}
Management: {Epic E{n} closed in ClickUp | PLAN.md marked complete}
Commits:
- "spec: merge deltas from {change-id}"
- "chore: archive {change-id}"
Discovery backlog swept:
- Promoted to new change-ids: {N} ({list})
- Kept open: {N}
- Discarded: {N}
Optional final steps (recommended):
- 🔁 Cycle retrospective: /karvey-retro {change-id}
- 📚 Post-release documentation: /karvey-docs {change-id}
🏁 Full Karvey Method cycle finished for {change-id}
Cycle closure
After archiving, ask the user whether they want to run the recommended optional final steps:
/karvey-retro {change-id}— cycle retrospective./karvey-docs {change-id}— post-release documentation (Diataxis / update docs).
With this, the change's cycle is closed. For a new change: /karvey-grill or /karvey-init.
Part of the Karvey™ Method — © HainTech, by Mauricio Quezada Ibáñez · Apache 2.0 · see karvey/LICENSE and karvey/TRADEMARK.md.