Install
$ agentstack add skill-mattjaikaran-meridian-archive-milestone ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
/meridian:archive-milestone — Archive Milestone
Transition a completed milestone to archived status, marking it as historical record.
Archiving is a one-way operation. Use after completion when the milestone is stable and you want to keep it out of active views.
Prerequisites
- Milestone must already be in
completestatus - Run
/meridian:complete-milestonefirst if not yet complete
Arguments
None. Operates on the most recently completed milestone.
Procedure
Step 1: Identify the milestone to archive
MERIDIAN_HOME="${MERIDIAN_HOME:-.}"
PYTHONPATH="$MERIDIAN_HOME" uv run --project "$MERIDIAN_HOME" python -c "
import json
from scripts.db import connect, get_db_path
from scripts.state import get_status, list_milestones
conn = connect(get_db_path('.'))
milestones = list_milestones(conn)
complete = [m for m in milestones if m['status'] == 'complete']
print(json.dumps(complete, indent=2, default=str))
conn.close()
"
Pick the milestone id to archive. Save as MILESTONE_ID.
Step 2: Archive
PYTHONPATH="$MERIDIAN_HOME" uv run --project "$MERIDIAN_HOME" python -c "
import json
from scripts.db import connect, get_db_path
from scripts.milestone_lifecycle import archive_milestone
conn = connect(get_db_path('.'))
result = archive_milestone(conn, '$MILESTONE_ID')
print(json.dumps(result, indent=2))
conn.close()
"
Step 3: Confirm
PYTHONPATH="$MERIDIAN_HOME" uv run --project "$MERIDIAN_HOME" python -c "
import json
from scripts.db import connect, get_db_path
from scripts.state import get_milestone
conn = connect(get_db_path('.'))
ms = get_milestone(conn, '$MILESTONE_ID')
print(f'Milestone {ms[\"id\"]} status: {ms[\"status\"]}')
conn.close()
"
Expected output: Milestone {id} status: archived
Output Format
# Milestone Archived — {milestone_name}
Milestone ID: {id}
Status: archived
→ Archived milestones are excluded from active views.
→ Summary is preserved at .planning/milestones/{id}-SUMMARY.md
Error Handling
| Error | Cause | Fix | |-------|-------|-----| | Invalid transition | Milestone not in complete status | Complete it first with /meridian:complete-milestone | | Milestone not found | Wrong ID | List milestones in Step 1 |
Notes for non-Claude LLMs
- Replace
$MILESTONE_IDwith the actual string ID from Step 1 - This is a state transition only — no files are deleted
- The git tag created at completion is unaffected by archival
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: mattjaikaran
- Source: mattjaikaran/meridian
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.