@finityno/claude-code-acp 0.18.0 → 0.22.0
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/dist/acp-agent.d.ts.map +1 -1
- package/dist/acp-agent.js +5 -3
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +13 -8
- package/dist/subagent-tracker.d.ts.map +1 -1
- package/dist/subagent-tracker.js +0 -5
- package/dist/task-manager.d.ts.map +1 -1
- package/dist/task-manager.js +4 -6
- package/dist/task-mcp-tools.d.ts.map +1 -1
- package/dist/task-mcp-tools.js +93 -10
- package/dist/task-store.d.ts.map +1 -1
- package/dist/task-store.js +2 -9
- package/package.json +2 -2
package/dist/acp-agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/acp-agent.js
CHANGED
|
@@ -27,7 +27,6 @@ export class ClaudeAcpAgent {
|
|
|
27
27
|
// Initialize TaskStore (use provided task list ID or auto-generate one)
|
|
28
28
|
const taskListId = process.env.CLAUDE_CODE_TASK_LIST_ID || crypto.randomUUID();
|
|
29
29
|
this.taskListId = taskListId;
|
|
30
|
-
console.log(`[ACP] Initializing TaskStore with taskListId: ${taskListId}`);
|
|
31
30
|
this.taskStore = new TaskStore({
|
|
32
31
|
taskListId,
|
|
33
32
|
logger: this.logger,
|
|
@@ -55,6 +54,8 @@ export class ClaudeAcpAgent {
|
|
|
55
54
|
// Initialize and start watching for changes
|
|
56
55
|
this.taskStore.init().then(() => {
|
|
57
56
|
this.taskStore.watch();
|
|
57
|
+
}).catch((error) => {
|
|
58
|
+
this.logger.error("[ACP] Failed to initialize TaskStore:", error);
|
|
58
59
|
});
|
|
59
60
|
}
|
|
60
61
|
async initialize(request) {
|
|
@@ -255,6 +256,9 @@ export class ClaudeAcpAgent {
|
|
|
255
256
|
break;
|
|
256
257
|
case "auth_status":
|
|
257
258
|
break;
|
|
259
|
+
case "tool_use_summary":
|
|
260
|
+
// Tool use summary messages are informational, skip them
|
|
261
|
+
break;
|
|
258
262
|
default:
|
|
259
263
|
unreachable(message);
|
|
260
264
|
break;
|
|
@@ -287,7 +291,6 @@ export class ClaudeAcpAgent {
|
|
|
287
291
|
output_file: message.output_file,
|
|
288
292
|
summary: message.summary,
|
|
289
293
|
});
|
|
290
|
-
this.logger.log(`[ACP] Task notification: ${message.task_id} -> ${message.status}`);
|
|
291
294
|
}
|
|
292
295
|
async unstable_setSessionModel(params) {
|
|
293
296
|
if (!this.sessions[params.sessionId]) {
|
|
@@ -616,7 +619,6 @@ export class ClaudeAcpAgent {
|
|
|
616
619
|
}
|
|
617
620
|
// Only add the acp MCP server if built-in tools are not disabled
|
|
618
621
|
if (!params._meta?.disableBuiltInTools) {
|
|
619
|
-
console.log(`[ACP] Creating MCP server for session ${sessionId} with taskStore: ${!!this.taskStore}`);
|
|
620
622
|
const server = createMcpServer(this, sessionId, this.clientCapabilities, this.taskStore);
|
|
621
623
|
mcpServers["acp"] = {
|
|
622
624
|
type: "sdk",
|
package/dist/mcp-server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AASpE,OAAO,EAAqB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EACL,kBAAkB,EAGnB,MAAM,0BAA0B,CAAC;AASlC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,eAAe,iSAIT,CAAC;AA2BpB,wBAAgB,eAAe,CAC7B,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,kBAAkB,GAAG,SAAS,EAClD,SAAS,CAAC,EAAE,SAAS,GACpB,SAAS,
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AASpE,OAAO,EAAqB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EACL,kBAAkB,EAGnB,MAAM,0BAA0B,CAAC;AASlC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,eAAe,iSAIT,CAAC;AA2BpB,wBAAgB,eAAe,CAC7B,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,kBAAkB,GAAG,SAAS,EAClD,SAAS,CAAC,EAAE,SAAS,GACpB,SAAS,CAipBX;AA+DD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,KAAK,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC,GACD;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,CAyF/C"}
|
package/dist/mcp-server.js
CHANGED
|
@@ -56,7 +56,7 @@ import { CLAUDE_CONFIG_DIR } from "./acp-agent.js";
|
|
|
56
56
|
import * as diff from "diff";
|
|
57
57
|
import * as path from "node:path";
|
|
58
58
|
import * as fs from "node:fs/promises";
|
|
59
|
-
import { sleep,
|
|
59
|
+
import { sleep, extractLinesWithByteLimit } from "./utils.js";
|
|
60
60
|
import { registerTaskMcpTools } from "./task-mcp-tools.js";
|
|
61
61
|
import { registerWorkItemMcpTools } from "./work-item-mcp-tools.js";
|
|
62
62
|
import { acpToolNames } from "./tools.js";
|
|
@@ -274,7 +274,12 @@ Usage:
|
|
|
274
274
|
}
|
|
275
275
|
await writeTextFile(input);
|
|
276
276
|
return {
|
|
277
|
-
content: [
|
|
277
|
+
content: [
|
|
278
|
+
{
|
|
279
|
+
type: "text",
|
|
280
|
+
text: `The file ${input.file_path} has been updated successfully.`,
|
|
281
|
+
},
|
|
282
|
+
],
|
|
278
283
|
};
|
|
279
284
|
}
|
|
280
285
|
catch (error) {
|
|
@@ -596,9 +601,13 @@ In sessions with ${acpToolNames.killShell} always use it instead of KillShell.`,
|
|
|
596
601
|
},
|
|
597
602
|
}, async (input) => {
|
|
598
603
|
try {
|
|
599
|
-
const
|
|
604
|
+
const shellId = input.shell_id ?? input.task_id;
|
|
605
|
+
if (!shellId) {
|
|
606
|
+
throw new Error("Missing shell_id or task_id");
|
|
607
|
+
}
|
|
608
|
+
const bgTerm = agent.backgroundTerminals[shellId];
|
|
600
609
|
if (!bgTerm) {
|
|
601
|
-
throw new Error(`Unknown shell ${
|
|
610
|
+
throw new Error(`Unknown shell ${shellId}`);
|
|
602
611
|
}
|
|
603
612
|
switch (bgTerm.status) {
|
|
604
613
|
case "started": {
|
|
@@ -632,10 +641,6 @@ In sessions with ${acpToolNames.killShell} always use it instead of KillShell.`,
|
|
|
632
641
|
return {
|
|
633
642
|
content: [{ type: "text", text: "Command killed by timeout." }],
|
|
634
643
|
};
|
|
635
|
-
default: {
|
|
636
|
-
unreachable(bgTerm);
|
|
637
|
-
throw new Error("Unexpected background terminal status");
|
|
638
|
-
}
|
|
639
644
|
}
|
|
640
645
|
}
|
|
641
646
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent-tracker.d.ts","sourceRoot":"","sources":["../src/subagent-tracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,SAAS,GACT,WAAW,GACX,QAAQ,GACR,WAAW,GACX,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,iBAAiB,GACjB,kBAAkB,GAClB,SAAS,GACT,MAAM,GACN,mBAAmB,GACnB,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IAEX,wDAAwD;IACxD,eAAe,EAAE,MAAM,CAAC;IAExB,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,uBAAuB;IACvB,YAAY,EAAE,YAAY,CAAC;IAE3B,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IAEpB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IAEf,kDAAkD;IAClD,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAEpC,qBAAqB;IACrB,MAAM,EAAE,cAAc,CAAC;IAEvB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAElB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qDAAqD;IACrD,eAAe,EAAE,OAAO,CAAC;IAEzB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yCAAyC;IACzC,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,kBAAkB,GAClB,mBAAmB,GACnB,oBAAoB,GACpB,iBAAiB,GACjB,oBAAoB,GACpB,kBAAkB,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE;QACX,QAAQ,EAAE;YACR,EAAE,EAAE,MAAM,CAAC;YACX,SAAS,EAAE,iBAAiB,CAAC;YAC7B,YAAY,EAAE,YAAY,CAAC;YAC3B,WAAW,EAAE,MAAM,CAAC;YACpB,MAAM,EAAE,cAAc,CAAC;YACvB,eAAe,EAAE,MAAM,CAAC;YACxB,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,eAAe,EAAE,OAAO,CAAC;YACzB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,6DAA6D;YAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,uCAAuC;YACvC,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,yCAAyC;YACzC,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,wDAAwD;QACxD,gBAAgB,CAAC,EAAE;YACjB,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;YAC3C,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,YAAY,CAAC;IAC5B,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAGD,MAAM,MAAM,qBAAqB,GAAG,CAClC,QAAQ,EAAE,eAAe,EACzB,IAAI,CAAC,EAAE,OAAO,KACX,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,kDAAkD;IAClD,OAAO,CAAC,SAAS,CAA2C;IAE5D,wDAAwD;IACxD,OAAO,CAAC,gBAAgB,CAAuC;IAE/D,0DAA0D;IAC1D,OAAO,CAAC,iBAAiB,CAAkC;IAE3D,oDAAoD;IACpD,OAAO,CAAC,SAAS,CAAiE;IAElF,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,mBAAmB,GAAG,IAAW,EAAE,MAAM,GAAE,MAAgB;IAK/E;;OAEG;IACH,aAAa,CACX,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,aAAa,EACpB,eAAe,CAAC,EAAE,MAAM,GACvB,eAAe;
|
|
1
|
+
{"version":3,"file":"subagent-tracker.d.ts","sourceRoot":"","sources":["../src/subagent-tracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,SAAS,GACT,WAAW,GACX,QAAQ,GACR,WAAW,GACX,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,iBAAiB,GACjB,kBAAkB,GAClB,SAAS,GACT,MAAM,GACN,mBAAmB,GACnB,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,EAAE,EAAE,MAAM,CAAC;IAEX,wDAAwD;IACxD,eAAe,EAAE,MAAM,CAAC;IAExB,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,uBAAuB;IACvB,YAAY,EAAE,YAAY,CAAC;IAE3B,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IAEpB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IAEf,kDAAkD;IAClD,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAEpC,qBAAqB;IACrB,MAAM,EAAE,cAAc,CAAC;IAEvB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAElB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qDAAqD;IACrD,eAAe,EAAE,OAAO,CAAC;IAEzB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yCAAyC;IACzC,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,kBAAkB,GAClB,mBAAmB,GACnB,oBAAoB,GACpB,iBAAiB,GACjB,oBAAoB,GACpB,kBAAkB,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE;QACX,QAAQ,EAAE;YACR,EAAE,EAAE,MAAM,CAAC;YACX,SAAS,EAAE,iBAAiB,CAAC;YAC7B,YAAY,EAAE,YAAY,CAAC;YAC3B,WAAW,EAAE,MAAM,CAAC;YACpB,MAAM,EAAE,cAAc,CAAC;YACvB,eAAe,EAAE,MAAM,CAAC;YACxB,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,eAAe,EAAE,OAAO,CAAC;YACzB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,6DAA6D;YAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,uCAAuC;YACvC,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,yCAAyC;YACzC,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,wDAAwD;QACxD,gBAAgB,CAAC,EAAE;YACjB,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;YAC3C,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,YAAY,CAAC;IAC5B,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAGD,MAAM,MAAM,qBAAqB,GAAG,CAClC,QAAQ,EAAE,eAAe,EACzB,IAAI,CAAC,EAAE,OAAO,KACX,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,kDAAkD;IAClD,OAAO,CAAC,SAAS,CAA2C;IAE5D,wDAAwD;IACxD,OAAO,CAAC,gBAAgB,CAAuC;IAE/D,0DAA0D;IAC1D,OAAO,CAAC,iBAAiB,CAAkC;IAE3D,oDAAoD;IACpD,OAAO,CAAC,SAAS,CAAiE;IAElF,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,mBAAmB,GAAG,IAAW,EAAE,MAAM,GAAE,MAAgB;IAK/E;;OAEG;IACH,aAAa,CACX,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,aAAa,EACpB,eAAe,CAAC,EAAE,MAAM,GACvB,eAAe;IAsClB;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcrD;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB5F;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBnE;;OAEG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;OAGG;IACG,sBAAsB,CAAC,YAAY,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC9E;;OAEG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAU9E;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI3D;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE;IAQzD;;OAEG;IACH,mBAAmB,IAAI,eAAe,EAAE;IAIxC;;OAEG;IACH,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,EAAE;IAUnE;;;;OAIG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAKjE;;OAEG;IACH,eAAe,IAAI,eAAe,EAAE;IAIpC;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAM3D;;OAEG;IACH,iBAAiB,IAAI,eAAe,EAAE;IAQtC;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAItC;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAOjF;;OAEG;IACH,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAIpF;;OAEG;IACH,OAAO,CAAC,QAAQ,GAAE,MAAgB,GAAG,MAAM;IAyB3C;;OAEG;IACH,WAAW,IAAI,sBAAsB;IAkCrC;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI;IAgDhD;;OAEG;IACH,QAAQ,IAAI,aAAa;IAezB;;OAEG;IACH,KAAK,IAAI,IAAI;YAQC,SAAS;YAiBT,wBAAwB;IAiDtC,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,wBAAwB;CAYjC;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAQtE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAQA"}
|
package/dist/subagent-tracker.js
CHANGED
|
@@ -48,7 +48,6 @@ export class SubagentTracker {
|
|
|
48
48
|
this.sessionSubagents.set(sessionId, new Set());
|
|
49
49
|
}
|
|
50
50
|
this.sessionSubagents.get(sessionId).add(toolUseId);
|
|
51
|
-
this.logger.log(`[SubagentTracker] Tracked new subagent: ${toolUseId} (${input.subagent_type}: ${input.description})${isResumed ? " [RESUMED]" : ""}`);
|
|
52
51
|
return subagent;
|
|
53
52
|
}
|
|
54
53
|
/**
|
|
@@ -84,7 +83,6 @@ export class SubagentTracker {
|
|
|
84
83
|
}
|
|
85
84
|
await this.emitEvent("subagent_completed", subagent);
|
|
86
85
|
await this.sendSubagentNotification(subagent, "subagent_completed");
|
|
87
|
-
this.logger.log(`[SubagentTracker] Subagent completed: ${toolUseId} (duration: ${this.getDuration(subagent)}ms)${agentId ? ` [agentId: ${agentId}]` : ""}`);
|
|
88
86
|
}
|
|
89
87
|
/**
|
|
90
88
|
* Mark a subagent as failed
|
|
@@ -114,7 +112,6 @@ export class SubagentTracker {
|
|
|
114
112
|
subagent.completedAt = Date.now();
|
|
115
113
|
await this.emitEvent("subagent_cancelled", subagent);
|
|
116
114
|
await this.sendSubagentNotification(subagent, "subagent_cancelled");
|
|
117
|
-
this.logger.log(`[SubagentTracker] Subagent cancelled: ${toolUseId}`);
|
|
118
115
|
}
|
|
119
116
|
/**
|
|
120
117
|
* Handle SDKTaskNotificationMessage from the Claude Agent SDK.
|
|
@@ -148,7 +145,6 @@ export class SubagentTracker {
|
|
|
148
145
|
await this.sendSubagentNotification(subagent, "subagent_stopped", notification);
|
|
149
146
|
break;
|
|
150
147
|
}
|
|
151
|
-
this.logger.log(`[SubagentTracker] Task notification: ${notification.task_id} -> ${notification.status}`);
|
|
152
148
|
}
|
|
153
149
|
/**
|
|
154
150
|
* Send progress update for a running subagent
|
|
@@ -351,7 +347,6 @@ export class SubagentTracker {
|
|
|
351
347
|
this.agentIdToSubagent.set(task.agentId, task.id);
|
|
352
348
|
}
|
|
353
349
|
}
|
|
354
|
-
this.logger.log(`[SubagentTracker] Imported ${state.tasks.length} tasks from persistence`);
|
|
355
350
|
}
|
|
356
351
|
/**
|
|
357
352
|
* Get statistics about subagents
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../src/task-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,cAAc,EAEf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAKxC,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAiB;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAkB;gBAErB,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,kBAAkB;IAgBlE;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../src/task-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,cAAc,EAEf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAKxC,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAiB;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAkB;gBAErB,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,kBAAkB;IAgBlE;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BhC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BhC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAKhC;;OAEG;IACH,WAAW,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,eAAe,EAAE;IA0BnD;;OAEG;IACH,iBAAiB,IAAI,eAAe,EAAE;IAItC;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIpD;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI9D;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAiB3D;;OAEG;IACG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAU9E;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYlD;;OAEG;IACH,QAAQ;IAIR;;OAEG;IACH,UAAU,IAAI,eAAe;IAI7B;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAShC;;OAEG;IACH,OAAO,IAAI,IAAI;IAYf,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,aAAa;CAYtB;AAGD,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/task-manager.js
CHANGED
|
@@ -41,15 +41,11 @@ export class TaskManager {
|
|
|
41
41
|
// Filter out tasks older than maxTaskAgeMs
|
|
42
42
|
const cutoff = Date.now() - this.maxTaskAgeMs;
|
|
43
43
|
const filteredTasks = state.tasks.filter((task) => task.createdAt > cutoff || task.status === "running");
|
|
44
|
-
if (filteredTasks.length !== state.tasks.length) {
|
|
45
|
-
this.logger.log(`[TaskManager] Filtered out ${state.tasks.length - filteredTasks.length} old tasks`);
|
|
46
|
-
}
|
|
47
44
|
// Import filtered state
|
|
48
45
|
this.tracker.importState({
|
|
49
46
|
...state,
|
|
50
47
|
tasks: filteredTasks,
|
|
51
48
|
});
|
|
52
|
-
this.logger.log(`[TaskManager] Loaded ${filteredTasks.length} tasks from persistence`);
|
|
53
49
|
}
|
|
54
50
|
}
|
|
55
51
|
catch (error) {
|
|
@@ -63,6 +59,8 @@ export class TaskManager {
|
|
|
63
59
|
if (!this.isDirty) {
|
|
64
60
|
return; // No changes to save
|
|
65
61
|
}
|
|
62
|
+
// Clear flag before async operations - any new events will re-set it
|
|
63
|
+
this.isDirty = false;
|
|
66
64
|
try {
|
|
67
65
|
const state = this.tracker.exportState();
|
|
68
66
|
// Ensure directory exists
|
|
@@ -72,10 +70,10 @@ export class TaskManager {
|
|
|
72
70
|
const tempPath = `${this.persistencePath}.tmp`;
|
|
73
71
|
await fs.promises.writeFile(tempPath, JSON.stringify(state, null, 2), "utf-8");
|
|
74
72
|
await fs.promises.rename(tempPath, this.persistencePath);
|
|
75
|
-
this.isDirty = false;
|
|
76
|
-
this.logger.log(`[TaskManager] Saved ${state.tasks.length} tasks to persistence`);
|
|
77
73
|
}
|
|
78
74
|
catch (error) {
|
|
75
|
+
// Restore flag on error so retry will happen
|
|
76
|
+
this.isDirty = true;
|
|
79
77
|
this.logger.error("[TaskManager] Failed to save state:", error);
|
|
80
78
|
}
|
|
81
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-mcp-tools.d.ts","sourceRoot":"","sources":["../src/task-mcp-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAkB,eAAe,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"task-mcp-tools.d.ts","sourceRoot":"","sources":["../src/task-mcp-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAkB,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAKxE,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,OAAO,EAAE,eAAe,CAAC;IACzB,oDAAoD;IACpD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAwFD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,mBAAmB,GAC3B,IAAI,CAiTN"}
|
package/dist/task-mcp-tools.js
CHANGED
|
@@ -1,5 +1,66 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { TaskManager } from "./task-manager.js";
|
|
3
|
+
import { homedir } from "os";
|
|
4
|
+
import { join } from "path";
|
|
5
|
+
import { readFile } from "fs/promises";
|
|
6
|
+
/**
|
|
7
|
+
* Get Claude Code's project path for a given working directory
|
|
8
|
+
* Converts /Users/foo/project -> Users-foo-project
|
|
9
|
+
* Handles both Unix and Windows paths safely
|
|
10
|
+
*/
|
|
11
|
+
function getClaudeProjectPath(workingDir) {
|
|
12
|
+
// Remove Windows drive letters (e.g., C:, D:)
|
|
13
|
+
let sanitized = workingDir.replace(/^[A-Za-z]:/, "");
|
|
14
|
+
// Replace both forward and back slashes with dashes
|
|
15
|
+
sanitized = sanitized.replace(/[/\\]/g, "-");
|
|
16
|
+
// Remove leading dashes and collapse multiple dashes
|
|
17
|
+
sanitized = sanitized.replace(/^-+/, "").replace(/-+/g, "-");
|
|
18
|
+
return sanitized;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Read sessions from Claude Code's sessions-index.json
|
|
22
|
+
*/
|
|
23
|
+
async function readClaudeSessions(workingDir) {
|
|
24
|
+
const claudeDir = join(homedir(), ".claude", "projects");
|
|
25
|
+
const sessions = [];
|
|
26
|
+
try {
|
|
27
|
+
// If working dir is specified, only read that project's sessions
|
|
28
|
+
if (workingDir) {
|
|
29
|
+
const projectPath = getClaudeProjectPath(workingDir);
|
|
30
|
+
const indexPath = join(claudeDir, projectPath, "sessions-index.json");
|
|
31
|
+
try {
|
|
32
|
+
const content = await readFile(indexPath, "utf8");
|
|
33
|
+
const index = JSON.parse(content);
|
|
34
|
+
sessions.push(...index.entries);
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
// Project might not exist
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// Read all projects' sessions
|
|
42
|
+
const { readdir } = await import("fs/promises");
|
|
43
|
+
const projects = await readdir(claudeDir);
|
|
44
|
+
for (const project of projects) {
|
|
45
|
+
const indexPath = join(claudeDir, project, "sessions-index.json");
|
|
46
|
+
try {
|
|
47
|
+
const content = await readFile(indexPath, "utf8");
|
|
48
|
+
const index = JSON.parse(content);
|
|
49
|
+
sessions.push(...index.entries);
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
// Skip projects without sessions-index.json
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
// Sort by modified date, newest first
|
|
57
|
+
sessions.sort((a, b) => new Date(b.modified).getTime() - new Date(a.modified).getTime());
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
// Claude directory might not exist
|
|
61
|
+
}
|
|
62
|
+
return sessions;
|
|
63
|
+
}
|
|
3
64
|
/**
|
|
4
65
|
* Register MCP tools for task management
|
|
5
66
|
*/
|
|
@@ -30,7 +91,7 @@ Can filter by status, session, or background execution.`,
|
|
|
30
91
|
const tasks = manager.getAllTasks({
|
|
31
92
|
status: input.status,
|
|
32
93
|
sessionId: input.sessionId,
|
|
33
|
-
runInBackground: input.backgroundOnly,
|
|
94
|
+
runInBackground: input.backgroundOnly === true ? true : undefined,
|
|
34
95
|
subagentType: input.subagentType,
|
|
35
96
|
});
|
|
36
97
|
const limited = tasks.slice(0, input.limit);
|
|
@@ -170,28 +231,51 @@ Can filter by status, session, or background execution.`,
|
|
|
170
231
|
content: [{ type: "text", text: `Task not running: ${task.status}` }],
|
|
171
232
|
};
|
|
172
233
|
}
|
|
173
|
-
|
|
234
|
+
if (taskManager) {
|
|
235
|
+
await taskManager.cancelTask(input.taskId);
|
|
236
|
+
}
|
|
237
|
+
else {
|
|
238
|
+
await tracker.cancelSubagent(input.taskId);
|
|
239
|
+
}
|
|
174
240
|
return { content: [{ type: "text", text: `Task ${input.taskId} cancelled` }] };
|
|
175
241
|
});
|
|
176
|
-
// List resumable tasks
|
|
242
|
+
// List resumable tasks - reads from Claude Code's sessions-index.json
|
|
177
243
|
server.registerTool("ListResumableTasks", {
|
|
178
244
|
title: "List Resumable Tasks",
|
|
179
|
-
description:
|
|
245
|
+
description: `List previous Claude Code sessions that can be resumed via Task tool's resume parameter.
|
|
246
|
+
Reads from Claude Code's sessions storage (~/.claude/projects/) to find resumable sessions.
|
|
247
|
+
Also shows in-memory tracked subagents that haven't been persisted yet.`,
|
|
180
248
|
inputSchema: {
|
|
181
|
-
limit: z.number().optional().default(10).describe("Maximum number of
|
|
249
|
+
limit: z.number().optional().default(10).describe("Maximum number of sessions to return"),
|
|
250
|
+
projectPath: z.string().optional().describe("Filter to sessions from a specific project path"),
|
|
182
251
|
},
|
|
183
252
|
annotations: {
|
|
184
253
|
title: "List resumable tasks",
|
|
185
254
|
readOnlyHint: true,
|
|
186
255
|
},
|
|
187
256
|
}, async (input) => {
|
|
188
|
-
|
|
257
|
+
// Get sessions from Claude Code's storage
|
|
258
|
+
const claudeSessions = await readClaudeSessions(input.projectPath);
|
|
259
|
+
const limited = claudeSessions.slice(0, input.limit);
|
|
260
|
+
// Also get in-memory tracked subagents (for current session)
|
|
261
|
+
const inMemoryTasks = tracker.getResumableTasks();
|
|
189
262
|
return {
|
|
190
263
|
content: [{
|
|
191
264
|
type: "text",
|
|
192
265
|
text: JSON.stringify({
|
|
193
|
-
count:
|
|
194
|
-
tasks:
|
|
266
|
+
count: limited.length,
|
|
267
|
+
tasks: limited.map((s) => ({
|
|
268
|
+
sessionId: s.sessionId,
|
|
269
|
+
summary: s.summary,
|
|
270
|
+
firstPrompt: s.firstPrompt.substring(0, 100) + (s.firstPrompt.length > 100 ? "..." : ""),
|
|
271
|
+
messageCount: s.messageCount,
|
|
272
|
+
created: s.created,
|
|
273
|
+
modified: s.modified,
|
|
274
|
+
gitBranch: s.gitBranch,
|
|
275
|
+
projectPath: s.projectPath,
|
|
276
|
+
})),
|
|
277
|
+
// Also include in-memory subagents not yet persisted
|
|
278
|
+
inMemorySubagents: inMemoryTasks.length > 0 ? inMemoryTasks.map((t) => ({
|
|
195
279
|
id: t.id,
|
|
196
280
|
agentId: t.agentId,
|
|
197
281
|
type: t.subagentType,
|
|
@@ -199,8 +283,7 @@ Can filter by status, session, or background execution.`,
|
|
|
199
283
|
status: t.status,
|
|
200
284
|
completedAt: t.completedAt ? new Date(t.completedAt).toISOString() : undefined,
|
|
201
285
|
summary: t.summary,
|
|
202
|
-
|
|
203
|
-
})),
|
|
286
|
+
})) : undefined,
|
|
204
287
|
}, null, 2),
|
|
205
288
|
}],
|
|
206
289
|
};
|
package/dist/task-store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-store.d.ts","sourceRoot":"","sources":["../src/task-store.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,CAA0B;IAC3C,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,WAAW,CAAkB;gBAEzB,OAAO,EAAE,gBAAgB;IAOrC;;OAEG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"task-store.d.ts","sourceRoot":"","sources":["../src/task-store.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,CAA0B;IAC3C,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,WAAW,CAAkB;gBAEzB,OAAO,EAAE,gBAAgB;IAOrC;;OAEG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBnD;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAe/C;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAuEnE;;OAEG;YACW,YAAY;IA4B1B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAK7B;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA+B9C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB5B;;OAEG;IACH,KAAK,IAAI,IAAI;IAOb;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAaF,OAAO,CAAC,eAAe;YAIT,QAAQ;IAKtB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;CAsB3B"}
|
package/dist/task-store.js
CHANGED
|
@@ -36,7 +36,6 @@ export class TaskStore {
|
|
|
36
36
|
this.nextId = maxId + 1;
|
|
37
37
|
}
|
|
38
38
|
this.initialized = true;
|
|
39
|
-
this.logger.log(`[TaskStore] Initialized at ${this.taskListPath}, next ID: ${this.nextId}`);
|
|
40
39
|
}
|
|
41
40
|
catch (err) {
|
|
42
41
|
this.logger.error(`[TaskStore] Failed to initialize:`, err);
|
|
@@ -59,7 +58,6 @@ export class TaskStore {
|
|
|
59
58
|
metadata: input.metadata,
|
|
60
59
|
};
|
|
61
60
|
await this.saveTask(task);
|
|
62
|
-
this.logger.log(`[TaskStore] Created task ${task.id}: ${task.subject}`);
|
|
63
61
|
return task;
|
|
64
62
|
}
|
|
65
63
|
/**
|
|
@@ -147,7 +145,6 @@ export class TaskStore {
|
|
|
147
145
|
}
|
|
148
146
|
}
|
|
149
147
|
await this.saveTask(task);
|
|
150
|
-
this.logger.log(`[TaskStore] Updated task ${taskId}: ${task.subject} -> ${task.status}`);
|
|
151
148
|
return task;
|
|
152
149
|
}
|
|
153
150
|
/**
|
|
@@ -212,7 +209,6 @@ export class TaskStore {
|
|
|
212
209
|
}
|
|
213
210
|
try {
|
|
214
211
|
await rm(this.getTaskFilePath(taskId));
|
|
215
|
-
this.logger.log(`[TaskStore] Deleted task ${taskId}`);
|
|
216
212
|
return true;
|
|
217
213
|
}
|
|
218
214
|
catch {
|
|
@@ -231,13 +227,11 @@ export class TaskStore {
|
|
|
231
227
|
this.watcher = fsWatch.watch(this.taskListPath, async (eventType, filename) => {
|
|
232
228
|
if (!filename?.endsWith(".json"))
|
|
233
229
|
return;
|
|
234
|
-
this.logger.log(`[TaskStore] File change detected: ${eventType} ${filename}`);
|
|
235
230
|
if (this.onChange) {
|
|
236
231
|
const tasks = await this.list();
|
|
237
232
|
this.onChange(tasks);
|
|
238
233
|
}
|
|
239
234
|
});
|
|
240
|
-
this.logger.log(`[TaskStore] Watching for changes at ${this.taskListPath}`);
|
|
241
235
|
}
|
|
242
236
|
catch (err) {
|
|
243
237
|
this.logger.error(`[TaskStore] Failed to start watcher:`, err);
|
|
@@ -250,7 +244,6 @@ export class TaskStore {
|
|
|
250
244
|
if (this.watcher) {
|
|
251
245
|
this.watcher.close();
|
|
252
246
|
this.watcher = null;
|
|
253
|
-
this.logger.log(`[TaskStore] Stopped watching`);
|
|
254
247
|
}
|
|
255
248
|
}
|
|
256
249
|
/**
|
|
@@ -289,8 +282,8 @@ export class TaskStore {
|
|
|
289
282
|
if (verb.endsWith("e")) {
|
|
290
283
|
participle = verb.slice(0, -1) + "ing";
|
|
291
284
|
}
|
|
292
|
-
else if (verb.match(/[aeiou][
|
|
293
|
-
// Double consonant for short vowel + consonant
|
|
285
|
+
else if (verb.match(/[aeiou][bcdfghjklmnpqrstvz]$/)) {
|
|
286
|
+
// Double consonant for short vowel + consonant (excluding w, x, y)
|
|
294
287
|
participle = verb + verb.slice(-1) + "ing";
|
|
295
288
|
}
|
|
296
289
|
else {
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "0.
|
|
6
|
+
"version": "0.22.0",
|
|
7
7
|
"description": "An ACP-compatible coding agent powered by the Claude Code SDK (TypeScript)",
|
|
8
8
|
"main": "dist/lib.js",
|
|
9
9
|
"types": "dist/lib.d.ts",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"license": "Apache-2.0",
|
|
62
62
|
"dependencies": {
|
|
63
63
|
"@agentclientprotocol/sdk": "0.13.0",
|
|
64
|
-
"@anthropic-ai/claude-agent-sdk": "0.2.
|
|
64
|
+
"@anthropic-ai/claude-agent-sdk": "^0.2.20",
|
|
65
65
|
"@modelcontextprotocol/sdk": "1.25.2",
|
|
66
66
|
"diff": "8.0.3",
|
|
67
67
|
"minimatch": "10.1.1"
|