mcp-context-sync 1.0.4 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # context-sync-mcp
1
+ # mcp-context-sync
2
2
 
3
3
  MCP server that synchronizes work context between AI coding agents. Switch seamlessly between Claude Code, Codex, Gemini CLI, Cursor, and others without losing context.
4
4
 
@@ -14,33 +14,58 @@ Claude Code ──sync──▶ SQLite ◀──resume── Codex
14
14
 
15
15
  ## Installation
16
16
 
17
- ### Local (recommended)
17
+ Install globally from npm:
18
18
 
19
19
  ```bash
20
- cd context-sync
21
- npm install
22
- npm run build
20
+ npm i -g mcp-context-sync
23
21
  ```
24
22
 
25
- ### As MCP server
23
+ This provides two binaries:
26
24
 
27
- Add to your agent's MCP config:
25
+ | Binary | Purpose |
26
+ |--------|---------|
27
+ | `mcp-context-sync` | MCP server (stdio transport) |
28
+ | `context-sync` | CLI for agents that run shell commands |
29
+
30
+ > **Note:** Use global install, not `npx`. Running via `npx` causes timeout issues with MCP health checks.
31
+
32
+ ## MCP configuration
33
+
34
+ ### Claude Code
35
+
36
+ ```bash
37
+ claude mcp add --scope user context-sync -- mcp-context-sync
38
+ ```
39
+
40
+ ### Codex
41
+
42
+ Add to `~/.codex/mcp.json`:
28
43
 
29
44
  ```json
30
45
  {
31
- "context-sync": {
32
- "command": "node",
33
- "args": ["/path/to/context-sync/dist/index.js"]
46
+ "mcpServers": {
47
+ "context-sync": {
48
+ "command": "mcp-context-sync"
49
+ }
34
50
  }
35
51
  }
36
52
  ```
37
53
 
38
- Config file locations:
39
- - **Claude Code:** `claude mcp add context-sync -- node /path/to/dist/index.js`
40
- - **Codex:** `~/.codex/mcp.json`
41
- - **Gemini CLI:** `~/.gemini/antigravity/mcp_config.json`
54
+ ### Gemini CLI
55
+
56
+ Add to your `mcp_config.json`:
42
57
 
43
- ## MCP Tools
58
+ ```json
59
+ {
60
+ "mcpServers": {
61
+ "context-sync": {
62
+ "command": "mcp-context-sync"
63
+ }
64
+ }
65
+ }
66
+ ```
67
+
68
+ ## MCP tools
44
69
 
45
70
  | Tool | Description |
46
71
  |------|-------------|
@@ -52,26 +77,57 @@ Config file locations:
52
77
  | `search-snapshots` | Full-text search across snapshots |
53
78
  | `amend-snapshot` | Update the most recent snapshot |
54
79
 
55
- ## CLI (fallback for agents that can't call MCP tools)
80
+ ## MCP resources
81
+
82
+ | Resource | Description |
83
+ |----------|-------------|
84
+ | `status` | Server status and stats |
85
+ | `project-snapshot` | Latest snapshot for a project |
86
+ | `project-decisions` | Decision log for a project |
87
+
88
+ ## CLI
89
+
90
+ Fallback for agents that run shell commands instead of calling MCP tools directly.
56
91
 
57
- The CLI provides the same functionality as the MCP tools, for agents that run shell commands instead of calling MCP tools directly.
92
+ ```
93
+ context-sync resume [--project <path>] [--agent <name>] [--peek]
94
+ context-sync sync --file <path> | --json '<json>' | stdin
95
+ context-sync list
96
+ context-sync history [--project <path>] [--limit <n>]
97
+ ```
98
+
99
+ If `--project` is omitted, the current working directory is used automatically.
100
+
101
+ ### Flags
102
+
103
+ | Flag | Commands | Description |
104
+ |------|----------|-------------|
105
+ | `--project <path>` | resume, history | Project directory (defaults to cwd) |
106
+ | `--agent <name>` | resume | Agent name for handoff tracking (defaults to `codex`) |
107
+ | `--peek` | resume | Read-only mode — prints snapshot without recording a handoff |
108
+ | `--file <path>` | sync | Read JSON input from a file (recommended for PowerShell) |
109
+ | `--json '<json>'` | sync | Inline JSON input |
110
+ | `--limit <n>` | history | Max entries to show (default 10) |
111
+
112
+ ### Examples
58
113
 
