botmux 2.82.0 → 2.82.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.
Files changed (97) hide show
  1. package/dist/adapters/backend/tmux-backend.d.ts +30 -6
  2. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  3. package/dist/adapters/backend/tmux-backend.js +40 -6
  4. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  5. package/dist/adapters/backend/zellij-backend.d.ts +11 -0
  6. package/dist/adapters/backend/zellij-backend.d.ts.map +1 -1
  7. package/dist/adapters/backend/zellij-backend.js +16 -0
  8. package/dist/adapters/backend/zellij-backend.js.map +1 -1
  9. package/dist/adapters/cli/relay.d.ts +16 -22
  10. package/dist/adapters/cli/relay.d.ts.map +1 -1
  11. package/dist/adapters/cli/relay.js +27 -42
  12. package/dist/adapters/cli/relay.js.map +1 -1
  13. package/dist/adapters/cli/seed.d.ts.map +1 -1
  14. package/dist/adapters/cli/seed.js +4 -1
  15. package/dist/adapters/cli/seed.js.map +1 -1
  16. package/dist/adapters/cli/traex.d.ts.map +1 -1
  17. package/dist/adapters/cli/traex.js +4 -1
  18. package/dist/adapters/cli/traex.js.map +1 -1
  19. package/dist/bot-registry.d.ts +12 -0
  20. package/dist/bot-registry.d.ts.map +1 -1
  21. package/dist/bot-registry.js +5 -0
  22. package/dist/bot-registry.js.map +1 -1
  23. package/dist/cli.d.ts.map +1 -1
  24. package/dist/cli.js +1 -84
  25. package/dist/cli.js.map +1 -1
  26. package/dist/config.d.ts +17 -0
  27. package/dist/config.d.ts.map +1 -1
  28. package/dist/config.js +31 -0
  29. package/dist/config.js.map +1 -1
  30. package/dist/core/command-handler.d.ts.map +1 -1
  31. package/dist/core/command-handler.js +8 -2
  32. package/dist/core/command-handler.js.map +1 -1
  33. package/dist/core/cost-calculator.js +2 -2
  34. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  35. package/dist/core/dashboard-ipc-server.js +47 -1
  36. package/dist/core/dashboard-ipc-server.js.map +1 -1
  37. package/dist/core/idle-worker-sweeper.d.ts +30 -4
  38. package/dist/core/idle-worker-sweeper.d.ts.map +1 -1
  39. package/dist/core/idle-worker-sweeper.js +32 -12
  40. package/dist/core/idle-worker-sweeper.js.map +1 -1
  41. package/dist/core/persistent-backend.d.ts +12 -0
  42. package/dist/core/persistent-backend.d.ts.map +1 -1
  43. package/dist/core/persistent-backend.js +18 -0
  44. package/dist/core/persistent-backend.js.map +1 -1
  45. package/dist/core/session-manager.d.ts.map +1 -1
  46. package/dist/core/session-manager.js +37 -4
  47. package/dist/core/session-manager.js.map +1 -1
  48. package/dist/core/worker-pool.d.ts.map +1 -1
  49. package/dist/core/worker-pool.js +18 -1
  50. package/dist/core/worker-pool.js.map +1 -1
  51. package/dist/daemon.d.ts.map +1 -1
  52. package/dist/daemon.js +7 -3
  53. package/dist/daemon.js.map +1 -1
  54. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  55. package/dist/dashboard/web/bot-defaults.js +100 -1
  56. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  57. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  58. package/dist/dashboard/web/i18n.js +18 -0
  59. package/dist/dashboard/web/i18n.js.map +1 -1
  60. package/dist/dashboard-web/app.js +371 -354
  61. package/dist/dashboard.js +20 -0
  62. package/dist/dashboard.js.map +1 -1
  63. package/dist/global-config.d.ts +0 -7
  64. package/dist/global-config.d.ts.map +1 -1
  65. package/dist/global-config.js +0 -21
  66. package/dist/global-config.js.map +1 -1
  67. package/dist/i18n/en.js +2 -2
  68. package/dist/i18n/en.js.map +1 -1
  69. package/dist/i18n/zh.js +2 -2
  70. package/dist/i18n/zh.js.map +1 -1
  71. package/dist/im/lark/card-handler.d.ts.map +1 -1
  72. package/dist/im/lark/card-handler.js +3 -1
  73. package/dist/im/lark/card-handler.js.map +1 -1
  74. package/dist/services/bot-config-store.d.ts +4 -4
  75. package/dist/services/bot-config-store.d.ts.map +1 -1
  76. package/dist/services/bot-config-store.js +5 -0
  77. package/dist/services/bot-config-store.js.map +1 -1
  78. package/dist/services/git-worktree.d.ts +19 -4
  79. package/dist/services/git-worktree.d.ts.map +1 -1
  80. package/dist/services/git-worktree.js +47 -2
  81. package/dist/services/git-worktree.js.map +1 -1
  82. package/dist/services/worktree-slug-ai.d.ts +3 -0
  83. package/dist/services/worktree-slug-ai.d.ts.map +1 -0
  84. package/dist/services/worktree-slug-ai.js +80 -0
  85. package/dist/services/worktree-slug-ai.js.map +1 -0
  86. package/dist/skills/definitions.d.ts.map +1 -1
  87. package/dist/skills/definitions.js +4 -25
  88. package/dist/skills/definitions.js.map +1 -1
  89. package/dist/types.d.ts +10 -0
  90. package/dist/types.d.ts.map +1 -1
  91. package/dist/worker.js +10 -2
  92. package/dist/worker.js.map +1 -1
  93. package/package.json +1 -1
  94. package/dist/core/worker-budget.d.ts +0 -19
  95. package/dist/core/worker-budget.d.ts.map +0 -1
  96. package/dist/core/worker-budget.js +0 -50
  97. package/dist/core/worker-budget.js.map +0 -1
