Skip to content
Back to skills

Plan Archive

ASecurity

Archive a completed or abandoned plan for future reference. Use when the user runs /plan-archive or asks to archive a finished plan.

  • 13 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 6, 2026
ai-agentssqldatabase

Works with

  • cli

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 22, 2026

npx -y skills add serbanghita/plan-critique-skills --skill plan-archive --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Plan Archive?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Plan Archive
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/serbanghita-plan-archive-plan-critique-skills/badge)](https://www.skillsdirectory.com/skills/serbanghita-plan-archive-plan-critique-skills)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: plan-archive
description: >-
  Archive a completed or abandoned plan for future reference. Use when the user runs /plan-archive or asks to
  archive a finished plan.
license: MIT
disable-model-invocation: true
---

You are archiving the user's completed (or abandoned) plan for future reference.

To do this, follow these steps precisely:

1. Read `.copilot/plan-critique-config.json` and get `plansFolder` path from settings. If that file does not
   exist, read `.claude/plan-critique-config.json` instead.
   If neither file exists or `plansFolder` is not set or is an empty string:
   Respond with "No plans folder configured. Run `/plan-create` first to set up."
2. Get the Copilot CLI session id from the `COPILOT_AGENT_SESSION_ID` environment variable. Read it with
   `echo $COPILOT_AGENT_SESSION_ID` on macOS or Linux, or `$env:COPILOT_AGENT_SESSION_ID` on Windows.
   If the variable is empty, use the literal value `default` instead. Store this as `sessionId`.
3. Clean up stale sessions: scan `[plansFolder]/.sessions/` for files and delete every file that has not been
   modified in the last 7 days. This is non-blocking cleanup, never abort the run because of it.
4. Read the current session's plan from `[plansFolder]/.sessions/[sessionId]` if it exists. Store as `sessionPlan`.
5. Scan `[plansFolder]/` for subdirectories (each subdirectory is a plan).
   Exclude `archived/` and `.sessions/` folders and any files, only list plan directories.
   If no plan folders exist: Respond with "No plans found. Nothing to archive."
6. Select the plan to archive:
   - If `sessionPlan` exists and matches a plan folder, auto-select it. Inform the user:
     "Using current session plan: [sessionPlan]"
   - Else if only one plan exists, auto-select it and inform user.
   - Otherwise, ask the user to select a plan from the list.
     Example:
     ```
     Available plans:
     1. add-user-authentication
     2. refactor-database-layer
     3. implement-caching

     Which plan would you like to archive? [1-3]
     ```
7. Check prerequisites. If `[plansFolder]/[selected-plan]/plan.md` does not exist or is empty:
   Respond with "Nothing to archive. Plan file is missing or empty."
8. Ensure `[plansFolder]/archived/` exists, create it if not.
9. Extract metadata:
   - Read `plan.md` to get the plan title (first H1 heading). If no title, use folder name.
   - Read `critique.md` to get keywords (if available)
   - Read `execution-log.md` to get execution status (if available)
10. Generate archive folder name using format: `YYYY-MM-DD_HH-MM-SS_[slug]/`
    Example: `2026-01-12_14-30-00_add-user-authentication/`
11. Create the archive folder at `[plansFolder]/archived/[folder-name]/`
12. Copy contents from `[plansFolder]/[selected-plan]/` to the archive:
    - Include: `plan.md`, `execution-log.md` (if exists), all other files (SQL, images, etc.)
    - Exclude: `critique.md`, `execution-state.json`
13. Create `archive-info.md` in the archive folder using the format in
    [archive-info-format.md](archive-info-format.md).
14. Delete the original plan folder `[plansFolder]/[selected-plan]/` entirely.
15. Clean up session references to the archived plan:
    - Delete `[plansFolder]/.sessions/[sessionId]` if it contains the archived plan slug.
    - Scan all other session files and delete any that reference the archived plan (handles stale references).
16. Respond with confirmation:
    ```
    Plan archived to: [plansFolder]/archived/[folder-name]/

    The original plan folder has been removed.
    Create a new plan with `/plan-create`.
    ```

Notes:

- Never include critique.md in the archive (only keywords are preserved in archive-info.md)
- Always include the full original plan and all supporting files
- Include execution log only if the plan was executed
- Use current timestamp for the archive folder name
- Preserve the original file structure within the archived folder
- Always delete the original plan folder after archiving
- It is valid to archive a plan that was never executed (abandoned, reference, or superseded plans).
  In this case, the execution status will be `NOT_EXECUTED`.

Files in this skill

  • SKILL.md4 KB
  • archive-info-format.md382 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.