Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
06247c2
docs: add spec for BACKLOG/ROADMAP rename + /help command
talgolan Aug 31, 2026
2928c65
docs: fix spec ambiguities found in review
talgolan Aug 31, 2026
2a739cf
docs: add implementation plan for BACKLOG/ROADMAP rename + /help command
talgolan Aug 31, 2026
b6b25c8
docs: fix plan review findings
talgolan Aug 31, 2026
fe9d15f
feat: rename OUTSTANDING_ITEMS.md template to BACKLOG.md
talgolan Aug 31, 2026
2af05a0
feat: add ROADMAP.md template
talgolan Aug 31, 2026
fa0814e
feat: add /session-continuity:help command
talgolan Aug 31, 2026
31da17b
feat: session-start.sh recognizes BACKLOG.md, nudges old OUTSTANDING_…
talgolan Aug 31, 2026
2bdd57f
feat: primer.md inits BACKLOG.md+ROADMAP.md, migrates old OUTSTANDING…
talgolan Aug 31, 2026
74d5592
feat: doctor.md tracks BACKLOG.md and ROADMAP.md
talgolan Aug 31, 2026
370988c
feat: end-session.md reads/reports BACKLOG.md instead of OUTSTANDING_…
talgolan Aug 31, 2026
20194a1
docs: SKILL.md documents BACKLOG.md, ROADMAP.md, and /help
talgolan Aug 31, 2026
2232eae
docs: REFERENCE.md documents BACKLOG.md and ROADMAP.md
talgolan Aug 31, 2026
a6fe12e
docs: template pointers reference BACKLOG.md and ROADMAP.md
talgolan Aug 31, 2026
70600f6
chore: bump to 0.22.0 — BACKLOG.md rename, ROADMAP.md, /help command
talgolan Aug 31, 2026
db15d1a
docs: README documents BACKLOG.md, ROADMAP.md, and /help
talgolan Aug 31, 2026
e0c0ab0
docs: migrate this repo's own OUTSTANDING_ITEMS.md to BACKLOG.md, add…
talgolan Aug 31, 2026
3dba137
docs: fix stale file-count references found in final review
talgolan Aug 31, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "session-continuity",
"version": "0.21.1",
"description": "Cross-session memory for Claude Code projects via four in-repo docs: SESSION_PRIMER.md (current state), PROJECT_CONTEXT.md (stable repo context), OUTSTANDING_ITEMS.md (deferred follow-ups), and LEARNINGS.md (hard-won bugs).",
"version": "0.22.0",
"description": "Cross-session memory for Claude Code projects via five in-repo docs: SESSION_PRIMER.md (current state), PROJECT_CONTEXT.md (stable repo context), BACKLOG.md (deferred follow-ups), ROADMAP.md (strategic direction), and LEARNINGS.md (hard-won bugs).",
"author": {
"name": "Tal Golan"
},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Outstanding Items — session-continuity
# Backlog — session-continuity

