@perkos/perkos-a2a 0.12.41 → 0.12.42

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/index.d.ts CHANGED
@@ -55,6 +55,19 @@ type EmbeddedChatRunResult = {
55
55
  };
56
56
  };
57
57
  export declare function extractOpenClawChatReply(result: EmbeddedChatRunResult): string | null;
58
+ export type OpenClawRuntimeModelRoute = {
59
+ provider: string;
60
+ model: string;
61
+ source: "plugin-override" | "agent-default" | "gateway-default";
62
+ };
63
+ /**
64
+ * Resolve the provider/model route already owned by OpenClaw. The embedded
65
+ * runner in OpenClaw 2026.5.x does not resolve `agents.defaults.model` when a
66
+ * plugin calls it directly; without explicit run parameters it silently
67
+ * starts from openai/gpt-5.5. Passing this resolved route is therefore an
68
+ * adapter responsibility, not a PerkOS model choice.
69
+ */
70
+ export declare function resolveOpenClawRuntimeModelRoute(runtimeConfig: unknown, agentId: string, explicitPluginOverride?: string): OpenClawRuntimeModelRoute | null;
58
71
  export declare function runOpenClawChatTurn(api: any, config: A2APluginConfig, sessionKey: string, prompt: string, transcriptPrompt: string, logger: {
59
72
  info: (...args: unknown[]) => void;
60
73
  error: (...args: unknown[]) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAaH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAGV,WAAW,EAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,cAAc,YAAY,CAAC;AA0C3B,kEAAkE;AAClE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAItF;AAED,KAAK,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAoFpD;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CA2BT;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,OAAO,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAsCT;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,oBAAoB,EAC3B,eAAe,CAAC,EAAE,MAAM,GACvB,oBAAoB,CA+BtB;AAED,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,eAAe,EACvB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE;IAAE,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAAE,GAClF,OAAO,CAAC,IAAI,CAAC,CAsBf;AA+BD,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC,CAAC;IACH,IAAI,CAAC,EAAE;QACL,yBAAyB,CAAC,EAAE,MAAM,CAAC;QACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAChC,CAAC;CACH,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,GAAG,IAAI,CAYrF;AAQD,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,iBAAiB,GAAG,eAAe,GAAG,iBAAiB,CAAC;CACjE,CAAC;AAkBF;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,OAAO,EACtB,OAAO,EAAE,MAAM,EACf,sBAAsB,CAAC,EAAE,MAAM,GAC9B,yBAAyB,GAAG,IAAI,CAqBlC;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,eAAe,EACvB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE;IAAE,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAAE,GAClF,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgHxB;AAYD,oFAAoF;AACpF,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,WAAW,EAAE,EACvB,gBAAgB,EAAE,MAAM,GACvB,MAAM,CAWR;AA4CD,8EAA8E;AAC9E,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAe/D;AAMD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAc7E;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,GAAG,EAAE,GAAG,QAszBxC"}
package/dist/index.js CHANGED
@@ -29631,6 +29631,31 @@ function openclawAgentId(config) {
29631
29631
  const parts = sessionKey.split(":");
29632
29632
  return parts[0] === "agent" && parts[1] ? parts[1] : "main";
29633
29633
  }
29634
+ function parseOpenClawModelRef(value) {
29635
+ const modelRef = typeof value === "string" ? value.trim() : value && typeof value === "object" && typeof value.primary === "string" ? String(value.primary).trim() : "";
29636
+ const separator = modelRef.indexOf("/");
29637
+ if (separator <= 0 || separator >= modelRef.length - 1) return null;
29638
+ return {
29639
+ provider: modelRef.slice(0, separator),
29640
+ model: modelRef.slice(separator + 1)
29641
+ };
29642
+ }
29643
+ function resolveOpenClawRuntimeModelRoute(runtimeConfig, agentId, explicitPluginOverride) {
29644
+ const explicit = parseOpenClawModelRef(explicitPluginOverride);
29645
+ if (explicit) return { ...explicit, source: "plugin-override" };
29646
+ if (!runtimeConfig || typeof runtimeConfig !== "object") return null;
29647
+ const agents = runtimeConfig.agents;
29648
+ if (!agents || typeof agents !== "object") return null;
29649
+ const agentConfig = agents;
29650
+ const list = Array.isArray(agentConfig.list) ? agentConfig.list : [];
29651
+ const selectedAgent = list.find((entry) => entry && typeof entry === "object" && String(entry.id ?? "").trim() === agentId);
29652
+ const selected = parseOpenClawModelRef(selectedAgent?.model);
29653
+ if (selected) return { ...selected, source: "agent-default" };
29654
+ const defaults = agentConfig.defaults;
29655
+ if (!defaults || typeof defaults !== "object") return null;
29656
+ const gateway = parseOpenClawModelRef(defaults.model);
29657
+ return gateway ? { ...gateway, source: "gateway-default" } : null;
29658
+ }
29634
29659
  async function runOpenClawChatTurn(api, config, sessionKey, prompt, transcriptPrompt, logger) {
29635
29660
  const runEmbeddedAgent = api.runtime?.agent?.runEmbeddedAgent;
29636
29661
  const currentConfig = api.runtime?.config?.current;
@@ -29641,6 +29666,11 @@ async function runOpenClawChatTurn(api, config, sessionKey, prompt, transcriptPr
29641
29666
  }
29642
29667
  const agentId = openclawAgentId(config);
29643
29668
  const runtimeConfig = currentConfig();
29669
+ const runtimeRoute = resolveOpenClawRuntimeModelRoute(
29670
+ runtimeConfig,
29671
+ agentId,
29672
+ config.runtime?.model
29673
+ );
29644
29674
  const workspaceDir = resolveAgentWorkspaceDir(runtimeConfig, agentId);
29645
29675
  const sessionContext = readOpenClawChatSession(api, agentId, sessionKey);
29646
29676
  const entry = sessionContext.entry;
@@ -29650,8 +29680,13 @@ async function runOpenClawChatTurn(api, config, sessionKey, prompt, transcriptPr
29650
29680
  75e3,
29651
29681
  typeof configuredTimeout === "number" && configuredTimeout > 0 ? configuredTimeout : 75e3
29652
29682
  );
29653
- let selectedProvider;
29654
- let selectedModel;
29683
+ let selectedProvider = runtimeRoute?.provider;
29684
+ let selectedModel = runtimeRoute?.model;
29685
+ if (runtimeRoute) {
29686
+ logger.info(
29687
+ `[perkos-chat] using OpenClaw runtime-owned route ${runtimeRoute.provider}/${runtimeRoute.model} (${runtimeRoute.source})`
29688
+ );
29689
+ }
29655
29690
  const run = async (configOverride, retryNative = false) => runEmbeddedAgent({
29656
29691
  sessionId,
29657
29692
  sessionKey,
@@ -29670,6 +29705,7 @@ async function runOpenClawChatTurn(api, config, sessionKey, prompt, transcriptPr
29670
29705
  terminalReplyExpectation: "required",
29671
29706
  suppressLiveStreamOutput: true,
29672
29707
  cleanupBundleMcpOnRunEnd: true,
29708
+ ...selectedProvider && selectedModel ? { provider: selectedProvider, model: selectedModel } : {},
29673
29709
  onExecutionPhase: (info) => {
29674
29710
  if (info.provider?.trim()) selectedProvider = info.provider.trim();
29675
29711
  if (info.model?.trim()) selectedModel = info.model.trim();
@@ -30507,6 +30543,7 @@ export {
30507
30543
  omitUnavailableAgentHarness,
30508
30544
  openclawChatSessionKey,
30509
30545
  prepareOpenClawChatSession,
30546
+ resolveOpenClawRuntimeModelRoute,
30510
30547
  runOpenClawChatTurn,
30511
30548
  useNativeHarnessForResolvedRoute
30512
30549
  };