@northflare/runner 0.0.22 → 0.0.24

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 (36) hide show
  1. package/README.md +3 -3
  2. package/bin/northflare-runner +9 -9
  3. package/dist/components/codex-sdk-manager.d.ts +1 -0
  4. package/dist/components/codex-sdk-manager.d.ts.map +1 -1
  5. package/dist/components/codex-sdk-manager.js +14 -15
  6. package/dist/components/codex-sdk-manager.js.map +1 -1
  7. package/dist/components/message-handler-sse.d.ts +3 -0
  8. package/dist/components/message-handler-sse.d.ts.map +1 -1
  9. package/dist/components/message-handler-sse.js +156 -72
  10. package/dist/components/message-handler-sse.js.map +1 -1
  11. package/dist/components/repository-manager.js +4 -4
  12. package/dist/components/repository-manager.js.map +1 -1
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +5 -9
  15. package/dist/index.js.map +1 -1
  16. package/dist/runner-sse.d.ts +1 -0
  17. package/dist/runner-sse.d.ts.map +1 -1
  18. package/dist/runner-sse.js +13 -4
  19. package/dist/runner-sse.js.map +1 -1
  20. package/dist/services/RunnerAPIClient.d.ts +1 -0
  21. package/dist/services/RunnerAPIClient.d.ts.map +1 -1
  22. package/dist/services/RunnerAPIClient.js +6 -1
  23. package/dist/services/RunnerAPIClient.js.map +1 -1
  24. package/dist/services/SSEClient.d.ts.map +1 -1
  25. package/dist/services/SSEClient.js +22 -0
  26. package/dist/services/SSEClient.js.map +1 -1
  27. package/dist/types/index.d.ts +3 -2
  28. package/dist/types/index.d.ts.map +1 -1
  29. package/dist/types/runner-interface.d.ts +1 -0
  30. package/dist/types/runner-interface.d.ts.map +1 -1
  31. package/dist/utils/config.d.ts +7 -1
  32. package/dist/utils/config.d.ts.map +1 -1
  33. package/dist/utils/config.js +146 -46
  34. package/dist/utils/config.js.map +1 -1
  35. package/docs/claude-manager.md +1 -1
  36. package/package.json +2 -2
package/README.md CHANGED
@@ -32,7 +32,7 @@ export NORTHFLARE_RUNNER_TOKEN="your-auth-token"
32
32
 
33
33
  ```bash
34
34
  # Root directory for Git checkouts (optional, defaults to /workspace)
35
- export NORTHFLARE_WORKSPACE_DIR="/path/to/workspace/root"
35
+ export NORTHFLARE_WORKSPACE_PATH="/path/to/workspace/root"
36
36
 
37
37
  # Orchestrator API endpoint, for use when self-hosting
38
38
  export NORTHFLARE_ORCHESTRATOR_URL="https://your-orchestrator-url"
@@ -51,7 +51,7 @@ npx @northflare/runner start --config runner-config.json
51
51
  npx @northflare/runner start --debug
52
52
 
53
53
  # Override workspace directory
54
- npx @northflare/runner start --workspace-dir /custom/workspace
54
+ npx @northflare/runner start --workspace-path /custom/workspace
55
55
 
56
56
  ```
57
57
 
@@ -91,7 +91,7 @@ somewhere else:
91
91
  | Variable | Required | Description |
92
92
  | ----------------------------- | -------- | ------------------------------------------------------ |
93
93
  | `NORTHFLARE_RUNNER_TOKEN` | Yes | Authentication token from server |
94
- | `NORTHFLARE_WORKSPACE_DIR` | No | Root directory for Git checkouts (default: env-paths app data dir) |
94
+ | `NORTHFLARE_WORKSPACE_PATH` | No | Root directory for Git checkouts |
95
95
  | `NORTHFLARE_ORCHESTRATOR_URL` | Yes | Orchestrator API endpoint |
96
96
  | `NORTHFLARE_DATA_DIR` | No | Override data directory (default: env-paths app data dir) |
97
97
  | `DEBUG` | No | Enable debug logging |
@@ -73,8 +73,8 @@ const startCommand = new Command("start")
73
73
  )
74
74
  .option("--data-dir <path>", "override data directory", DEFAULT_DATA_DIR)
75
75
  .option(
76
- "--workspace-dir <path>",
77
- "workspace directory for Git checkouts (default: uses env-paths data directory)"
76
+ "--workspace-path <path>",
77
+ "workspace directory for Git checkouts"
78
78
  )