package/dist/config.d.ts CHANGED
@@ -73,6 +73,23 @@ export declare const config: {
73
73
  /** Extra body params for the API request (JSON string, e.g. '{"thinking":{"type":"disabled"}}') */
74
74
  extraBody: Record<string, unknown>;
75
75
  };
76
+ worktreeSlugAI: {
77
+ /**
78
+ * Optional AI slugger for `/repo wt` auto branch/worktree naming. Disabled
79
+ * by default because it sends the topic title / first prompt to the
80
+ * configured OpenAI-compatible endpoint. When disabled or misconfigured,
81
+ * botmux falls back to deterministic local slugification.
82
+ */
83
+ enabled: boolean;
84
+ baseUrl: string;
85
+ apiKey: string;
86
+ model: string;
87
+ timeoutMs: number;
88
+ /** Extra headers for the API request (JSON string). */
89
+ extraHeaders: Record<string, string>;
90
+ /** Extra body params for the API request (JSON string). */
91
+ extraBody: Record<string, unknown>;
92
+ };
76
93
  };
77
94
  export type Config = typeof config;
78
95
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAkB/D,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAuBD,eAAO,MAAM,MAAM;;;;;;iBAUI,MAAM;;;QAGzB;;;4CAGoC;;;;eAIY,OAAO,yBAAyB,EAAE,KAAK;;qBAElB,WAAW;QAChF;;;;;6CAKqC;;;;;;;;;;;;;;;;;;;QA6BrC;;;;;;;;;;sEAU8D;;;;;;;;QAQ9D,sCAAsC;;QAEtC,iEAAiE;;QAEjE,2CAA2C;;QAE3C,mFAAmF;sBAI3E,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;QAC9B,mGAAmG;mBAI3F,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;CAElC,CAAC;AAGF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAkB/D,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAuBD,eAAO,MAAM,MAAM;;;;;;iBAUI,MAAM;;;QAGzB;;;4CAGoC;;;;eAIY,OAAO,yBAAyB,EAAE,KAAK;;qBAElB,WAAW;QAChF;;;;;6CAKqC;;;;;;;;;;;;;;;;;;;QA6BrC;;;;;;;;;;sEAU8D;;;;;;;;QAQ9D,sCAAsC;;QAEtC,iEAAiE;;QAEjE,2CAA2C;;QAE3C,mFAAmF;sBAI3E,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;QAC9B,mGAAmG;mBAI3F,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;QAG/B;;;;;WAKG;;;;;;QAMH,uDAAuD;sBAI/C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;QAC9B,2DAA2D;mBAInD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;CAElC,CAAC;AAGF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
package/dist/config.js CHANGED
@@ -138,5 +138,36 @@ export const config = {
138
138
  }
