Archive
Scrive gli apprendimenti della sessione in .archive/YYYY-MM-DD/ con frontmatter taggato e un indice MEMORY.md
Promosso
Cosa fa
Archive cattura ciò che una sessione di lavoro ha prodotto — una correzione di bug, un deploy, una migrazione — come un file markdown datato sotto .archive/YYYY-MM-DD/ con frontmatter YAML (tags, category, related) più una voce di una riga aggiunta a un indice .archive/MEMORY.md. Si attiva quando un task significativo è completato, quando un bug difficile è risolto, quando l'utente dice "archive this", o quando chiede se un problema è stato risolto in una sessione precedente. Un hook SessionStart in bundle legge .archive/MEMORY.md nel contesto in modo che le note passate siano disponibili nelle sessioni successive.
Rapporto di test
Recuperato skills/archive/SKILL.md (HTTP 200, 55 righe, il frontmatter ha name+description) e controllato a campione i suoi tre file in bundle raw: references/TEMPLATE.md 200, hooks/hooks.json 200, hooks/load-memory.py 200 — tutti esistono, nessun percorso macchina hardcoded, nessun curl|sh, nessun base64, nessuna esfiltrazione di segreti; load-memory.py legge solo $CLAUDE_PROJECT_DIR/.archive/MEMORY.md e lo stampa come SessionStart additionalContext (quindi qualsiasi cosa si trovi in quel file entra nel contesto — mantenerlo trusted-local). Trigger valutato 5/5 su: DOVREBBE attivarsi — "Archive this session, we finally fixed the CloudWatch log group permissions", "We just finished the ECS deploy, save the learnings so future sessions don't repeat this", "Have we hit this Alembic migration error before? check past session notes"; NON DOVREBBE attivarsi — "Compress the logs directory into a tar.gz archive and move it to backups" (senso diverso della parola), "Add a CHANGELOG entry for the v1.2 release" (file del repo, non note .archive). Per l'output ho eseguito un task due volte in un progetto scratch: la baseline ha dato un singolo file docs/session-notes-2026-07-21.md a forma libera senza indice, senza tag, senza comandi esatti, commesso nel repo; l'esecuzione seguita dalla skill ha dato .archive/2026-07-21/vercel-deploy-node-version-lockfile.md con frontmatter tags/category, un blocco Key Changes contenente la variabile d'ambiente reale e i comandi pnpm/git, una voce di indice MEMORY.md e una riga `.archive/` in .gitignore — `grep -ri "tags:.*lockfile" .archive/` l'ha recuperata mentre la baseline non aveva un indice da cui entrare. Documentazione detratta di un punto: il Quick Install del README inizia con /plugin marketplace add, eppure archive è assente da .claude-plugin/marketplace.json e spedisce .factory-plugin/plugin.json invece, quindi il percorso del plugin e la sua registrazione automatica degli hook non funzionano in Claude Code.
Testato il: 2026-07-21 · Claude Code 2.x (agent harness)
Installazione
# Recommended (works with Claude Code, Cursor, Droid, Codex): npx skills add ReScienceLab/opc-skills --skill archive -a claude # user-level npx skills add ReScienceLab/opc-skills --skill archive # project-level # Manual (no npx): git clone --depth 1 https://github.com/ReScienceLab/opc-skills /tmp/opc-skills mkdir -p ~/.claude/skills cp -R /tmp/opc-skills/skills/archive ~/.claude/skills/archive # Optional SessionStart auto-load of .archive/MEMORY.md: register # ~/.claude/skills/archive/hooks/load-memory.py as a SessionStart command hook # in settings.json. Note `/plugin install archive@opc-skills` does NOT resolve — # archive is missing from the repo's .claude-plugin/marketplace.json. # First use: add `.archive/` to your project .gitignore (the skill requires this).
Comandi e prompt di esempio
/archiveScrive gli apprendimenti della sessione in .archive/YYYY-MM-DD/ con frontmatter taggato e un indice MEMORY.md
Gli skill si attivano con richieste in linguaggio naturale, senza comandi da ricordare. Dopo l'installazione, prompt come questi lo attivano (in inglese):
Archive this session's learnings for later reuseSave this debugging solution for later reuseLog this deployment in the archive