59
114
  ```bash
60
- # Resume latest snapshot
61
- context-sync resume --project "C:/Users/me/myproject" --agent codex
115
+ # Resume latest snapshot (cwd auto-detected)
116
+ context-sync resume --agent codex
117
+
118
+ # Peek at snapshot without recording a handoff
119
+ context-sync resume --peek
62
120
 
63
- # Save a snapshot
64
- context-sync sync --json '{"projectDir":"C:/...","agent":"codex","summary":"...","tasksCompleted":[],"tasksRemaining":[],"nextSteps":"..."}'
121
+ # Save a snapshot from a JSON file
122
+ context-sync sync --file snapshot.json
65
123
 
66
- # List all projects
124
+ # List all synced projects
67
125
  context-sync list
68
126
 
69
- # View handoff history
70
- context-sync history --project "C:/Users/me/myproject"
127
+ # View last 5 handoffs
128
+ context-sync history --limit 5
71
129
  ```
72
130
 
73
- After `npm run build`, the CLI is available at `dist/cli.js` or via `npx context-sync` if installed globally.
74
-
75
131
  ## Storage
76
132
 
77
133
  SQLite database at `~/.agents/context-sync/data/context-sync.sqlite`. Created automatically on first use. WAL mode enabled for concurrent access.
package/dist/cli.js CHANGED
@@ -10,11 +10,13 @@
10
10
  * context-sync history [--project <path>] [--limit <n>]
11
11
  */
12
12
  import { readFileSync } from 'node:fs';
13
+ import { dirname } from 'node:path';
13
14
  import { getDatabase, closeDatabase } from './db/connection.js';
14
15
  import { upsertProject, getProject, getNextSequenceNumber, insertSnapshot, insertDecision, insertHandoff, updateProjectSyncStats, getLatestSnapshot, getProjectAgents, listProjects, getHandoffsByProject, } from './db/queries.js';
15
16
  import { projectIdFromPath, normalizePath, displayNameFromPath, } from './lib/project-id.js';
16
17
  import { generateId } from './lib/uuid.js';
17
18
  import { renderSnapshotMarkdown } from './lib/snapshot-renderer.js';
19
+ import { SyncInputSchema } from './lib/types.js';
18
20
  // ---------------------------------------------------------------------------
19
21
  // Arg helpers
20
22
  // ---------------------------------------------------------------------------
@@ -46,13 +48,49 @@ function readJsonInput() {
46
48
  }
47
49
  }
48
50
  // ---------------------------------------------------------------------------
51
+ // Project root discovery — walk up from cwd to find a known project
52
+ // ---------------------------------------------------------------------------
53
+ /**
54
+ * Starting from `startDir`, walk up the directory tree and return the first
55
+ * directory whose normalized path matches a project already stored in the DB.
56
+ * Returns the matched normalized path, or null if none found.
57
+ */
58
+ function resolveProjectDir(db, startDir) {
59
+ const projects = listProjects(db);
60
+ if (projects.length === 0)
61
+ return null;
62
+ const knownPaths = new Set(projects.map((p) => p.normalized_path));
63
+ let current = normalizePath(startDir);
64
+ // eslint-disable-next-line no-constant-condition
65
+ while (true) {
66
+ if (knownPaths.has(current))
67
+ return current;
68
+ const parent = normalizePath(dirname(current));
69
+ if (parent === current)
70
+ break; // reached filesystem root
71
+ current = parent;
72
+ }
73
+ return null;
74
+ }
75
+ /**
76
+ * Resolve the effective project directory for CLI commands.
77
+ * If --project is given, use it directly. Otherwise walk up from cwd.
78
+ */
79
+ function getEffectiveProjectDir(db) {
80
+ const explicit = getFlag('project');
81
+ if (explicit)
82
+ return explicit;
83
+ const resolved = resolveProjectDir(db, process.cwd());
84
+ return resolved ?? process.cwd();
85
+ }
86
+ // ---------------------------------------------------------------------------
49
87
  // resume
50
88
  // ---------------------------------------------------------------------------