139
139
  })(),
140
140
  },
141
+ worktreeSlugAI: {
142
+ /**
143
+ * Optional AI slugger for `/repo wt` auto branch/worktree naming. Disabled
144
+ * by default because it sends the topic title / first prompt to the
145
+ * configured OpenAI-compatible endpoint. When disabled or misconfigured,
146
+ * botmux falls back to deterministic local slugification.
147
+ */
148
+ enabled: (process.env.BOTMUX_WORKTREE_SLUG_AI_ENABLED ?? '').toLowerCase() === 'true',
149
+ baseUrl: process.env.BOTMUX_WORKTREE_SLUG_AI_BASE_URL ?? '',
150
+ apiKey: process.env.BOTMUX_WORKTREE_SLUG_AI_API_KEY ?? '',
151
+ model: process.env.BOTMUX_WORKTREE_SLUG_AI_MODEL ?? '',
152
+ timeoutMs: Number(process.env.BOTMUX_WORKTREE_SLUG_AI_TIMEOUT_MS) || 5_000,
153
+ /** Extra headers for the API request (JSON string). */
154
+ extraHeaders: (() => {
155
+ try {
156
+ return JSON.parse(process.env.BOTMUX_WORKTREE_SLUG_AI_EXTRA_HEADERS ?? '{}');
157
+ }
158
+ catch {
159
+ return {};
160
+ }
161
+ })(),
162
+ /** Extra body params for the API request (JSON string). */
163
+ extraBody: (() => {
164
+ try {
165
+ return JSON.parse(process.env.BOTMUX_WORKTREE_SLUG_AI_EXTRA_BODY ?? '{}');
166
+ }
167
+ catch {
168
+ return {};
169
+ }
170
+ })(),
171
+ },
141
172
  };
142
173
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,sEAAsE;AACtE,SAAS,UAAU;IACjB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAC,OAAO,CAAC;QACpE,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AAChE,MAAM,+BAA+B,GACnC,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AAE9E,MAAM,UAAU,kBAAkB;IAChC,OAAO,yBAAyB,IAAI,UAAU,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,+BAA+B,IAAI,UAAU,EAAE,CAAC;AACzD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,oBAAoB;IAC3B,OAAO,mBAAmB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC;AAED,2EAA2E;AAC3E,8EAA8E;AAC9E,iDAAiD;AACjD,4EAA4E;AAC5E,+EAA+E;AAC/E,4EAA4E;AAC5E,yEAAyE;AACzE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;AAErE,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,IAAI,EAAE;QACJ,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE;QACpC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;KAC7C;IACD,OAAO,EAAE;QACP,IAAI,OAAO,KAAK,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,eAAe,CAAC,CAAC,CAAC;QACzE,gEAAgE;QAChE,0EAA0E;QAC1E,qEAAqE;QACrE,IAAI,OAAO,CAAC,KAAa,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC,CAAC,CAAC;KACrE;IACD,IAAI,EAAE;QACJ;;;4CAGoC;QACpC,sBAAsB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO;KAC1G;IACD,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,aAAa,CAA4C;QACvF,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;QACrC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,oBAAoB,EAAE,CAAgB;QAChF;;;;;6CAKqC;QACrC,qBAAqB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;QACvF,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,GAAG,CAAC,CAAC;QAC1F,UAAU,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;QACpG,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAC3F,YAAY,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;KAC9F;IACD,GAAG,EAAE;QACH,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,SAAS;QACvC,UAAU,EAAE,qBAAqB,EAAE;QACnC,IAAI,YAAY,KAAK,OAAO,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACnD,uEAAuE;QACvE,2EAA2E;QAC3E,gFAAgF;QAChF,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,IAAI;QACrE,0EAA0E;QAC1E,4EAA4E;QAC5E,6EAA6E;QAC7E,yEAAyE;QACzE,8EAA8E;QAC9E,8EAA8E;QAC9E,kEAAkE;QAClE,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC;KACzD;IACD,SAAS,EAAE;QACT,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,SAAS;QACpD,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,IAAI;QACvD,IAAI,YAAY,KAAK,OAAO,wBAAwB,EAAE,CAAC,CAAC,CAAC;QACzD,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,IAAI;QACpE;;;;;;;;;;sEAU8D;QAC9D,cAAc,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO;KACnG;IACD,cAAc,EAAE;QACd,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;QAC7E,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE;QACnD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,EAAE;QACjD,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;QAC9C,sCAAsC;QACtC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,KAAK;QACpE,iEAAiE;QACjE,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,IAAI,CAAC;QAClE,2CAA2C;QAC3C,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,IAAI,KAAK;QACjF,mFAAmF;QACnF,YAAY,EAAE,CAAC,GAAG,EAAE;YAClB,IAAI,CAAC;gBAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,IAAI,CAAC,CAAC;YAAC,CAAC;YAC7E,MAAM,CAAC;gBAAC,OAAO,EAAE,CAAC;YAAC,CAAC;QACtB,CAAC,CAAC,EAA4B;QAC9B,mGAAmG;QACnG,SAAS,EAAE,CAAC,GAAG,EAAE;YACf,IAAI,CAAC;gBAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,IAAI,IAAI,CAAC,CAAC;YAAC,CAAC;YAC1E,MAAM,CAAC;gBAAC,OAAO,EAAE,CAAC;YAAC,CAAC;QACtB,CAAC,CAAC,EAA6B;KAChC;CACF,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command-handler.d.ts","sourceRoot":"","sources":["../../src/core/command-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-handler.d.ts","sourceRoot":"","sources":["../../src/core/command-handler.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import * as scheduleStore from '../services/schedule-store.js';
13
13
  import * as scheduler from './scheduler.js';
