@moreih29/nexus-core 0.20.1 → 0.21.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/README.md +1 -1
- package/dist/mcp/definitions/artifact.d.ts +15 -0
- package/dist/mcp/definitions/artifact.d.ts.map +1 -1
- package/dist/mcp/definitions/artifact.js +15 -1
- package/dist/mcp/definitions/artifact.js.map +1 -1
- package/dist/mcp/definitions/history.d.ts +8 -0
- package/dist/mcp/definitions/history.d.ts.map +1 -1
- package/dist/mcp/definitions/history.js +28 -3
- package/dist/mcp/definitions/history.js.map +1 -1
- package/dist/mcp/definitions/index.d.ts +58 -2
- package/dist/mcp/definitions/index.d.ts.map +1 -1
- package/dist/mcp/definitions/plan.js +2 -2
- package/dist/mcp/definitions/plan.js.map +1 -1
- package/dist/mcp/definitions/task.d.ts +38 -2
- package/dist/mcp/definitions/task.d.ts.map +1 -1
- package/dist/mcp/definitions/task.js +26 -7
- package/dist/mcp/definitions/task.js.map +1 -1
- package/dist/mcp/handlers/artifact.d.ts.map +1 -1
- package/dist/mcp/handlers/artifact.js +39 -1
- package/dist/mcp/handlers/artifact.js.map +1 -1
- package/dist/mcp/handlers/history.d.ts.map +1 -1
- package/dist/mcp/handlers/history.js +178 -12
- package/dist/mcp/handlers/history.js.map +1 -1
- package/dist/mcp/handlers/plan.d.ts.map +1 -1
- package/dist/mcp/handlers/plan.js +0 -2
- package/dist/mcp/handlers/plan.js.map +1 -1
- package/dist/mcp/handlers/task.d.ts.map +1 -1
- package/dist/mcp/handlers/task.js +27 -3
- package/dist/mcp/handlers/task.js.map +1 -1
- package/dist/types/state.d.ts +177 -0
- package/dist/types/state.d.ts.map +1 -1
- package/dist/types/state.js +8 -0
- package/dist/types/state.js.map +1 -1
- package/package.json +1 -1
- package/spec/agents/architect/body.ko.md +64 -118
- package/spec/agents/architect/body.md +62 -118
- package/spec/agents/designer/body.ko.md +120 -241
- package/spec/agents/designer/body.md +114 -237
- package/spec/agents/engineer/body.ko.md +62 -114
- package/spec/agents/engineer/body.md +62 -114
- package/spec/agents/lead/body.ko.md +78 -154
- package/spec/agents/lead/body.md +76 -153
- package/spec/agents/postdoc/body.ko.md +111 -120
- package/spec/agents/postdoc/body.md +110 -121
- package/spec/agents/researcher/body.ko.md +80 -158
- package/spec/agents/researcher/body.md +80 -158
- package/spec/agents/reviewer/body.ko.md +75 -143
- package/spec/agents/reviewer/body.md +76 -144
- package/spec/agents/tester/body.ko.md +76 -190
- package/spec/agents/tester/body.md +77 -193
- package/spec/agents/writer/body.ko.md +70 -143
- package/spec/agents/writer/body.md +70 -143
- package/spec/skills/nx-auto-plan/body.ko.md +9 -16
- package/spec/skills/nx-auto-plan/body.md +9 -16
- package/spec/skills/nx-plan/body.ko.md +14 -25
- package/spec/skills/nx-plan/body.md +14 -25
- package/spec/skills/nx-run/body.ko.md +67 -9
- package/spec/skills/nx-run/body.md +67 -9
- package/spec/agents/strategist/body.ko.md +0 -189
- package/spec/agents/strategist/body.md +0 -187
package/README.md
CHANGED
|
@@ -81,7 +81,7 @@ Nexus 런타임이 기대하는 세 가지 역할을 각 하네스에서 와이
|
|
|
81
81
|
|
|
82
82
|
| 카테고리 | 역할 | 에이전트 |
|
|
83
83
|
|---|---|---|
|
|
84
|
-
| HOW | 기술
|
|
84
|
+
| HOW | 기술 설계·분석 자문 | architect, designer, postdoc |
|
|
85
85
|
| DO | 실행 | engineer, writer, researcher |
|
|
86
86
|
| CHECK | 검증 | reviewer, tester |
|
|
87
87
|
|
|
@@ -8,6 +8,14 @@ export declare const artifactWriteTool: {
|
|
|
8
8
|
content: z.ZodString;
|
|
9
9
|
};
|
|
10
10
|
};
|
|
11
|
+
export declare const artifactListTool: {
|
|
12
|
+
group: string;
|
|
13
|
+
name: string;
|
|
14
|
+
description: string;
|
|
15
|
+
inputSchema: {
|
|
16
|
+
prefix: z.ZodOptional<z.ZodString>;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
11
19
|
export declare const artifactToolDefinitions: readonly [{
|
|
12
20
|
group: string;
|
|
13
21
|
name: string;
|
|
@@ -16,5 +24,12 @@ export declare const artifactToolDefinitions: readonly [{
|
|
|
16
24
|
filename: z.ZodString;
|
|
17
25
|
content: z.ZodString;
|
|
18
26
|
};
|
|
27
|
+
}, {
|
|
28
|
+
group: string;
|
|
29
|
+
name: string;
|
|
30
|
+
description: string;
|
|
31
|
+
inputSchema: {
|
|
32
|
+
prefix: z.ZodOptional<z.ZodString>;
|
|
33
|
+
};
|
|
19
34
|
}];
|
|
20
35
|
//# sourceMappingURL=artifact.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/artifact.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,eAAO,MAAM,iBAAiB;;;;;;;;CAUF,CAAC;AAE7B,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"artifact.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/artifact.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,eAAO,MAAM,iBAAiB;;;;;;;;CAUF,CAAC;AAE7B,eAAO,MAAM,gBAAgB;;;;;;;CAYD,CAAC;AAE7B,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAG1B,CAAC"}
|
|
@@ -10,5 +10,19 @@ export const artifactWriteTool = {
|
|
|
10
10
|
content: z.string().describe("File content"),
|
|
11
11
|
},
|
|
12
12
|
};
|
|
13
|
-
export const
|
|
13
|
+
export const artifactListTool = {
|
|
14
|
+
group: "artifact",
|
|
15
|
+
name: "nx_artifact_list",
|
|
16
|
+
description: "List artifacts in the state artifacts directory",
|
|
17
|
+
inputSchema: {
|
|
18
|
+
prefix: z
|
|
19
|
+
.string()
|
|
20
|
+
.optional()
|
|
21
|
+
.describe("Filter results to filenames that start with this prefix. Omit to list all artifacts."),
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
export const artifactToolDefinitions = [
|
|
25
|
+
artifactWriteTool,
|
|
26
|
+
artifactListTool,
|
|
27
|
+
];
|
|
14
28
|
//# sourceMappingURL=artifact.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../src/mcp/definitions/artifact.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,oDAAoD;IACjE,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,CAAC,mDAAmD,CAAC;QAChE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;KAC7C;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../src/mcp/definitions/artifact.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,oDAAoD;IACjE,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,CAAC,mDAAmD,CAAC;QAChE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;KAC7C;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,iDAAiD;IAC9D,WAAW,EAAE;QACX,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,sFAAsF,CACvF;KACJ;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,iBAAiB;IACjB,gBAAgB;CACR,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import * as z from "zod/v3";
|
|
2
|
+
export declare const HISTORY_SCOPE_VALUES: readonly ["all", "decision", "analysis", "task.acceptance", "task.approach", "task.risk", "task.result.outcome", "task.result.summary", "task.result.artifacts"];
|
|
3
|
+
export type HistoryScope = (typeof HISTORY_SCOPE_VALUES)[number];
|
|
2
4
|
export declare const historySearchTool: {
|
|
3
5
|
group: string;
|
|
4
6
|
name: string;
|
|
@@ -6,6 +8,9 @@ export declare const historySearchTool: {
|
|
|
6
8
|
inputSchema: {
|
|
7
9
|
query: z.ZodOptional<z.ZodString>;
|
|
8
10
|
last_n: z.ZodOptional<z.ZodNumber>;
|
|
11
|
+
scope: z.ZodOptional<z.ZodEnum<["all", "decision", "analysis", "task.acceptance", "task.approach", "task.risk", "task.result.outcome", "task.result.summary", "task.result.artifacts"]>>;
|
|
12
|
+
mode: z.ZodOptional<z.ZodEnum<["snippet", "full"]>>;
|
|
13
|
+
group_by_cycle: z.ZodOptional<z.ZodBoolean>;
|
|
9
14
|
};
|
|
10
15
|
};
|
|
11
16
|
export declare const historyToolDefinitions: readonly [{
|
|
@@ -15,6 +20,9 @@ export declare const historyToolDefinitions: readonly [{
|
|
|
15
20
|
inputSchema: {
|
|
16
21
|
query: z.ZodOptional<z.ZodString>;
|
|
17
22
|
last_n: z.ZodOptional<z.ZodNumber>;
|
|
23
|
+
scope: z.ZodOptional<z.ZodEnum<["all", "decision", "analysis", "task.acceptance", "task.approach", "task.risk", "task.result.outcome", "task.result.summary", "task.result.artifacts"]>>;
|
|
24
|
+
mode: z.ZodOptional<z.ZodEnum<["snippet", "full"]>>;
|
|
25
|
+
group_by_cycle: z.ZodOptional<z.ZodBoolean>;
|
|
18
26
|
};
|
|
19
27
|
}];
|
|
20
28
|
//# sourceMappingURL=history.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,eAAO,MAAM,oBAAoB,kKAUvB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;CAuCF,CAAC;AAE7B,eAAO,MAAM,sBAAsB;;;;;;;;;;;EAA+B,CAAC"}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
import * as z from "zod/v3";
|
|
2
|
+
export const HISTORY_SCOPE_VALUES = [
|
|
3
|
+
"all",
|
|
4
|
+
"decision",
|
|
5
|
+
"analysis",
|
|
6
|
+
"task.acceptance",
|
|
7
|
+
"task.approach",
|
|
8
|
+
"task.risk",
|
|
9
|
+
"task.result.outcome",
|
|
10
|
+
"task.result.summary",
|
|
11
|
+
"task.result.artifacts",
|
|
12
|
+
];
|
|
2
13
|
export const historySearchTool = {
|
|
3
14
|
group: "history",
|
|
4
15
|
name: "nx_history_search",
|
|
@@ -7,11 +18,25 @@ export const historySearchTool = {
|
|
|
7
18
|
query: z
|
|
8
19
|
.string()
|
|
9
20
|
.optional()
|
|
10
|
-
.describe("Full-text query applied to
|
|
11
|
-
last_n: z
|
|
21
|
+
.describe("Full-text query applied to the specified scope. Omit for metadata-only listing."),
|
|
22
|
+
last_n: z.coerce
|
|
12
23
|
.number()
|
|
24
|
+
.int()
|
|
25
|
+
.positive()
|
|
13
26
|
.optional()
|
|
14
|
-
.describe("
|
|
27
|
+
.describe("When group_by_cycle=true (default): max number of matching cycles to return. When group_by_cycle=false: max number of hits. Defaults to 10."),
|
|
28
|
+
scope: z
|
|
29
|
+
.enum(HISTORY_SCOPE_VALUES)
|
|
30
|
+
.optional()
|
|
31
|
+
.describe("Which fields to search. Defaults to 'all'. Options: 'decision', 'analysis', 'task.acceptance', 'task.approach', 'task.risk', 'task.result.outcome', 'task.result.summary', 'task.result.artifacts'."),
|
|
32
|
+
mode: z
|
|
33
|
+
.enum(["snippet", "full"])
|
|
34
|
+
.optional()
|
|
35
|
+
.describe("Response shape when query is present. 'snippet' (default): hits[{cycle_id, path, excerpt}]. 'full': hits[{cycle_id, path, parent}] where parent is the containing issue or task object."),
|
|
36
|
+
group_by_cycle: z
|
|
37
|
+
.boolean()
|
|
38
|
+
.optional()
|
|
39
|
+
.describe("When true (default), hits are grouped by cycle and last_n counts cycles. When false, last_n counts individual hits."),
|
|
15
40
|
},
|
|
16
41
|
};
|
|
17
42
|
export const historyToolDefinitions = [historySearchTool];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.js","sourceRoot":"","sources":["../../../src/mcp/definitions/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,iFAAiF;IACnF,WAAW,EAAE;QACX,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,
|
|
1
|
+
{"version":3,"file":"history.js","sourceRoot":"","sources":["../../../src/mcp/definitions/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,KAAK;IACL,UAAU;IACV,UAAU;IACV,iBAAiB;IACjB,eAAe;IACf,WAAW;IACX,qBAAqB;IACrB,qBAAqB;IACrB,uBAAuB;CACf,CAAC;AAIX,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,iFAAiF;IACnF,WAAW,EAAE;QACX,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,iFAAiF,CAClF;QACH,MAAM,EAAE,CAAC,CAAC,MAAM;aACb,MAAM,EAAE;aACR,GAAG,EAAE;aACL,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CACP,6IAA6I,CAC9I;QACH,KAAK,EAAE,CAAC;aACL,IAAI,CAAC,oBAAoB,CAAC;aAC1B,QAAQ,EAAE;aACV,QAAQ,CACP,qMAAqM,CACtM;QACH,IAAI,EAAE,CAAC;aACJ,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;aACzB,QAAQ,EAAE;aACV,QAAQ,CACP,yLAAyL,CAC1L;QACH,cAAc,EAAE,CAAC;aACd,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,qHAAqH,CACtH;KACJ;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,iBAAiB,CAAU,CAAC"}
|
|
@@ -11,6 +11,13 @@ export declare const mcpToolDefinitionsByGroup: {
|
|
|
11
11
|
filename: import("zod/v3").ZodString;
|
|
12
12
|
content: import("zod/v3").ZodString;
|
|
13
13
|
};
|
|
14
|
+
}, {
|
|
15
|
+
group: string;
|
|
16
|
+
name: string;
|
|
17
|
+
description: string;
|
|
18
|
+
inputSchema: {
|
|
19
|
+
prefix: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
20
|
+
};
|
|
14
21
|
}];
|
|
15
22
|
readonly history: readonly [{
|
|
16
23
|
group: string;
|
|
@@ -19,6 +26,9 @@ export declare const mcpToolDefinitionsByGroup: {
|
|
|
19
26
|
inputSchema: {
|
|
20
27
|
query: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
21
28
|
last_n: import("zod/v3").ZodOptional<import("zod/v3").ZodNumber>;
|
|
29
|
+
scope: import("zod/v3").ZodOptional<import("zod/v3").ZodEnum<["all", "decision", "analysis", "task.acceptance", "task.approach", "task.risk", "task.result.outcome", "task.result.summary", "task.result.artifacts"]>>;
|
|
30
|
+
mode: import("zod/v3").ZodOptional<import("zod/v3").ZodEnum<["snippet", "full"]>>;
|
|
31
|
+
group_by_cycle: import("zod/v3").ZodOptional<import("zod/v3").ZodBoolean>;
|
|
22
32
|
};
|
|
23
33
|
}];
|
|
24
34
|
readonly plan: readonly [{
|
|
@@ -112,6 +122,9 @@ export declare const mcpToolDefinitionsByGroup: {
|
|
|
112
122
|
inputSchema: {
|
|
113
123
|
id: import("zod/v3").ZodNumber;
|
|
114
124
|
status: import("zod/v3").ZodOptional<import("zod/v3").ZodEnum<["pending", "in_progress", "completed"]>>;
|
|
125
|
+
acceptance: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
126
|
+
approach: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
127
|
+
risk: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
115
128
|
owner: import("zod/v3").ZodOptional<import("zod/v3").ZodObject<{
|
|
116
129
|
agent_id: import("zod/v3").ZodOptional<import("zod/v3").ZodNullable<import("zod/v3").ZodString>>;
|
|
117
130
|
resume_tier: import("zod/v3").ZodOptional<import("zod/v3").ZodNullable<import("zod/v3").ZodEnum<["persistent", "bounded", "ephemeral"]>>>;
|
|
@@ -122,12 +135,27 @@ export declare const mcpToolDefinitionsByGroup: {
|
|
|
122
135
|
agent_id?: string | null | undefined;
|
|
123
136
|
resume_tier?: "persistent" | "bounded" | "ephemeral" | null | undefined;
|
|
124
137
|
}>>;
|
|
138
|
+
result: import("zod/v3").ZodOptional<import("zod/v3").ZodObject<{
|
|
139
|
+
outcome: import("zod/v3").ZodEnum<["success", "failure", "partial"]>;
|
|
140
|
+
summary: import("zod/v3").ZodString;
|
|
141
|
+
artifacts: import("zod/v3").ZodOptional<import("zod/v3").ZodArray<import("zod/v3").ZodString, "many">>;
|
|
142
|
+
}, "strip", import("zod/v3").ZodTypeAny, {
|
|
143
|
+
summary: string;
|
|
144
|
+
outcome: "success" | "failure" | "partial";
|
|
145
|
+
artifacts?: string[] | undefined;
|
|
146
|
+
}, {
|
|
147
|
+
summary: string;
|
|
148
|
+
outcome: "success" | "failure" | "partial";
|
|
149
|
+
artifacts?: string[] | undefined;
|
|
150
|
+
}>>;
|
|
125
151
|
};
|
|
126
152
|
}, {
|
|
127
153
|
group: string;
|
|
128
154
|
name: string;
|
|
129
155
|
description: string;
|
|
130
|
-
inputSchema: {
|
|
156
|
+
inputSchema: {
|
|
157
|
+
force: import("zod/v3").ZodOptional<import("zod/v3").ZodBoolean>;
|
|
158
|
+
};
|
|
131
159
|
}, {
|
|
132
160
|
group: string;
|
|
133
161
|
name: string;
|
|
@@ -145,6 +173,13 @@ export declare const mcpToolDefinitions: ({
|
|
|
145
173
|
filename: import("zod/v3").ZodString;
|
|
146
174
|
content: import("zod/v3").ZodString;
|
|
147
175
|
};
|
|
176
|
+
} | {
|
|
177
|
+
group: string;
|
|
178
|
+
name: string;
|
|
179
|
+
description: string;
|
|
180
|
+
inputSchema: {
|
|
181
|
+
prefix: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
182
|
+
};
|
|
148
183
|
} | {
|
|
149
184
|
group: string;
|
|
150
185
|
name: string;
|
|
@@ -152,6 +187,9 @@ export declare const mcpToolDefinitions: ({
|
|
|
152
187
|
inputSchema: {
|
|
153
188
|
query: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
154
189
|
last_n: import("zod/v3").ZodOptional<import("zod/v3").ZodNumber>;
|
|
190
|
+
scope: import("zod/v3").ZodOptional<import("zod/v3").ZodEnum<["all", "decision", "analysis", "task.acceptance", "task.approach", "task.risk", "task.result.outcome", "task.result.summary", "task.result.artifacts"]>>;
|
|
191
|
+
mode: import("zod/v3").ZodOptional<import("zod/v3").ZodEnum<["snippet", "full"]>>;
|
|
192
|
+
group_by_cycle: import("zod/v3").ZodOptional<import("zod/v3").ZodBoolean>;
|
|
155
193
|
};
|
|
156
194
|
} | {
|
|
157
195
|
group: string;
|
|
@@ -243,6 +281,9 @@ export declare const mcpToolDefinitions: ({
|
|
|
243
281
|
inputSchema: {
|
|
244
282
|
id: import("zod/v3").ZodNumber;
|
|
245
283
|
status: import("zod/v3").ZodOptional<import("zod/v3").ZodEnum<["pending", "in_progress", "completed"]>>;
|
|
284
|
+
acceptance: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
285
|
+
approach: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
286
|
+
risk: import("zod/v3").ZodOptional<import("zod/v3").ZodString>;
|
|
246
287
|
owner: import("zod/v3").ZodOptional<import("zod/v3").ZodObject<{
|
|
247
288
|
agent_id: import("zod/v3").ZodOptional<import("zod/v3").ZodNullable<import("zod/v3").ZodString>>;
|
|
248
289
|
resume_tier: import("zod/v3").ZodOptional<import("zod/v3").ZodNullable<import("zod/v3").ZodEnum<["persistent", "bounded", "ephemeral"]>>>;
|
|
@@ -253,12 +294,27 @@ export declare const mcpToolDefinitions: ({
|
|
|
253
294
|
agent_id?: string | null | undefined;
|
|
254
295
|
resume_tier?: "persistent" | "bounded" | "ephemeral" | null | undefined;
|
|
255
296
|
}>>;
|
|
297
|
+
result: import("zod/v3").ZodOptional<import("zod/v3").ZodObject<{
|
|
298
|
+
outcome: import("zod/v3").ZodEnum<["success", "failure", "partial"]>;
|
|
299
|
+
summary: import("zod/v3").ZodString;
|
|
300
|
+
artifacts: import("zod/v3").ZodOptional<import("zod/v3").ZodArray<import("zod/v3").ZodString, "many">>;
|
|
301
|
+
}, "strip", import("zod/v3").ZodTypeAny, {
|
|
302
|
+
summary: string;
|
|
303
|
+
outcome: "success" | "failure" | "partial";
|
|
304
|
+
artifacts?: string[] | undefined;
|
|
305
|
+
}, {
|
|
306
|
+
summary: string;
|
|
307
|
+
outcome: "success" | "failure" | "partial";
|
|
308
|
+
artifacts?: string[] | undefined;
|
|
309
|
+
}>>;
|
|
256
310
|
};
|
|
257
311
|
} | {
|
|
258
312
|
group: string;
|
|
259
313
|
name: string;
|
|
260
314
|
description: string;
|
|
261
|
-
inputSchema: {
|
|
315
|
+
inputSchema: {
|
|
316
|
+
force: import("zod/v3").ZodOptional<import("zod/v3").ZodBoolean>;
|
|
317
|
+
};
|
|
262
318
|
} | {
|
|
263
319
|
group: string;
|
|
264
320
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,cAAc,GACf,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,cAAc,GACf,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK5B,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEvB,CAAC"}
|
|
@@ -40,7 +40,7 @@ export const planDecideTool = {
|
|
|
40
40
|
name: "nx_plan_decide",
|
|
41
41
|
description: "Record the final decision for a plan issue",
|
|
42
42
|
inputSchema: {
|
|
43
|
-
issue_id: z.number().describe("Issue ID to decide"),
|
|
43
|
+
issue_id: z.coerce.number().int().positive().describe("Issue ID to decide"),
|
|
44
44
|
decision: z.string().describe("Decision text"),
|
|
45
45
|
},
|
|
46
46
|
};
|
|
@@ -57,7 +57,7 @@ export const planAnalysisAddTool = {
|
|
|
57
57
|
name: "nx_plan_analysis_add",
|
|
58
58
|
description: "Add an analysis entry to a plan issue",
|
|
59
59
|
inputSchema: {
|
|
60
|
-
issue_id: z.number().describe("Target issue ID"),
|
|
60
|
+
issue_id: z.coerce.number().int().positive().describe("Target issue ID"),
|
|
61
61
|
role: z.string().describe("Role of the analyzing agent"),
|
|
62
62
|
agent_id: z
|
|
63
63
|
.string()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../src/mcp/definitions/plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,eAAe;IACrB,WAAW,EACT,+EAA+E;IACjF,WAAW,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC5C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAChE,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,QAAQ,CACP,sFAAsF,CACvF;KACJ;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE,EAAE;CACW,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,2DAA2D;IACxE,WAAW,EAAE;QACX,MAAM,EAAE,CAAC;aACN,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;aAC3C,QAAQ,CAAC,mBAAmB,CAAC;QAChC,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,0DAA0D,CAAC;QACvE,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,0CAA0C,CAAC;KACxD;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,4CAA4C;IACzD,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../src/mcp/definitions/plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,eAAe;IACrB,WAAW,EACT,+EAA+E;IACjF,WAAW,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC5C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAChE,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,QAAQ,CACP,sFAAsF,CACvF;KACJ;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE,EAAE;CACW,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,2DAA2D;IACxE,WAAW,EAAE;QACX,MAAM,EAAE,CAAC;aACN,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;aAC3C,QAAQ,CAAC,mBAAmB,CAAC;QAChC,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,0DAA0D,CAAC;QACvE,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,0CAA0C,CAAC;KACxD;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,4CAA4C;IACzD,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;QAC3E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;KAC/C;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,sDAAsD;IACnE,WAAW,EAAE;QACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;KACnD;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,uCAAuC;IACpD,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;QACxD,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,mCAAmC,CAAC;QAChD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACjD;CACyB,CAAC;AAE7B,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,aAAa;IACb,cAAc;IACd,cAAc;IACd,cAAc;IACd,cAAc;IACd,mBAAmB;CACX,CAAC"}
|
|
@@ -43,6 +43,9 @@ export declare const taskUpdateTool: {
|
|
|
43
43
|
inputSchema: {
|
|
44
44
|
id: z.ZodNumber;
|
|
45
45
|
status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed"]>>;
|
|
46
|
+
acceptance: z.ZodOptional<z.ZodString>;
|
|
47
|
+
approach: z.ZodOptional<z.ZodString>;
|
|
48
|
+
risk: z.ZodOptional<z.ZodString>;
|
|
46
49
|
owner: z.ZodOptional<z.ZodObject<{
|
|
47
50
|
agent_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
48
51
|
resume_tier: z.ZodOptional<z.ZodNullable<z.ZodEnum<["persistent", "bounded", "ephemeral"]>>>;
|
|
@@ -53,13 +56,28 @@ export declare const taskUpdateTool: {
|
|
|
53
56
|
agent_id?: string | null | undefined;
|
|
54
57
|
resume_tier?: "persistent" | "bounded" | "ephemeral" | null | undefined;
|
|
55
58
|
}>>;
|
|
59
|
+
result: z.ZodOptional<z.ZodObject<{
|
|
60
|
+
outcome: z.ZodEnum<["success", "failure", "partial"]>;
|
|
61
|
+
summary: z.ZodString;
|
|
62
|
+
artifacts: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
63
|
+
}, "strip", z.ZodTypeAny, {
|
|
64
|
+
summary: string;
|
|
65
|
+
outcome: "success" | "failure" | "partial";
|
|
66
|
+
artifacts?: string[] | undefined;
|
|
67
|
+
}, {
|
|
68
|
+
summary: string;
|
|
69
|
+
outcome: "success" | "failure" | "partial";
|
|
70
|
+
artifacts?: string[] | undefined;
|
|
71
|
+
}>>;
|
|
56
72
|
};
|
|
57
73
|
};
|
|
58
74
|
export declare const taskCloseTool: {
|
|
59
75
|
group: string;
|
|
60
76
|
name: string;
|
|
61
77
|
description: string;
|
|
62
|
-
inputSchema: {
|
|
78
|
+
inputSchema: {
|
|
79
|
+
force: z.ZodOptional<z.ZodBoolean>;
|
|
80
|
+
};
|
|
63
81
|
};
|
|
64
82
|
export declare const taskResumeTool: {
|
|
65
83
|
group: string;
|
|
@@ -111,6 +129,9 @@ export declare const taskToolDefinitions: readonly [{
|
|
|
111
129
|
inputSchema: {
|
|
112
130
|
id: z.ZodNumber;
|
|
113
131
|
status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed"]>>;
|
|
132
|
+
acceptance: z.ZodOptional<z.ZodString>;
|
|
133
|
+
approach: z.ZodOptional<z.ZodString>;
|
|
134
|
+
risk: z.ZodOptional<z.ZodString>;
|
|
114
135
|
owner: z.ZodOptional<z.ZodObject<{
|
|
115
136
|
agent_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
116
137
|
resume_tier: z.ZodOptional<z.ZodNullable<z.ZodEnum<["persistent", "bounded", "ephemeral"]>>>;
|
|
@@ -121,12 +142,27 @@ export declare const taskToolDefinitions: readonly [{
|
|
|
121
142
|
agent_id?: string | null | undefined;
|
|
122
143
|
resume_tier?: "persistent" | "bounded" | "ephemeral" | null | undefined;
|
|
123
144
|
}>>;
|
|
145
|
+
result: z.ZodOptional<z.ZodObject<{
|
|
146
|
+
outcome: z.ZodEnum<["success", "failure", "partial"]>;
|
|
147
|
+
summary: z.ZodString;
|
|
148
|
+
artifacts: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
149
|
+
}, "strip", z.ZodTypeAny, {
|
|
150
|
+
summary: string;
|
|
151
|
+
outcome: "success" | "failure" | "partial";
|
|
152
|
+
artifacts?: string[] | undefined;
|
|
153
|
+
}, {
|
|
154
|
+
summary: string;
|
|
155
|
+
outcome: "success" | "failure" | "partial";
|
|
156
|
+
artifacts?: string[] | undefined;
|
|
157
|
+
}>>;
|
|
124
158
|
};
|
|
125
159
|
}, {
|
|
126
160
|
group: string;
|
|
127
161
|
name: string;
|
|
128
162
|
description: string;
|
|
129
|
-
inputSchema: {
|
|
163
|
+
inputSchema: {
|
|
164
|
+
force: z.ZodOptional<z.ZodBoolean>;
|
|
165
|
+
};
|
|
130
166
|
}, {
|
|
131
167
|
group: string;
|
|
132
168
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/mcp/definitions/task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAe5B,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BI,CAAC;AAE7B,eAAO,MAAM,YAAY;;;;;;;CAUG,CAAC;AAE7B,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqBC,CAAC;AAE7B,eAAO,MAAM,aAAa;;;;;;;CAaE,CAAC;AAE7B,eAAO,MAAM,cAAc;;;;;;;CAOC,CAAC;AAE7B,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMtB,CAAC"}
|
|
@@ -4,6 +4,11 @@ const TaskOwnerUpdateSchema = z.object({
|
|
|
4
4
|
agent_id: z.string().nullable().optional(),
|
|
5
5
|
resume_tier: ResumeTierSchema.nullable().optional(),
|
|
6
6
|
});
|
|
7
|
+
const TaskResultInputSchema = z.object({
|
|
8
|
+
outcome: z.enum(["success", "failure", "partial"]),
|
|
9
|
+
summary: z.string(),
|
|
10
|
+
artifacts: z.array(z.string()).optional(),
|
|
11
|
+
});
|
|
7
12
|
export const taskAddTool = {
|
|
8
13
|
group: "task",
|
|
9
14
|
name: "nx_task_add",
|
|
@@ -14,9 +19,14 @@ export const taskAddTool = {
|
|
|
14
19
|
acceptance: z.string().describe("Definition of done. Required"),
|
|
15
20
|
approach: z.string().optional().describe("Implementation approach"),
|
|
16
21
|
risk: z.string().optional().describe("Known risk"),
|
|
17
|
-
plan_issue: z.
|
|
22
|
+
plan_issue: z.coerce
|
|
23
|
+
.number()
|
|
24
|
+
.int()
|
|
25
|
+
.positive()
|
|
26
|
+
.optional()
|
|
27
|
+
.describe("Related plan issue ID"),
|
|
18
28
|
deps: z
|
|
19
|
-
.array(z.number())
|
|
29
|
+
.array(z.coerce.number().int().positive())
|
|
20
30
|
.optional()
|
|
21
31
|
.describe("List of dependency task IDs"),
|
|
22
32
|
owner: TaskOwnerSchema.describe("Owner metadata. role is required"),
|
|
@@ -44,28 +54,37 @@ export const taskListTool = {
|
|
|
44
54
|
export const taskUpdateTool = {
|
|
45
55
|
group: "task",
|
|
46
56
|
name: "nx_task_update",
|
|
47
|
-
description: "Partially update task status
|
|
57
|
+
description: "Partially update a task. Updatable fields: status, acceptance, approach, risk, owner (agent_id/resume_tier only), result (outcome/summary/artifacts). result.recorded_at is always set by the server. id, title, context, deps, created_at, owner.role are immutable — to change identity-carrying fields, delete and re-add the task instead.",
|
|
48
58
|
inputSchema: {
|
|
49
|
-
id: z.number().describe("Task ID to update"),
|
|
59
|
+
id: z.coerce.number().int().positive().describe("Task ID to update"),
|
|
50
60
|
status: z
|
|
51
61
|
.enum(["pending", "in_progress", "completed"])
|
|
52
62
|
.optional()
|
|
53
63
|
.describe("New status"),
|
|
64
|
+
acceptance: z.string().optional().describe("New acceptance criteria"),
|
|
65
|
+
approach: z.string().optional().describe("New approach"),
|
|
66
|
+
risk: z.string().optional().describe("New risk description"),
|
|
54
67
|
owner: TaskOwnerUpdateSchema.optional().describe("Partial owner update. Only agent_id and resume_tier are allowed; role cannot be changed"),
|
|
68
|
+
result: TaskResultInputSchema.optional().describe("Task result. recorded_at is set by the server and must not be supplied"),
|
|
55
69
|
},
|
|
56
70
|
};
|
|
57
71
|
export const taskCloseTool = {
|
|
58
72
|
group: "task",
|
|
59
73
|
name: "nx_task_close",
|
|
60
|
-
description: "Close the current cycle, archive it to history.json, and remove plan.json and tasks.json",
|
|
61
|
-
inputSchema: {
|
|
74
|
+
description: "Close the current cycle, archive it to history.json, and remove plan.json and tasks.json. Throws if any tasks are incomplete unless force is true.",
|
|
75
|
+
inputSchema: {
|
|
76
|
+
force: z
|
|
77
|
+
.boolean()
|
|
78
|
+
.optional()
|
|
79
|
+
.describe("Skip the incomplete-task guard and close anyway. Defaults to false."),
|
|
80
|
+
},
|
|
62
81
|
};
|
|
63
82
|
export const taskResumeTool = {
|
|
64
83
|
group: "task",
|
|
65
84
|
name: "nx_task_resume",
|
|
66
85
|
description: "Get task resume routing information based on owner.resume_tier",
|
|
67
86
|
inputSchema: {
|
|
68
|
-
id: z.number().describe("Task ID to look up"),
|
|
87
|
+
id: z.coerce.number().int().positive().describe("Task ID to look up"),
|
|
69
88
|
},
|
|
70
89
|
};
|
|
71
90
|
export const taskToolDefinitions = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/mcp/definitions/task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEzE,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,WAAW,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,8BAA8B;IAC3C,WAAW,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC5C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC/D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACnE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QAClD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/mcp/definitions/task.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/artifact.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"artifact.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/artifact.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2BzE,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASlD;AAgED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAE7D"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { readdirSync, statSync } from "node:fs";
|
|
1
2
|
import { mkdir, realpath, writeFile } from "node:fs/promises";
|
|
2
3
|
import { dirname, join, relative } from "node:path";
|
|
3
4
|
import { textResult } from "../../shared/mcp-utils.js";
|
|
4
5
|
import { findProjectRoot, getStateRoot } from "../../shared/paths.js";
|
|
5
6
|
import { registerNxTools, } from "../../shared/register-tool.js";
|
|
6
|
-
import { artifactWriteTool } from "../definitions/artifact.js";
|
|
7
|
+
import { artifactListTool, artifactWriteTool, } from "../definitions/artifact.js";
|
|
7
8
|
export function sanitizeName(input) {
|
|
8
9
|
const normalized = input.replace(/\\/g, "/");
|
|
9
10
|
const segments = normalized
|
|
@@ -14,6 +15,32 @@ export function sanitizeName(input) {
|
|
|
14
15
|
}
|
|
15
16
|
return segments.join("/");
|
|
16
17
|
}
|
|
18
|
+
function listArtifactsRecursive(dir, base) {
|
|
19
|
+
const entries = [];
|
|
20
|
+
let items;
|
|
21
|
+
try {
|
|
22
|
+
items = readdirSync(dir);
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return entries;
|
|
26
|
+
}
|
|
27
|
+
for (const item of items) {
|
|
28
|
+
const fullPath = join(dir, item);
|
|
29
|
+
const stat = statSync(fullPath);
|
|
30
|
+
if (stat.isDirectory()) {
|
|
31
|
+
const sub = listArtifactsRecursive(fullPath, base);
|
|
32
|
+
entries.push(...sub);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
entries.push({
|
|
36
|
+
filename: relative(base, fullPath),
|
|
37
|
+
size: stat.size,
|
|
38
|
+
modified_at: stat.mtime.toISOString(),
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return entries;
|
|
43
|
+
}
|
|
17
44
|
const artifactToolBindings = [
|
|
18
45
|
{
|
|
19
46
|
definition: artifactWriteTool,
|
|
@@ -35,6 +62,17 @@ const artifactToolBindings = [
|
|
|
35
62
|
return textResult({ success: true, path: relPath });
|
|
36
63
|
},
|
|
37
64
|
},
|
|
65
|
+
{
|
|
66
|
+
definition: artifactListTool,
|
|
67
|
+
handler: async ({ prefix }) => {
|
|
68
|
+
const artifactsDir = join(getStateRoot(), "artifacts");
|
|
69
|
+
const all = listArtifactsRecursive(artifactsDir, artifactsDir);
|
|
70
|
+
const artifacts = prefix !== undefined
|
|
71
|
+
? all.filter((entry) => entry.filename.startsWith(prefix))
|
|
72
|
+
: all;
|
|
73
|
+
return textResult({ artifacts });
|
|
74
|
+
},
|
|
75
|
+
},
|
|
38
76
|
];
|
|
39
77
|
export function registerArtifactTools(server) {
|
|
40
78
|
registerNxTools(server, artifactToolBindings);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../src/mcp/handlers/artifact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAEL,eAAe,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,
|
|
1
|
+
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../src/mcp/handlers/artifact.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/history.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/history.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0PzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAE5D"}
|