oh-my-claudecode-opencode 0.6.4 → 0.6.5

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 (2) hide show
  1. package/dist/index.js +52 -5
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -21758,17 +21758,39 @@ ${prompt}` : prompt;
21758
21758
  };
21759
21759
  if (resolvedModel) {
21760
21760
  promptBody.model = resolvedModel;
21761
- log(`Using parent model for subagent`, { taskId, ...resolvedModel });
21761
+ log(`Using model for subagent`, { taskId, ...resolvedModel });
21762
21762
  }
21763
- const promptResp = await ctx.client.session.prompt({
21763
+ let promptResp = await ctx.client.session.prompt({
21764
21764
  path: { id: sessionID },
21765
21765
  body: promptBody,
21766
21766
  query: { directory: ctx.directory }
21767
21767
  });
21768
- const promptData = promptResp.data;
21768
+ let promptData = promptResp.data;
21769
21769
  if (promptResp.error) {
21770
21770
  throw new Error(`Prompt failed: ${JSON.stringify(promptResp.error)}`);
21771
21771
  }
21772
+ if (promptData?.info?.error) {
21773
+ const err = promptData.info.error;
21774
+ const isModelError = err.name === "ProviderModelNotFoundError" || err.name === "ProviderNotFoundError" || err.name?.includes("Model") || err.name?.includes("Provider");
21775
+ if (isModelError && parentModel && resolvedModel !== parentModel) {
21776
+ log(`[background-manager] Model error with tier-mapped model, retrying with parent session model`, {
21777
+ taskId,
21778
+ error: err.name,
21779
+ failedModel: resolvedModel,
21780
+ fallbackModel: parentModel
21781
+ });
21782
+ promptBody.model = parentModel;
21783
+ promptResp = await ctx.client.session.prompt({
21784
+ path: { id: sessionID },
21785
+ body: promptBody,
21786
+ query: { directory: ctx.directory }
21787
+ });
21788
+ promptData = promptResp.data;
21789
+ if (promptResp.error) {
21790
+ throw new Error(`Prompt failed after retry: ${JSON.stringify(promptResp.error)}`);
21791
+ }
21792
+ }
21793
+ }
21772
21794
  if (promptData?.info?.error) {
21773
21795
  const err = promptData.info.error;
21774
21796
  const errMsg = err.data?.message || err.name || "Unknown error";
@@ -34334,7 +34356,7 @@ ${prompt}`;
34334
34356
  promptBody.model = resolvedModel;
34335
34357
  log(`Using resolved model for sync agent call`, { subagent_type, ...resolvedModel });
34336
34358
  }
34337
- const promptResp = await ctx.client.session.prompt({
34359
+ let promptResp = await ctx.client.session.prompt({
34338
34360
  path: { id: sessionID },
34339
34361
  body: promptBody,
34340
34362
  query: { directory: ctx.directory }
@@ -34346,7 +34368,32 @@ ${prompt}`;
34346
34368
  error: `Prompt failed: ${JSON.stringify(promptResp.error)}`
34347
34369
  });
34348
34370
  }
34349
- const promptData = promptResp.data;
34371
+ let promptData = promptResp.data;
34372
+ if (promptData?.info?.error) {
34373
+ const err = promptData.info.error;
34374
+ const isModelError = err.name === "ProviderModelNotFoundError" || err.name === "ProviderNotFoundError" || err.name?.includes("Model") || err.name?.includes("Provider");
34375
+ if (isModelError && parentModel && resolvedModel !== parentModel) {
34376
+ log(`[call-omco-agent] Model error with tier-mapped model, retrying with parent session model`, {
34377
+ error: err.name,
34378
+ failedModel: resolvedModel,
34379
+ fallbackModel: parentModel
34380
+ });
34381
+ promptBody.model = parentModel;
34382
+ promptResp = await ctx.client.session.prompt({
34383
+ path: { id: sessionID },
34384
+ body: promptBody,
34385
+ query: { directory: ctx.directory }
34386
+ });
34387
+ if (promptResp.error) {
34388
+ return JSON.stringify({
34389
+ session_id: sessionID,
34390
+ status: "failed",
34391
+ error: `Prompt failed after retry: ${JSON.stringify(promptResp.error)}`
34392
+ });
34393
+ }
34394
+ promptData = promptResp.data;
34395
+ }
34396
+ }
34350
34397
  if (promptData?.info?.error) {
34351
34398
  const err = promptData.info.error;
34352
34399
  const errMsg = err.data?.message || err.name || "Unknown error";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-claudecode-opencode",
3
- "version": "0.6.4",
3
+ "version": "0.6.5",
4
4
  "description": "OpenCode port of oh-my-claudecode - Multi-agent orchestration plugin (omco)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",