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/bot.js
CHANGED
|
@@ -30,6 +30,10 @@ export async function sessionDirectory(bot, sessionId) {
|
|
|
30
30
|
return info;
|
|
31
31
|
return info.location.directory;
|
|
32
32
|
}
|
|
33
|
+
// A project channel in coordinator mode: its /toggle-coordinator choice, else the default.
|
|
34
|
+
export function isCoordinatorChannel(bot, channelId) {
|
|
35
|
+
return bot.store.getState().coordinator[channelId] ?? bot.coordinatorDefault;
|
|
36
|
+
}
|
|
33
37
|
export function rootSession(bot, threadId) {
|
|
34
38
|
return bot.store.getState().roots[threadId] ?? new OpenCodeError({ operation: `find the session of thread ${threadId}` });
|
|
35
39
|
}
|
|
@@ -39,15 +43,19 @@ export function threadOfSession(bot, sessionId) {
|
|
|
39
43
|
const threadId = sessionThreads[sessionId];
|
|
40
44
|
return threadId && roots[threadId] === sessionId ? threadId : null;
|
|
41
45
|
}
|
|
42
|
-
|
|
46
|
+
// The project channel of a conversation.
|
|
47
|
+
export function projectChannelOf(conversation) {
|
|
48
|
+
return conversation.isThread() ? conversation.parentId : conversation.id;
|
|
49
|
+
}
|
|
50
|
+
export async function fetchConversation(bot, id) {
|
|
43
51
|
const channel = await bot.discord.channels
|
|
44
|
-
.fetch(
|
|
45
|
-
.catch((cause) => new DiscordError({ operation: `fetch
|
|
52
|
+
.fetch(id)
|
|
53
|
+
.catch((cause) => new DiscordError({ operation: `fetch conversation ${id}`, cause }));
|
|
46
54
|
if (channel instanceof Error)
|
|
47
55
|
return channel;
|
|
48
|
-
if (
|
|
49
|
-
return
|
|
50
|
-
return channel;
|
|
56
|
+
if (channel?.isThread() || channel?.type === ChannelType.GuildText)
|
|
57
|
+
return channel;
|
|
58
|
+
return new ConfigError({ reason: 'Target is not a thread or a text channel' });
|
|
51
59
|
}
|
|
52
60
|
export async function textChannel(bot, channelId) {
|
|
53
61
|
const channel = await bot.discord.channels
|
|
@@ -66,7 +74,7 @@ export function readMarker(metadata) {
|
|
|
66
74
|
const fields = jsonObject(metadata?.['kimaki']);
|
|
67
75
|
if (!fields)
|
|
68
76
|
return null;
|
|
69
|
-
const { dataDir, lockPort,
|
|
77
|
+
const { dataDir, lockPort, parentSessionId } = fields;
|
|
70
78
|
const task = jsonObject(fields['task']);
|
|
71
79
|
const taskId = task?.['id'];
|
|
72
80
|
const cronExpr = task?.['cronExpr'];
|
|
@@ -75,21 +83,15 @@ export function readMarker(metadata) {
|
|
|
75
83
|
fields,
|
|
76
84
|
dataDir: typeof dataDir === 'string' ? dataDir : null,
|
|
77
85
|
lockPort: typeof lockPort === 'number' ? lockPort : null,
|
|
78
|
-
messageTool: messageTool === true,
|
|
79
86
|
parentSessionId: typeof parentSessionId === 'string' ? parentSessionId : null,
|
|
80
87
|
task: typeof taskId === 'number'
|
|
81
88
|
? { id: taskId, cronExpr: typeof cronExpr === 'string' ? cronExpr : null, timezone: typeof timezone === 'string' ? timezone : null }
|
|
82
89
|
: null,
|
|
83
90
|
};
|
|
84
91
|
}
|
|
85
|
-
// The marker fields that
|
|
86
|
-
// go, and whether the plugin gives the session send_message.
|
|
92
|
+
// The marker fields that point the agent's `kimaki` calls at this bot.
|
|
87
93
|
export function cliContext(bot) {
|
|
88
|
-
return { dataDir: bot.dataDir, lockPort: bot.lockPort
|
|
89
|
-
}
|
|
90
|
-
// False when the session marker was written by another bot run or with another --message-tool.
|
|
91
|
-
export function markerIsCurrent(bot, marker) {
|
|
92
|
-
return marker.dataDir === bot.dataDir && marker.lockPort === bot.lockPort && marker.messageTool === bot.messageTool;
|
|
94
|
+
return { dataDir: bot.dataDir, lockPort: bot.lockPort };
|
|
93
95
|
}
|
|
94
96
|
// Default model of new sessions in channels without their own (/model "All channels").
|
|
95
97
|
export async function globalModel(bot) {
|
package/dist/bot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,8EAA8E;AAC9E,2EAA2E;AAC3E,wEAAwE;AACxE,EAAE;AACF,wEAAwE;AACxE,4DAA4D;AAG5D,OAAO,EAAE,WAAW,EAAqD,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
|
package/dist/btw.e2e.test.js
CHANGED
|
@@ -60,14 +60,14 @@ test('. btw forks into a side thread while the source run continues', async () =
|
|
|
60
60
|
--- from: assistant (TestBot)
|
|
61
61
|
Session forked! Continue in <#THREAD>
|
|
62
62
|
slow-done
|
|
63
|
-
-# *
|
|
63
|
+
-# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
|
|
64
64
|
`);
|
|
65
65
|
expect(hideIds(await discord.thread(fork.id).text())).toMatchInlineSnapshot(`
|
|
66
66
|
"--- from: assistant (TestBot)
|
|
67
67
|
Reusing context from <#THREAD> to answer prompt...
|
|
68
68
|
What is 2+2 side-marker
|
|
69
69
|
side answer
|
|
70
|
-
-# *
|
|
70
|
+
-# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
|
|
71
71
|
`);
|
|
72
72
|
const rows = await bot.db.query.thread_sessions.findMany({ where: { thread_id: fork.id } });
|
|
73
73
|
expect(rows.length).toBe(1);
|
|
@@ -96,7 +96,7 @@ test('/btw forks from a thread with an idle session', async () => {
|
|
|
96
96
|
Reusing context from <#THREAD> to answer prompt...
|
|
97
97
|
Side slash-marker
|
|
98
98
|
slash answer
|
|
99
|
-
-# *
|
|
99
|
+
-# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2*"
|
|
100
100
|
`);
|
|
101
101
|
});
|
|
102
102
|
//# sourceMappingURL=btw.e2e.test.js.map
|
package/dist/builtin-skills.d.ts
CHANGED
|
@@ -11,6 +11,9 @@ export type BuiltinSkill = {
|
|
|
11
11
|
};
|
|
12
12
|
export declare function readBuiltinSkills(): Promise<FilesystemError | BuiltinSkill[]>;
|
|
13
13
|
export declare function parseDisabledSkills(value: string | undefined): ConfigError | BuiltinSkillId[];
|
|
14
|
+
export declare const PROMPT_SECTIONS: readonly ["discord-permissions", "kimaki-debugging", "file-upload-requests", "action-buttons", "session-sleep", "session-abort", "cross-project-commands", "waiting-sessions", "critique-diffs", "markdown-formatting", "discord-callouts", "search-result-urls", "diagrams"];
|
|
15
|
+
export type PromptSection = (typeof PROMPT_SECTIONS)[number];
|
|
16
|
+
export declare function parseDisabledPromptSections(values: readonly string[] | undefined): ConfigError | PromptSection[];
|
|
14
17
|
export declare function disabledSkillRules(disabled: readonly string[]): {
|
|
15
18
|
readonly action: "skill";
|
|
16
19
|
readonly resource: string;
|
package/dist/builtin-skills.js
CHANGED
|
@@ -44,6 +44,35 @@ export function parseDisabledSkills(value) {
|
|
|
44
44
|
return new ConfigError({ reason: `Unknown built-in skill ${unknown.join(', ')}. Choose from: all, ${BUILTIN_SKILL_IDS.join(', ')}` });
|
|
45
45
|
return items;
|
|
46
46
|
}
|
|
47
|
+
// Static parts of the session instructions (system-prompt.ts) that
|
|
48
|
+
// `kimaki --disable-prompt <section>` removes. Here, not in system-prompt.ts,
|
|
49
|
+
// so the CLI help can list them without loading zod.
|
|
50
|
+
export const PROMPT_SECTIONS = [
|
|
51
|
+
'discord-permissions',
|
|
52
|
+
'kimaki-debugging',
|
|
53
|
+
'file-upload-requests',
|
|
54
|
+
'action-buttons',
|
|
55
|
+
'session-sleep',
|
|
56
|
+
'session-abort',
|
|
57
|
+
'cross-project-commands',
|
|
58
|
+
'waiting-sessions',
|
|
59
|
+
'critique-diffs',
|
|
60
|
+
'markdown-formatting',
|
|
61
|
+
'discord-callouts',
|
|
62
|
+
'search-result-urls',
|
|
63
|
+
'diagrams',
|
|
64
|
+
];
|
|
65
|
+
function isPromptSection(item) {
|
|
66
|
+
return PROMPT_SECTIONS.some((section) => section === item);
|
|
67
|
+
}
|
|
68
|
+
// Repeatable flag; each value can also be a comma separated list.
|
|
69
|
+
export function parseDisabledPromptSections(values) {
|
|
70
|
+
const items = (values ?? []).flatMap((value) => value.split(',')).map((item) => item.trim()).filter(Boolean);
|
|
71
|
+
const unknown = items.filter((item) => !isPromptSection(item));
|
|
72
|
+
if (unknown.length > 0)
|
|
73
|
+
return new ConfigError({ reason: `Unknown prompt section ${unknown.join(', ')}. Choose from: ${PROMPT_SECTIONS.join(', ')}` });
|
|
74
|
+
return items.filter(isPromptSection);
|
|
75
|
+
}
|
|
47
76
|
// OpenCode hides a skill from the model and the skill tool when its permission is denied.
|
|
48
77
|
export function disabledSkillRules(disabled) {
|
|
49
78
|
return disabled.map((id) => ({ action: 'skill', resource: id, effect: 'deny' }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin-skills.js","sourceRoot":"","sources":["../src/builtin-skills.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"builtin-skills.js","sourceRoot":"","sources":["../src/builtin-skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { expect, test } from 'vitest';
|
|
2
|
-
import { BUILTIN_SKILL_IDS, disabledSkillRules, parseDisabledSkills, readBuiltinSkills } from "./builtin-skills.js";
|
|
2
|
+
import { BUILTIN_SKILL_IDS, disabledSkillRules, parseDisabledPromptSections, parseDisabledSkills, PROMPT_SECTIONS, readBuiltinSkills } from "./builtin-skills.js";
|
|
3
|
+
import { baseInstructions } from "./system-prompt.js";
|
|
3
4
|
test('every built-in skill file parses', async () => {
|
|
4
5
|
const skills = await readBuiltinSkills();
|
|
5
6
|
if (skills instanceof Error)
|
|
@@ -25,4 +26,74 @@ test('--disable-skills accepts all, a list, and rejects unknown ids', () => {
|
|
|
25
26
|
]
|
|
26
27
|
`);
|
|
27
28
|
});
|
|
29
|
+
test('--disable-prompt removes exactly the headings of each section', () => {
|
|
30
|
+
expect(parseDisabledPromptSections(['critique-diffs,discord-callouts', 'search-result-urls'])).toEqual(['critique-diffs', 'discord-callouts', 'search-result-urls']);
|
|
31
|
+
expect(parseDisabledPromptSections(['critique'])).toBeInstanceOf(Error);
|
|
32
|
+
const input = { sessionId: 'ses_1', threadId: '2', channelId: '3', guildId: '4', userId: '5', dataDir: '/data', channelTopic: null, agents: [], parentSessionId: null };
|
|
33
|
+
const headings = (text) => text.split('\n').filter((line) => line.startsWith('## '));
|
|
34
|
+
const full = headings(baseInstructions(input));
|
|
35
|
+
const removed = Object.fromEntries(PROMPT_SECTIONS.map((section) => {
|
|
36
|
+
const kept = new Set(headings(baseInstructions({ ...input, disabled: [section] })));
|
|
37
|
+
return [section, full.filter((heading) => !kept.has(heading))];
|
|
38
|
+
}));
|
|
39
|
+
expect(removed).toMatchInlineSnapshot(`
|
|
40
|
+
{
|
|
41
|
+
"action-buttons": [
|
|
42
|
+
"## action buttons",
|
|
43
|
+
"## ending conversations with options",
|
|
44
|
+
],
|
|
45
|
+
"critique-diffs": [
|
|
46
|
+
"## showing diffs",
|
|
47
|
+
],
|
|
48
|
+
"cross-project-commands": [
|
|
49
|
+
"## cross-project commands",
|
|
50
|
+
],
|
|
51
|
+
"diagrams": [
|
|
52
|
+
"## diagrams",
|
|
53
|
+
],
|
|
54
|
+
"discord-callouts": [
|
|
55
|
+
"## Callouts in Kimaki Discord",
|
|
56
|
+
],
|
|
57
|
+
"discord-permissions": [
|
|
58
|
+
"## permissions",
|
|
59
|
+
],
|
|
60
|
+
"file-upload-requests": [
|
|
61
|
+
"## requesting files from the user",
|
|
62
|
+
],
|
|
63
|
+
"kimaki-debugging": [
|
|
64
|
+
"## debugging kimaki issues",
|
|
65
|
+
],
|
|
66
|
+
"markdown-formatting": [
|
|
67
|
+
"## markdown formatting",
|
|
68
|
+
],
|
|
69
|
+
"search-result-urls": [
|
|
70
|
+
"## URLs in search results",
|
|
71
|
+
],
|
|
72
|
+
"session-abort": [
|
|
73
|
+
"## aborting a session",
|
|
74
|
+
],
|
|
75
|
+
"session-sleep": [
|
|
76
|
+
"## sleeping the session",
|
|
77
|
+
],
|
|
78
|
+
"waiting-sessions": [
|
|
79
|
+
"## waiting for a session to finish",
|
|
80
|
+
],
|
|
81
|
+
}
|
|
82
|
+
`);
|
|
83
|
+
expect(headings(baseInstructions({ ...input, disabled: [...PROMPT_SECTIONS] }))).toMatchInlineSnapshot(`
|
|
84
|
+
[
|
|
85
|
+
"## Discord output",
|
|
86
|
+
"## shell tool",
|
|
87
|
+
"## commit messages",
|
|
88
|
+
"## uploading files to discord",
|
|
89
|
+
"## generating audio from text",
|
|
90
|
+
"## archiving the current thread",
|
|
91
|
+
"## updating the session title",
|
|
92
|
+
"## discord user mentions",
|
|
93
|
+
"## starting new sessions from CLI",
|
|
94
|
+
"## scheduled sends and routines",
|
|
95
|
+
"## reading other sessions",
|
|
96
|
+
]
|
|
97
|
+
`);
|
|
98
|
+
});
|
|
28
99
|
//# sourceMappingURL=builtin-skills.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin-skills.test.js","sourceRoot":"","sources":["../src/builtin-skills.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"builtin-skills.test.js","sourceRoot":"","sources":["../src/builtin-skills.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,10 +46,10 @@ test('agents loaded after startup get their slash commands', async () => {
|
|
|
46
46
|
await waitForFooter({ discord, threadId: thread.id });
|
|
47
47
|
expect(await discord.thread(thread.id).text()).toMatchInlineSnapshot(`
|
|
48
48
|
"--- from: assistant (TestBot)
|
|
49
|
-
» **tommy:** Go late-marker
|
|
49
|
+
-# » **tommy:** Go late-marker
|
|
50
50
|
-# *using deterministic-provider/deterministic-v2 ⋅ late*
|
|
51
51
|
late reply
|
|
52
|
-
-# *
|
|
52
|
+
-# *main ⋅ Ns ⋅ N% ⋅ deterministic-v2 ⋅ late*"
|
|
53
53
|
`);
|
|
54
54
|
});
|
|
55
55
|
test('a skill change adds its command; catalog events with the same catalog write nothing to Discord', async () => {
|
package/dist/cli/bot.d.ts
CHANGED
package/dist/cli/bot.js
CHANGED
|
@@ -7,8 +7,9 @@ import fs from 'node:fs';
|
|
|
7
7
|
import path from 'node:path';
|
|
8
8
|
import { setTimeout as sleep } from 'node:timers/promises';
|
|
9
9
|
import dedent from 'string-dedent';
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
10
|
+
import { wrapJsonSchema } from 'goke';
|
|
11
|
+
import { distCliEntry, removeAutostartScript, stableNodePath, writeAutostartScript } from "../autostart.js";
|
|
12
|
+
import { parseDisabledPromptSections, parseDisabledSkills, PROMPT_SECTIONS } from "../builtin-skills.js";
|
|
12
13
|
import { callBot, DEFAULT_LOCK_PORT, RESTART_EXIT_CODE, startLockServer } from "../lock-server.js";
|
|
13
14
|
import { parseDuration } from "../duration.js";
|
|
14
15
|
import { createLogger, setLogFile } from "../logger.js";
|
|
@@ -55,8 +56,10 @@ async function supervise() {
|
|
|
55
56
|
for (const signal of ['SIGINT', 'SIGTERM', 'SIGHUP']) {
|
|
56
57
|
process.on(signal, () => state.child?.kill('SIGTERM'));
|
|
57
58
|
}
|
|
59
|
+
// Resolved before any Node upgrade: `kimaki restart` must not spawn the deleted binary.
|
|
60
|
+
const node = stableNodePath();
|
|
58
61
|
while (true) {
|
|
59
|
-
const child = spawn(
|
|
62
|
+
const child = spawn(node, [...process.execArgv, ...process.argv.slice(1)], {
|
|
60
63
|
stdio: ['inherit', 'inherit', 'inherit', 'ipc'],
|
|
61
64
|
env: { ...process.env, KIMAKI_SUPERVISED: '1' },
|
|
62
65
|
});
|
|
@@ -85,10 +88,12 @@ export function registerStartCommand(cli) {
|
|
|
85
88
|
.option('--restart-onboarding', 'Choose credentials again')
|
|
86
89
|
.option('--worktrees', 'Use a fresh Git worktree for new sessions unless the channel overrides it')
|
|
87
90
|
.option('--allow-all-users', 'Every server member can use the bot (role "no-kimaki" still denies; provider login stays admin-only)')
|
|
88
|
-
.option('--message-tool', 'Discord shows only a concise reply the agent sends with a send_message tool; plain text stays visible in the OpenCode TUI')
|
|
89
91
|
.option('--voice <name>', 'Voice of voice calls, saved for later starts (e.g. cove, juniper, sol). "default" resets it')
|
|
90
92
|
.option('--disable-skills <list>', 'Built-in Kimaki skills to turn off: "all" or a comma separated list (kimaki-debug,kimaki-tunnel)')
|
|
93
|
+
.option('--disable-prompt <section>', wrapJsonSchema({ type: 'array', items: { type: 'string' }, description: `System prompt section to remove from new sessions (repeatable): ${PROMPT_SECTIONS.join(', ')}` }))
|
|
91
94
|
.option('--no-analytics', 'Disable anonymous usage analytics (same as KIMAKI_STRADA_ENABLED=0)')
|
|
95
|
+
.option('--coordinator [enabled]', wrapJsonSchema({ type: 'boolean', default: true, description: 'Channel messages go to one long coordinator session that starts threads for the work. "false" turns it off (/toggle-coordinator sets one channel)' }))
|
|
96
|
+
.option('--no-autostart', 'Do not open a terminal with the bot when OpenCode starts (for bots run by launchd, systemd or pm2)')
|
|
92
97
|
.option('--if-not-running', 'Start only if no bot runs; never stop the running one (used by autostart)')
|
|
93
98
|
.action(async (options) => {
|
|
94
99
|
// The IPC check ignores a KIMAKI_SUPERVISED leaked into a shell by an older bot.
|
|
@@ -98,7 +103,7 @@ export function registerStartCommand(cli) {
|
|
|
98
103
|
// session (tests) would otherwise think it is supervised and SIGTERM itself on restart.
|
|
99
104
|
delete process.env['KIMAKI_SUPERVISED'];
|
|
100
105
|
// Bot code loads only here: the other subcommands start without it.
|
|
101
|
-
const [{ startBot }, { ensureOpencode,
|
|
106
|
+
const [{ startBot }, { ensureOpencode, runOnboarding, startCaffeinate }, { emitEvent, gatewayCredentials, gatewayUrlsFromEnv, installUrlFor, readSavedCredentials, resolveCredentials, restApiUrl }, { openDb }, { createAnalytics }, { opencodeConfigDir, opencodeDbFile }, { defaultMachineName }, { ensureVoiceChannels, parseRealtimeVoice, saveVoiceCallVoice },] = await Promise.all([
|
|
102
107
|
import("../main.js"),
|
|
103
108
|
import("../onboarding.js"),
|
|
104
109
|
import("../credentials.js"),
|
|
@@ -120,6 +125,9 @@ export function registerStartCommand(cli) {
|
|
|
120
125
|
const disabledSkills = parseDisabledSkills(options.disableSkills);
|
|
121
126
|
if (disabledSkills instanceof Error)
|
|
122
127
|
fail(disabledSkills);
|
|
128
|
+
const disabledPrompt = parseDisabledPromptSections(options.disablePrompt);
|
|
129
|
+
if (disabledPrompt instanceof Error)
|
|
130
|
+
fail(disabledPrompt);
|
|
123
131
|
const machine = options.machineName ?? defaultMachineName();
|
|
124
132
|
// Validated before the lock, so a typo never stops the running bot. null: reset to the default.
|
|
125
133
|
const voice = (() => {
|
|
@@ -197,13 +205,12 @@ export function registerStartCommand(cli) {
|
|
|
197
205
|
// The agent calls this same install. Prefer the built dist entry, so agent
|
|
198
206
|
// commands skip the tsx loader also when the bot runs from src.
|
|
199
207
|
const distCli = distCliEntry();
|
|
200
|
-
const
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
});
|
|
208
|
+
const node = stableNodePath();
|
|
209
|
+
const kimakiArgv = fs.existsSync(distCli)
|
|
210
|
+
? [node, distCli]
|
|
211
|
+
: [node, ...process.execArgv, process.argv[1] ?? 'kimaki'];
|
|
205
212
|
const bot = await startBot({
|
|
206
|
-
|
|
213
|
+
kimakiArgv,
|
|
207
214
|
dataDir,
|
|
208
215
|
token: credentials.token,
|
|
209
216
|
appId: credentials.appId,
|
|
@@ -217,7 +224,8 @@ export function registerStartCommand(cli) {
|
|
|
217
224
|
autoWorktrees: Boolean(options.worktrees),
|
|
218
225
|
allowAllUsers: Boolean(options.allowAllUsers),
|
|
219
226
|
disabledSkills,
|
|
220
|
-
|
|
227
|
+
disabledPrompt,
|
|
228
|
+
coordinator: options.coordinator,
|
|
221
229
|
});
|
|
222
230
|
if (bot instanceof Error)
|
|
223
231
|
failStartup(bot);
|
|
@@ -230,7 +238,7 @@ export function registerStartCommand(cli) {
|
|
|
230
238
|
// The supervisor died (SIGKILL, crash): nobody owns this bot anymore.
|
|
231
239
|
process.once('disconnect', shutdown);
|
|
232
240
|
const gateway = credentials.mode === 'gateway';
|
|
233
|
-
const onboarded = await runOnboarding({ bot, dataDir, guildId: options.guild ?? install?.guildId, installUrl,
|
|
241
|
+
const onboarded = await runOnboarding({ bot, dataDir, guildId: options.guild ?? install?.guildId, installUrl, gateway, installerId: install?.installerId, machine });
|
|
234
242
|
// The bot keeps running; the next start retries onboarding.
|
|
235
243
|
if (onboarded instanceof Error) {
|
|
236
244
|
logger.error(`onboarding failed`, onboarded);
|
|
@@ -239,19 +247,26 @@ export function registerStartCommand(cli) {
|
|
|
239
247
|
return;
|
|
240
248
|
}
|
|
241
249
|
if (onboarded)
|
|
242
|
-
process.stderr.write(`Onboarding
|
|
250
|
+
process.stderr.write(`Onboarding: https://discord.com/channels/${onboarded.guildId}/${onboarded.threadId}\n`);
|
|
243
251
|
const voiceChannels = await ensureVoiceChannels(bot, { machine });
|
|
244
252
|
if (voiceChannels instanceof Error)
|
|
245
253
|
logger.warn('cannot create the Kimaki voice channel', voiceChannels);
|
|
246
|
-
//
|
|
247
|
-
//
|
|
248
|
-
|
|
254
|
+
// --no-autostart removes the script on every start, so the opt-out sticks while
|
|
255
|
+
// launchd or systemd passes the flag. Only the default port: the plugin checks
|
|
256
|
+
// that one. Runtime flags only; credentials, onboarding and --voice are saved in SQLite.
|
|
257
|
+
if (options.noAutostart) {
|
|
258
|
+
const removed = await removeAutostartScript({ dataDir });
|
|
259
|
+
if (removed instanceof Error)
|
|
260
|
+
logger.warn('cannot remove the autostart script', removed);
|
|
261
|
+
}
|
|
262
|
+
else if (lock.port === DEFAULT_LOCK_PORT) {
|
|
249
263
|
const autostart = await writeAutostartScript({ dataDir, args: [
|
|
250
264
|
...(options.worktrees ? ['--worktrees'] : []),
|
|
251
265
|
...(options.allowAllUsers ? ['--allow-all-users'] : []),
|
|
252
266
|
...(options.disableSkills ? ['--disable-skills', options.disableSkills] : []),
|
|
253
|
-
...(
|
|
267
|
+
...disabledPrompt.flatMap((section) => ['--disable-prompt', section]),
|
|
254
268
|
...(options.noAnalytics ? ['--no-analytics'] : []),
|
|
269
|
+
...(options.coordinator ? [] : ['--coordinator', 'false']),
|
|
255
270
|
...(options.machineName ? ['--machine-name', options.machineName] : []),
|
|
256
271
|
] });
|
|
257
272
|
if (autostart instanceof Error)
|
package/dist/cli/bot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../src/cli/bot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../src/cli/bot.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/discord.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
// Discord-facing commands: agent UI (buttons, upload requests) through the
|
|
2
2
|
// running bot, plus thread/user lookups and uploads with the saved bot token.
|
|
3
|
+
import fs from 'node:fs';
|
|
4
|
+
import os from 'node:os';
|
|
3
5
|
import path from 'node:path';
|
|
4
6
|
import { ChannelType } from 'discord-api-types/v10';
|
|
5
7
|
import { wrapJsonSchema } from 'goke';
|
|
@@ -10,22 +12,23 @@ import { action, DATA_DIR_HELP, dataDirOrDefault, discordApi, fail, isThread, pr
|
|
|
10
12
|
function agentShell() {
|
|
11
13
|
return { fromShell: Boolean(process.env['OPENCODE_SESSION_ID']), toolCall: process.env['KIMAKI_TOOL_CALL'] };
|
|
12
14
|
}
|
|
13
|
-
// The model reads this after `kimaki buttons
|
|
15
|
+
// The model reads this after `kimaki buttons`. Text planned before a tool call
|
|
16
|
+
// is sometimes never written (#256), so it asks for a missing answer or explanation.
|
|
14
17
|
const BUTTONS_SHOWN = dedent `
|
|
15
18
|
|
|
16
19
|
Buttons shown in Discord.
|
|
17
20
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
+
The user cannot see tool calls, command outputs, your reasoning, or subagent and task results. They only see your text.
|
|
22
|
+
If this turn has no text yet that answers the user and explains the buttons, write it now:
|
|
23
|
+
- your answer to what the user asked, if anything
|
|
21
24
|
- what was done in this session, concisely, including any findings from tool or task outputs that the choice depends on
|
|
22
25
|
- what each button does and its tradeoffs
|
|
23
|
-
|
|
26
|
+
Be concise: a few short lines in plain sentences, no walls of text. Do not only repeat the button labels. Then stop and wait for the click.
|
|
24
27
|
|
|
25
28
|
`;
|
|
26
29
|
// buttons, upload-request
|
|
27
30
|
export function registerAgentUiCommands(cli) {
|
|
28
|
-
cli.command('buttons', 'Show 1-3 action buttons.
|
|
31
|
+
cli.command('buttons', 'Show 1-3 action buttons. Explain them in your text')
|
|
29
32
|
.option('--data-dir <path>', DATA_DIR_HELP)
|
|
30
33
|
.option('-s, --session <id>', SESSION_HELP)
|
|
31
34
|
.option('-b, --button <spec>', wrapJsonSchema({ type: 'array', items: { type: 'string' }, description: "Repeatable: Label[:white|blue|green|red]" }))
|
|
@@ -114,5 +117,28 @@ export function registerDiscordCommands(cli) {
|
|
|
114
117
|
// Waits for Discord: big files and a busy thread take longer than the 30s default.
|
|
115
118
|
await action({ route: 'upload', dataDir: options.dataDir, input, signal: AbortSignal.timeout(5 * 60_000) });
|
|
116
119
|
});
|
|
120
|
+
cli.command('diagram <input>', 'Render a Mermaid diagram (file path, or - for stdin) to a light themed PNG. Upload it with upload-to-discord')
|
|
121
|
+
.option('-o, --output <path>', 'PNG file to write (default: input path with .png, or a temp file for stdin)')
|
|
122
|
+
.option('--dark', 'Dark theme instead of light')
|
|
123
|
+
.action(async (input, options) => {
|
|
124
|
+
const source = input === '-' ? await readStdin() : await fs.promises.readFile(input, 'utf8').catch((error) => error);
|
|
125
|
+
if (source instanceof Error)
|
|
126
|
+
fail(source);
|
|
127
|
+
const { renderDiagram } = await import("../diagram.js");
|
|
128
|
+
const png = renderDiagram(source, { theme: options.dark ? 'dark' : 'light' });
|
|
129
|
+
if (png instanceof Error)
|
|
130
|
+
fail(png);
|
|
131
|
+
const output = path.resolve(options.output ?? (input === '-' ? path.join(os.tmpdir(), `kimaki-diagram-${Date.now()}.png`) : input.replace(/(\.\w+)?$/, '.png')));
|
|
132
|
+
const written = await fs.promises.writeFile(output, png).catch((error) => error);
|
|
133
|
+
if (written instanceof Error)
|
|
134
|
+
fail(written);
|
|
135
|
+
process.stdout.write(`${output}\n`);
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
async function readStdin() {
|
|
139
|
+
const chunks = [];
|
|
140
|
+
for await (const chunk of process.stdin)
|
|
141
|
+
chunks.push(Buffer.from(chunk));
|
|
142
|
+
return Buffer.concat(chunks).toString('utf8');
|
|
117
143
|
}
|
|
118
144
|
//# sourceMappingURL=discord.js.map
|