14
14
  import { scanMultipleProjects, describeProjectDir } from '../services/project-scanner.js';
15
15
  import { createRepoWorktree } from '../services/git-worktree.js';
16
+ import { worktreeSlugFromContextAI } from '../services/worktree-slug-ai.js';
16
17
  import { buildRepoSelectCard, buildAdoptSelectCard, buildCodexAppThreadSelectCard, buildSlashListCard, getCliDisplayName, buildConfigCard, buildLandCard } from '../im/lark/card-builder.js';
17
18
  import { computeSandboxDiff } from '../services/sandbox-land.js';
18
19
  import { createCliAdapterSync } from '../adapters/cli/registry.js';
@@ -1132,7 +1133,8 @@ export async function handleCommand(cmd, rootId, message, deps, larkAppId) {
1132
1133
  };
1133
1134
  // `/repo wt <N|name|path> [branch]` → create a worktree off the repo's
1134
1135
  // remote default branch and open THAT as the session repo. Without a
1135
- // branch arg the branch/dir are auto-named (wt/N, <repo>-wt-N).
1136
+ // branch arg the branch/dir are auto-named from the topic title / first
1137
+ // pending prompt when possible (fallback: wt/N, <repo>-wt-N).
1136
1138
  if (ds && /^wt(\s|$)/i.test(repoArg)) {
1137
1139
  const rest = repoArg.replace(/^wt\s*/i, '').trim().split(/\s+/).filter(Boolean);
1138
1140
  if (rest.length < 1 || rest.length > 2) {
@@ -1184,7 +1186,11 @@ export async function handleCommand(cmd, rootId, message, deps, larkAppId) {
1184
1186
  await sessionReply(rootId, t('cmd.repo.worktree_creating', { repo: repoPath }, loc));
1185
1187
  let creation;
1186
1188
  try {
1187
- creation = await createRepoWorktree(repoPath, { branch: branchArg });
1189
+ const slug = branchArg ? undefined : await worktreeSlugFromContextAI(ds.session.title, ds.pendingPrompt);
1190
+ creation = await createRepoWorktree(repoPath, {
1191
+ branch: branchArg,
1192
+ slug,
1193
+ });
1188
1194
  }
1189
1195
  catch (e) {
1190
1196
  await sessionReply(rootId, t('cmd.repo.worktree_failed', { error: e instanceof Error ? e.message : String(e) }, loc));