79
79
  .option("--token <token>", "authentication token")
80
80
  .option(
@@ -100,8 +100,8 @@ const startCommand = new Command("start")
100
100
  if (options.dataDir) {
101
101
  process.env.NORTHFLARE_DATA_DIR = options.dataDir;
102
102
  }
103
- if (options.workspaceDir) {
104
- process.env.NORTHFLARE_WORKSPACE_DIR = options.workspaceDir;
103
+ if (options.workspacePath) {
104
+ process.env.NORTHFLARE_WORKSPACE_PATH = options.workspacePath;
105
105
  }
106
106
  const token = options.token || command.parent?.opts().token;
107
107
  if (token) {
@@ -136,8 +136,8 @@ const validateCommand = new Command("validate")
136
136
  .option("--token <token>", "authentication token")
137
137
  .option("--data-dir <path>", "override data directory", DEFAULT_DATA_DIR)
138
138
  .option(
139
- "--workspace-dir <path>",
140
- "workspace directory for Git checkouts (default: uses env-paths data directory)"
139
+ "--workspace-path <path>",
140
+ "workspace directory for Git checkouts"
141
141
  )
142
142
  .action(async (options, command) => {
143
143
  try {
@@ -149,8 +149,8 @@ const validateCommand = new Command("validate")
149
149
  if (options.dataDir) {
150
150
  process.env.NORTHFLARE_DATA_DIR = options.dataDir;
151
151
  }
152
- if (options.workspaceDir) {
153
- process.env.NORTHFLARE_WORKSPACE_DIR = options.workspaceDir;
152
+ if (options.workspacePath) {
153
+ process.env.NORTHFLARE_WORKSPACE_PATH = options.workspacePath;
154
154
  }
155
155
 
156
156
  const { ConfigManager } = await import("../dist/utils/config.js");
@@ -160,7 +160,7 @@ const validateCommand = new Command("validate")
160
160
  console.log("Runner ID:", config.runnerId);
161
161
  console.log("ElectricSQL URL:", config.electricUrl);
162
162
  console.log("Orchestrator URL:", config.orchestratorUrl);
163
- console.log("Workspace Directory:", process.env.NORTHFLARE_WORKSPACE_DIR);
163
+ console.log("Workspace Directory:", process.env.NORTHFLARE_WORKSPACE_PATH);
164
164
  process.exit(0);
165
165
  } catch (error) {
166
166
  console.error("Configuration validation failed:", error.message);
@@ -29,6 +29,7 @@ export declare class CodexManager {
29
29
  private ensureCodexAuthHome;
30
30
  private buildPromptForMessage;
31
31
  private getInstructionPrefix;
32
+ private formatInitialMessages;
32
33
  private launchTurn;
33
34
  private streamThreadEvents;
34
35
  private abortActiveRun;
@@ -1 +1 @@
1
- {"version":3,"file":"codex-sdk-manager.d.ts","sourceRoot":"","sources":["../../src/components/codex-sdk-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-sdk-manager.d.ts","sourceRoot":"","sources":["../../src/components/codex-sdk-manager.ts"],"names":[],"mappings":"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"}
@@ -163,13 +163,6 @@ export class CodexManager {
163
163
  hasColon: context.model.includes(":"),
164
164
  modelNameAfterStrip: modelName,
165
165
  });
166
- // Convert initial messages to SDK format for proper semantic handling
167
- const sdkInitialMessages = initialMessages?.length
168
- ? initialMessages.map((msg) => ({
169
- role: msg.role || "user",
170
- content: this.normalizeToText(msg.content),
171
- }))
172
- : undefined;
173
166
  const threadOptions = {
174
167
  model: modelName,
175
168
  workingDirectory: workspacePath,
@@ -180,8 +173,6 @@ export class CodexManager {
180
173
  configOverrides,
181
174
  skipGitRepoCheck: true,
182
175
  modelReasoningEffort: codexReasoningEffort,
183
- // Pass initial messages to SDK - they will be prepended to the first turn
184
- initialMessages: sdkInitialMessages,
185
176
  };
186
177
  console.log("[CodexManager] Thread options:", JSON.stringify(threadOptions, null, 2));
187
178
  const thread = agentSessionId
@@ -193,13 +184,12 @@ export class CodexManager {
193
184
  runPromise: null,
194
185
  });
195
186
  context.conversation = thread;
196
- // Launch the first turn if we have initial messages
197
- // The SDK will prepend the initialMessages to this prompt
187
+ // Launch the first turn using the provided initial messages.
188
+ // Codex SDK doesn't support an initialMessages option, so we inline them
189
+ // into the first prompt to ensure the assistant sees the user's request.
198
190
  if (initialMessages?.length) {
199
- // Use empty string as prompt since initial messages contain the actual content
200
- // The SDK's formatInitialMessages will format them with role markers
201
- const instructions = this.getInstructionPrefix(context);
202
- const prompt = instructions.trim() || "Please proceed with the task.";
191
+ const promptText = this.formatInitialMessages(initialMessages);
192
+ const prompt = this.buildPromptForMessage(context, promptText, true);
203
193
  this.launchTurn(context, prompt);
204
194
  }
205
195
  return context;
@@ -347,6 +337,15 @@ export class CodexManager {
347
337
  }
348
338
  return parts.join("\n\n");
349
339
  }
340
+ formatInitialMessages(initialMessages) {
341
+ return initialMessages
342
+ .map((msg) => {
343
+ const role = msg.role || "user";
344
+ const content = this.normalizeToText(msg.content);
345
+ return `<${role}-message>\n${content}\n</${role}-message>`;
346
+ })
347
+ .join("\n\n");
348
+ }
350
349
  launchTurn(context, prompt) {
351
350
  const state = this.threadStates.get(context.conversationId);
352
351
  if (!state || !state.thread) {
@@ -1 +1 @@
1
- {"version":3,"file":"codex-sdk-manager.js","sourceRoot":"","sources":["../../src/components/codex-sdk-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-sdk-manager.js","sourceRoot":"","sources":["../../src/components/codex-sdk-manager.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,8 @@ export declare class MessageHandler {
25
25
  */
26
26
  private handleSSEEvent;
27
27
  private processMessage;
28
+ private handleRunnerRepoUpsert;
29
+ private handleRunnerRepoDeleted;
28
30
  private shouldProcessMessage;
29
31
  private isActionMessage;
30
32
  private acknowledgeMessage;
@@ -45,5 +47,6 @@ export declare class MessageHandler {
45
47
  private resolveAgentProvider;
46
48
  private getManagerForProvider;
47
49
  private getManagerForConversationContext;
50
+ private resolveProviderManager;
48
51
  }
49
52
  //# sourceMappingURL=message-handler-sse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-handler-sse.d.ts","sourceRoot":"","sources":["../../src/components/message-handler-sse.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAwB1D,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,YAAY,CAAkB;gBAE1B,MAAM,EAAE,UAAU;IAOxB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBhC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAerC;;OAEG;YACW,qBAAqB;IAgCnC;;OAEG;YACW,UAAU;IAqCxB;;OAEG;YACW,cAAc;YA8Bd,cAAc;IA6E5B,OAAO,CAAC,oBAAoB;IA+D5B,OAAO,CAAC,eAAe;YAWT,kBAAkB;YA6BlB,aAAa;YAKb,SAAS;YAgCT,WAAW;IAqCzB,OAAO,CAAC,gBAAgB;YAkBV,uBAAuB;YAwGvB,sBAAsB;YA2EtB,wBAAwB;YAwDxB,wBAAwB;YAgHxB,iBAAiB;YAsDjB,gBAAgB;YAiIhB,kBAAkB;YA2FlB,gBAAgB;YAuBhB,kBAAkB;YAsBlB,kBAAkB;IAgBhC,OAAO,CAAC,oBAAoB;IA0F5B,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,gCAAgC;CAgBzC"}
1
+ {"version":3,"file":"message-handler-sse.d.ts","sourceRoot":"","sources":["../../src/components/message-handler-sse.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AA0B1D,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,YAAY,CAAkB;gBAE1B,MAAM,EAAE,UAAU;IAOxB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBhC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAerC;;OAEG;YACW,qBAAqB;IAgCnC;;OAEG;YACW,UAAU;IAqCxB;;OAEG;YACW,cAAc;YAkCd,cAAc;YA6Ed,sBAAsB;YAiEtB,uBAAuB;IAwDrC,OAAO,CAAC,oBAAoB;IA+D5B,OAAO,CAAC,eAAe;YAWT,kBAAkB;YA6BlB,aAAa;YAKb,SAAS;YAgCT,WAAW;IAqCzB,OAAO,CAAC,gBAAgB;YAkBV,uBAAuB;YAwGvB,sBAAsB;YA2EtB,wBAAwB;YAwDxB,wBAAwB;YAgHxB,iBAAiB;YAsDjB,gBAAgB;YAiIhB,kBAAkB;YA2FlB,gBAAgB;YAuBhB,kBAAkB;YAsBlB,kBAAkB;IAgBhC,OAAO,CAAC,oBAAoB;IA0D5B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,gCAAgC;IAaxC,OAAO,CAAC,sBAAsB;CAa/B"}
@@ -7,6 +7,8 @@ import { statusLineManager } from '../utils/status-line.js';
7
7
  import { createLogger } from '../utils/logger.js';
8
8
  import { isDebugEnabledFor } from '../utils/debug.js';
9
9
  import { buildIncomingMessageLog, messageFlowLogger, messagesDebugEnabled, } from '../utils/message-log.js';
10
+ import fs from "fs/promises";
11
+ import { ConfigManager } from "../utils/config.js";
10
12
  const logger = createLogger("MessageHandler", "rpc");
11
13
  const sseLogger = createLogger("MessageHandler:SSE", "sse");
12
14
  // Use getters so debug state is checked at call time, not module load time
@@ -149,6 +151,12 @@ export class MessageHandler {
149
151
  else if (event.type === "connection.established") {
150
152
  sseLogger.debug("SSE connection established", event.data);
151
153
  }
154
+ else if (event.type === "runnerRepo.created" || event.type === "runnerRepo.updated") {
155
+ await this.handleRunnerRepoUpsert(event.data);
156
+ }
157
+ else if (event.type === "runnerRepo.deleted") {
158
+ await this.handleRunnerRepoDeleted(event.data);
159
+ }
152
160
  else {
153
161
  sseLogger.debug(`Received event type: ${event.type}`, event.data);
154
162
  }
@@ -216,6 +224,108 @@ export class MessageHandler {
216
224
  await this.handleError(message, error);
217
225
  }
218
226
  }
227
+ async handleRunnerRepoUpsert(eventData) {
228
+ const runnerExternalId = this.runner.getRunnerId();
229
+ if (!runnerExternalId)
230
+ return;
231
+ const targetRunnerExternalId = eventData?.runner?.id;
232
+ if (targetRunnerExternalId && targetRunnerExternalId !== runnerExternalId) {
233
+ return;
234
+ }
235
+ const runnerType = eventData?.runner?.type || "local";
236
+ if (runnerType !== "local")
237
+ return;
238
+ const runnerPath = eventData?.runnerPath;
239
+ const repoName = eventData?.name;
240
+ const repoUuid = eventData?.uuid;
241
+ if (!runnerPath || !repoName || !repoUuid)
242
+ return;
243
+ try {
244
+ await fs.mkdir(runnerPath, { recursive: true });
245
+ logger.info(`Ensured local workspace directory exists at ${runnerPath}`);
246
+ }
247
+ catch (error) {
248
+ logger.error("Failed to create workspace directory", error);
249
+ }
250
+ const configPath = this.runner.getConfigPath?.();
251
+ if (!configPath) {
252
+ sseLogger.debug("No config path available to persist runnerRepo from SSE");
253
+ return;
254
+ }
255
+ try {
256
+ const content = await fs
257
+ .readFile(configPath, "utf-8")
258
+ .catch(() => "{}");
259
+ const configFile = content ? JSON.parse(content) : {};
260
+ if (!configFile.runnerRepos || typeof configFile.runnerRepos !== "object") {
261
+ configFile.runnerRepos = {};
262
+ }
263
+ if (!Array.isArray(configFile.runnerRepos[runnerExternalId])) {
264
+ configFile.runnerRepos[runnerExternalId] = [];
265
+ }
266
+ const reposForRunner = configFile.runnerRepos[runnerExternalId];
267
+ const existingIndex = reposForRunner.findIndex((r) => r.uuid === repoUuid || r.path === runnerPath || r.name === repoName);
268
+ const updatedEntry = { uuid: repoUuid, name: repoName, path: runnerPath };
269
+ if (existingIndex >= 0) {
270
+ reposForRunner[existingIndex] = updatedEntry;
271
+ }
272
+ else {
273
+ reposForRunner.push(updatedEntry);
274
+ }
275
+ await ConfigManager.saveConfigFile(configPath, configFile);
276
+ this.runner.config_.runnerRepos = reposForRunner;
277
+ logger.info(`Persisted runnerRepo ${repoName} from SSE event`);
278
+ }
279
+ catch (error) {
280
+ logger.error("Failed to persist runnerRepo from SSE", error);
281
+ }
282
+ }
283
+ async handleRunnerRepoDeleted(eventData) {
284
+ const runnerExternalId = this.runner.getRunnerId();
285
+ if (!runnerExternalId)
286
+ return;
287
+ const targetRunnerExternalId = eventData?.runner?.id;
288
+ if (targetRunnerExternalId && targetRunnerExternalId !== runnerExternalId) {
289
+ return;
290
+ }
291
+ const runnerType = eventData?.runner?.type || "local";
292
+ if (runnerType !== "local")
293
+ return;
294
+ const repoUuid = eventData?.uuid;
295
+ const repoName = eventData?.name;
296
+ if (!repoUuid && !repoName)
297
+ return;
298
+ const configPath = this.runner.getConfigPath?.();
299
+ if (!configPath) {
300
+ sseLogger.debug("No config path available to remove runnerRepo from SSE");
301
+ return;
302
+ }
303
+ try {
304
+ const content = await fs
305
+ .readFile(configPath, "utf-8")
306
+ .catch(() => "{}");
307
+ const configFile = content ? JSON.parse(content) : {};
308
+ if (!configFile.runnerRepos || typeof configFile.runnerRepos !== "object") {
309
+ return;
310
+ }
311
+ const reposForRunner = configFile.runnerRepos[runnerExternalId];
312
+ if (!Array.isArray(reposForRunner)) {
313
+ return;
314
+ }
315
+ const filtered = reposForRunner.filter((repo) => (repoUuid ? repo.uuid !== repoUuid : true) &&
316
+ (repoName ? repo.name !== repoName : true));
317
+ if (filtered.length === reposForRunner.length) {
318
+ return;
319
+ }
320
+ configFile.runnerRepos[runnerExternalId] = filtered;
321
+ await ConfigManager.saveConfigFile(configPath, configFile);
322
+ this.runner.config_.runnerRepos = filtered;
323
+ logger.info(`Removed runnerRepo ${repoName || repoUuid} from config after deletion event`);
324
+ }
325
+ catch (error) {
326
+ logger.error("Failed to remove runnerRepo from SSE", error);
327
+ }
328
+ }
219
329
  shouldProcessMessage(message) {
220
330
  const decision = (() => {
221
331
  // Always process our own responses going to orchestrator
@@ -840,99 +950,73 @@ export class MessageHandler {
840
950
  config?.defaultModel ||
841
951
  "";
842
952
  const normalizedModel = model.toLowerCase();
843
- // First check if model has explicit provider prefix
844
- if (normalizedModel.startsWith("openrouter:") || normalizedModel.startsWith("openrouter/")) {
845
- return "openrouter";
846
- }
847
- if (normalizedModel.startsWith("groq:") || normalizedModel.startsWith("groq/")) {
848
- return "groq";
849
- }
850
- if (normalizedModel.startsWith("openai:") || normalizedModel.startsWith("openai/")) {
851
- return "openai";
852
- }
853
- if (normalizedModel.startsWith("claude:") || normalizedModel.startsWith("claude/")) {
854
- return "claude";
855
- }
856
- // Respect explicit provider, but let model-based OpenRouter routing win first
953
+ // 1) Trust explicit provider from orchestrator/config first
857
954
  const explicitProvider = conversation?.providerType ||
858
955
  conversation?.agentProviderType ||
859
956
  config?.providerType ||
860
957
  config?.agentProviderType;
861
- if (typeof explicitProvider === "string") {
862
- const normalized = explicitProvider.toLowerCase();
958
+ const normalizeProvider = (provider) => {
959
+ if (!provider || typeof provider !== "string")
960
+ return null;
961
+ const normalized = provider.toLowerCase();
962
+ if (normalized === "codex")
963
+ return "openai"; // codex alias for OpenAI
964
+ if (normalized === "openai")
965
+ return "openai";
863
966
  if (normalized === "openrouter")
864
967
  return "openrouter";
865
968
  if (normalized === "groq")
866
969
  return "groq";
867
- if (normalized === "openai")
868
- return "openai";
869
970
  if (normalized === "claude")
870
971
  return "claude";
972
+ return null;
973
+ };
974
+ const explicit = normalizeProvider(explicitProvider);
975
+ if (explicit) {
976
+ return explicit;
871
977
  }
872
- // Check for known Claude models (direct access, not via OpenRouter)
873
- const looksLikeClaude = normalizedModel.includes("claude") ||
874
- normalizedModel.includes("opus") ||
875
- normalizedModel.includes("sonnet") ||
876
- normalizedModel.includes("haiku");
877
- // Define specific OpenAI/Codex models that should use the OpenAI provider
878
- // These are models directly from OpenAI/Codex, not via OpenRouter
879
- const directOpenAIModels = [
880
- "gpt-3.5-turbo",
881
- "gpt-4",
882
- "gpt-4-turbo",
883
- "gpt-4o",
884
- "gpt-4o-mini",
885
- "gpt-5.1",
886
- "gpt-5.1-codex",
887
- "gpt-5.1-codex-max",
888
- "gpt-5.1-codex-mini",
889
- "o1",
890
- "o1-preview",
891
- "o1-mini",
892
- "codex"
893
- ];
894
- // Check if it's a direct OpenAI model (exact match or starts with the model name followed by :)
895
- const isDirectOpenAIModel = directOpenAIModels.some(directModel => {
896
- // Check for exact match or model with reasoning effort suffix (e.g., "gpt-5.1:high")
897
- return normalizedModel === directModel ||
898
- normalizedModel.startsWith(directModel + ":") ||
899
- normalizedModel.startsWith(directModel + "-") ||
900
- (directModel.startsWith("o") && /^o\d/.test(normalizedModel));
901
- });
902
- if (looksLikeClaude)
903
- return "claude";
904
- if (isDirectOpenAIModel)
905
- return "openai";
906
- // If it doesn't match known Claude or direct OpenAI models, treat as OpenRouter
907
- // This includes any remaining unknown models
908
- if (model && model.length > 0) {
978
+ // 2) Fallback to model prefix hints (non-fragile)
979
+ if (normalizedModel.startsWith("openrouter:") || normalizedModel.startsWith("openrouter/")) {
909
980
  return "openrouter";
910
981
  }
911
- return "claude";
982
+ if (normalizedModel.startsWith("groq:") || normalizedModel.startsWith("groq/")) {
983
+ return "groq";
984
+ }
985
+ if (normalizedModel.startsWith("openai:") || normalizedModel.startsWith("openai/")) {
986
+ return "openai";
987
+ }
988
+ if (normalizedModel.startsWith("claude:") || normalizedModel.startsWith("claude/")) {
989
+ return "claude";
990
+ }
991
+ // 3) No explicit provider and no prefix – treat as configuration error
992
+ throw new Error("Agent provider is required. Orchestrator must set providerType/agentProviderType or prefix the model (openai:/openrouter:/groq:/claude:).");
912
993
  }
913
994
  getManagerForProvider(provider) {
914
- const normalized = provider?.toLowerCase();
915
- if (normalized === "openrouter" || normalized === "groq") {
995
+ const manager = this.resolveProviderManager(provider?.toLowerCase());
996
+ if (manager) {
997
+ return manager;
998
+ }
999
+ throw new Error(`Unknown agent provider: ${provider || "<unset>"}`);
1000
+ }
1001
+ getManagerForConversationContext(context) {
1002
+ const manager = this.resolveProviderManager(context.provider?.toLowerCase());
1003
+ if (manager) {
1004
+ return manager;
1005
+ }
1006
+ throw new Error(`Unknown or missing agent provider on conversation context: ${context.provider || "<unset>"}`);
1007
+ }
1008
+ resolveProviderManager(provider) {
1009
+ if (provider === "openrouter" || provider === "groq") {
916
1010
  // OpenRouter now handled by Northflare Agent manager
917
1011
  return this.runner.northflareAgentManager_;
918
1012
  }
919
- if (normalized === "openai") {
1013
+ if (provider === "openai" || provider === "codex") {
920
1014
  return this.runner.codexManager_;
921
1015
  }
922
- return this.runner.claudeManager_;
923
- }
924
- getManagerForConversationContext(context) {
925
- const provider = context.provider?.toLowerCase();
926
- const model = (context.model || "").toLowerCase();
927
- // Route any OpenRouter-style model strings to the Northflare Agent, even if the
928
- // provider was previously tagged as openai/codex.
929
- const looksLikeOpenRouter = model.startsWith("openrouter:");
930
- if (provider === "openrouter" || provider === "groq" || looksLikeOpenRouter) {
931
- return this.runner.northflareAgentManager_;
1016
+ if (provider === "claude") {
1017
+ return this.runner.claudeManager_;
932
1018
  }
933
- return provider === "openai"
934
- ? this.runner.codexManager_
935
- : this.runner.claudeManager_;
1019
+ return null;
936
1020
  }
937
1021
  }
938
1022
  //# sourceMappingURL=message-handler-sse.js.map