@kawacode/mcp 5.2.2 → 6.0.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/CLAUDE.md.example +1 -1
- package/README.md +54 -198
- package/build/index.js +10 -1
- package/build/index.js.map +1 -1
- package/build/kawacode-on-pre-edit.d.ts +27 -0
- package/build/kawacode-on-pre-edit.js +205 -0
- package/build/kawacode-on-pre-edit.js.map +1 -0
- package/build/kawacode-on-stop.d.ts +29 -0
- package/build/kawacode-on-stop.js +84 -0
- package/build/kawacode-on-stop.js.map +1 -0
- package/build/prompts/intent-first-workflow.js +2 -2
- package/build/tools/_fork-fields.d.ts +84 -0
- package/build/tools/_fork-fields.js +65 -0
- package/build/tools/_fork-fields.js.map +1 -0
- package/build/tools/activate-intent.d.ts +66 -0
- package/build/tools/activate-intent.js +59 -3
- package/build/tools/activate-intent.js.map +1 -1
- package/build/tools/check-active-intent.d.ts +64 -0
- package/build/tools/check-active-intent.js +16 -2
- package/build/tools/check-active-intent.js.map +1 -1
- package/build/tools/complete-intent.d.ts +115 -4
- package/build/tools/complete-intent.js +130 -11
- package/build/tools/complete-intent.js.map +1 -1
- package/build/tools/create-intent.d.ts +73 -1
- package/build/tools/create-intent.js +105 -7
- package/build/tools/create-intent.js.map +1 -1
- package/build/tools/detect-intent-conflicts.d.ts +52 -0
- package/build/tools/detect-intent-conflicts.js +14 -10
- package/build/tools/detect-intent-conflicts.js.map +1 -1
- package/build/tools/edit-session-decision.d.ts +64 -12
- package/build/tools/edit-session-decision.js +4 -1
- package/build/tools/edit-session-decision.js.map +1 -1
- package/build/tools/evolve-decisions.d.ts +52 -0
- package/build/tools/evolve-decisions.js +14 -15
- package/build/tools/evolve-decisions.js.map +1 -1
- package/build/tools/get-intent-changes.d.ts +52 -0
- package/build/tools/get-intent-changes.js +4 -1
- package/build/tools/get-intent-changes.js.map +1 -1
- package/build/tools/get-intents-for-file.d.ts +52 -0
- package/build/tools/get-intents-for-file.js +4 -1
- package/build/tools/get-intents-for-file.js.map +1 -1
- package/build/tools/get-intents-for-lines.d.ts +52 -0
- package/build/tools/get-intents-for-lines.js +4 -1
- package/build/tools/get-intents-for-lines.js.map +1 -1
- package/build/tools/get-project-decisions.d.ts +52 -0
- package/build/tools/get-project-decisions.js +4 -1
- package/build/tools/get-project-decisions.js.map +1 -1
- package/build/tools/get-relevant-context.d.ts +52 -0
- package/build/tools/get-relevant-context.js +18 -24
- package/build/tools/get-relevant-context.js.map +1 -1
- package/build/tools/get-session-decisions.d.ts +52 -0
- package/build/tools/get-session-decisions.js +4 -1
- package/build/tools/get-session-decisions.js.map +1 -1
- package/build/tools/index.d.ts +620 -18
- package/build/tools/index.js +12 -3
- package/build/tools/index.js.map +1 -1
- package/build/tools/infer-history.d.ts +6 -0
- package/build/tools/infer-history.js +28 -15
- package/build/tools/infer-history.js.map +1 -1
- package/build/tools/list-team-intents.d.ts +58 -6
- package/build/tools/list-team-intents.js +5 -2
- package/build/tools/list-team-intents.js.map +1 -1
- package/build/tools/log-work.d.ts +52 -0
- package/build/tools/log-work.js +4 -1
- package/build/tools/log-work.js.map +1 -1
- package/build/tools/pre-edit-acknowledge.d.ts +92 -0
- package/build/tools/pre-edit-acknowledge.js +48 -0
- package/build/tools/pre-edit-acknowledge.js.map +1 -0
- package/build/tools/pre-edit-decision-check.d.ts +141 -0
- package/build/tools/pre-edit-decision-check.js +77 -0
- package/build/tools/pre-edit-decision-check.js.map +1 -0
- package/build/tools/record-decision.d.ts +88 -12
- package/build/tools/record-decision.js +15 -1
- package/build/tools/record-decision.js.map +1 -1
- package/build/tools/update-intent.d.ts +60 -8
- package/build/tools/update-intent.js +6 -1
- package/build/tools/update-intent.js.map +1 -1
- package/package.json +6 -3
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { request } from '../services/muninn-ipc.js';
|
|
3
3
|
import { resolveOrigin } from './resolve-origin.js';
|
|
4
|
+
import { forkFieldsExtensions, extractForkFields } from './_fork-fields.js';
|
|
4
5
|
export const getIntentChangesSchema = z.object({
|
|
5
6
|
repoOrigin: z.string().optional().describe('Git remote origin URL. Auto-detected from repoPath via git if not provided.'),
|
|
6
|
-
repoPath: z.string().describe('Local path to the repository root')
|
|
7
|
+
repoPath: z.string().describe('Local path to the repository root'),
|
|
8
|
+
...forkFieldsExtensions,
|
|
7
9
|
});
|
|
8
10
|
export async function getIntentChanges(input) {
|
|
9
11
|
const actualOrigin = resolveOrigin(input.repoOrigin, input.repoPath);
|
|
10
12
|
const res = await request('intent', 'get-changes', {
|
|
11
13
|
repoOrigin: actualOrigin,
|
|
12
14
|
repoPath: input.repoPath,
|
|
15
|
+
...extractForkFields(input),
|
|
13
16
|
});
|
|
14
17
|
const modified = (res.changes?.modified || res.modified || []).map((f) => ({
|
|
15
18
|
filePath: f.filePath || f,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-intent-changes.js","sourceRoot":"","sources":["../../src/tools/get-intent-changes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"get-intent-changes.js","sourceRoot":"","sources":["../../src/tools/get-intent-changes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const getIntentsForFileSchema: z.ZodObject<{
|
|
3
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
4
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
5
|
+
user: z.ZodString;
|
|
6
|
+
forkOrigin: z.ZodString;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
platform: "github" | "gitlab";
|
|
9
|
+
user: string;
|
|
10
|
+
forkOrigin: string;
|
|
11
|
+
}, {
|
|
12
|
+
platform: "github" | "gitlab";
|
|
13
|
+
user: string;
|
|
14
|
+
forkOrigin: string;
|
|
15
|
+
}>>;
|
|
16
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
3
17
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
4
18
|
repoPath: z.ZodString;
|
|
5
19
|
filePath: z.ZodString;
|
|
@@ -7,10 +21,22 @@ export declare const getIntentsForFileSchema: z.ZodObject<{
|
|
|
7
21
|
repoPath: string;
|
|
8
22
|
filePath: string;
|
|
9
23
|
repoOrigin?: string | undefined;
|
|
24
|
+
forkAuthor?: {
|
|
25
|
+
platform: "github" | "gitlab";
|
|
26
|
+
user: string;
|
|
27
|
+
forkOrigin: string;
|
|
28
|
+
} | undefined;
|
|
29
|
+
workspaceId?: string | undefined;
|
|
10
30
|
}, {
|
|
11
31
|
repoPath: string;
|
|
12
32
|
filePath: string;
|
|
13
33
|
repoOrigin?: string | undefined;
|
|
34
|
+
forkAuthor?: {
|
|
35
|
+
platform: "github" | "gitlab";
|
|
36
|
+
user: string;
|
|
37
|
+
forkOrigin: string;
|
|
38
|
+
} | undefined;
|
|
39
|
+
workspaceId?: string | undefined;
|
|
14
40
|
}>;
|
|
15
41
|
export type GetIntentsForFileInput = z.infer<typeof getIntentsForFileSchema>;
|
|
16
42
|
export interface FileIntentBlock {
|
|
@@ -41,6 +67,20 @@ export declare const getIntentsForFileTool: {
|
|
|
41
67
|
name: string;
|
|
42
68
|
description: string;
|
|
43
69
|
inputSchema: z.ZodObject<{
|
|
70
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
71
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
72
|
+
user: z.ZodString;
|
|
73
|
+
forkOrigin: z.ZodString;
|
|
74
|
+
}, "strip", z.ZodTypeAny, {
|
|
75
|
+
platform: "github" | "gitlab";
|
|
76
|
+
user: string;
|
|
77
|
+
forkOrigin: string;
|
|
78
|
+
}, {
|
|
79
|
+
platform: "github" | "gitlab";
|
|
80
|
+
user: string;
|
|
81
|
+
forkOrigin: string;
|
|
82
|
+
}>>;
|
|
83
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
44
84
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
45
85
|
repoPath: z.ZodString;
|
|
46
86
|
filePath: z.ZodString;
|
|
@@ -48,10 +88,22 @@ export declare const getIntentsForFileTool: {
|
|
|
48
88
|
repoPath: string;
|
|
49
89
|
filePath: string;
|
|
50
90
|
repoOrigin?: string | undefined;
|
|
91
|
+
forkAuthor?: {
|
|
92
|
+
platform: "github" | "gitlab";
|
|
93
|
+
user: string;
|
|
94
|
+
forkOrigin: string;
|
|
95
|
+
} | undefined;
|
|
96
|
+
workspaceId?: string | undefined;
|
|
51
97
|
}, {
|
|
52
98
|
repoPath: string;
|
|
53
99
|
filePath: string;
|
|
54
100
|
repoOrigin?: string | undefined;
|
|
101
|
+
forkAuthor?: {
|
|
102
|
+
platform: "github" | "gitlab";
|
|
103
|
+
user: string;
|
|
104
|
+
forkOrigin: string;
|
|
105
|
+
} | undefined;
|
|
106
|
+
workspaceId?: string | undefined;
|
|
55
107
|
}>;
|
|
56
108
|
handler: typeof getIntentsForFile;
|
|
57
109
|
};
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { request } from '../services/muninn-ipc.js';
|
|
3
3
|
import { resolveOrigin } from './resolve-origin.js';
|
|
4
|
+
import { forkFieldsExtensions, extractForkFields } from './_fork-fields.js';
|
|
4
5
|
export const getIntentsForFileSchema = z.object({
|
|
5
6
|
repoOrigin: z.string().optional().describe('Git remote origin URL. Auto-detected from repoPath via git if not provided.'),
|
|
6
7
|
repoPath: z.string().describe('Local path to the repository root'),
|
|
7
|
-
filePath: z.string().describe('Path to the file (relative to repo root)')
|
|
8
|
+
filePath: z.string().describe('Path to the file (relative to repo root)'),
|
|
9
|
+
...forkFieldsExtensions,
|
|
8
10
|
});
|
|
9
11
|
export async function getIntentsForFile(input) {
|
|
10
12
|
const actualOrigin = resolveOrigin(input.repoOrigin, input.repoPath);
|
|
11
13
|
const res = await request('intent-block', 'get-for-file', {
|
|
12
14
|
repoOrigin: actualOrigin,
|
|
13
15
|
filePath: input.filePath,
|
|
16
|
+
...extractForkFields(input),
|
|
14
17
|
});
|
|
15
18
|
const intents = (res.intents || []).map((intent) => ({
|
|
16
19
|
intentId: intent.intentId || intent.id || '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-intents-for-file.js","sourceRoot":"","sources":["../../src/tools/get-intents-for-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"get-intents-for-file.js","sourceRoot":"","sources":["../../src/tools/get-intents-for-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const getIntentsForLinesSchema: z.ZodObject<{
|
|
3
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
4
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
5
|
+
user: z.ZodString;
|
|
6
|
+
forkOrigin: z.ZodString;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
platform: "github" | "gitlab";
|
|
9
|
+
user: string;
|
|
10
|
+
forkOrigin: string;
|
|
11
|
+
}, {
|
|
12
|
+
platform: "github" | "gitlab";
|
|
13
|
+
user: string;
|
|
14
|
+
forkOrigin: string;
|
|
15
|
+
}>>;
|
|
16
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
3
17
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
4
18
|
repoPath: z.ZodString;
|
|
5
19
|
filePath: z.ZodString;
|
|
@@ -11,12 +25,24 @@ export declare const getIntentsForLinesSchema: z.ZodObject<{
|
|
|
11
25
|
startLine: number;
|
|
12
26
|
endLine: number;
|
|
13
27
|
repoOrigin?: string | undefined;
|
|
28
|
+
forkAuthor?: {
|
|
29
|
+
platform: "github" | "gitlab";
|
|
30
|
+
user: string;
|
|
31
|
+
forkOrigin: string;
|
|
32
|
+
} | undefined;
|
|
33
|
+
workspaceId?: string | undefined;
|
|
14
34
|
}, {
|
|
15
35
|
repoPath: string;
|
|
16
36
|
filePath: string;
|
|
17
37
|
startLine: number;
|
|
18
38
|
endLine: number;
|
|
19
39
|
repoOrigin?: string | undefined;
|
|
40
|
+
forkAuthor?: {
|
|
41
|
+
platform: "github" | "gitlab";
|
|
42
|
+
user: string;
|
|
43
|
+
forkOrigin: string;
|
|
44
|
+
} | undefined;
|
|
45
|
+
workspaceId?: string | undefined;
|
|
20
46
|
}>;
|
|
21
47
|
export type GetIntentsForLinesInput = z.infer<typeof getIntentsForLinesSchema>;
|
|
22
48
|
export interface LineRangeIntent {
|
|
@@ -49,6 +75,20 @@ export declare const getIntentsForLinesTool: {
|
|
|
49
75
|
name: string;
|
|
50
76
|
description: string;
|
|
51
77
|
inputSchema: z.ZodObject<{
|
|
78
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
79
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
80
|
+
user: z.ZodString;
|
|
81
|
+
forkOrigin: z.ZodString;
|
|
82
|
+
}, "strip", z.ZodTypeAny, {
|
|
83
|
+
platform: "github" | "gitlab";
|
|
84
|
+
user: string;
|
|
85
|
+
forkOrigin: string;
|
|
86
|
+
}, {
|
|
87
|
+
platform: "github" | "gitlab";
|
|
88
|
+
user: string;
|
|
89
|
+
forkOrigin: string;
|
|
90
|
+
}>>;
|
|
91
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
52
92
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
53
93
|
repoPath: z.ZodString;
|
|
54
94
|
filePath: z.ZodString;
|
|
@@ -60,12 +100,24 @@ export declare const getIntentsForLinesTool: {
|
|
|
60
100
|
startLine: number;
|
|
61
101
|
endLine: number;
|
|
62
102
|
repoOrigin?: string | undefined;
|
|
103
|
+
forkAuthor?: {
|
|
104
|
+
platform: "github" | "gitlab";
|
|
105
|
+
user: string;
|
|
106
|
+
forkOrigin: string;
|
|
107
|
+
} | undefined;
|
|
108
|
+
workspaceId?: string | undefined;
|
|
63
109
|
}, {
|
|
64
110
|
repoPath: string;
|
|
65
111
|
filePath: string;
|
|
66
112
|
startLine: number;
|
|
67
113
|
endLine: number;
|
|
68
114
|
repoOrigin?: string | undefined;
|
|
115
|
+
forkAuthor?: {
|
|
116
|
+
platform: "github" | "gitlab";
|
|
117
|
+
user: string;
|
|
118
|
+
forkOrigin: string;
|
|
119
|
+
} | undefined;
|
|
120
|
+
workspaceId?: string | undefined;
|
|
69
121
|
}>;
|
|
70
122
|
handler: typeof getIntentsForLines;
|
|
71
123
|
};
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { request } from '../services/muninn-ipc.js';
|
|
3
3
|
import { resolveOrigin } from './resolve-origin.js';
|
|
4
|
+
import { forkFieldsExtensions, extractForkFields } from './_fork-fields.js';
|
|
4
5
|
export const getIntentsForLinesSchema = z.object({
|
|
5
6
|
repoOrigin: z.string().optional().describe('Git remote origin URL. Auto-detected from repoPath via git if not provided.'),
|
|
6
7
|
repoPath: z.string().describe('Local path to the repository root'),
|
|
7
8
|
filePath: z.string().describe('Path to the file (relative to repo root)'),
|
|
8
9
|
startLine: z.number().min(1).describe('Start line number (1-based)'),
|
|
9
|
-
endLine: z.number().min(1).describe('End line number (1-based, inclusive)')
|
|
10
|
+
endLine: z.number().min(1).describe('End line number (1-based, inclusive)'),
|
|
11
|
+
...forkFieldsExtensions,
|
|
10
12
|
});
|
|
11
13
|
export async function getIntentsForLines(input) {
|
|
12
14
|
const actualOrigin = resolveOrigin(input.repoOrigin, input.repoPath);
|
|
@@ -15,6 +17,7 @@ export async function getIntentsForLines(input) {
|
|
|
15
17
|
filePath: input.filePath,
|
|
16
18
|
startLine: input.startLine,
|
|
17
19
|
endLine: input.endLine,
|
|
20
|
+
...extractForkFields(input),
|
|
18
21
|
});
|
|
19
22
|
const overlappingIntents = (res.intents || []).map((intent) => ({
|
|
20
23
|
intentId: intent.intentId || intent.id || '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-intents-for-lines.js","sourceRoot":"","sources":["../../src/tools/get-intents-for-lines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"get-intents-for-lines.js","sourceRoot":"","sources":["../../src/tools/get-intents-for-lines.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,39 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const getProjectDecisionsSchema: z.ZodObject<{
|
|
3
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
4
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
5
|
+
user: z.ZodString;
|
|
6
|
+
forkOrigin: z.ZodString;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
platform: "github" | "gitlab";
|
|
9
|
+
user: string;
|
|
10
|
+
forkOrigin: string;
|
|
11
|
+
}, {
|
|
12
|
+
platform: "github" | "gitlab";
|
|
13
|
+
user: string;
|
|
14
|
+
forkOrigin: string;
|
|
15
|
+
}>>;
|
|
16
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
3
17
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
4
18
|
repoPath: z.ZodString;
|
|
5
19
|
}, "strip", z.ZodTypeAny, {
|
|
6
20
|
repoPath: string;
|
|
7
21
|
repoOrigin?: string | undefined;
|
|
22
|
+
forkAuthor?: {
|
|
23
|
+
platform: "github" | "gitlab";
|
|
24
|
+
user: string;
|
|
25
|
+
forkOrigin: string;
|
|
26
|
+
} | undefined;
|
|
27
|
+
workspaceId?: string | undefined;
|
|
8
28
|
}, {
|
|
9
29
|
repoPath: string;
|
|
10
30
|
repoOrigin?: string | undefined;
|
|
31
|
+
forkAuthor?: {
|
|
32
|
+
platform: "github" | "gitlab";
|
|
33
|
+
user: string;
|
|
34
|
+
forkOrigin: string;
|
|
35
|
+
} | undefined;
|
|
36
|
+
workspaceId?: string | undefined;
|
|
11
37
|
}>;
|
|
12
38
|
export type GetProjectDecisionsInput = z.infer<typeof getProjectDecisionsSchema>;
|
|
13
39
|
export interface ConstraintViolation {
|
|
@@ -39,14 +65,40 @@ export declare const getProjectDecisionsTool: {
|
|
|
39
65
|
name: string;
|
|
40
66
|
description: string;
|
|
41
67
|
inputSchema: z.ZodObject<{
|
|
68
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
69
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
70
|
+
user: z.ZodString;
|
|
71
|
+
forkOrigin: z.ZodString;
|
|
72
|
+
}, "strip", z.ZodTypeAny, {
|
|
73
|
+
platform: "github" | "gitlab";
|
|
74
|
+
user: string;
|
|
75
|
+
forkOrigin: string;
|
|
76
|
+
}, {
|
|
77
|
+
platform: "github" | "gitlab";
|
|
78
|
+
user: string;
|
|
79
|
+
forkOrigin: string;
|
|
80
|
+
}>>;
|
|
81
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
42
82
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
43
83
|
repoPath: z.ZodString;
|
|
44
84
|
}, "strip", z.ZodTypeAny, {
|
|
45
85
|
repoPath: string;
|
|
46
86
|
repoOrigin?: string | undefined;
|
|
87
|
+
forkAuthor?: {
|
|
88
|
+
platform: "github" | "gitlab";
|
|
89
|
+
user: string;
|
|
90
|
+
forkOrigin: string;
|
|
91
|
+
} | undefined;
|
|
92
|
+
workspaceId?: string | undefined;
|
|
47
93
|
}, {
|
|
48
94
|
repoPath: string;
|
|
49
95
|
repoOrigin?: string | undefined;
|
|
96
|
+
forkAuthor?: {
|
|
97
|
+
platform: "github" | "gitlab";
|
|
98
|
+
user: string;
|
|
99
|
+
forkOrigin: string;
|
|
100
|
+
} | undefined;
|
|
101
|
+
workspaceId?: string | undefined;
|
|
50
102
|
}>;
|
|
51
103
|
handler: typeof getProjectDecisions;
|
|
52
104
|
};
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { request } from '../services/muninn-ipc.js';
|
|
3
3
|
import { resolveOrigin } from './resolve-origin.js';
|
|
4
|
+
import { forkFieldsExtensions, extractForkFields } from './_fork-fields.js';
|
|
4
5
|
export const getProjectDecisionsSchema = z.object({
|
|
5
6
|
repoOrigin: z.string().optional().describe('Git remote origin URL. Auto-detected from repoPath via git if not provided.'),
|
|
6
|
-
repoPath: z.string().describe('Local path to the repository root')
|
|
7
|
+
repoPath: z.string().describe('Local path to the repository root'),
|
|
8
|
+
...forkFieldsExtensions,
|
|
7
9
|
});
|
|
8
10
|
export async function getProjectDecisions(input) {
|
|
9
11
|
const actualOrigin = resolveOrigin(input.repoOrigin, input.repoPath);
|
|
10
12
|
const res = await request('decision', 'project-list', {
|
|
11
13
|
repoOrigin: actualOrigin,
|
|
14
|
+
...extractForkFields(input),
|
|
12
15
|
});
|
|
13
16
|
const decisions = (res.decisions || []).map((d) => ({
|
|
14
17
|
intentId: d.intent_id || d.intentId || d.intent_ids?.[0] || d.intentIds?.[0] || '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-project-decisions.js","sourceRoot":"","sources":["../../src/tools/get-project-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"get-project-decisions.js","sourceRoot":"","sources":["../../src/tools/get-project-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE3E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6EAA6E,CAAC;IACzH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAClE,GAAG,oBAAoB;CACxB,CAAC,CAAA;AA+BF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,KAA+B;IACvE,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IACpE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,cAAc,EAAE;QACpD,UAAU,EAAE,YAAY;QACxB,GAAG,iBAAiB,CAAC,KAAK,CAAC;KAC5B,CAAC,CAAA;IAEF,MAAM,SAAS,GAAsB,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QAC1E,QAAQ,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;QAClF,SAAS,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxG,EAAE,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE;QACxD,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE;QAC3D,IAAI,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI;QACjD,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE;QACxB,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,EAAE;QAC5B,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,EAAE;QAClC,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,YAAY,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,YAAY,IAAI,EAAE;QACrD,kBAAkB,EAAE,CAAC,CAAC,mBAAmB,IAAI,CAAC,CAAC,kBAAkB,IAAI,EAAE;QACvE,oBAAoB,EAAE,CAAC,CAAC,qBAAqB,IAAI,CAAC,CAAC,oBAAoB,IAAI,EAAE;KAC9E,CAAC,CAAC,CAAA;IAEH,OAAO;QACL,SAAS;QACT,KAAK,EAAE,SAAS,CAAC,MAAM;KACxB,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE;;;;;;;;;;;;;;;;;;sEAkBuD;IACpE,WAAW,EAAE,yBAAyB;IACtC,OAAO,EAAE,mBAAmB;CAC7B,CAAA"}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const getRelevantContextSchema: z.ZodObject<{
|
|
3
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
4
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
5
|
+
user: z.ZodString;
|
|
6
|
+
forkOrigin: z.ZodString;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
platform: "github" | "gitlab";
|
|
9
|
+
user: string;
|
|
10
|
+
forkOrigin: string;
|
|
11
|
+
}, {
|
|
12
|
+
platform: "github" | "gitlab";
|
|
13
|
+
user: string;
|
|
14
|
+
forkOrigin: string;
|
|
15
|
+
}>>;
|
|
16
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
3
17
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
4
18
|
repoPath: z.ZodString;
|
|
5
19
|
prompt: z.ZodString;
|
|
@@ -14,11 +28,23 @@ export declare const getRelevantContextSchema: z.ZodObject<{
|
|
|
14
28
|
maxDecisions: number;
|
|
15
29
|
minRelevance: number;
|
|
16
30
|
repoOrigin?: string | undefined;
|
|
31
|
+
forkAuthor?: {
|
|
32
|
+
platform: "github" | "gitlab";
|
|
33
|
+
user: string;
|
|
34
|
+
forkOrigin: string;
|
|
35
|
+
} | undefined;
|
|
36
|
+
workspaceId?: string | undefined;
|
|
17
37
|
activeFiles?: string[] | undefined;
|
|
18
38
|
}, {
|
|
19
39
|
repoPath: string;
|
|
20
40
|
prompt: string;
|
|
21
41
|
repoOrigin?: string | undefined;
|
|
42
|
+
forkAuthor?: {
|
|
43
|
+
platform: "github" | "gitlab";
|
|
44
|
+
user: string;
|
|
45
|
+
forkOrigin: string;
|
|
46
|
+
} | undefined;
|
|
47
|
+
workspaceId?: string | undefined;
|
|
22
48
|
activeFiles?: string[] | undefined;
|
|
23
49
|
maxIntents?: number | undefined;
|
|
24
50
|
maxDecisions?: number | undefined;
|
|
@@ -62,6 +88,20 @@ export declare const getRelevantContextTool: {
|
|
|
62
88
|
name: string;
|
|
63
89
|
description: string;
|
|
64
90
|
inputSchema: z.ZodObject<{
|
|
91
|
+
forkAuthor: z.ZodOptional<z.ZodObject<{
|
|
92
|
+
platform: z.ZodEnum<["github", "gitlab"]>;
|
|
93
|
+
user: z.ZodString;
|
|
94
|
+
forkOrigin: z.ZodString;
|
|
95
|
+
}, "strip", z.ZodTypeAny, {
|
|
96
|
+
platform: "github" | "gitlab";
|
|
97
|
+
user: string;
|
|
98
|
+
forkOrigin: string;
|
|
99
|
+
}, {
|
|
100
|
+
platform: "github" | "gitlab";
|
|
101
|
+
user: string;
|
|
102
|
+
forkOrigin: string;
|
|
103
|
+
}>>;
|
|
104
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
65
105
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
66
106
|
repoPath: z.ZodString;
|
|
67
107
|
prompt: z.ZodString;
|
|
@@ -76,11 +116,23 @@ export declare const getRelevantContextTool: {
|
|
|
76
116
|
maxDecisions: number;
|
|
77
117
|
minRelevance: number;
|
|
78
118
|
repoOrigin?: string | undefined;
|
|
119
|
+
forkAuthor?: {
|
|
120
|
+
platform: "github" | "gitlab";
|
|
121
|
+
user: string;
|
|
122
|
+
forkOrigin: string;
|
|
123
|
+
} | undefined;
|
|
124
|
+
workspaceId?: string | undefined;
|
|
79
125
|
activeFiles?: string[] | undefined;
|
|
80
126
|
}, {
|
|
81
127
|
repoPath: string;
|
|
82
128
|
prompt: string;
|
|
83
129
|
repoOrigin?: string | undefined;
|
|
130
|
+
forkAuthor?: {
|
|
131
|
+
platform: "github" | "gitlab";
|
|
132
|
+
user: string;
|
|
133
|
+
forkOrigin: string;
|
|
134
|
+
} | undefined;
|
|
135
|
+
workspaceId?: string | undefined;
|
|
84
136
|
activeFiles?: string[] | undefined;
|
|
85
137
|
maxIntents?: number | undefined;
|
|
86
138
|
maxDecisions?: number | undefined;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { request } from '../services/muninn-ipc.js';
|
|
3
3
|
import { resolveOrigin } from './resolve-origin.js';
|
|
4
|
+
import { forkFieldsExtensions, extractForkFields } from './_fork-fields.js';
|
|
4
5
|
export const getRelevantContextSchema = z.object({
|
|
5
6
|
repoOrigin: z.string().optional().describe('Git remote origin URL. Auto-detected from repoPath via git if not provided.'),
|
|
6
7
|
repoPath: z.string().describe('Local path to the repository root'),
|
|
@@ -8,7 +9,8 @@ export const getRelevantContextSchema = z.object({
|
|
|
8
9
|
activeFiles: z.array(z.string()).optional().describe('Files currently being discussed or recently opened'),
|
|
9
10
|
maxIntents: z.number().optional().default(10).describe('Maximum number of intents to return'),
|
|
10
11
|
maxDecisions: z.number().optional().default(10).describe('Maximum number of decisions to return'),
|
|
11
|
-
minRelevance: z.number().optional().default(0.3).describe('Minimum relevance score (0-1)')
|
|
12
|
+
minRelevance: z.number().optional().default(0.3).describe('Minimum relevance score (0-1)'),
|
|
13
|
+
...forkFieldsExtensions,
|
|
12
14
|
});
|
|
13
15
|
const EMPTY_RESPONSE = (origin, path) => ({
|
|
14
16
|
projectOrigin: origin,
|
|
@@ -33,6 +35,7 @@ export async function getRelevantContext(input) {
|
|
|
33
35
|
maxIntents: input.maxIntents,
|
|
34
36
|
maxDecisions: input.maxDecisions,
|
|
35
37
|
minScore: input.minRelevance,
|
|
38
|
+
...extractForkFields(input),
|
|
36
39
|
});
|
|
37
40
|
}
|
|
38
41
|
catch (err) {
|
|
@@ -71,34 +74,25 @@ export async function getRelevantContext(input) {
|
|
|
71
74
|
}
|
|
72
75
|
export const getRelevantContextTool = {
|
|
73
76
|
name: 'get_relevant_context',
|
|
74
|
-
description: `Find
|
|
77
|
+
description: `Find past intents and decisions relevant to the current user request.
|
|
75
78
|
|
|
76
|
-
|
|
77
|
-
|
|
79
|
+
When to use:
|
|
80
|
+
- After you have done a quick initial exploration of the user's request and know which files are involved. Calling earlier with only a vague prompt gives weak results.
|
|
81
|
+
- To pull task-specific context instead of dumping all recent activity — preferred for large projects.
|
|
78
82
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
The tool:
|
|
84
|
-
1. Sends your prompt to the API for semantic embedding
|
|
85
|
-
2. Computes cosine similarity against stored embeddings for all intents and decisions
|
|
86
|
-
3. Uses \`activeFiles\` to boost items with matching file paths
|
|
87
|
-
4. Returns only the most relevant items above the minimum score threshold
|
|
88
|
-
|
|
89
|
-
**Recommended workflow:**
|
|
90
|
-
1. \`check_active_intent\` at SESSION START (resume existing work)
|
|
91
|
-
2. Explore the user's request (read files, understand scope)
|
|
92
|
-
3. \`get_relevant_context\` with prompt + activeFiles (task-specific context)
|
|
83
|
+
Inputs of note:
|
|
84
|
+
- \`prompt\`: the user request, in their words or your paraphrase.
|
|
85
|
+
- \`activeFiles\` (recommended): files you have identified as relevant to the request. Significantly improves relevance.
|
|
86
|
+
- \`maxIntents\`, \`maxDecisions\`, \`minRelevance\`: result-shaping caps and threshold.
|
|
93
87
|
|
|
94
88
|
Returns:
|
|
95
|
-
-
|
|
96
|
-
-
|
|
89
|
+
- \`relevantIntents\`: past work units (intents) related to the task, scored by relevance.
|
|
90
|
+
- \`relevantDecisions\`: prior decisions related to the task — both intent-scoped and repo-scoped.
|
|
97
91
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
92
|
+
Recommended sequence:
|
|
93
|
+
1. \`check_active_intent\` at session start to resume any existing work.
|
|
94
|
+
2. Briefly explore the user's request to identify involved files.
|
|
95
|
+
3. \`get_relevant_context\` with the prompt and \`activeFiles\` to inform the approach.`,
|
|
102
96
|
inputSchema: getRelevantContextSchema,
|
|
103
97
|
handler: getRelevantContext
|
|
104
98
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-relevant-context.js","sourceRoot":"","sources":["../../src/tools/get-relevant-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"get-relevant-context.js","sourceRoot":"","sources":["../../src/tools/get-relevant-context.ts"],"names":[],"mappings":"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"}
|