cyrus-edge-worker 0.2.28 → 0.2.30
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/dist/ChatSessionHandler.d.ts +7 -6
- package/dist/ChatSessionHandler.d.ts.map +1 -1
- package/dist/ChatSessionHandler.js +38 -22
- package/dist/ChatSessionHandler.js.map +1 -1
- package/dist/EdgeWorker.d.ts +4 -0
- package/dist/EdgeWorker.d.ts.map +1 -1
- package/dist/EdgeWorker.js +35 -21
- package/dist/EdgeWorker.js.map +1 -1
- package/dist/PromptBuilder.d.ts +10 -0
- package/dist/PromptBuilder.d.ts.map +1 -1
- package/dist/PromptBuilder.js +49 -0
- package/dist/PromptBuilder.js.map +1 -1
- package/dist/RunnerSelectionService.d.ts +5 -5
- package/dist/RunnerSelectionService.d.ts.map +1 -1
- package/dist/RunnerSelectionService.js.map +1 -1
- package/dist/SlackChatAdapter.d.ts +5 -1
- package/dist/SlackChatAdapter.d.ts.map +1 -1
- package/dist/SlackChatAdapter.js +43 -11
- package/dist/SlackChatAdapter.js.map +1 -1
- package/dist/procedures/ProcedureAnalyzer.d.ts +2 -2
- package/dist/procedures/ProcedureAnalyzer.d.ts.map +1 -1
- package/dist/procedures/ProcedureAnalyzer.js.map +1 -1
- package/package.json +13 -13
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { McpServerConfig } from "cyrus-claude-runner";
|
|
2
|
-
import type { IAgentRunner, ILogger } from "cyrus-core";
|
|
2
|
+
import type { AgentRunnerConfig, IAgentRunner, ILogger } from "cyrus-core";
|
|
3
3
|
/**
|
|
4
4
|
* Defines what each chat platform must provide for the generic session lifecycle.
|
|
5
5
|
*
|
|
@@ -32,9 +32,10 @@ export interface ChatPlatformAdapter<TEvent> {
|
|
|
32
32
|
*/
|
|
33
33
|
export interface ChatSessionHandlerDeps {
|
|
34
34
|
cyrusHome: string;
|
|
35
|
-
defaultModel?: string;
|
|
36
|
-
defaultFallbackModel?: string;
|
|
37
35
|
mcpConfig?: Record<string, McpServerConfig>;
|
|
36
|
+
chatRepositoryPaths?: string[];
|
|
37
|
+
/** Factory function that creates the appropriate runner based on config.defaultRunner */
|
|
38
|
+
createRunner: (config: AgentRunnerConfig) => IAgentRunner;
|
|
38
39
|
onWebhookStart: () => void;
|
|
39
40
|
onWebhookEnd: () => void;
|
|
40
41
|
onStateChange: () => Promise<void>;
|
|
@@ -69,17 +70,17 @@ export declare class ChatSessionHandler<TEvent> {
|
|
|
69
70
|
*/
|
|
70
71
|
private resumeSession;
|
|
71
72
|
/**
|
|
72
|
-
* Handle
|
|
73
|
+
* Handle agent messages for chat sessions.
|
|
73
74
|
* Routes to the dedicated AgentSessionManager.
|
|
74
75
|
*/
|
|
75
|
-
private
|
|
76
|
+
private handleAgentMessage;
|
|
76
77
|
/**
|
|
77
78
|
* Create an empty workspace directory for a chat thread.
|
|
78
79
|
* Unlike repository-associated sessions, chat sessions use plain directories (not git worktrees).
|
|
79
80
|
*/
|
|
80
81
|
private createWorkspace;
|
|
81
82
|
/**
|
|
82
|
-
* Build a
|
|
83
|
+
* Build a runner config for a chat session.
|
|
83
84
|
* Used by both handleEvent (new session) and resumeSession to eliminate duplication.
|
|
84
85
|
*/
|
|
85
86
|
private buildRunnerConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSessionHandler.d.ts","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAc,MAAM,qBAAqB,CAAC;AAEvE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"ChatSessionHandler.d.ts","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAc,MAAM,qBAAqB,CAAC;AAEvE,OAAO,KAAK,EACX,iBAAiB,EAGjB,YAAY,EACZ,OAAO,EACP,MAAM,YAAY,CAAC;AAKpB;;;;;GAKG;AACH,4DAA4D;AAC5D,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7D,MAAM,WAAW,mBAAmB,CAAC,MAAM;IAC1C,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;IAExC,sDAAsD;IACtD,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAE/C,uFAAuF;IACvF,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpC,8BAA8B;IAC9B,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC,8CAA8C;IAC9C,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzC,6EAA6E;IAC7E,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnD,2DAA2D;IAC3D,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9D,+EAA+E;IAC/E,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjD,kEAAkE;IAClE,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,yFAAyF;IACzF,YAAY,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,YAAY,CAAC;IAC1D,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACtC;AAED;;;;;;GAMG;AACH,qBAAa,kBAAkB,CAAC,MAAM;IACrC,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,IAAI,CAAyB;IACrC,OAAO,CAAC,MAAM,CAAU;gBAGvB,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,EACpC,IAAI,EAAE,sBAAsB,EAC5B,MAAM,CAAC,EAAE,OAAO;IAiBjB;;;;OAIG;IACG,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoL/C,2EAA2E;IAC3E,eAAe,IAAI,OAAO;IAS1B,iEAAiE;IACjE,aAAa,IAAI,YAAY,EAAE;IAI/B;;OAEG;YACW,aAAa;IAwC3B;;;OAGG;YACW,kBAAkB;IAOhC;;;OAGG;YACW,eAAe;IAuB7B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;CA4CzB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { mkdir } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
|
-
import {
|
|
3
|
+
import { getReadOnlyTools } from "cyrus-claude-runner";
|
|
4
4
|
import { createLogger } from "cyrus-core";
|
|
5
5
|
import { AgentSessionManager } from "./AgentSessionManager.js";
|
|
6
6
|
import { NoopActivitySink } from "./sinks/NoopActivitySink.js";
|
|
@@ -105,7 +105,7 @@ export class ChatSessionHandler {
|
|
|
105
105
|
const systemPrompt = this.adapter.buildSystemPrompt(event);
|
|
106
106
|
// Build runner config
|
|
107
107
|
const runnerConfig = this.buildRunnerConfig(session.workspace.path, sessionId, systemPrompt, sessionId);
|
|
108
|
-
const runner =
|
|
108
|
+
const runner = this.deps.createRunner(runnerConfig);
|
|
109
109
|
// Store the runner in the session manager
|
|
110
110
|
this.sessionManager.addAgentRunner(sessionId, runner);
|
|
111
111
|
// Save persisted state
|
|
@@ -115,11 +115,17 @@ export class ChatSessionHandler {
|
|
|
115
115
|
const userPrompt = threadContext
|
|
116
116
|
? `${threadContext}\n\n${taskInstructions}`
|
|
117
117
|
: taskInstructions;
|
|
118
|
-
this.logger.info(`Starting
|
|
119
|
-
// Start in streaming mode
|
|
120
|
-
//
|
|
118
|
+
this.logger.info(`Starting runner for ${this.adapter.platformName} event ${eventId}`);
|
|
119
|
+
// Start in streaming mode if supported (allows follow-up message injection),
|
|
120
|
+
// otherwise fall back to non-streaming start
|
|
121
121
|
try {
|
|
122
|
-
|
|
122
|
+
let sessionInfo;
|
|
123
|
+
if (runner.supportsStreamingInput && runner.startStreaming) {
|
|
124
|
+
sessionInfo = await runner.startStreaming(userPrompt);
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
sessionInfo = await runner.start(userPrompt);
|
|
128
|
+
}
|
|
123
129
|
this.logger.info(`${this.adapter.platformName} session started: ${sessionInfo.sessionId}`);
|
|
124
130
|
// When session completes, post the reply back
|
|
125
131
|
await this.adapter.postReply(event, runner);
|
|
@@ -157,10 +163,16 @@ export class ChatSessionHandler {
|
|
|
157
163
|
async resumeSession(event, existingSession, sessionId, resumeSessionId, taskInstructions) {
|
|
158
164
|
const systemPrompt = this.adapter.buildSystemPrompt(event);
|
|
159
165
|
const runnerConfig = this.buildRunnerConfig(existingSession.workspace.path, sessionId, systemPrompt, sessionId, resumeSessionId);
|
|
160
|
-
const runner =
|
|
166
|
+
const runner = this.deps.createRunner(runnerConfig);
|
|
161
167
|
this.sessionManager.addAgentRunner(sessionId, runner);
|
|
162
168
|
try {
|
|
163
|
-
|
|
169
|
+
let sessionInfo;
|
|
170
|
+
if (runner.supportsStreamingInput && runner.startStreaming) {
|
|
171
|
+
sessionInfo = await runner.startStreaming(taskInstructions);
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
sessionInfo = await runner.start(taskInstructions);
|
|
175
|
+
}
|
|
164
176
|
this.logger.info(`${this.adapter.platformName} session resumed: ${sessionInfo.sessionId} (was ${resumeSessionId})`);
|
|
165
177
|
await this.adapter.postReply(event, runner);
|
|
166
178
|
}
|
|
@@ -169,10 +181,10 @@ export class ChatSessionHandler {
|
|
|
169
181
|
}
|
|
170
182
|
}
|
|
171
183
|
/**
|
|
172
|
-
* Handle
|
|
184
|
+
* Handle agent messages for chat sessions.
|
|
173
185
|
* Routes to the dedicated AgentSessionManager.
|
|
174
186
|
*/
|
|
175
|
-
async
|
|
187
|
+
async handleAgentMessage(sessionId, message) {
|
|
176
188
|
await this.sessionManager.handleClaudeMessage(sessionId, message);
|
|
177
189
|
}
|
|
178
190
|
/**
|
|
@@ -192,34 +204,38 @@ export class ChatSessionHandler {
|
|
|
192
204
|
}
|
|
193
205
|
}
|
|
194
206
|
/**
|
|
195
|
-
* Build a
|
|
207
|
+
* Build a runner config for a chat session.
|
|
196
208
|
* Used by both handleEvent (new session) and resumeSession to eliminate duplication.
|
|
197
209
|
*/
|
|
198
210
|
buildRunnerConfig(workspacePath, workspaceName, systemPrompt, sessionId, resumeSessionId) {
|
|
211
|
+
const sessionLogger = this.logger.withContext({
|
|
212
|
+
sessionId,
|
|
213
|
+
platform: this.adapter.platformName,
|
|
214
|
+
});
|
|
199
215
|
// When MCP servers are configured, include their tool permissions
|
|
200
216
|
const mcpToolPermissions = this.deps.mcpConfig
|
|
201
217
|
? Object.keys(this.deps.mcpConfig).map((server) => `mcp__${server}`)
|
|
202
218
|
: [];
|
|
219
|
+
const repositoryPaths = Array.from(new Set((this.deps.chatRepositoryPaths ?? []).filter(Boolean)));
|
|
220
|
+
const allowedTools = Array.from(new Set([
|
|
221
|
+
...getReadOnlyTools(),
|
|
222
|
+
...mcpToolPermissions,
|
|
223
|
+
"Bash(git -C * pull)",
|
|
224
|
+
]));
|
|
225
|
+
sessionLogger.debug("Chat session allowed tools:", allowedTools);
|
|
203
226
|
return {
|
|
204
227
|
workingDirectory: workspacePath,
|
|
205
|
-
allowedTools
|
|
228
|
+
allowedTools,
|
|
206
229
|
disallowedTools: [],
|
|
207
|
-
allowedDirectories: [workspacePath],
|
|
230
|
+
allowedDirectories: [workspacePath, ...repositoryPaths],
|
|
208
231
|
workspaceName,
|
|
209
232
|
cyrusHome: this.deps.cyrusHome,
|
|
210
233
|
appendSystemPrompt: systemPrompt,
|
|
211
|
-
model: this.deps.defaultModel,
|
|
212
|
-
fallbackModel: this.deps.defaultFallbackModel,
|
|
213
234
|
...(this.deps.mcpConfig ? { mcpConfig: this.deps.mcpConfig } : {}),
|
|
214
235
|
...(resumeSessionId ? { resumeSessionId } : {}),
|
|
215
|
-
logger:
|
|
216
|
-
sessionId,
|
|
217
|
-
platform: this.adapter.platformName,
|
|
218
|
-
}),
|
|
236
|
+
logger: sessionLogger,
|
|
219
237
|
maxTurns: 200,
|
|
220
|
-
onMessage: (message) =>
|
|
221
|
-
this.handleClaudeMessage(sessionId, message);
|
|
222
|
-
},
|
|
238
|
+
onMessage: (message) => this.handleAgentMessage(sessionId, message),
|
|
223
239
|
onError: (error) => this.deps.onClaudeError(error),
|
|
224
240
|
};
|
|
225
241
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSessionHandler.js","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ChatSessionHandler.js","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"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"}
|
package/dist/EdgeWorker.d.ts
CHANGED
|
@@ -347,6 +347,10 @@ export declare class EdgeWorker extends EventEmitter {
|
|
|
347
347
|
* Supports legacy Claude fallback key for backwards compatibility.
|
|
348
348
|
*/
|
|
349
349
|
private getDefaultFallbackModelForRunner;
|
|
350
|
+
/**
|
|
351
|
+
* Instantiate the appropriate runner for the given type.
|
|
352
|
+
*/
|
|
353
|
+
private createRunnerForType;
|
|
350
354
|
/**
|
|
351
355
|
* Determine runner type and model using labels + issue description tags.
|
|
352
356
|
*
|
package/dist/EdgeWorker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdgeWorker.d.ts","sourceRoot":"","sources":["../src/EdgeWorker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAc3C,OAAO,KAAK,EAOX,iBAAiB,EACjB,gBAAgB,EAMhB,KAAK,EAIL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"EdgeWorker.d.ts","sourceRoot":"","sources":["../src/EdgeWorker.ts"],"names":[],"mappings":"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"}
|
package/dist/EdgeWorker.js
CHANGED
|
@@ -455,18 +455,27 @@ export class EdgeWorker extends EventEmitter {
|
|
|
455
455
|
* This creates a /slack-webhook endpoint that handles @mention events from Slack.
|
|
456
456
|
*/
|
|
457
457
|
registerSlackEventTransport() {
|
|
458
|
-
const
|
|
459
|
-
// Build MCP config for Slack sessions using the first repository's Linear token
|
|
458
|
+
const chatRepositoryPaths = Array.from(this.repositories.values()).map((repo) => repo.repositoryPath);
|
|
460
459
|
const firstRepo = Array.from(this.repositories.values())[0];
|
|
460
|
+
const routingContext = this.promptBuilder.generateRoutingContextForAllWorkspaces();
|
|
461
|
+
const slackAdapter = new SlackChatAdapter(chatRepositoryPaths, this.logger, { repositoryRoutingContext: routingContext });
|
|
462
|
+
// Build MCP config for Slack sessions using the first repository's Linear token
|
|
461
463
|
const mcpConfig = firstRepo ? this.buildMcpConfig(firstRepo) : undefined;
|
|
462
464
|
if (!firstRepo) {
|
|
463
465
|
this.logger.warn("No repositories configured — Slack sessions will not have access to Linear MCP tools");
|
|
464
466
|
}
|
|
465
467
|
this.chatSessionHandler = new ChatSessionHandler(slackAdapter, {
|
|
466
468
|
cyrusHome: this.cyrusHome,
|
|
467
|
-
|
|
468
|
-
defaultFallbackModel: this.config.defaultFallbackModel,
|
|
469
|
+
chatRepositoryPaths,
|
|
469
470
|
mcpConfig,
|
|
471
|
+
createRunner: (config) => {
|
|
472
|
+
const runnerType = this.runnerSelectionService.getDefaultRunner();
|
|
473
|
+
return this.createRunnerForType(runnerType, {
|
|
474
|
+
...config,
|
|
475
|
+
model: this.getDefaultModelForRunner(runnerType),
|
|
476
|
+
fallbackModel: this.getDefaultFallbackModelForRunner(runnerType),
|
|
477
|
+
});
|
|
478
|
+
},
|
|
470
479
|
onWebhookStart: () => {
|
|
471
480
|
this.activeWebhookCount++;
|
|
472
481
|
},
|
|
@@ -659,20 +668,20 @@ export class EdgeWorker extends EventEmitter {
|
|
|
659
668
|
const disallowedTools = this.buildDisallowedTools(repository);
|
|
660
669
|
const allowedDirectories = [repository.repositoryPath];
|
|
661
670
|
// Create agent runner using the standard config builder
|
|
662
|
-
const { config: runnerConfig } = this.buildAgentRunnerConfig(session, repository, githubSessionId, systemPrompt, allowedTools, allowedDirectories, disallowedTools, undefined, // resumeSessionId
|
|
671
|
+
const { config: runnerConfig, runnerType } = this.buildAgentRunnerConfig(session, repository, githubSessionId, systemPrompt, allowedTools, allowedDirectories, disallowedTools, undefined, // resumeSessionId
|
|
663
672
|
undefined, // labels
|
|
664
673
|
undefined, // issueDescription
|
|
665
674
|
200, // maxTurns
|
|
666
675
|
false, // singleTurn
|
|
667
676
|
undefined, // disallowAllTools
|
|
668
677
|
{ excludeSlackMcp: true });
|
|
669
|
-
const runner =
|
|
678
|
+
const runner = this.createRunnerForType(runnerType, runnerConfig);
|
|
670
679
|
// Store the runner in the session manager
|
|
671
680
|
agentSessionManager.addAgentRunner(githubSessionId, runner);
|
|
672
681
|
// Save persisted state
|
|
673
682
|
await this.savePersistedState();
|
|
674
683
|
this.emit("session:started", sessionKey, issueMinimal, repository.id);
|
|
675
|
-
this.logger.info(`Starting
|
|
684
|
+
this.logger.info(`Starting ${runnerType} runner for GitHub PR ${repoFullName}#${prNumber}`);
|
|
676
685
|
// Start the session and handle completion
|
|
677
686
|
try {
|
|
678
687
|
const sessionInfo = await runner.start(taskInstructions);
|
|
@@ -2012,13 +2021,7 @@ ${taskSection}`;
|
|
|
2012
2021
|
currentSubroutine?.singleTurn, // singleTurn flag
|
|
2013
2022
|
currentSubroutine?.disallowAllTools);
|
|
2014
2023
|
log.debug(`Label-based runner selection for new session: ${runnerType} (session ${sessionId})`);
|
|
2015
|
-
const runner = runnerType
|
|
2016
|
-
? new ClaudeRunner(runnerConfig)
|
|
2017
|
-
: runnerType === "gemini"
|
|
2018
|
-
? new GeminiRunner(runnerConfig)
|
|
2019
|
-
: runnerType === "codex"
|
|
2020
|
-
? new CodexRunner(runnerConfig)
|
|
2021
|
-
: new CursorRunner(runnerConfig);
|
|
2024
|
+
const runner = this.createRunnerForType(runnerType, runnerConfig);
|
|
2022
2025
|
// Store runner by comment ID
|
|
2023
2026
|
agentSessionManager.addAgentRunner(sessionId, runner);
|
|
2024
2027
|
// Save state after mapping changes
|
|
@@ -2467,6 +2470,23 @@ ${taskSection}`;
|
|
|
2467
2470
|
getDefaultFallbackModelForRunner(runnerType) {
|
|
2468
2471
|
return this.runnerSelectionService.getDefaultFallbackModelForRunner(runnerType);
|
|
2469
2472
|
}
|
|
2473
|
+
/**
|
|
2474
|
+
* Instantiate the appropriate runner for the given type.
|
|
2475
|
+
*/
|
|
2476
|
+
createRunnerForType(runnerType, config) {
|
|
2477
|
+
switch (runnerType) {
|
|
2478
|
+
case "claude":
|
|
2479
|
+
return new ClaudeRunner(config);
|
|
2480
|
+
case "gemini":
|
|
2481
|
+
return new GeminiRunner(config);
|
|
2482
|
+
case "codex":
|
|
2483
|
+
return new CodexRunner(config);
|
|
2484
|
+
case "cursor":
|
|
2485
|
+
return new CursorRunner(config);
|
|
2486
|
+
default:
|
|
2487
|
+
throw new Error(`Unknown runner type: ${runnerType}`);
|
|
2488
|
+
}
|
|
2489
|
+
}
|
|
2470
2490
|
/**
|
|
2471
2491
|
* Determine runner type and model using labels + issue description tags.
|
|
2472
2492
|
*
|
|
@@ -3822,13 +3842,7 @@ ${input.userComment}
|
|
|
3822
3842
|
currentSubroutine?.singleTurn, // singleTurn flag
|
|
3823
3843
|
currentSubroutine?.disallowAllTools);
|
|
3824
3844
|
// Create the appropriate runner based on session state
|
|
3825
|
-
const runner = runnerType
|
|
3826
|
-
? new ClaudeRunner(runnerConfig)
|
|
3827
|
-
: runnerType === "gemini"
|
|
3828
|
-
? new GeminiRunner(runnerConfig)
|
|
3829
|
-
: runnerType === "codex"
|
|
3830
|
-
? new CodexRunner(runnerConfig)
|
|
3831
|
-
: new CursorRunner(runnerConfig);
|
|
3845
|
+
const runner = this.createRunnerForType(runnerType, runnerConfig);
|
|
3832
3846
|
// Store runner
|
|
3833
3847
|
agentSessionManager.addAgentRunner(sessionId, runner);
|
|
3834
3848
|
// Save state
|