Backlog of explicitly deferred follow-ups and decisions — not bugs (those
Explicitly deferred follow-ups and decisions — not bugs (those
go in `.session-continuity/LEARNINGS.md`), not current state (that's
`.session-continuity/SESSION_PRIMER.md`). An item lives here from the
moment it's flagged until the moment the code proves it resolved, then
Expand Down
19 changes: 19 additions & 0 deletions .session-continuity/ROADMAP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Roadmap — session-continuity

Strategic direction — where this project is headed, not the tactical
queue (that's `.session-continuity/BACKLOG.md`). Freeform: no numbering,
no permanence rules, no length cap. Rewrite sections wholesale as
direction changes; this file's history lives in git, not in careful
edits.

## Now

TBD

## Next

TBD

## Later

TBD
15 changes: 9 additions & 6 deletions .session-continuity/SESSION_PRIMER.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ rarely.

## Current state

- **v0.22.0 in progress** — renamed OUTSTANDING_ITEMS.md to BACKLOG.md,
added ROADMAP.md, added /session-continuity:help. Branch
feature/backlog-roadmap-help, not yet merged.
- **v0.19.0 released** — commit `460f507` pushed to `main`, tag `v0.19.0`
pushed, GitHub Actions `release.yml` ran clean (12s), [GitHub
Release](https://github.com/talgolan/session-continuity/releases/tag/v0.19.0)
Expand Down Expand Up @@ -401,17 +404,17 @@ rarely.
- Three slash commands are stable (`primer`, `learning`, `end-session`).
- `hooks/hooks.json` uses `if: "Bash(git commit *)"` to scope the `PreToolUse` hook; it does not fire on every Bash call.
- `.claude-plugin/marketplace.json` present so the repo is installable via `/plugin marketplace add talgolan/session-continuity`.
- `.session-continuity/` holds `SESSION_PRIMER.md`, `PROJECT_CONTEXT.md` (new in v0.13.0), `OUTSTANDING_ITEMS.md` (new in v0.18.0), and `LEARNINGS.md`. Dev artifacts (marketplace-submission notes, specs, plans, recommendation docs) live under `meta/`.
- `.session-continuity/` holds `SESSION_PRIMER.md`, `PROJECT_CONTEXT.md` (new in v0.13.0), `BACKLOG.md` (new in v0.18.0 as `OUTSTANDING_ITEMS.md`, renamed in v0.22.0), `ROADMAP.md` (new in v0.22.0), and `LEARNINGS.md`. Dev artifacts (marketplace-submission notes, specs, plans, recommendation docs) live under `meta/`.
- No known open bugs; outstanding items are feature-level.

**Current `git log --oneline -5` (primary branch):**

```
5fa6c59 chore: bump to 0.21.0 — /session-continuity:update command
001b1f3 feat: add /session-continuity:update command
38b94e0 chore: bump to 0.20.0 — end-session prompt-wait/compute-only split
fef4935 docs: update session continuity
c14cdd9 feat(end-session): separate human-response wait from ritual compute time
db15d1a docs: README documents BACKLOG.md, ROADMAP.md, and /help
70600f6 chore: bump to 0.22.0 — BACKLOG.md rename, ROADMAP.md, /help command
a6fe12e docs: template pointers reference BACKLOG.md and ROADMAP.md
2232eae docs: REFERENCE.md documents BACKLOG.md and ROADMAP.md
20194a1 docs: SKILL.md documents BACKLOG.md, ROADMAP.md, and /help
```

Regenerate this block whenever you commit — see
Expand Down
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@

All notable changes to this project are documented here. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.22.0] — 2026-08-31

### Added
- **New `.session-continuity/ROADMAP.md` file** — strategic direction (Now/Next/Later), freeform, no numbering. `/session-continuity:primer` creates it on Init mode and stubs it in for existing installs during the BACKLOG.md migration below.
- **New `/session-continuity:help` command** — explains what the plugin does, why, and what each of the five `.session-continuity/` files is for. Zero args, read-only.

### Changed
- **`.session-continuity/OUTSTANDING_ITEMS.md` renamed to `BACKLOG.md`.** Same semantics (permanent numbering, delete-on-close, title + 1-3 sentence cap) — rename only. `/session-continuity:primer` migrates existing installs automatically (new Step 3c): detects `OUTSTANDING_ITEMS.md` without a `BACKLOG.md` alongside it, `git mv`s the file, and stubs in `ROADMAP.md` in the same step. `hooks/session-start.sh` nudges any install still on the old filename to run `/session-continuity:primer`.

## [0.21.1] — 2026-08-31

### Fixed
Expand Down
14 changes: 8 additions & 6 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ Thanks for thinking about contributing. This is a small, opinionated project wit

## Scope first

This skill ships a specific pattern: three in-repo Markdown files (`.session-continuity/SESSION_PRIMER.md`, `.session-continuity/PROJECT_CONTEXT.md`, and `.session-continuity/LEARNINGS.md`) with slash commands and hooks that make the habit of using them cheap. That's the whole scope.
This skill ships a specific pattern: five in-repo Markdown files (`.session-continuity/SESSION_PRIMER.md`, `.session-continuity/PROJECT_CONTEXT.md`, `.session-continuity/BACKLOG.md`, `.session-continuity/ROADMAP.md`, and `.session-continuity/LEARNINGS.md`) with slash commands and hooks that make the habit of using them cheap. That's the whole scope.

**PRs that fit the existing shape move quickly.** Bug fixes, prose improvements to existing commands, small behavior refinements that sharpen the existing tools — all welcome.

**PRs that expand scope will be declined or redirected.** Examples of scope expansion:
- A fourth in-repo doc (e.g. `.session-continuity/DECISIONS.md`, `.session-continuity/ROADMAP.md`). The three-file split is load-bearing; see the README's "Why three files" section.
- A sixth in-repo doc (e.g. `.session-continuity/DECISIONS.md`, `.session-continuity/DECISIONS_LOG.md`). The five-file split is load-bearing; see the README's "Why five files" section.
- Integration with a specific memory server, vector database, or external storage. The point is plain files in git.
- A plugin architecture, extension API, or configuration system. The slash commands and hooks are the interface.
- Auto-commit, auto-push, or "just do it all for me" modes. Deliberate capture is a design choice, not an oversight.
Expand All @@ -22,7 +22,7 @@ If you're unsure whether your idea fits, open an issue first and describe what y
2. Read `.session-continuity/SESSION_PRIMER.md` — it's the current-state snapshot for this very repo, maintained by the plugin's own commands.
3. Skim `.session-continuity/PROJECT_CONTEXT.md` — stable repo layout and conventions for this repo.
4. Skim `.session-continuity/LEARNINGS.md` — real bugs we've hit, grouped by layer. Useful context for hook/command work.
5. Skim the most recent spec + plan in `meta/superpowers/` to see how changes are shaped before they become code. (`.session-continuity/` in this repo is intentionally limited to the three files the plugin ships — primer, PROJECT_CONTEXT, and LEARNINGS. Dev artifacts like specs, plans, and marketplace paperwork live under `meta/` so they don't pollute the plugin's public surface.)
5. Skim the most recent spec + plan in `meta/superpowers/` to see how changes are shaped before they become code. (`.session-continuity/` in this repo is intentionally limited to the five files the plugin ships — primer, PROJECT_CONTEXT, BACKLOG, ROADMAP, and LEARNINGS. Dev artifacts like specs, plans, and marketplace paperwork live under `meta/` so they don't pollute the plugin's public surface.)

## Local development

Expand Down Expand Up @@ -100,15 +100,17 @@ session-continuity/
│ └── templates/
│ ├── SESSION_PRIMER.md
│ ├── PROJECT_CONTEXT.md
│ ├── OUTSTANDING_ITEMS.md
│ ├── BACKLOG.md
│ ├── ROADMAP.md
│ └── LEARNINGS.md
├── commands/
│ ├── primer.md # /session-continuity:primer
│ ├── learning.md # /session-continuity:learning
│ ├── end-session.md # /session-continuity:end-session
│ ├── spike-check.md # /session-continuity:spike-check
│ ├── doctor.md # /session-continuity:doctor
│ └── update.md # /session-continuity:update
│ ├── update.md # /session-continuity:update
│ └── help.md # /session-continuity:help
├── hooks/
│ ├── hooks.json # hook registration
│ ├── session-start.sh # SessionStart event
Expand Down Expand Up @@ -142,7 +144,7 @@ session-continuity/
└── LICENSE
```

The marketplace catalog that lets users `/plugin marketplace add` this plugin no longer lives in this repo — it moved to the separate `talgolan/claude-plugins` repo (see the README's "Install" section). `.session-continuity/` here is intentionally limited to the three files the plugin ships — primer, PROJECT_CONTEXT, and LEARNINGS — so it mirrors what users see in their own projects. Repo-specific dev artifacts (design specs, implementation plans, submission paperwork) live under `meta/` so they don't pollute the plugin's public surface.
The marketplace catalog that lets users `/plugin marketplace add` this plugin no longer lives in this repo — it moved to the separate `talgolan/claude-plugins` repo (see the README's "Install" section). `.session-continuity/` here is intentionally limited to the five files the plugin ships — primer, PROJECT_CONTEXT, BACKLOG, ROADMAP, and LEARNINGS — so it mirrors what users see in their own projects. Repo-specific dev artifacts (design specs, implementation plans, submission paperwork) live under `meta/` so they don't pollute the plugin's public surface.

Files that change together live together. If you're adding a new slash command, you'll likely touch `commands/<name>.md`, the commands paragraph in `skills/session-continuity/SKILL.md`, `README.md`, `PRIVACY.md`, and `CHANGELOG.md`. If you're modifying a hook, you'll likely only touch `hooks/<name>.sh`.

Expand Down
6 changes: 3 additions & 3 deletions PRIVACY.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ This plugin does not collect, transmit, or store personal data about you. All da

## What data the plugin handles

- **File contents in your own repositories.** The slash commands `/session-continuity:primer`, `/session-continuity:learning`, and `/session-continuity:end-session` read and write `.session-continuity/SESSION_PRIMER.md`, `.session-continuity/PROJECT_CONTEXT.md`, `.session-continuity/OUTSTANDING_ITEMS.md`, and `.session-continuity/LEARNINGS.md` in the current git repository. These are ordinary files in your repo; the plugin stores nothing elsewhere. `/session-continuity:spike-check`, `/session-continuity:doctor`, and `/session-continuity:update` touch no files at all — they print a checklist/report/instructions and (for spike-check) ask questions in-conversation.
- **Git metadata.** The commands invoke `git log`, `git status`, `git diff --cached`, and similar read-only commands to populate the primer and checklist. This metadata is processed locally and written into the same four files; it is never transmitted.
- **File contents in your own repositories.** The slash commands `/session-continuity:primer`, `/session-continuity:learning`, and `/session-continuity:end-session` read and write `.session-continuity/SESSION_PRIMER.md`, `.session-continuity/PROJECT_CONTEXT.md`, `.session-continuity/BACKLOG.md`, `.session-continuity/ROADMAP.md`, and `.session-continuity/LEARNINGS.md` in the current git repository. These are ordinary files in your repo; the plugin stores nothing elsewhere. `/session-continuity:spike-check`, `/session-continuity:doctor`, `/session-continuity:update`, and `/session-continuity:help` touch no files at all — they print a checklist/report/instructions and (for spike-check) ask questions in-conversation.
- **Git metadata.** The commands invoke `git log`, `git status`, `git diff --cached`, and similar read-only commands to populate the primer and checklist. This metadata is processed locally and written into the same five files; it is never transmitted.
- **Hook payloads.** Claude Code passes the hook scripts a JSON payload containing the current working directory and, depending on the hook, the Bash command about to run or the file path + content about to be written/edited. The scripts read these values locally to decide whether to emit a reminder or block the action. Nothing from the payload is transmitted or persisted outside the running session.

**The plugin does not touch:** environment variables, shell history, editor state, other files in your repo, any file outside the current working directory, your clipboard, or anything on disk outside the four documented files plus the update-check cache described below.
**The plugin does not touch:** environment variables, shell history, editor state, other files in your repo, any file outside the current working directory, your clipboard, or anything on disk outside the five documented files plus the update-check cache described below.

## External network calls

Expand Down
Loading