51
89
  function cmdResume() {
52
- const projectDir = getFlag('project') ?? process.cwd();
53
90
  const agent = getFlag('agent') ?? 'codex';
54
91
  const peek = argv.includes('--peek');
55
92
  const db = getDatabase();
93
+ const projectDir = getEffectiveProjectDir(db);
56
94
  const projectId = projectIdFromPath(projectDir);
57
95
  const displayName = displayNameFromPath(projectDir);
58
96
  const project = getProject(db, projectId);
@@ -111,20 +149,26 @@ function cmdSync() {
111
149
  console.error(' or: <json> | context-sync sync');
112
150
  process.exit(1);
113
151
  }
114
- let input;
152
+ let parsed;
115
153
  try {
116
- input = JSON.parse(raw);
154
+ parsed = JSON.parse(raw);
117
155
  }
118
156
  catch {
119
157
  console.error('Error: invalid JSON input');
120
158
  process.exit(1);
121
159
  }
122
- const projectDir = input.projectDir || '';
123
- const agent = input.agent || 'codex';
124
- if (!projectDir) {
125
- console.error('Error: missing "projectDir" in JSON');
160
+ const result = SyncInputSchema.safeParse(parsed);
161
+ if (!result.success) {
162
+ console.error('Error: invalid sync input');
163
+ for (const issue of result.error.issues) {
164
+ const path = issue.path.length > 0 ? issue.path.join('.') : '(root)';
165
+ console.error(` ${path}: ${issue.message}`);
166
+ }
126
167
  process.exit(1);
127
168
  }
169
+ const input = result.data;
170
+ const projectDir = input.projectDir;
171
+ const agent = input.agent;
128
172
  const db = getDatabase();
129
173
  const projectId = projectIdFromPath(projectDir);
130
174
  const normalized = normalizePath(projectDir);
@@ -140,13 +184,13 @@ function cmdSync() {
140
184
  project_id: projectId,
141
185
  sequence_number: seqNum,
142
186
  agent,
143
- summary: input.summary || '',
144
- tasks_completed: JSON.stringify(input.tasksCompleted ?? []),
145
- tasks_remaining: JSON.stringify(input.tasksRemaining ?? []),
187
+ summary: input.summary,
188
+ tasks_completed: JSON.stringify(input.tasksCompleted),
189
+ tasks_remaining: JSON.stringify(input.tasksRemaining),
146
190
  decisions: JSON.stringify(decisions),
147
191
  files_modified: JSON.stringify(input.filesModified ?? []),
148
192
  blockers: JSON.stringify(input.blockers ?? []),
149
- next_steps: input.nextSteps || '',
193
+ next_steps: input.nextSteps,
150
194
  tags: JSON.stringify(input.tags ?? []),
151
195
  created_at: now,
152
196
  });
@@ -197,9 +241,9 @@ function cmdList() {
197
241
  // history
198
242
  // ---------------------------------------------------------------------------
199
243
  function cmdHistory() {
200
- const projectDir = getFlag('project') ?? process.cwd();
201
244
  const limit = parseInt(getFlag('limit') ?? '10', 10);
202
245
  const db = getDatabase();
246
+ const projectDir = getEffectiveProjectDir(db);
203
247
  const projectId = projectIdFromPath(projectDir);
204
248
  const handoffs = getHandoffsByProject(db, projectId, limit);
205
249
  if (handoffs.length === 0) {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import type Database from 'better-sqlite3';
2
2
  import type { ProjectRow, SnapshotRow, DecisionRow, HandoffRow } from '../lib/types.js';
3
+ /** Clear the prepared statement cache (useful for tests with fresh DB connections). */
4
+ export declare function clearStmtCache(): void;
3
5
  export declare function upsertProject(db: Database.Database, id: string, normalizedPath: string, displayName: string): ProjectRow;
4
6
  export declare function getProject(db: Database.Database, id: string): ProjectRow | undefined;
5
7
  export declare function listProjects(db: Database.Database): ProjectRow[];
@@ -8,6 +8,10 @@ function getStmt(db, key, sql) {
8
8
  }
9
9
  return stmt;
10
10
  }
11
+ /** Clear the prepared statement cache (useful for tests with fresh DB connections). */
12
+ export function clearStmtCache() {
13
+ stmtCache.clear();
14
+ }
11
15
  // ─── Projects ────────────────────────────────────────────────────
12
16
  export function upsertProject(db, id, normalizedPath, displayName) {
13
17
  const now = new Date().toISOString();
@@ -1 +1 @@
1
- {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/db/queries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/db/queries.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -12,9 +12,6 @@ import { registerAmendSnapshotTool } from './tools/amend-snapshot.js';
12
12
  import { registerStatusResource } from './resources/status.js';
13
13
  import { registerProjectSnapshotResource } from './resources/project-snapshot.js';
14
14
  import { registerProjectDecisionsResource } from './resources/project-decisions.js';
15
- import { registerSyncSessionPrompt } from './prompts/sync-session.js';
16
- import { registerResumeWorkPrompt } from './prompts/resume-work.js';
17
- import { registerAutoResumePrompt } from './prompts/auto-resume.js';
18
15
  async function main() {
19
16
  const db = getDatabase();
20
17
  const server = new McpServer({
@@ -33,10 +30,6 @@ async function main() {
33
30
  registerStatusResource(server, db);
34
31
  registerProjectSnapshotResource(server, db);
35
32
  registerProjectDecisionsResource(server, db);
36
- // Prompts
37
- registerSyncSessionPrompt(server);
38
- registerResumeWorkPrompt(server);
39
- registerAutoResumePrompt(server, db);
40
33
  // Connect via stdio
41
34
  const transport = new StdioServerTransport();
42
35
  await server.connect(transport);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,KAAK,UAAU,IAAI;IACjB,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,QAAQ;IACR,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC7B,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/B,uBAAuB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpC,sBAAsB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,wBAAwB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrC,2BAA2B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACxC,yBAAyB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEtC,YAAY;IACZ,sBAAsB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,+BAA+B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,gCAAgC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAE7C,UAAU;IACV,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAClC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACjC,wBAAwB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAErC,oBAAoB;IACpB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,kBAAkB;IAClB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AAEpF,KAAK,UAAU,IAAI;IACjB,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,QAAQ;IACR,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC7B,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/B,uBAAuB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpC,sBAAsB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,wBAAwB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrC,2BAA2B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACxC,yBAAyB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEtC,YAAY;IACZ,sBAAsB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,+BAA+B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,gCAAgC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAE7C,oBAAoB;IACpB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,kBAAkB;IAClB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-context-sync",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "MCP server for synchronizing work context between AI coding agents (Claude Code, Codex, Gemini, Cursor)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -14,7 +14,8 @@
14
14
  "LICENSE"
15
15
  ],
16
16
  "scripts": {
17
- "build": "tsc",
17
+ "clean": "node -e \"const fs=require('fs');fs.rmSync('dist',{recursive:true,force:true})\"",
18
+ "build": "npm run clean && tsc",
18
19
  "start": "node dist/index.js",
19
20
  "dev": "tsx src/index.ts",
20
21
  "cli": "tsx src/cli.ts",
@@ -1,3 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import type Database from 'better-sqlite3';
3
- export declare function registerAutoResumePrompt(server: McpServer, db: Database.Database): void;
@@ -1,70 +0,0 @@
1
- import { z } from 'zod';
2
- import { projectIdFromPath, displayNameFromPath } from '../lib/project-id.js';
3
- import { getProject, getLatestSnapshot, listProjects } from '../db/queries.js';
4
- export function registerAutoResumePrompt(server, db) {
5
- server.registerPrompt('auto-resume', {
6
- title: 'Auto-Resume Context',
7
- description: 'Check for existing context when opening a project. ' +
8
- 'Returns a concise summary or confirms fresh start.',
9
- argsSchema: {
10
- projectDir: z.string().describe('Absolute path to the project root directory'),
11
- agent: z.string().describe('Current agent name (e.g., "claude-code", "codex", "gemini-cli")'),
12
- },
13
- }, ({ projectDir, agent }) => {
14
- const projectId = projectIdFromPath(projectDir);
15
- const displayName = displayNameFromPath(projectDir);
16
- const project = getProject(db, projectId);
17
- // No previous context
18
- if (!project) {
19
- const otherCount = listProjects(db).length;
20
- const note = otherCount > 0
21
- ? `\n\n${otherCount} other project(s) have synced context. Use \`list-projects\` to see them.`
22
- : '';
23
- return {
24
- messages: [
25
- { role: 'user', content: { type: 'text', text: `Starting work on \`${projectDir}\`.` } },
26
- { role: 'assistant', content: { type: 'text', text: `**Fresh start** — no previous context for "${displayName}".${note}\n\n` +
27
- `When done, use the \`sync\` tool to save progress for future sessions.`, } },
28
- ],
29
- };
30
- }
31
- const snapshot = getLatestSnapshot(db, projectId);
32
- if (!snapshot) {
33
- return {
34
- messages: [
35
- { role: 'user', content: { type: 'text', text: `Starting work on "${displayName}".` } },
36
- { role: 'assistant', content: { type: 'text', text: `Project "${displayName}" exists but has no snapshots. Use \`sync\` to create one.`, } },
37
- ],
38
- };
39
- }
40
- // Build concise summary
41
- const remaining = JSON.parse(snapshot.tasks_remaining);
42
- const decisions = JSON.parse(snapshot.decisions);
43
- const lines = [
44
- `**Resuming: ${displayName}**`,
45
- '',
46
- `Last session by **${snapshot.agent}** on ${snapshot.created_at.slice(0, 10)}` +
47
- ` (snapshot #${snapshot.sequence_number}, ${project.handoff_count} handoffs)`,
48
- '',
49
- `> ${snapshot.summary}`,
50
- ];
51
- if (remaining.length > 0) {
52
- lines.push('', `**Pending (${remaining.length}):**`);
53
- for (const t of remaining.slice(0, 4))
54
- lines.push(`- ${t}`);
55
- if (remaining.length > 4)
56
- lines.push(`- ...and ${remaining.length - 4} more`);
57
- }
58
- if (decisions.length > 0) {
59
- lines.push('', `**Last decision:** ${decisions[decisions.length - 1].decision}`);
60
- }
61
- lines.push('', `Use \`resume\` with \`projectDir: "${projectDir}"\` and \`agent: "${agent}"\` to load the full snapshot and register the handoff.`);
62
- return {
63
- messages: [
64
- { role: 'user', content: { type: 'text', text: `Continuing work on \`${projectDir}\`. Load previous context.` } },
65
- { role: 'assistant', content: { type: 'text', text: lines.join('\n') } },
66
- ],
67
- };
68
- });
69
- }
70
- //# sourceMappingURL=auto-resume.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auto-resume.js","sourceRoot":"","sources":["../../src/prompts/auto-resume.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerResumeWorkPrompt(server: McpServer): void;
@@ -1,29 +0,0 @@
1
- import { z } from 'zod';
2
- export function registerResumeWorkPrompt(server) {
3
- server.registerPrompt('resume-work', {
4
- title: 'Resume Previous Work',
5
- description: 'Load the latest snapshot and orient for continuing work on a project.',
6
- argsSchema: {
7
- projectDir: z.string().describe('Project root directory'),
8
- agent: z.string().describe('Current agent name'),
9
- },
10
- }, ({ projectDir, agent }) => ({
11
- messages: [
12
- {
13
- role: 'user',
14
- content: {
15
- type: 'text',
16
- text: `I'm switching to you (${agent}) to continue work on "${projectDir}".
17
-
18
- Please call the "resume" tool to load the latest context snapshot, then:
19
- 1. Read the snapshot carefully
20
- 2. Summarize what the previous agent accomplished
21
- 3. Note any key decisions and blockers
22
- 4. Confirm the next steps
23
- 5. Ask me if I want to proceed with the suggested next steps or do something different`,
24
- },
25
- },
26
- ],
27
- }));
28
- }
29
- //# sourceMappingURL=resume-work.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resume-work.js","sourceRoot":"","sources":["../../src/prompts/resume-work.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,UAAU,wBAAwB,CAAC,MAAiB;IACxD,MAAM,CAAC,cAAc,CACnB,aAAa,EACb;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,uEAAuE;QACzE,UAAU,EAAE;YACV,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACzD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;SACjD;KACF,EACD,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,yBAAyB,KAAK,0BAA0B,UAAU;;;;;;;uFAOG;iBAC5E;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -1,2 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerSyncSessionPrompt(server: McpServer): void;
@@ -1,33 +0,0 @@
1
- import { z } from 'zod';
2
- export function registerSyncSessionPrompt(server) {
3
- server.registerPrompt('sync-session', {
4
- title: 'Sync Current Session',
5
- description: 'Guided prompt to capture a complete context snapshot for handoff to another agent.',
6
- argsSchema: {
7
- projectDir: z.string().describe('Project root directory'),
8
- agent: z.string().describe('Current agent name'),
9
- },
10
- }, ({ projectDir, agent }) => ({
11
- messages: [
12
- {
13
- role: 'user',
14
- content: {
15
- type: 'text',
16
- text: `You are about to sync your work session on project at "${projectDir}" as agent "${agent}".
17
-
18
- Please call the "sync" tool with a structured snapshot of your current session. Include:
19
- 1. A concise summary of what you accomplished
20
- 2. All tasks you completed (be specific)
21
- 3. All tasks still remaining or blocked
22
- 4. Any key decisions you made and WHY
23
- 5. Files you created or modified
24
- 6. Any blockers another agent should know about
25
- 7. Specific, actionable next steps -- what should the next agent do FIRST?
26
-
27
- Be concrete and specific. The next agent has NO context about your conversation -- they will only see this snapshot.`,
28
- },
29
- },
30
- ],
31
- }));
32
- }
33
- //# sourceMappingURL=sync-session.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-session.js","sourceRoot":"","sources":["../../src/prompts/sync-session.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,UAAU,yBAAyB,CAAC,MAAiB;IACzD,MAAM,CAAC,cAAc,CACnB,cAAc,EACd;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,oFAAoF;QACtF,UAAU,EAAE;YACV,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACzD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;SACjD;KACF,EACD,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,0DAA0D,UAAU,eAAe,KAAK;;;;;;;;;;;qHAWW;iBAC1G;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}