← Agent MemoryCONTENT HISTORY

Update to Agent Memory

Snapshot Oct 29, 2026 · 12:08 UTC · version 0.9.30

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save Agent Memory and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Resume the most recent agent session for the current working directory, leading with any unanswered question. Use when the user says \"where were we\", \"resume\", \"handoff\", \"pick up where I left off\", or starts a session with no fresh context.",
  "included_files": [
    {
      "relative_path": "EXAMPLES.md",
      "size_in_bytes": 1565
    }
  ],
  "name": "handoff",
  "skill_md_contents": "---\nname: handoff\ndescription: Resume the most recent agent session for the current working directory, leading with any unanswered question. Use when the user says \"where were we\", \"resume\", \"handoff\", \"pick up where I left off\", or starts a session with no fresh context.\nargument-hint: \"[optional cwd override]\"\nuser-invocable: true\n---\n\nThe user wants to resume work. Optional cwd override: $ARGUMENTS\n\n## Quick start\n\n```json\nmemory_sessions { \"limit\": 20 }\n```\n\nPick the most recent session whose `cwd` matches this project, then:\n`memory_recall { \"query\": \"<session top concepts>\", \"limit\": 10 }`.\n\nExpected output:\n\n```text\nResuming 7f3a9c2 \"Auth refresh rework\".\nOpen question: should logout revoke all device tokens or just the current one?\nNext step: decide revoke scope, then update auth/logout.ts.\n```\n\n## Why\n\nMatch the session by directory boundary, not raw prefix, so a sibling repo never\ngets mistaken for this one. Never invent observations for an empty session.\n\n## Workflow\n\n1. Resolve the project path: if `$ARGUMENTS` is given, normalize it to absolute\n   (`path.resolve(process.cwd(), $ARGUMENTS)`); else use the cwd.\n2. Call `memory_sessions`. Pick the most recent session whose normalized `cwd`\n   matches by directory boundary: equality, OR `cwd.startsWith(projectPath + sep)`,\n   OR `projectPath.startsWith(cwd + sep)`. Prefer `completed` over `abandoned`.\n   No match: report that this project has no matching session and stop. Do not\n   substitute a different project's session.\n3. If the session ended on an unanswered user-facing question, surface it FIRST.\n   Look in `summary` or recent `conversation` observations whose `narrative`\n   ends in `?`.\n4. Summarize: title/summary, key files, key decisions or errors, using\n   `memory_recall` on the top concepts, limit 10. Check each result's session or\n   project provenance before including it; a query alone does not enforce scope.\n5. End with one concrete \"next step?\" pointer.\n\n## Anti-patterns\n\nWRONG: `session.cwd.startsWith(projectPath)` matches `/repo-a-staging` when the\nproject is `/repo-a`, resuming the wrong repo's session.\n\nRIGHT: `session.cwd === projectPath || session.cwd.startsWith(projectPath + sep)`,\na directory-boundary check that cannot cross sibling repos.\n\n## Checklist\n\n- cwd override resolved to an absolute, normalized path.\n- Match used a directory-boundary check, not a raw prefix.\n- Unanswered question (if any) leads the response.\n- Empty session is reported plainly, with an offer to start fresh.\n\n## See also\n\n- `recap`, `session-history`, `recall`: same session data, broader views.\n\n## Troubleshooting\n\nSee ../_shared/TROUBLESHOOTING.md if `memory_sessions` or `memory_recall` is not available.\n"
}

SHA-256 of public snapshot: 9c28650ab85cc73b8c9ca7a170fb29466ddf8a7bf9290bd8ef40015d6a2e88fa