@kawacode/mcp 10.0.0 → 10.1.1
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 +6 -4
- package/README.md +39 -2
- package/build/tools/_complete-intent-label.test.d.ts +1 -0
- package/build/tools/_complete-intent-label.test.js +18 -0
- package/build/tools/_complete-intent-label.test.js.map +1 -0
- package/build/tools/_create-intent.test.js +14 -5
- package/build/tools/_create-intent.test.js.map +1 -1
- package/build/tools/complete-intent.d.ts +11 -0
- package/build/tools/complete-intent.js +20 -9
- package/build/tools/complete-intent.js.map +1 -1
- package/build/tools/create-intent.js +36 -17
- package/build/tools/create-intent.js.map +1 -1
- package/build/tools/get-project-decisions.d.ts +15 -0
- package/build/tools/get-project-decisions.js +19 -15
- package/build/tools/get-project-decisions.js.map +1 -1
- package/build/tools/index.d.ts +8 -2
- package/build/tools/list-team-intents.d.ts +4 -4
- package/package.json +1 -1
package/CLAUDE.md.example
CHANGED
|
@@ -62,14 +62,16 @@ For exploration turns, still call `get_relevant_context` to enrich your answer
|
|
|
62
62
|
|
|
63
63
|
## Intent conflicts
|
|
64
64
|
|
|
65
|
-
When a new intent overlaps existing work, **Kawa Code asks the user — you do not decide.** `create_and_activate_intent` reports the outcome in `action
|
|
65
|
+
When a new intent overlaps existing work, **Kawa Code asks the user — you do not decide.** The request is parked and `create_and_activate_intent` reports the outcome in `action`. **A parked overlap is a decision waiting for the user, not an instruction to stop working.**
|
|
66
66
|
|
|
67
67
|
- `created` / `reactivated` — done; the intent is active. Proceed.
|
|
68
|
-
- `pending_approval` — the user has been asked in Kawa Code (Orchestration panel). Tell them it is waiting
|
|
69
|
-
- `awaiting_user` — stop
|
|
70
|
-
- `declined` — the user said no.
|
|
68
|
+
- `pending_approval` — the user has been asked in Kawa Code (Orchestration panel); the intent does not exist yet. Tell them it is waiting, carry on with any work that does not depend on this intent, and call the tool again with the returned `pendingId` (same title, description and `repoPath`) at your next checkpoint. Each call waits up to ~20 seconds for the answer.
|
|
69
|
+
- `awaiting_user` — the tool will stop asking. Do not sit idle: a parked request expires after 24 hours and is dropped when the session ends. Tell the user, continue independent work, and call once more with the `pendingId` after they say they have answered.
|
|
70
|
+
- `declined` — the user said no to this intent. Do not retry it under another title. Edits already on disk are not reverted; tell the user and ask what they want done with them.
|
|
71
71
|
- `expired` / `unknown_pending` — nothing was decided; call again without `pendingId` if the work is still wanted.
|
|
72
72
|
|
|
73
|
+
Work done while a request is parked is still real work, but it is not attributed to the intent — decisions recorded before the intent exists carry no intent id, and `complete_intent` has nothing to complete until it does. So keep moving, but reach the decision before you commit.
|
|
74
|
+
|
|
73
75
|
There is no `force` option and no way to bypass an overlap from the agent's side. The user chooses, in Kawa Code, whether the new work is independent of the existing intent or supersedes it; the lineage is recorded there. Do not name the authors of conflicting intents — you are not given them, and who owns what is shown in Kawa Code.
|
|
74
76
|
|
|
75
77
|
---
|
package/README.md
CHANGED
|
@@ -117,7 +117,7 @@ Because compiled build directories can't be shared, they multiply — one per wo
|
|
|
117
117
|
|
|
118
118
|
Isolation alone would just give you several agents doing overlapping work in private. Kawa's job is the coordination on top.
|
|
119
119
|
|
|
120
|
-
Each agent session gets its own identity, and intents are tracked **per session** — so several intents can be active on one repository at once, each with its own current focus, without a lock and without agents clobbering each other's context. From there the normal machinery applies across agents exactly as it does across teammates: `get_relevant_context` surfaces what the *other* agents have already decided, `create_and_activate_intent` hands the user a decision in Kawa Code when new work overlaps something already in flight, and the
|
|
120
|
+
Each agent session gets its own identity, and intents are tracked **per session** — so several intents can be active on one repository at once, each with its own current focus, without a lock and without agents clobbering each other's context. From there the normal machinery applies across agents exactly as it does across teammates: `get_relevant_context` surfaces what the *other* agents have already decided, `create_and_activate_intent` hands the user a decision in Kawa Code when new work overlaps something already in flight, and the Stop hook reports, once per turn, where another agent's live edits intersect yours.
|
|
121
121
|
|
|
122
122
|
The practical result: your agents inherit each other's decisions instead of re-deriving them, and you find out about overlapping work while it's still cheap to redirect — not at merge time.
|
|
123
123
|
|
|
@@ -129,6 +129,43 @@ Kawa can do more than *report* an overlap — `arbiter_resolve` judges each one,
|
|
|
129
129
|
|
|
130
130
|
This is the sharpest practical reason to put agents in worktrees. Run them on a shared checkout and auto-resolution silently never engages; you get the conflict surfaced and nothing else, with no error to tell you a capability was switched off. The guardrail is intentional — Kawa won't rewrite a human's working tree underneath them — but it does mean the setup decides whether half the feature is available.
|
|
131
131
|
|
|
132
|
+
## When an overlap is waiting on you
|
|
133
|
+
|
|
134
|
+
When an agent asks to start work that overlaps an intent already in flight, the agent doesn't get to decide. Kawa Code parks the request and asks **you**, in the **Orchestration panel**: `create_and_activate_intent` returns `pending_approval` with a `pendingId`, and the agent re-checks that id as it goes.
|
|
135
|
+
|
|
136
|
+
**A parked overlap is not a stop.** Nothing in Kawa Code halts an agent mid-task, and nothing is meant to — a refusal that froze the session would strand it for as long as you were away, and by the time you read the card the edits are usually already on disk. So the agent tells you the card is waiting and carries on with whatever doesn't depend on the intent existing. Cancelling behaves the same way: it withholds the intent and *asks* the agent to stop, so the card reports how many turns that session has taken since you cancelled rather than pretending the work was undone.
|
|
137
|
+
|
|
138
|
+
### Can't see the card?
|
|
139
|
+
|
|
140
|
+
Check the panel's **scope** first — this is the usual cause, not expiry. Orchestration reads across repositories by default, but scoped to the current project it lists only cards for the repository you have focused, and the agent that parked the request is often working in a different one. Widen the scope, or focus that repository.
|
|
141
|
+
|
|
142
|
+
### Lapsing after 24 hours — the card waits, the agent doesn't
|
|
143
|
+
|
|
144
|
+
A parked request has a 24-hour window, but the window bounds how long the **agent** waits, not how long you have:
|
|
145
|
+
|
|
146
|
+
| when | the agent | your card |
|
|
147
|
+
|---|---|---|
|
|
148
|
+
| within 24h | re-checks the `pendingId` as it works | in the panel, marked **needs your decision** |
|
|
149
|
+
| after 24h | told the request lapsed, and to ask again | still in the panel, marked **Lapsed** — and still answerable |
|
|
150
|
+
|
|
151
|
+
**Expiry marks a request stale; it does not retire it.** The clock running out records that you were away, not that you refused — so the card keeps its actions, and approving a lapsed request creates the intent exactly as it would have the day before. Only your answer closes a request. A lapsed card stays until you answer it; what ages out is an *answered* one, which only has to survive long enough for the agent's next check.
|
|
152
|
+
|
|
153
|
+
### If your agent asked again
|
|
154
|
+
|
|
155
|
+
The agent is told to re-request when its request lapses, which parks a fresh card. That card **carries over the decisions the session recorded in the meantime** and retires the lapsed one, so you get one card for the work rather than two. The overlaps themselves are detected afresh, so the list reflects the repository as it stands now rather than as it stood a day ago. You can also prompt it yourself:
|
|
156
|
+
|
|
157
|
+
> The intent request lapsed — request it again.
|
|
158
|
+
|
|
159
|
+
Either way your committed code is untouched: the request and the card are coordination state, not your work.
|
|
160
|
+
|
|
161
|
+
### Decisions recorded while you were deciding
|
|
162
|
+
|
|
163
|
+
Your agent doesn't stop, so it usually records reasoning before you ever see the card. Those decisions are saved the moment they're made — they never wait on you — and the card lists them, so you can judge the overlap against what the session actually concluded rather than against its opening title.
|
|
164
|
+
|
|
165
|
+
When you approve, they're attached to the intent that gets created, including the ones recorded after the request lapsed. If you cancel, they stay at the repository level with no intent: you ruled, no intent will exist, and the reasoning is still searchable and still surfaced by `get_relevant_context`. Nothing is discarded either way.
|
|
166
|
+
|
|
167
|
+
The one case that loses attribution is a **different** agent session re-asking for the same work — the worklist follows the session that recorded it. So the habit worth keeping is simply: **answer the card while that session is still around.**
|
|
168
|
+
|
|
132
169
|
## Handing off work to a teammate (no session export)
|
|
133
170
|
|
|
134
171
|
Because the reasoning behind your work — your intents and recorded decisions — lives in Kawa Code rather than in the chat log, a teammate can pick up where you left off from a single prompt. No transcript sharing, no session restore.
|
|
@@ -138,7 +175,7 @@ Because the reasoning behind your work — your intents and recorded decisions
|
|
|
138
175
|
3. **Hand over a one-line prompt,** e.g. `Follow up on intent <intent-id>: <what's left to do>`.
|
|
139
176
|
4. **Your teammate pastes it into a fresh session.** Their agent calls `resume_intent(<id>)` — one call that adopts the intent as their current focus *and* loads its recorded decisions — resuming the thread with full context, even though it never saw your chat.
|
|
140
177
|
|
|
141
|
-
**What transfers:** the intent, its decisions, and (once committed) its code. **What doesn't:** your chat transcript and any session-local state.
|
|
178
|
+
**What transfers:** the intent, its decisions, and (once committed) its code. **What doesn't:** your chat transcript and any session-local state. Your session's current focus and its per-turn bookkeeping are *yours* — your teammate's session starts its own and re-reads the shared record, rather than inheriting judgments you made in the moment. That is what you want: the reasoning carries over, the in-session state does not.
|
|
142
179
|
|
|
143
180
|
**Teams:** to make the handoff seamless, add one line to your shared `CLAUDE.md` so the agent always treats a follow-up prompt as *resuming* the named intent instead of opening a new one:
|
|
144
181
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { test } from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import { intentLabel } from './complete-intent.js';
|
|
4
|
+
test('a title Kawa Code sent is quoted', () => {
|
|
5
|
+
assert.deepEqual(intentLabel('Fix the thing', '6ae9'), { name: '"Fix the thing"', ref: 'intent "Fix the thing"' });
|
|
6
|
+
});
|
|
7
|
+
test('without a title the intent is named by its id, never by an invented title', () => {
|
|
8
|
+
for (const missing of [undefined, '', null, 42]) {
|
|
9
|
+
const label = intentLabel(missing, '6ae9');
|
|
10
|
+
assert.equal(label.name, '6ae9');
|
|
11
|
+
assert.equal(label.ref, 'intent 6ae9');
|
|
12
|
+
assert.ok(!label.ref.includes('"Intent"'));
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
test('with neither a title nor an id the message just says "the intent"', () => {
|
|
16
|
+
assert.deepEqual(intentLabel(undefined, ''), { name: '', ref: 'the intent' });
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=_complete-intent-label.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_complete-intent-label.test.js","sourceRoot":"","sources":["../../src/tools/_complete-intent-label.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElD,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC5C,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAA;AACpH,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,2EAA2E,EAAE,GAAG,EAAE;IACrF,KAAK,MAAM,OAAO,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAChC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,aAAa,CAAC,CAAA;QACtC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;IAC5C,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,mEAAmE,EAAE,GAAG,EAAE;IAC7E,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAA;AAC/E,CAAC,CAAC,CAAA"}
|
|
@@ -111,11 +111,15 @@ test('a reactivated decision is reported as reactivated', async () => {
|
|
|
111
111
|
const h = harness([{ success: true, action: 'reactivated', intentId: 'i-2' }, {}]);
|
|
112
112
|
assert.equal((await createIntentFlow(WITH_ID, h.deps)).action, 'reactivated');
|
|
113
113
|
});
|
|
114
|
-
test('declined
|
|
114
|
+
test('declined forbids a retry under another title instead of ordering a halt', async () => {
|
|
115
115
|
const h = harness([{ success: true, action: 'declined' }]);
|
|
116
116
|
const r = await createIntentFlow(WITH_ID, h.deps);
|
|
117
117
|
assert.deepEqual([r.success, r.action], [false, 'declined']);
|
|
118
|
-
assert.match(r.message, /
|
|
118
|
+
assert.match(r.message, /Do not retry it under a different title/);
|
|
119
|
+
// Nothing enforces a halt and the edits are usually already on disk, so the
|
|
120
|
+
// text must not claim otherwise.
|
|
121
|
+
assert.doesNotMatch(r.message, /Stop all work|no further edits/);
|
|
122
|
+
assert.match(r.message, /not reverted/);
|
|
119
123
|
assert.equal(h.calls.length, 1, 'nothing is activated');
|
|
120
124
|
});
|
|
121
125
|
test('expired and unknown_pending say how to start over', async () => {
|
|
@@ -126,11 +130,15 @@ test('expired and unknown_pending say how to start over', async () => {
|
|
|
126
130
|
assert.match(r.message, /WITHOUT pendingId/);
|
|
127
131
|
}
|
|
128
132
|
});
|
|
129
|
-
test('awaiting_user
|
|
133
|
+
test('awaiting_user stops the polling, not the work', async () => {
|
|
130
134
|
const h = harness([{ success: true, action: 'awaiting_user', pendingId: 'p-1', pollsLeft: 0 }]);
|
|
131
135
|
const r = await createIntentFlow(WITH_ID, h.deps);
|
|
132
136
|
assert.deepEqual([r.action, r.pollsLeft], ['awaiting_user', 0]);
|
|
133
|
-
|
|
137
|
+
// A parked request expires at 24 h and is dropped on SessionEnd, so an agent
|
|
138
|
+
// told to wait for it can be waiting on something that never arrives.
|
|
139
|
+
assert.match(r.message, /do not sit idle/i);
|
|
140
|
+
assert.match(r.message, /carry on with any work that does not depend on this intent/);
|
|
141
|
+
assert.doesNotMatch(r.message, /Stop checking/);
|
|
134
142
|
assert.equal(h.elapsed(), 0, 'it returns at once instead of burning 20 s');
|
|
135
143
|
});
|
|
136
144
|
// --- the deadline ------------------------------------------------------------
|
|
@@ -139,7 +147,8 @@ test('an unanswered wait ends at the 20 s wall-clock deadline with pending_appro
|
|
|
139
147
|
const r = await createIntentFlow(WITH_ID, h.deps);
|
|
140
148
|
assert.equal(r.action, 'pending_approval');
|
|
141
149
|
assert.equal(r.pollsLeft, 3);
|
|
142
|
-
assert.match(r.message, /Checks left
|
|
150
|
+
assert.match(r.message, /Checks left on this request: 3/);
|
|
151
|
+
assert.match(r.message, /not an instruction to stop/);
|
|
143
152
|
assert.ok(h.elapsed() <= WAIT_BUDGET_MS, `took ${h.elapsed()} ms`);
|
|
144
153
|
assert.ok(h.elapsed() >= WAIT_BUDGET_MS - 1_000, 'and used the budget');
|
|
145
154
|
const n = h.calls.length;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_create-intent.test.js","sourceRoot":"","sources":["../../src/tools/_create-intent.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_create-intent.test.js","sourceRoot":"","sources":["../../src/tools/_create-intent.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -122,6 +122,17 @@ export interface CompleteIntentResponse {
|
|
|
122
122
|
*/
|
|
123
123
|
collisions?: CompletionCollision[];
|
|
124
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* How a completion message names the intent. Kawa Code sends the title only when it
|
|
127
|
+
* could read the intent (not when the API was down, the id was paired with the wrong
|
|
128
|
+
* repo, or the failure carries none). Never invent one: a made-up title reads like a
|
|
129
|
+
* real one and hides that the lookup failed. Name the intent by its id instead; a
|
|
130
|
+
* response with neither is just "the intent".
|
|
131
|
+
*/
|
|
132
|
+
export declare function intentLabel(title: unknown, intentId: string): {
|
|
133
|
+
name: string;
|
|
134
|
+
ref: string;
|
|
135
|
+
};
|
|
125
136
|
export declare function completeIntent(input: CompleteIntentInput): Promise<CompleteIntentResponse>;
|
|
126
137
|
export declare const completeIntentTool: {
|
|
127
138
|
name: string;
|
|
@@ -11,6 +11,17 @@ export const completeIntentSchema = z.object({
|
|
|
11
11
|
supersededBy: z.string().optional().describe('Intent ID that supersedes this one. Required when status is "superseded".'),
|
|
12
12
|
humanApproved: z.boolean().optional().describe('Set to true ONLY when the human has explicitly confirmed closing an intent created by ANOTHER team member. Required for that cross-author case; ignored for your own intents. NEVER set this on your own initiative — always ask the user first and only set it after they approve.'),
|
|
13
13
|
});
|
|
14
|
+
/**
|
|
15
|
+
* How a completion message names the intent. Kawa Code sends the title only when it
|
|
16
|
+
* could read the intent (not when the API was down, the id was paired with the wrong
|
|
17
|
+
* repo, or the failure carries none). Never invent one: a made-up title reads like a
|
|
18
|
+
* real one and hides that the lookup failed. Name the intent by its id instead; a
|
|
19
|
+
* response with neither is just "the intent".
|
|
20
|
+
*/
|
|
21
|
+
export function intentLabel(title, intentId) {
|
|
22
|
+
const name = typeof title === 'string' && title ? `"${title}"` : intentId;
|
|
23
|
+
return { name, ref: name ? `intent ${name}` : 'the intent' };
|
|
24
|
+
}
|
|
14
25
|
export async function completeIntent(input) {
|
|
15
26
|
const actualOrigin = resolveOrigin(input.repoOrigin, input.repoPath);
|
|
16
27
|
// Multi-active model (IMPLEMENTATION_PLAN_MULTI_ACTIVE_INTENTS.md §7): `intentId`
|
|
@@ -45,7 +56,7 @@ export async function completeIntent(input) {
|
|
|
45
56
|
humanApproved: input.humanApproved,
|
|
46
57
|
}, COMPLETE_TIMEOUT_MS);
|
|
47
58
|
const intentId = res.intentId || '';
|
|
48
|
-
const
|
|
59
|
+
const { name: intentName, ref: intentRef } = intentLabel(res.intentTitle, intentId);
|
|
49
60
|
const previousStatus = res.previousStatus || 'active';
|
|
50
61
|
// A completed intent ALWAYS comes back with its id — the base success payload
|
|
51
62
|
// carries both `success: true` and `intentId`, with deferredConflicts /
|
|
@@ -74,21 +85,21 @@ export async function completeIntent(input) {
|
|
|
74
85
|
? res.message
|
|
75
86
|
: typeof res.error === 'string' ? res.error : '';
|
|
76
87
|
message = intentId
|
|
77
|
-
? `Failed to complete
|
|
78
|
-
: `Could not complete
|
|
88
|
+
? `Failed to complete ${intentRef}.${guidance ? ` ${guidance}` : ''}`
|
|
89
|
+
: `Could not complete ${intentRef} — Kawa Code returned no intent id, so NOTHING was completed: the status was not changed, no code blocks were captured, and no decisions were distilled. Do NOT report this as committed. Retry complete_intent; if it fails again, surface the failure to the user rather than assuming the intent closed.`;
|
|
79
90
|
}
|
|
80
91
|
else {
|
|
81
92
|
// Clean completion. Note: Phase 3.5 may have queued writes for later
|
|
82
93
|
// replay — the response is success=true but apiSyncDeferred=true.
|
|
83
94
|
newStatus = res.newStatus || input.status;
|
|
84
95
|
const statusMessages = {
|
|
85
|
-
committed: `Intent
|
|
86
|
-
pushed: `Intent
|
|
87
|
-
done: `Intent
|
|
88
|
-
abandoned: `Intent
|
|
89
|
-
superseded: `Intent
|
|
96
|
+
committed: `Intent ${intentName} marked as committed`,
|
|
97
|
+
pushed: `Intent ${intentName} marked as pushed`,
|
|
98
|
+
done: `Intent ${intentName} marked as done`,
|
|
99
|
+
abandoned: `Intent ${intentName} abandoned`,
|
|
100
|
+
superseded: `Intent ${intentName} marked as superseded`,
|
|
90
101
|
};
|
|
91
|
-
const statusMsg = statusMessages[input.status] || `Intent
|
|
102
|
+
const statusMsg = statusMessages[input.status] || `Intent ${intentName} updated`;
|
|
92
103
|
const shaPart = input.commitSha ? ` (commit: ${input.commitSha.substring(0, 7)})` : '';
|
|
93
104
|
const distilledPart = committedDecisionCount && committedDecisionCount > 0
|
|
94
105
|
? ` — ${committedDecisionCount} distilled decision(s) recorded`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete-intent.js","sourceRoot":"","sources":["../../src/tools/complete-intent.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;AAEnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,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,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2VAA2V,CAAC;IACrY,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;IACpH,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;SAC5F,QAAQ,CAAC,4KAA4K,CAAC;IACzL,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2EAA2E,CAAC;IACzH,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qRAAqR,CAAC;CACtU,CAAC,CAAA;AAuGF,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAA0B;IAC7D,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IAEpE,kFAAkF;IAClF,iFAAiF;IACjF,4EAA4E;IAC5E,+EAA+E;IAC/E,iFAAiF;IACjF,4EAA4E;IAC5E,gDAAgD;IAEhD,8EAA8E;IAC9E,0EAA0E;IAC1E,wEAAwE;IACxE,2EAA2E;IAC3E,4EAA4E;IAC5E,mFAAmF;IACnF,MAAM,mBAAmB,GAAG,OAAO,CAAA;IACnC,gFAAgF;IAChF,gFAAgF;IAChF,kFAAkF;IAClF,kFAAkF;IAClF,kFAAkF;IAClF,+EAA+E;IAC/E,6EAA6E;IAC7E,+BAA+B;IAC/B,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE;QAC9C,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,EAAE,mBAAmB,CAAC,CAAA;IAEvB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAA;IACnC,MAAM,
|
|
1
|
+
{"version":3,"file":"complete-intent.js","sourceRoot":"","sources":["../../src/tools/complete-intent.ts"],"names":[],"mappings":"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"}
|
|
@@ -124,8 +124,9 @@ async function waitForDecision(origin, pendingId, deps) {
|
|
|
124
124
|
success: false,
|
|
125
125
|
intentId: '',
|
|
126
126
|
action: 'declined',
|
|
127
|
-
message: 'The user declined this intent
|
|
128
|
-
'
|
|
127
|
+
message: 'The user declined this intent — it was NOT created. Do not retry it under a different ' +
|
|
128
|
+
'title. Edits already written to disk are not reverted and nothing undoes them: tell the ' +
|
|
129
|
+
'user the request was declined and ask what they want done with the work already made.',
|
|
129
130
|
};
|
|
130
131
|
case 'expired':
|
|
131
132
|
return {
|
|
@@ -150,9 +151,12 @@ async function waitForDecision(origin, pendingId, deps) {
|
|
|
150
151
|
action: 'awaiting_user',
|
|
151
152
|
pendingId,
|
|
152
153
|
pollsLeft: 0,
|
|
153
|
-
message: '
|
|
154
|
-
'
|
|
155
|
-
'
|
|
154
|
+
message: 'This tool will stop asking — but do not sit idle waiting for the answer: a parked request ' +
|
|
155
|
+
'expires after 24 hours and is dropped when the session ends, so the event you would be ' +
|
|
156
|
+
'waiting for may never arrive. Tell the user the decision is waiting for them in Kawa Code ' +
|
|
157
|
+
'(Orchestration panel), carry on with any work that does not depend on this intent, and ' +
|
|
158
|
+
'call this tool once more with the same pendingId when they say they have answered. ' +
|
|
159
|
+
'Decisions recorded before the intent exists are not attributed to it.',
|
|
156
160
|
};
|
|
157
161
|
case 'pending_approval':
|
|
158
162
|
pollsLeft = typeof res.pollsLeft === 'number' ? res.pollsLeft : pollsLeft;
|
|
@@ -171,16 +175,19 @@ function pendingApproval(pendingId, pollsLeft, conflictCount) {
|
|
|
171
175
|
const overlap = conflictCount && conflictCount > 0
|
|
172
176
|
? `This intent overlaps with ${conflictCount} existing intent${conflictCount === 1 ? '' : 's'}. `
|
|
173
177
|
: '';
|
|
174
|
-
const left = pollsLeft === undefined ? '' : ` Checks left
|
|
178
|
+
const left = pollsLeft === undefined ? '' : ` Checks left on this request: ${pollsLeft}.`;
|
|
175
179
|
return {
|
|
176
180
|
success: false,
|
|
177
181
|
intentId: '',
|
|
178
182
|
action: 'pending_approval',
|
|
179
183
|
pendingId,
|
|
180
184
|
pollsLeft,
|
|
181
|
-
message: `${overlap}The user decides in Kawa Code (Orchestration panel); the intent
|
|
182
|
-
`Tell the user it is waiting for them,
|
|
183
|
-
`
|
|
185
|
+
message: `${overlap}The user decides in Kawa Code (Orchestration panel); the intent does NOT exist yet. ` +
|
|
186
|
+
`This is not an instruction to stop. Tell the user it is waiting for them, carry on with any work ` +
|
|
187
|
+
`that does not depend on this intent, and call create_and_activate_intent again with ` +
|
|
188
|
+
`pendingId="${pendingId}" and the same title, description and repoPath at your next checkpoint — ` +
|
|
189
|
+
`or as soon as they say they have answered. Decisions recorded before the intent exists are not ` +
|
|
190
|
+
`attributed to it, so reach the decision before you commit.${left}`,
|
|
184
191
|
};
|
|
185
192
|
}
|
|
186
193
|
/** Set the new intent as THIS session's current focus. Under the multi-active
|
|
@@ -209,17 +216,29 @@ session/teammate). Creating + activating one only sets YOUR session's current
|
|
|
209
216
|
focus — it never blocks or displaces another session's active intent.
|
|
210
217
|
|
|
211
218
|
If the new intent overlaps existing work, YOU do not decide what happens: Kawa
|
|
212
|
-
Code asks the user, and this tool reports the outcome
|
|
219
|
+
Code parks the request, asks the user, and this tool reports the outcome in
|
|
220
|
+
"action". An overlap parks a decision for the user — it is not an instruction to
|
|
221
|
+
stop working. Act on "action":
|
|
213
222
|
- "created" / "reactivated": done; the intent is active. Proceed.
|
|
214
|
-
- "pending_approval": the user has been asked in Kawa Code
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
- "
|
|
223
|
+
- "pending_approval": the user has been asked in Kawa Code; the intent does not
|
|
224
|
+
exist yet. Tell them it is waiting, keep working on anything that does not
|
|
225
|
+
depend on this intent, and call this tool again with the returned pendingId
|
|
226
|
+
(same title, description and repoPath) at your next checkpoint or once they
|
|
227
|
+
say they have answered. Each call waits up to ~20 seconds for the answer.
|
|
228
|
+
- "awaiting_user": this tool will stop asking. Do not sit idle — a parked request
|
|
229
|
+
expires after 24 hours and is dropped when the session ends, so the answer you
|
|
230
|
+
would be waiting for may never come. Tell the user, continue independent work,
|
|
231
|
+
and call once more with the pendingId after they say they have answered.
|
|
232
|
+
- "declined": the user said no to this intent. Do not retry it under another
|
|
233
|
+
title. Edits already on disk are not reverted — tell the user and ask what
|
|
234
|
+
they want done with them.
|
|
220
235
|
- "expired" / "unknown_pending": nothing was decided; call again without pendingId
|
|
221
236
|
if the work is still wanted.
|
|
222
|
-
|
|
237
|
+
Work done while a request is parked is still real work, but it is not attributed
|
|
238
|
+
to the intent: decisions recorded before the intent exists carry no intent id,
|
|
239
|
+
and complete_intent has nothing to complete until it does. So continue, but reach
|
|
240
|
+
the decision before you commit. There is no force option — only the user can
|
|
241
|
+
decide an overlap.
|
|
223
242
|
|
|
224
243
|
If this tool call itself times out (before any pendingId was returned), call it
|
|
225
244
|
once more with the same arguments — it will not create a duplicate request.`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-intent.js","sourceRoot":"","sources":["../../src/tools/create-intent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"create-intent.js","sourceRoot":"","sources":["../../src/tools/create-intent.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,12 +2,18 @@ import { z } from 'zod';
|
|
|
2
2
|
export declare const getProjectDecisionsSchema: z.ZodObject<{
|
|
3
3
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
4
4
|
repoPath: z.ZodString;
|
|
5
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
6
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
5
7
|
}, "strip", z.ZodTypeAny, {
|
|
6
8
|
repoPath: string;
|
|
7
9
|
repoOrigin?: string | undefined;
|
|
10
|
+
limit?: number | undefined;
|
|
11
|
+
offset?: number | undefined;
|
|
8
12
|
}, {
|
|
9
13
|
repoPath: string;
|
|
10
14
|
repoOrigin?: string | undefined;
|
|
15
|
+
limit?: number | undefined;
|
|
16
|
+
offset?: number | undefined;
|
|
11
17
|
}>;
|
|
12
18
|
export type GetProjectDecisionsInput = z.infer<typeof getProjectDecisionsSchema>;
|
|
13
19
|
export interface ConstraintViolation {
|
|
@@ -28,7 +34,10 @@ export interface ProjectDecision {
|
|
|
28
34
|
}
|
|
29
35
|
export interface GetProjectDecisionsResponse {
|
|
30
36
|
decisions: ProjectDecision[];
|
|
37
|
+
/** Rows in THIS page — not the project total. See totalCount. */
|
|
31
38
|
count: number;
|
|
39
|
+
totalCount: number;
|
|
40
|
+
hasMore: boolean;
|
|
32
41
|
}
|
|
33
42
|
export declare function getProjectDecisions(input: GetProjectDecisionsInput): Promise<GetProjectDecisionsResponse>;
|
|
34
43
|
export declare const getProjectDecisionsTool: {
|
|
@@ -37,12 +46,18 @@ export declare const getProjectDecisionsTool: {
|
|
|
37
46
|
inputSchema: z.ZodObject<{
|
|
38
47
|
repoOrigin: z.ZodOptional<z.ZodString>;
|
|
39
48
|
repoPath: z.ZodString;
|
|
49
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
50
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
40
51
|
}, "strip", z.ZodTypeAny, {
|
|
41
52
|
repoPath: string;
|
|
42
53
|
repoOrigin?: string | undefined;
|
|
54
|
+
limit?: number | undefined;
|
|
55
|
+
offset?: number | undefined;
|
|
43
56
|
}, {
|
|
44
57
|
repoPath: string;
|
|
45
58
|
repoOrigin?: string | undefined;
|
|
59
|
+
limit?: number | undefined;
|
|
60
|
+
offset?: number | undefined;
|
|
46
61
|
}>;
|
|
47
62
|
handler: typeof getProjectDecisions;
|
|
48
63
|
};
|
|
@@ -4,11 +4,17 @@ import { resolveOrigin } from './resolve-origin.js';
|
|
|
4
4
|
export const getProjectDecisionsSchema = z.object({
|
|
5
5
|
repoOrigin: z.string().optional().describe('Git remote origin URL. Auto-detected from repoPath via git if not provided.'),
|
|
6
6
|
repoPath: z.string().describe('Local path to the repository root'),
|
|
7
|
+
limit: z.number().optional().describe('Rows per page, 1-100 (default 100).'),
|
|
8
|
+
offset: z.number().optional().describe('Rows to skip (default 0).'),
|
|
7
9
|
});
|
|
8
10
|
export async function getProjectDecisions(input) {
|
|
9
11
|
const actualOrigin = resolveOrigin(input.repoOrigin, input.repoPath);
|
|
12
|
+
// limit/offset are forwarded only when given — Muninn and the API own the
|
|
13
|
+
// bounds, so there is no second source of truth here.
|
|
10
14
|
const res = await request('decision', 'project-list', {
|
|
11
15
|
repoOrigin: actualOrigin,
|
|
16
|
+
...(input.limit !== undefined ? { limit: input.limit } : {}),
|
|
17
|
+
...(input.offset !== undefined ? { offset: input.offset } : {}),
|
|
12
18
|
});
|
|
13
19
|
const decisions = (res.decisions || []).map((d) => ({
|
|
14
20
|
intentId: d.intent_id || d.intentId || d.intent_ids?.[0] || d.intentIds?.[0] || '',
|
|
@@ -24,31 +30,29 @@ export async function getProjectDecisions(input) {
|
|
|
24
30
|
constraintsChecked: d.constraints_checked || d.constraintsChecked || [],
|
|
25
31
|
constraintViolations: d.constraint_violations || d.constraintViolations || []
|
|
26
32
|
}));
|
|
33
|
+
const offset = input.offset ?? 0;
|
|
34
|
+
const totalCount = typeof res.totalCount === 'number' ? res.totalCount : decisions.length;
|
|
27
35
|
return {
|
|
28
36
|
decisions,
|
|
29
|
-
count: decisions.length
|
|
37
|
+
count: decisions.length,
|
|
38
|
+
totalCount,
|
|
39
|
+
hasMore: offset + decisions.length < totalCount
|
|
30
40
|
};
|
|
31
41
|
}
|
|
32
42
|
export const getProjectDecisionsTool = {
|
|
33
43
|
name: 'get_project_decisions',
|
|
34
|
-
description: `
|
|
44
|
+
description: `ONE PAGE of the project's decisions across all intents, newest first — architectural choices, trade-offs, and the constraints they respected.
|
|
35
45
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
- Find decisions affecting specific files
|
|
40
|
-
- Review constraint violations that were avoided
|
|
46
|
+
Max 100 rows. If \`hasMore\`, you are holding a prefix, not the history: walk it with
|
|
47
|
+
\`offset\`, or better, use get_relevant_context for the decisions that bear on your
|
|
48
|
+
task. For the whole corpus (export, audit), use Kawa Code, not this tool.
|
|
41
49
|
|
|
42
|
-
Returns:
|
|
43
|
-
- decisions: Array of decisions with their intent context
|
|
44
|
-
- count: Total number of decisions
|
|
50
|
+
Returns: decisions (this page, with intent context), count / totalCount / hasMore.
|
|
45
51
|
|
|
46
|
-
Each decision
|
|
47
|
-
- intentIds:
|
|
52
|
+
Each decision is summary-only — call get_decision_detail(decisionId) for rationale/context/consequences/alternatives:
|
|
53
|
+
- intentIds: owning intents (a decision can span several)
|
|
48
54
|
- type: fork, abandoned, discovery, constraint, tradeoff, or dependency
|
|
49
|
-
- summary
|
|
50
|
-
- relatedFiles: Files affected by this decision
|
|
51
|
-
- constraintViolations: Options that were rejected due to constraints`,
|
|
55
|
+
- summary, relatedFiles, constraintViolations`,
|
|
52
56
|
inputSchema: getProjectDecisionsSchema,
|
|
53
57
|
handler: getProjectDecisions
|
|
54
58
|
};
|
|
@@ -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;AAEnD,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;
|
|
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;AAEnD,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,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IAC5E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CACpE,CAAC,CAAA;AA8BF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,KAA+B;IACvE,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IACpE,0EAA0E;IAC1E,sDAAsD;IACtD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,cAAc,EAAE;QACpD,UAAU,EAAE,YAAY;QACxB,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChE,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,6EAA6E;QAC7E,6EAA6E;QAC7E,qEAAqE;QACrE,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,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,CAAA;IAChC,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAA;IACzF,OAAO;QACL,SAAS;QACT,KAAK,EAAE,SAAS,CAAC,MAAM;QACvB,UAAU;QACV,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,UAAU;KAChD,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE;;;;;;;;;;;8CAW+B;IAC5C,WAAW,EAAE,yBAAyB;IACtC,OAAO,EAAE,mBAAmB;CAC7B,CAAA"}
|
package/build/tools/index.d.ts
CHANGED
|
@@ -114,12 +114,18 @@ export declare const allTools: ({
|
|
|
114
114
|
inputSchema: import("zod").ZodObject<{
|
|
115
115
|
repoOrigin: import("zod").ZodOptional<import("zod").ZodString>;
|
|
116
116
|
repoPath: import("zod").ZodString;
|
|
117
|
+
limit: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
118
|
+
offset: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
117
119
|
}, "strip", import("zod").ZodTypeAny, {
|
|
118
120
|
repoPath: string;
|
|
119
121
|
repoOrigin?: string | undefined;
|
|
122
|
+
limit?: number | undefined;
|
|
123
|
+
offset?: number | undefined;
|
|
120
124
|
}, {
|
|
121
125
|
repoPath: string;
|
|
122
126
|
repoOrigin?: string | undefined;
|
|
127
|
+
limit?: number | undefined;
|
|
128
|
+
offset?: number | undefined;
|
|
123
129
|
}>;
|
|
124
130
|
handler: typeof getProjectDecisions;
|
|
125
131
|
} | {
|
|
@@ -187,11 +193,11 @@ export declare const allTools: ({
|
|
|
187
193
|
repoPath: string;
|
|
188
194
|
repoOrigin?: string | undefined;
|
|
189
195
|
status?: "done" | "active" | "abandoned" | "committed" | "pushed" | undefined;
|
|
196
|
+
limit?: number | undefined;
|
|
197
|
+
offset?: number | undefined;
|
|
190
198
|
author?: string | undefined;
|
|
191
199
|
since?: string | undefined;
|
|
192
200
|
until?: string | undefined;
|
|
193
|
-
limit?: number | undefined;
|
|
194
|
-
offset?: number | undefined;
|
|
195
201
|
}>;
|
|
196
202
|
handler: typeof listTeamIntents;
|
|
197
203
|
} | {
|
|
@@ -21,11 +21,11 @@ export declare const listTeamIntentsSchema: z.ZodObject<{
|
|
|
21
21
|
repoPath: string;
|
|
22
22
|
repoOrigin?: string | undefined;
|
|
23
23
|
status?: "done" | "active" | "abandoned" | "committed" | "pushed" | undefined;
|
|
24
|
+
limit?: number | undefined;
|
|
25
|
+
offset?: number | undefined;
|
|
24
26
|
author?: string | undefined;
|
|
25
27
|
since?: string | undefined;
|
|
26
28
|
until?: string | undefined;
|
|
27
|
-
limit?: number | undefined;
|
|
28
|
-
offset?: number | undefined;
|
|
29
29
|
}>;
|
|
30
30
|
export type ListTeamIntentsInput = z.infer<typeof listTeamIntentsSchema>;
|
|
31
31
|
export interface TeamIntent {
|
|
@@ -71,11 +71,11 @@ export declare const listTeamIntentsTool: {
|
|
|
71
71
|
repoPath: string;
|
|
72
72
|
repoOrigin?: string | undefined;
|
|
73
73
|
status?: "done" | "active" | "abandoned" | "committed" | "pushed" | undefined;
|
|
74
|
+
limit?: number | undefined;
|
|
75
|
+
offset?: number | undefined;
|
|
74
76
|
author?: string | undefined;
|
|
75
77
|
since?: string | undefined;
|
|
76
78
|
until?: string | undefined;
|
|
77
|
-
limit?: number | undefined;
|
|
78
|
-
offset?: number | undefined;
|
|
79
79
|
}>;
|
|
80
80
|
handler: typeof listTeamIntents;
|
|
81
81
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kawacode/mcp",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.1.1",
|
|
4
4
|
"description": "Team-aware memory for Claude Code, Cursor, and other AI coding assistants — intent tracking, decision history, real-time team conflict detection.",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"bin": {
|