archive

Public
0

Repository: resciencelab/opc-skills

Log in or sign up to clone this skill.

R
resciencelab
Imported Feb 28, 2026

Low Risk

No security issues found

INFO

Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.

Remediation Add 'license' field to SKILL.md frontmatter (e.g., MIT, Apache-2.0)

Scanned in 0.002s

Description

Archive session learnings, debugging solutions, and deployment logs to .archive/yyyy-mm-dd/ as indexed markdown with searchable tags. Use when completing a significant task, resolving a tricky bug, deploying, or when the user says "archive this". Maintains .archive/MEMORY.md index for cross-session knowledge reuse.

Skill Files

Download .zip
SKILL.md
# Archive Skill

Capture, index, and reuse project knowledge across sessions.

## When to Archive

- After completing a significant task (deploy, migration, major feature)
- After resolving a tricky debugging session
- When the user says "archive this"
- After any multi-step process with learnings worth preserving

## When to Consult Archives

- Before debugging infrastructure, deploy, or CI issues
- Before repeating a process done in a past session
- When encountering an error that may have been solved before

**Search**: `grep -ri "keyword" .archive/`
**Index**: `.archive/MEMORY.md`

## Archive Workflow

1. Read `.archive/MEMORY.md` — check for related existing archives
2. Create `.archive/YYYY-MM-DD/` directory if needed
3. Write markdown file with YAML frontmatter (see `references/TEMPLATE.md`)
4. **Update `.archive/MEMORY.md`**: add one-line entry under the right category
5. If related archives exist, add `related` field in frontmatter

## Lookup Workflow

1. Read `.archive/MEMORY.md` to find relevant entries
2. Read the specific archive file for detailed context
3. Apply learnings to current task

## Categories

- **infrastructure** — AWS, ECS, IAM, networking, secrets, CloudWatch
- **release** — TestFlight, versioning, Git Flow, CHANGELOG
- **debugging** — Bug fixes, error resolution, gotchas
- **feature** — Feature design, implementation notes
- **design** — UI/UX, icons, visual design

## Rules

- `.archive/` must be in `.gitignore` — local-only notes
- Keep entries concise but reproducible
- Focus on **problems, fixes, and exact commands**
- Always update MEMORY.md after creating an archive
- Use descriptive filenames (e.g., `cloudwatch-logging.md` not `session.md`)
- Include YAML frontmatter with `tags`, `category`, and optional `related`
.factory-plugin/plugin.json Reference
{
  "name": "archive",
  "description": "Archive session learnings, debugging solutions, and deployment logs. Auto-loads .archive/MEMORY.md at session start for cross-session knowledge reuse.",
  "version": "1.1.0"
}
hooks/hooks.json Reference
{
  "description": "Load .archive/MEMORY.md into session context at startup for cross-session knowledge reuse",
  "hooks": {
    "SessionStart": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "python3 \"${CLAUDE_PLUGIN_ROOT:-${DROID_PLUGIN_ROOT}}/hooks/load-memory.py\""
          }
        ]
      }
    ]
  }
}
hooks/load-memory.py Reference
#!/usr/bin/env python3
import json
import os
import sys

project_dir = (
    os.environ.get("FACTORY_PROJECT_DIR")
    or os.environ.get("CLAUDE_PROJECT_DIR")
    or os.getcwd()
)
memory_file = os.path.join(project_dir, ".archive", "MEMORY.md")

if os.path.exists(memory_file):
    with open(memory_file, "r", encoding="utf-8") as f:
        content = f.read()

    output = {
        "hookSpecificOutput": {
            "hookEventName": "SessionStart",
            "additionalContext": f"## Archived Project Knowledge (.archive/MEMORY.md)\n\n{content}",
        }
    }
    print(json.dumps(output))

sys.exit(0)
references/TEMPLATE.md Reference
# Archive Template

Use this template when creating archive files.

```markdown
---
tags: [keyword1, keyword2, keyword3]
category: infrastructure | release | debugging | feature | design
related: [other-archive-filename-without-ext]
---

# {Title} - {YYYY-MM-DD}

## Summary
One-line description of what was accomplished.

## Context
- **Branch**: {branch name}
- **Version**: {if applicable}
- **Related Issue**: {if applicable}

## Issues Encountered & Solutions

### 1. {Issue Title}
- {Description of the problem}
- **Fix**: {How it was resolved}

## Key Changes
{Code snippets, config changes, or commands that were critical}

## Lessons Learned
{Optional: insights for future reference}
```

## Frontmatter Fields

- **tags**: searchable keywords for `grep -ri "tags:.*keyword" .archive/`
- **category**: one of `infrastructure`, `release`, `debugging`, `feature`, `design`
- **related**: filenames (without `.md`) of related archives for cross-referencing

Version History

v1.0.0 Imported from GitHub
1 month ago