kimaki 1.3.0 → 1.5.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/assets/fonts/Geist-Bold.ttf +0 -0
- package/assets/fonts/Geist-Regular.ttf +0 -0
- package/assets/fonts/GeistMono-Regular.ttf +0 -0
- package/assets/fonts/OFL.txt +92 -0
- package/dist/agent-ui.e2e.test.js +27 -13
- package/dist/agent-ui.e2e.test.js.map +1 -1
- package/dist/agent-ui.js +2 -1
- package/dist/agent-ui.js.map +1 -1
- package/dist/analytics.e2e.test.js +1 -1
- package/dist/analytics.e2e.test.js.map +1 -1
- package/dist/autostart.d.ts +4 -0
- package/dist/autostart.js +55 -10
- package/dist/autostart.js.map +1 -1
- package/dist/bot.d.ts +13 -6
- package/dist/bot.js +17 -15
- package/dist/bot.js.map +1 -1
- package/dist/btw.e2e.test.js +3 -3
- package/dist/builtin-skills.d.ts +3 -0
- package/dist/builtin-skills.js +29 -0
- package/dist/builtin-skills.js.map +1 -1
- package/dist/builtin-skills.test.js +72 -1
- package/dist/builtin-skills.test.js.map +1 -1
- package/dist/catalog-refresh.e2e.test.js +2 -2
- package/dist/cli/bot.d.ts +1 -1
- package/dist/cli/bot.js +33 -18
- package/dist/cli/bot.js.map +1 -1
- package/dist/cli/discord.js +32 -6
- package/dist/cli/discord.js.map +1 -1
- package/dist/cli/schedule.js +23 -9
- package/dist/cli/schedule.js.map +1 -1
- package/dist/cli/session.js +37 -12
- package/dist/cli/session.js.map +1 -1
- package/dist/cli/shared.d.ts +5 -3
- package/dist/cli/shared.js +45 -10
- package/dist/cli/shared.js.map +1 -1
- package/dist/cli-discord.e2e.test.js +13 -8
- package/dist/cli-discord.e2e.test.js.map +1 -1
- package/dist/cli-lock.e2e.test.js +87 -20
- package/dist/cli-lock.e2e.test.js.map +1 -1
- package/dist/cli-read.e2e.test.js +18 -9
- package/dist/cli-read.e2e.test.js.map +1 -1
- package/dist/cli-sessions.e2e.test.js +4 -3
- package/dist/cli-sessions.e2e.test.js.map +1 -1
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/preference-commands.d.ts +4 -0
- package/dist/commands/preference-commands.js +38 -4
- package/dist/commands/preference-commands.js.map +1 -1
- package/dist/commands/session-commands.js +11 -8
- package/dist/commands/session-commands.js.map +1 -1
- package/dist/commands/thread-commands.js +94 -24
- package/dist/commands/thread-commands.js.map +1 -1
- package/dist/commands/worktree-commands.d.ts +5 -6
- package/dist/commands/worktree-commands.js +8 -7
- package/dist/commands/worktree-commands.js.map +1 -1
- package/dist/commands.e2e.test.js +25 -21
- package/dist/commands.e2e.test.js.map +1 -1
- package/dist/coordinator-agents.e2e.test.d.ts +1 -0
- package/dist/coordinator-agents.e2e.test.js +113 -0
- package/dist/coordinator-agents.e2e.test.js.map +1 -0
- package/dist/coordinator-idle.e2e.test.d.ts +1 -0
- package/dist/coordinator-idle.e2e.test.js +100 -0
- package/dist/coordinator-idle.e2e.test.js.map +1 -0
- package/dist/coordinator-queue.e2e.test.d.ts +1 -0
- package/dist/coordinator-queue.e2e.test.js +244 -0
- package/dist/coordinator-queue.e2e.test.js.map +1 -0
- package/dist/coordinator-warmup.e2e.test.d.ts +1 -0
- package/dist/coordinator-warmup.e2e.test.js +131 -0
- package/dist/coordinator-warmup.e2e.test.js.map +1 -0
- package/dist/coordinator.d.ts +6 -0
- package/dist/coordinator.e2e.test.d.ts +1 -0
- package/dist/coordinator.e2e.test.js +505 -0
- package/dist/coordinator.e2e.test.js.map +1 -0
- package/dist/coordinator.js +164 -0
- package/dist/coordinator.js.map +1 -0
- package/dist/db.d.ts +78 -3
- package/dist/db.test.js +1 -0
- package/dist/db.test.js.map +1 -1
- package/dist/diagram.d.ts +11 -0
- package/dist/diagram.js +232 -0
- package/dist/diagram.js.map +1 -0
- package/dist/diagram.test.d.ts +1 -0
- package/dist/diagram.test.js +52 -0
- package/dist/diagram.test.js.map +1 -0
- package/dist/duration.js +13 -5
- package/dist/duration.js.map +1 -1
- package/dist/effects.d.ts +6 -1
- package/dist/effects.js +97 -26
- package/dist/effects.js.map +1 -1
- package/dist/event-loop.d.ts +2 -3
- package/dist/event-loop.js +74 -44
- package/dist/event-loop.js.map +1 -1
- package/dist/format-parts.d.ts +21 -4
- package/dist/format-parts.js +40 -23
- package/dist/format-parts.js.map +1 -1
- package/dist/gateway-replay.e2e.test.js +4 -4
- package/dist/harness.e2e.test.js +2 -2
- package/dist/harness.e2e.test.js.map +1 -1
- package/dist/hello-thread.e2e.test.js +56 -5
- package/dist/hello-thread.e2e.test.js.map +1 -1
- package/dist/ingress.js +47 -12
- package/dist/ingress.js.map +1 -1
- package/dist/interaction-context.d.ts +4 -4
- package/dist/interaction-context.js +9 -7
- package/dist/interaction-context.js.map +1 -1
- package/dist/interrupt.e2e.test.js +8 -5
- package/dist/interrupt.e2e.test.js.map +1 -1
- package/dist/legacy.e2e.test.js +1 -1
- package/dist/lock-routes.d.ts +83 -31
- package/dist/lock-routes.js +68 -8
- package/dist/lock-routes.js.map +1 -1
- package/dist/lock-server.d.ts +3 -2
- package/dist/lock-server.js +23 -7
- package/dist/lock-server.js.map +1 -1
- package/dist/main.d.ts +6 -3
- package/dist/main.js +14 -4
- package/dist/main.js.map +1 -1
- package/dist/mainmast-idle.e2e.test.d.ts +1 -0
- package/dist/mainmast-idle.e2e.test.js +99 -0
- package/dist/mainmast-idle.e2e.test.js.map +1 -0
- package/dist/mainmast-queue.e2e.test.d.ts +1 -0
- package/dist/mainmast-queue.e2e.test.js +244 -0
- package/dist/mainmast-queue.e2e.test.js.map +1 -0
- package/dist/mainmast-warmup.e2e.test.d.ts +1 -0
- package/dist/mainmast-warmup.e2e.test.js +130 -0
- package/dist/mainmast-warmup.e2e.test.js.map +1 -0
- package/dist/mainmast.d.ts +6 -0
- package/dist/mainmast.e2e.test.d.ts +1 -0
- package/dist/mainmast.e2e.test.js +428 -0
- package/dist/mainmast.e2e.test.js.map +1 -0
- package/dist/mainmast.js +156 -0
- package/dist/mainmast.js.map +1 -0
- package/dist/markdown/markdown.test.js +14 -4
- package/dist/markdown/markdown.test.js.map +1 -1
- package/dist/markdown/render-markdown.js +9 -6
- package/dist/markdown/render-markdown.js.map +1 -1
- package/dist/onboarding-cli.e2e.test.js +7 -6
- package/dist/onboarding-cli.e2e.test.js.map +1 -1
- package/dist/onboarding.d.ts +3 -10
- package/dist/onboarding.e2e.test.js +8 -10
- package/dist/onboarding.e2e.test.js.map +1 -1
- package/dist/onboarding.js +14 -24
- package/dist/onboarding.js.map +1 -1
- package/dist/permissions.e2e.test.js +3 -3
- package/dist/plugin/coordinator.d.ts +4 -0
- package/dist/plugin/coordinator.js +389 -0
- package/dist/plugin/coordinator.js.map +1 -0
- package/dist/plugin/index.js +93 -61
- package/dist/plugin/index.js.map +1 -1
- package/dist/plugin/mainmast.d.ts +4 -0
- package/dist/plugin/mainmast.js +379 -0
- package/dist/plugin/mainmast.js.map +1 -0
- package/dist/plugin.e2e.test.js +1 -1
- package/dist/preference-commands.e2e.test.js +103 -24
- package/dist/preference-commands.e2e.test.js.map +1 -1
- package/dist/project.d.ts +1 -1
- package/dist/prompt.d.ts +22 -9
- package/dist/prompt.js +64 -48
- package/dist/prompt.js.map +1 -1
- package/dist/questions.e2e.test.js +13 -13
- package/dist/queue-sources.e2e.test.d.ts +1 -0
- package/dist/queue-sources.e2e.test.js +168 -0
- package/dist/queue-sources.e2e.test.js.map +1 -0
- package/dist/queue.d.ts +9 -1
- package/dist/queue.e2e.test.js +48 -30
- package/dist/queue.e2e.test.js.map +1 -1
- package/dist/queue.js +97 -24
- package/dist/queue.js.map +1 -1
- package/dist/queue.test.d.ts +1 -0
- package/dist/queue.test.js +57 -0
- package/dist/queue.test.js.map +1 -0
- package/dist/remote-send.e2e.test.js +6 -6
- package/dist/remote-send.js +2 -1
- package/dist/remote-send.js.map +1 -1
- package/dist/renderer.e2e.test.js +7 -7
- package/dist/restart.e2e.test.js +2 -2
- package/dist/routines.e2e.test.js +2 -2
- package/dist/scheduler.d.ts +3 -3
- package/dist/scheduler.e2e.test.js +43 -20
- package/dist/scheduler.e2e.test.js.map +1 -1
- package/dist/scheduler.js +4 -2
- package/dist/scheduler.js.map +1 -1
- package/dist/schema-sql.d.ts +1 -1
- package/dist/schema-sql.js +1 -1
- package/dist/schema-sql.js.map +1 -1
- package/dist/schema.d.ts +152 -6
- package/dist/schema.js +12 -0
- package/dist/schema.js.map +1 -1
- package/dist/session-commands.e2e.test.js +36 -11
- package/dist/session-commands.e2e.test.js.map +1 -1
- package/dist/session-events.d.ts +18 -6
- package/dist/session-events.js +175 -27
- package/dist/session-events.js.map +1 -1
- package/dist/session-ops.e2e.test.js +63 -12
- package/dist/session-ops.e2e.test.js.map +1 -1
- package/dist/sessions.d.ts +44 -21
- package/dist/sessions.js +177 -65
- package/dist/sessions.js.map +1 -1
- package/dist/shell.e2e.test.js +4 -4
- package/dist/slash-commands.js +6 -4
- package/dist/slash-commands.js.map +1 -1
- package/dist/slash-commands.test.js +2 -0
- package/dist/slash-commands.test.js.map +1 -1
- package/dist/sleep.e2e.test.js +29 -14
- package/dist/sleep.e2e.test.js.map +1 -1
- package/dist/sleeps.d.ts +2 -1
- package/dist/sleeps.js +21 -3
- package/dist/sleeps.js.map +1 -1
- package/dist/store.d.ts +1 -0
- package/dist/store.js +3 -2
- package/dist/store.js.map +1 -1
- package/dist/system-prompt.d.ts +5 -15
- package/dist/system-prompt.js +180 -131
- package/dist/system-prompt.js.map +1 -1
- package/dist/test/generate-log-plugin/index.d.ts +3 -0
- package/dist/test/generate-log-plugin/index.js +15 -0
- package/dist/test/generate-log-plugin/index.js.map +1 -0
- package/dist/test/harness.d.ts +20 -2
- package/dist/test/harness.js +51 -11
- package/dist/test/harness.js.map +1 -1
- package/dist/test/replay.js +11 -8
- package/dist/test/replay.js.map +1 -1
- package/dist/thread-reducer.d.ts +29 -6
- package/dist/thread-reducer.fixtures.test.js +58 -51
- package/dist/thread-reducer.fixtures.test.js.map +1 -1
- package/dist/thread-reducer.js +109 -50
- package/dist/thread-reducer.js.map +1 -1
- package/dist/thread-reducer.test.js +190 -48
- package/dist/thread-reducer.test.js.map +1 -1
- package/dist/tunnel.d.ts +9 -0
- package/dist/tunnel.js +117 -28
- package/dist/tunnel.js.map +1 -1
- package/dist/tunnel.test.js +81 -5
- package/dist/tunnel.test.js.map +1 -1
- package/dist/voice-attachments.e2e.test.js +108 -18
- package/dist/voice-attachments.e2e.test.js.map +1 -1
- package/dist/voice-call.e2e.test.js +9 -9
- package/dist/voice-call.js +6 -6
- package/dist/voice-call.js.map +1 -1
- package/dist/voice-openai.e2e.test.js +59 -23
- package/dist/voice-openai.e2e.test.js.map +1 -1
- package/dist/voice.d.ts +1 -1
- package/dist/voice.js +72 -24
- package/dist/voice.js.map +1 -1
- package/dist/working-directory.e2e.test.js +11 -11
- package/dist/working-directory.e2e.test.js.map +1 -1
- package/package.json +11 -5
- package/skills/kimaki-tunnel/SKILL.md +3 -2
- package/src/agent-ui.e2e.test.ts +27 -13
- package/src/agent-ui.ts +2 -1
- package/src/analytics.e2e.test.ts +1 -1
- package/src/autostart.ts +55 -10
- package/src/bot.ts +36 -19
- package/src/btw.e2e.test.ts +3 -3
- package/src/builtin-skills.test.ts +73 -1
- package/src/builtin-skills.ts +33 -0
- package/src/catalog-refresh.e2e.test.ts +2 -2
- package/src/cli/bot.ts +30 -19
- package/src/cli/discord.ts +30 -6
- package/src/cli/schedule.ts +23 -9
- package/src/cli/session.ts +35 -12
- package/src/cli/shared.ts +43 -8
- package/src/cli-discord.e2e.test.ts +13 -8
- package/src/cli-lock.e2e.test.ts +88 -20
- package/src/cli-read.e2e.test.ts +17 -8
- package/src/cli-sessions.e2e.test.ts +4 -3
- package/src/cli.ts +2 -0
- package/src/commands/preference-commands.ts +38 -4
- package/src/commands/session-commands.ts +12 -7
- package/src/commands/thread-commands.ts +92 -24
- package/src/commands/worktree-commands.ts +10 -9
- package/src/commands.e2e.test.ts +25 -21
- package/src/coordinator-agents.e2e.test.ts +145 -0
- package/src/coordinator-idle.e2e.test.ts +122 -0
- package/src/coordinator-queue.e2e.test.ts +279 -0
- package/src/coordinator-warmup.e2e.test.ts +158 -0
- package/src/coordinator.e2e.test.ts +545 -0
- package/src/coordinator.ts +168 -0
- package/src/db.test.ts +1 -0
- package/src/diagram.test.ts +56 -0
- package/src/diagram.ts +243 -0
- package/src/duration.ts +13 -5
- package/src/effects.ts +99 -27
- package/src/event-loop.ts +71 -45
- package/src/format-parts.ts +53 -22
- package/src/gateway-replay.e2e.test.ts +4 -4
- package/src/harness.e2e.test.ts +2 -2
- package/src/hello-thread.e2e.test.ts +59 -5
- package/src/ingress.ts +44 -11
- package/src/interaction-context.ts +12 -11
- package/src/interrupt.e2e.test.ts +8 -5
- package/src/legacy.e2e.test.ts +1 -1
- package/src/lock-routes.ts +62 -8
- package/src/lock-server.ts +23 -7
- package/src/main.ts +26 -10
- package/src/markdown/markdown.test.ts +15 -4
- package/src/markdown/render-markdown.ts +9 -6
- package/src/onboarding-cli.e2e.test.ts +7 -6
- package/src/onboarding.e2e.test.ts +8 -10
- package/src/onboarding.ts +13 -29
- package/src/permissions.e2e.test.ts +3 -3
- package/src/plugin/coordinator.ts +401 -0
- package/src/plugin/index.ts +86 -59
- package/src/plugin.e2e.test.ts +1 -1
- package/src/preference-commands.e2e.test.ts +103 -23
- package/src/prompt.ts +87 -43
- package/src/questions.e2e.test.ts +13 -13
- package/src/queue-sources.e2e.test.ts +197 -0
- package/src/queue.e2e.test.ts +48 -30
- package/src/queue.test.ts +59 -0
- package/src/queue.ts +104 -24
- package/src/remote-send.e2e.test.ts +6 -6
- package/src/remote-send.ts +2 -1
- package/src/renderer.e2e.test.ts +7 -7
- package/src/restart.e2e.test.ts +2 -2
- package/src/routines.e2e.test.ts +2 -2
- package/src/scheduler.e2e.test.ts +45 -19
- package/src/scheduler.ts +4 -2
- package/src/schema-sql.ts +1 -1
- package/src/schema.ts +13 -0
- package/src/session-commands.e2e.test.ts +38 -11
- package/src/session-events.ts +168 -25
- package/src/session-ops.e2e.test.ts +64 -11
- package/src/sessions.ts +217 -67
- package/src/shell.e2e.test.ts +4 -4
- package/src/slash-commands.test.ts +2 -0
- package/src/slash-commands.ts +6 -4
- package/src/sleep.e2e.test.ts +30 -13
- package/src/sleeps.ts +20 -3
- package/src/store.ts +5 -2
- package/src/system-prompt.ts +190 -134
- package/src/test/generate-log-plugin/index.ts +16 -0
- package/src/test/harness.ts +77 -17
- package/src/test/replay.ts +12 -7
- package/src/thread-reducer.fixtures.test.ts +58 -51
- package/src/thread-reducer.test.ts +199 -49
- package/src/thread-reducer.ts +135 -66
- package/src/tunnel.test.ts +81 -5
- package/src/tunnel.ts +124 -25
- package/src/voice-attachments.e2e.test.ts +110 -18
- package/src/voice-call.e2e.test.ts +9 -9
- package/src/voice-call.ts +6 -6
- package/src/voice-openai.e2e.test.ts +64 -24
- package/src/voice.ts +93 -26
- package/src/working-directory.e2e.test.ts +11 -11
- package/src/message-tool.e2e.test.ts +0 -45
package/dist/thread-reducer.js
CHANGED
|
@@ -12,31 +12,30 @@
|
|
|
12
12
|
//
|
|
13
13
|
// root text, tool lines, banner, footer, retries, errors
|
|
14
14
|
// child foreground: tool lines labelled "┣ general ⋅ glob ..."
|
|
15
|
-
// background: no tool lines, one "
|
|
15
|
+
// background: no tool lines, one "general finished: ..." line
|
|
16
16
|
// never text, banner or footer
|
|
17
17
|
//
|
|
18
18
|
// busy = root execution running OR any child running (29.2 #3). Typing
|
|
19
19
|
// follows busy; the footer waits until nothing runs.
|
|
20
20
|
import { ButtonStyle } from 'discord.js';
|
|
21
21
|
import { produce } from 'immer';
|
|
22
|
-
import { asSubtext, button, executeCalls, formatExecuteFailures, buttonRow, formatBanner, formatCacheMiss, formatError, formatRetry, formatShellEnded, formatShellFinished, formatShellStarted, formatSubagentFinished, formatToolFailed, formatToolLine, isToolVisible, textOnly, } from "./format-parts.js";
|
|
22
|
+
import { asSubtext, button, executeCalls, formatExecuteFailures, buttonRow, formatAgentSwitched, formatBanner, formatCacheMiss, formatCompacted, formatError, formatModelSwitched, formatRetry, formatShellEnded, formatShellFinished, formatShellStarted, formatSubagentFinished, formatToolFailed, formatToolLine, isToolVisible, textOnly, } from "./format-parts.js";
|
|
23
|
+
import { IDLE_REPLY } from "./plugin/coordinator.js";
|
|
23
24
|
import { closePermission, hydratePermissions, showPermission, STATUS } from "./permissions.js";
|
|
24
25
|
import { closeForm, formatAnswer, hydrateForms, showForm, withAnswer } from "./questions.js";
|
|
25
26
|
import { cancelQueued, deliverQueued, enqueueInput, hydrateQueue, promoteQueued, queuedItems } from "./queue.js";
|
|
26
|
-
import { MESSAGE_TOOL } from "./system-prompt.js";
|
|
27
|
-
function newTurn(at) {
|
|
28
|
-
return { startedAt: at, model: null, agent: null, tokens: 0, slept: false, messaged: false, unsent: null };
|
|
29
|
-
}
|
|
30
27
|
export function isKimakiEvent(event) {
|
|
31
28
|
return event.type.startsWith('kimaki.');
|
|
32
29
|
}
|
|
33
30
|
const RETRY_NOTICE_INTERVAL_MS = 10_000;
|
|
34
31
|
const CACHE_MISS_SLACK = 1_024;
|
|
32
|
+
const CACHE_MISS_MIN_WRITE_SHARE = 0.5;
|
|
35
33
|
const REPLAY_LIMIT = 30;
|
|
36
|
-
export function emptyView({ sessionId, channelId, directory, isNew, }) {
|
|
34
|
+
export function emptyView({ sessionId, channelId, directory, isNew, coordinator, }) {
|
|
37
35
|
return {
|
|
38
36
|
sessionId,
|
|
39
37
|
channelId,
|
|
38
|
+
coordinator,
|
|
40
39
|
directory,
|
|
41
40
|
bannerPending: isNew,
|
|
42
41
|
turn: null,
|
|
@@ -47,18 +46,42 @@ export function emptyView({ sessionId, channelId, directory, isNew, }) {
|
|
|
47
46
|
lastKind: null,
|
|
48
47
|
lastRetryAt: null,
|
|
49
48
|
cached: null,
|
|
49
|
+
compacted: false,
|
|
50
50
|
inbox: [],
|
|
51
51
|
commandPending: null,
|
|
52
52
|
forms: {},
|
|
53
53
|
permissions: {},
|
|
54
54
|
};
|
|
55
55
|
}
|
|
56
|
+
function newTurn(startedAt) {
|
|
57
|
+
return { startedAt, model: null, agent: null, tokens: 0, slept: false, replyTo: null, texted: false };
|
|
58
|
+
}
|
|
56
59
|
export function isBusy(view) {
|
|
57
60
|
return view.turn !== null || Object.values(view.children).some((child) => child.running);
|
|
58
61
|
}
|
|
62
|
+
function waitsForUser(view) {
|
|
63
|
+
return Object.keys(view.forms).length > 0 || Object.keys(view.permissions).length > 0;
|
|
64
|
+
}
|
|
59
65
|
// Typing stops while the agent waits for the user (spec 6.6).
|
|
60
66
|
function isTyping(view) {
|
|
61
|
-
return isBusy(view) &&
|
|
67
|
+
return isBusy(view) && !waitsForUser(view);
|
|
68
|
+
}
|
|
69
|
+
// Typing of one conversation across all views: a coordinator (a view whose channel
|
|
70
|
+
// is its own conversation) also types while a thread of its channel does, so
|
|
71
|
+
// background workers show there. Other conversations: isTyping of their view.
|
|
72
|
+
export function conversationTyping({ threads, threadId }) {
|
|
73
|
+
const view = threads[threadId];
|
|
74
|
+
if (!view || waitsForUser(view))
|
|
75
|
+
return false;
|
|
76
|
+
if (isBusy(view))
|
|
77
|
+
return true;
|
|
78
|
+
if (!view.coordinator)
|
|
79
|
+
return false;
|
|
80
|
+
return workersTyping({ threads, channelId: threadId });
|
|
81
|
+
}
|
|
82
|
+
// A thread of the channel runs and does not wait for the user.
|
|
83
|
+
export function workersTyping({ threads, channelId }) {
|
|
84
|
+
return Object.entries(threads).some(([id, thread]) => id !== channelId && thread.channelId === channelId && isTyping(thread));
|
|
62
85
|
}
|
|
63
86
|
export function eventSessionId(event) {
|
|
64
87
|
if (event.type === 'form.created')
|
|
@@ -94,31 +117,45 @@ function toolLine({ draft, emit }, text) {
|
|
|
94
117
|
emit({ type: 'send', text: draft.lastKind === 'text' ? `\n${text}` : text });
|
|
95
118
|
draft.lastKind = 'tool';
|
|
96
119
|
}
|
|
97
|
-
function
|
|
98
|
-
|
|
120
|
+
function showCompacted(context, size) {
|
|
121
|
+
context.draft.compacted = false;
|
|
122
|
+
toolLine(context, formatCompacted(size));
|
|
123
|
+
}
|
|
124
|
+
// A compaction in an execution with no model step (`/compact`, the idle coordinator compaction) stays silent:
|
|
125
|
+
// the user did not ask for anything, so the line is only noise. Auto compaction in a turn shows.
|
|
126
|
+
function endCompaction(context) {
|
|
127
|
+
if (context.draft.compacted && context.draft.turn?.model)
|
|
128
|
+
showCompacted(context, { tokens: null, percent: null });
|
|
129
|
+
context.draft.compacted = false;
|
|
130
|
+
}
|
|
131
|
+
function contextPercent({ tokens, model, prefs }) {
|
|
132
|
+
if (!model || tokens <= 0)
|
|
99
133
|
return null;
|
|
100
|
-
const limit = prefs.
|
|
134
|
+
const limit = prefs.models[`${model.providerID}/${model.id}`]?.context;
|
|
101
135
|
if (!limit || limit <= 0)
|
|
102
136
|
return null;
|
|
103
|
-
return Math.round((
|
|
137
|
+
return Math.round((tokens / limit) * 100);
|
|
104
138
|
}
|
|
105
139
|
// The footer closing the answer of `turn` at `at`.
|
|
106
140
|
function emitFooter({ draft, prefs, emit, turn, at, notify }) {
|
|
107
|
-
// Message mode: a model that never called send_message would leave the user in silence.
|
|
108
|
-
if (!turn.messaged && turn.unsent)
|
|
109
|
-
emit({ type: 'markdown', text: turn.unsent, blankLineBefore: draft.lastKind === 'tool' });
|
|
110
|
-
turn.unsent = null;
|
|
111
141
|
// No model step ran (a compaction-only execution): nothing to summarize.
|
|
112
142
|
if (!turn.model)
|
|
113
143
|
return;
|
|
144
|
+
// The answer posted no text or tool line (e.g. an IDLE_REPLY, only hidden tools).
|
|
145
|
+
if (draft.lastKind === null)
|
|
146
|
+
return;
|
|
147
|
+
// A coordinator answer with only tool lines (it started a worker, then answered IDLE): its thread shows the work.
|
|
148
|
+
if (draft.coordinator && !turn.texted)
|
|
149
|
+
return;
|
|
114
150
|
// A child still runs: the answer comes later.
|
|
115
151
|
if (Object.values(draft.children).some((child) => child.running))
|
|
116
152
|
return;
|
|
117
153
|
emit({
|
|
118
154
|
type: 'footer',
|
|
155
|
+
channelId: draft.channelId,
|
|
119
156
|
directory: draft.directory,
|
|
120
157
|
durationMs: at - turn.startedAt,
|
|
121
|
-
contextPercent: contextPercent({ turn, prefs }),
|
|
158
|
+
contextPercent: contextPercent({ tokens: turn.tokens, model: turn.model, prefs }),
|
|
122
159
|
model: { providerID: turn.model.providerID, id: turn.model.id },
|
|
123
160
|
agent: turn.agent,
|
|
124
161
|
notify,
|
|
@@ -153,7 +190,8 @@ function applyOpencode({ draft, event, prefs, emit }) {
|
|
|
153
190
|
// Questions and permissions of subagents show in this thread too.
|
|
154
191
|
const label = child?.agent ?? null;
|
|
155
192
|
if (event.type === 'session.inbox.enqueued' && event.data.item.type === 'synthetic' && !child?.background) {
|
|
156
|
-
|
|
193
|
+
const metadata = event.data.item.payload.metadata ?? {};
|
|
194
|
+
return showShellFinished({ draft, prefs, emit, metadata, label });
|
|
157
195
|
}
|
|
158
196
|
switch (event.type) {
|
|
159
197
|
case 'form.created':
|
|
@@ -181,13 +219,29 @@ function applyRoot(context) {
|
|
|
181
219
|
case 'session.execution.started':
|
|
182
220
|
draft.turn ??= newTurn(event.created);
|
|
183
221
|
return;
|
|
222
|
+
// A new session's banner already shows its first model and agent.
|
|
223
|
+
case 'session.model.selected': {
|
|
224
|
+
const { model, previous } = event.data;
|
|
225
|
+
const same = previous && previous.providerID === model.providerID && previous.id === model.id && previous.variant === model.variant;
|
|
226
|
+
if (draft.bannerPending || same)
|
|
227
|
+
return;
|
|
228
|
+
emit({ type: 'send', text: formatModelSwitched({ name: prefs.models[`${model.providerID}/${model.id}`]?.name ?? `${model.providerID}/${model.id}`, variant: model.variant }) });
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
case 'session.agent.selected': {
|
|
232
|
+
const { agent, previous } = event.data;
|
|
233
|
+
if (draft.bannerPending || agent === previous)
|
|
234
|
+
return;
|
|
235
|
+
emit({ type: 'send', text: formatAgentSwitched({ agent, previous }) });
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
184
238
|
case 'session.step.started': {
|
|
185
239
|
const model = { providerID: event.data.model.providerID, id: event.data.model.id };
|
|
186
240
|
draft.turn ??= newTurn(event.created);
|
|
187
241
|
draft.turn.model = model;
|
|
188
242
|
draft.turn.agent = event.data.agent;
|
|
189
243
|
if (draft.bannerPending)
|
|
190
|
-
emit({ type: 'send', text: formatBanner({ model: event.data.model, agent: event.data.agent }) });
|
|
244
|
+
emit({ type: 'send', text: formatBanner({ model: event.data.model, agent: event.data.agent, coordinator: draft.coordinator }) });
|
|
191
245
|
draft.bannerPending = false;
|
|
192
246
|
return;
|
|
193
247
|
}
|
|
@@ -196,10 +250,17 @@ function applyRoot(context) {
|
|
|
196
250
|
return;
|
|
197
251
|
const { tokens } = event.data;
|
|
198
252
|
draft.turn.tokens = tokens.input + tokens.output + tokens.reasoning + tokens.cache.read + tokens.cache.write;
|
|
253
|
+
if (draft.compacted) {
|
|
254
|
+
const prompt = tokens.input + tokens.cache.read + tokens.cache.write;
|
|
255
|
+
showCompacted(context, { tokens: prompt, percent: contextPercent({ tokens: prompt, model: draft.turn.model, prefs }) });
|
|
256
|
+
}
|
|
199
257
|
// The prompt only grows, so the cached prefix should too. A drop means the provider
|
|
200
258
|
// re-read it: changed prefix, other model, or cache expired (TTL). The slack absorbs cache block rounding.
|
|
259
|
+
// Only a step that rewrote most of the prompt is a full loss; a smaller rewrite is a partial miss, not worth a line.
|
|
201
260
|
const previous = draft.cached;
|
|
202
|
-
|
|
261
|
+
const promptTokens = tokens.input + tokens.cache.read + tokens.cache.write;
|
|
262
|
+
const rewroteMost = tokens.cache.write >= promptTokens * CACHE_MISS_MIN_WRITE_SHARE;
|
|
263
|
+
if (previous && rewroteMost && tokens.cache.read + CACHE_MISS_SLACK < previous.tokens) {
|
|
203
264
|
toolLine(context, formatCacheMiss({ read: tokens.cache.read, expected: previous.tokens, idleMs: event.created - previous.at }));
|
|
204
265
|
}
|
|
205
266
|
draft.cached = { tokens: tokens.cache.read + tokens.cache.write, at: event.created };
|
|
@@ -207,13 +268,16 @@ function applyRoot(context) {
|
|
|
207
268
|
}
|
|
208
269
|
case 'session.text.ended': {
|
|
209
270
|
const text = event.data.text.trim();
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
if (prefs.messageTool && draft.turn) {
|
|
213
|
-
draft.turn.unsent = text;
|
|
271
|
+
// A coordinator turn with nothing for the user (a note, a started worker) answers IDLE_REPLY: Discord shows nothing.
|
|
272
|
+
if (!text || text === IDLE_REPLY)
|
|
214
273
|
return;
|
|
274
|
+
const replyTo = draft.turn?.replyTo ?? null;
|
|
275
|
+
// The reply header already sets the text apart from the tool lines above.
|
|
276
|
+
emit({ type: 'markdown', text, blankLineBefore: draft.lastKind === 'tool' && !replyTo, replyTo });
|
|
277
|
+
if (draft.turn) {
|
|
278
|
+
draft.turn.replyTo = null;
|
|
279
|
+
draft.turn.texted = true;
|
|
215
280
|
}
|
|
216
|
-
emit({ type: 'markdown', text, blankLineBefore: draft.lastKind === 'tool' });
|
|
217
281
|
draft.lastKind = 'text';
|
|
218
282
|
return;
|
|
219
283
|
}
|
|
@@ -242,25 +306,29 @@ function applyRoot(context) {
|
|
|
242
306
|
case 'session.compaction.ended':
|
|
243
307
|
// A compacted history has a new prefix: its first miss is expected.
|
|
244
308
|
draft.cached = null;
|
|
245
|
-
|
|
309
|
+
// Its size is only known when the next step reads it.
|
|
310
|
+
draft.compacted = true;
|
|
311
|
+
return;
|
|
246
312
|
case 'session.compaction.failed':
|
|
247
313
|
return toolLine(context, formatError(`compaction failed: ${event.data.error.message}`));
|
|
248
314
|
case 'session.execution.succeeded': {
|
|
249
|
-
|
|
315
|
+
endCompaction(context);
|
|
316
|
+
if (draft.turn)
|
|
317
|
+
emitFooter({ ...context, turn: draft.turn, at: event.created, notify: !draft.turn.slept });
|
|
250
318
|
draft.turn = null;
|
|
251
319
|
draft.lastKind = null;
|
|
252
|
-
if (turn)
|
|
253
|
-
emitFooter({ ...context, turn, at: event.created, notify: !turn.slept });
|
|
254
320
|
emit({ type: 'viewed', sessionId: draft.sessionId, idle: event.created });
|
|
255
321
|
return;
|
|
256
322
|
}
|
|
257
323
|
case 'session.execution.failed':
|
|
324
|
+
endCompaction(context);
|
|
258
325
|
draft.turn = null;
|
|
259
326
|
draft.lastKind = null;
|
|
260
327
|
emit({ type: 'send', text: formatError(event.data.error.message), notify: true });
|
|
261
328
|
emit({ type: 'viewed', sessionId: draft.sessionId, idle: event.created });
|
|
262
329
|
return;
|
|
263
330
|
case 'session.execution.interrupted':
|
|
331
|
+
endCompaction(context);
|
|
264
332
|
draft.turn = null;
|
|
265
333
|
draft.lastKind = null;
|
|
266
334
|
// A shutdown does not make the session idle in OpenCode.
|
|
@@ -272,12 +340,17 @@ function applyRoot(context) {
|
|
|
272
340
|
case 'session.inbox.delivered': {
|
|
273
341
|
// OpenCode runs queued items in the same execution: close the answer
|
|
274
342
|
// before each one with a silent footer, like V1 did per turn.
|
|
275
|
-
const
|
|
343
|
+
const item = draft.inbox.find((candidate) => candidate.inboxID === event.data.inboxID);
|
|
344
|
+
const queued = item?.delivery === 'queue';
|
|
345
|
+
// Each user prompt the run takes gets its own reply; synthetic items keep the current one.
|
|
346
|
+
// An acked item's "Queued message sent" reply already marks where its answer starts.
|
|
347
|
+
if (item && draft.turn)
|
|
348
|
+
draft.turn.replyTo = item.acked ? null : item.replyTo;
|
|
276
349
|
if (queued && draft.turn?.model) {
|
|
277
350
|
emitFooter({ ...context, turn: draft.turn, at: event.created, notify: false });
|
|
278
351
|
draft.turn.startedAt = event.created;
|
|
279
352
|
draft.turn.slept = false;
|
|
280
|
-
draft.turn.
|
|
353
|
+
draft.turn.texted = false;
|
|
281
354
|
draft.lastKind = null;
|
|
282
355
|
}
|
|
283
356
|
return deliverQueued({ draft, emit, inboxID: event.data.inboxID });
|
|
@@ -333,17 +406,6 @@ function applyTool(context) {
|
|
|
333
406
|
Object.assign(reused, { ...call, agent: call.agent || reused.agent });
|
|
334
407
|
}
|
|
335
408
|
draft.tools[key] = tool;
|
|
336
|
-
// The plugin offers send_message to root sessions only (MESSAGE_TOOL).
|
|
337
|
-
if (name === MESSAGE_TOOL && label === undefined) {
|
|
338
|
-
const text = stringInput(input, 'text').trim();
|
|
339
|
-
if (draft.turn)
|
|
340
|
-
draft.turn.messaged = true;
|
|
341
|
-
if (!text)
|
|
342
|
-
return;
|
|
343
|
-
context.emit({ type: 'markdown', text, blankLineBefore: draft.lastKind === 'tool' });
|
|
344
|
-
draft.lastKind = 'text';
|
|
345
|
-
return;
|
|
346
|
-
}
|
|
347
409
|
if (render && isToolVisible({ name, input }, prefs.verbosity))
|
|
348
410
|
toolLine(context, formatToolLine({ name, input }, { label }));
|
|
349
411
|
return;
|
|
@@ -403,6 +465,7 @@ function showInnerCalls({ tool, metadata, label, render, ...context }) {
|
|
|
403
465
|
// Only background jobs carry `jobID`; user `!cmd` shells have their own lines.
|
|
404
466
|
function showShellFinished({ metadata, label, ...context }) {
|
|
405
467
|
const { shellID, jobID, state, exit } = metadata;
|
|
468
|
+
// A <session-finished> note (coordinator.ts) shows nothing: the coordinator reports the outcome.
|
|
406
469
|
if (metadata['source'] !== 'shell' || typeof shellID !== 'string' || typeof jobID !== 'string')
|
|
407
470
|
return;
|
|
408
471
|
const description = context.draft.shells[shellID] ?? null;
|
|
@@ -428,7 +491,7 @@ function dismissAgentPrompts({ draft, emit, ids, result = 'dismissed' }) {
|
|
|
428
491
|
return;
|
|
429
492
|
draft.agentUi = draft.agentUi.filter((prompt) => !ids.includes(prompt.id));
|
|
430
493
|
for (const id of ids)
|
|
431
|
-
emit({ type: 'edit', key: `agent:${id}`, messages: [textOnly(asSubtext(
|
|
494
|
+
emit({ type: 'edit', key: `agent:${id}`, messages: [textOnly(asSubtext(result))] });
|
|
432
495
|
}
|
|
433
496
|
function applyKimaki({ draft, event, prefs, emit }) {
|
|
434
497
|
switch (event.type) {
|
|
@@ -441,7 +504,7 @@ function applyKimaki({ draft, event, prefs, emit }) {
|
|
|
441
504
|
draft.turn.slept = true;
|
|
442
505
|
return;
|
|
443
506
|
case 'kimaki.command':
|
|
444
|
-
draft.commandPending = { text: event.text, username: event.username };
|
|
507
|
+
draft.commandPending = { text: event.text, username: event.username, messageId: event.messageId, echo: event.echo };
|
|
445
508
|
return;
|
|
446
509
|
case 'kimaki.command-failed':
|
|
447
510
|
draft.commandPending = null;
|
|
@@ -492,14 +555,10 @@ export function replayEffects({ messages, prefs, note, }) {
|
|
|
492
555
|
return [];
|
|
493
556
|
return message.content.flatMap((part) => {
|
|
494
557
|
if (part.type === 'text')
|
|
495
|
-
return part.text.trim()
|
|
558
|
+
return part.text.trim() ? [{ kind: 'text', text: part.text.trim() }] : [];
|
|
496
559
|
if (part.type !== 'tool' || part.state.status === 'streaming')
|
|
497
560
|
return [];
|
|
498
561
|
const { input, metadata } = part.state;
|
|
499
|
-
if (part.name === MESSAGE_TOOL) {
|
|
500
|
-
const text = stringInput(input, 'text').trim();
|
|
501
|
-
return text ? [{ kind: 'text', text }] : [];
|
|
502
|
-
}
|
|
503
562
|
const isExecute = part.name === 'execute';
|
|
504
563
|
const lines = [{ name: part.name, input }, ...(isExecute ? executeCalls(metadata) : [])]
|
|
505
564
|
.filter((call) => isToolVisible(call, prefs.verbosity))
|
|
@@ -513,7 +572,7 @@ export function replayEffects({ messages, prefs, note, }) {
|
|
|
513
572
|
const effects = kept.map((block, index) => {
|
|
514
573
|
const previous = kept[index - 1]?.kind ?? null;
|
|
515
574
|
if (block.kind === 'text')
|
|
516
|
-
return { type: 'markdown', text: block.text, blankLineBefore: previous === 'tool' };
|
|
575
|
+
return { type: 'markdown', text: block.text, blankLineBefore: previous === 'tool', replyTo: null };
|
|
517
576
|
return { type: 'send', text: previous === 'text' ? `\n${block.text}` : block.text };
|
|
518
577
|
});
|
|
519
578
|
return [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread-reducer.js","sourceRoot":"","sources":["../src/thread-reducer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"thread-reducer.js","sourceRoot":"","sources":["../src/thread-reducer.ts"],"names":[],"mappings":"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"}
|