@shipfox/client-agent 26.0.0 → 27.0.0
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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +15 -0
- package/dist/core/harness-policy.d.ts.map +1 -1
- package/dist/core/harness-policy.js +2 -0
- package/dist/core/harness-policy.js.map +1 -1
- package/dist/tsconfig.test.tsbuildinfo +1 -1
- package/package.json +5 -5
- package/src/core/harness-policy.ts +2 -0
- package/tsconfig.build.tsbuildinfo +1 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
$ shipfox-swc
|
|
2
|
-
Successfully compiled: 38 files with swc (
|
|
2
|
+
Successfully compiled: 38 files with swc (403.6ms)
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @shipfox/client-agent
|
|
2
2
|
|
|
3
|
+
## 27.0.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- be5fb95: Upgrade Pi to 0.84.2, refresh its supported provider catalog and flagship defaults, expose current direct Anthropic models to the Claude harness, and allow Pi workflow steps to use `thinking: max`.
|
|
8
|
+
- Updated dependencies [5ae8b3d]
|
|
9
|
+
- Updated dependencies [ed4981e]
|
|
10
|
+
- Updated dependencies [515b14c]
|
|
11
|
+
- Updated dependencies [9f898d9]
|
|
12
|
+
- Updated dependencies [be5fb95]
|
|
13
|
+
- @shipfox/client-shell@27.0.0
|
|
14
|
+
- @shipfox/api-agent-dto@17.0.0
|
|
15
|
+
- @shipfox/react-ui@2.3.1
|
|
16
|
+
- @shipfox/client-ui@27.0.0
|
|
17
|
+
|
|
3
18
|
## 26.0.0
|
|
4
19
|
|
|
5
20
|
### Patch Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness-policy.d.ts","sourceRoot":"","sources":["../../src/core/harness-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,EAAE,cAAc,EAAC,MAAM,aAAa,CAAC;AAE1F,eAAO,MAAM,eAAe,EAAE,SAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"harness-policy.d.ts","sourceRoot":"","sources":["../../src/core/harness-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,EAAE,cAAc,EAAC,MAAM,aAAa,CAAC;AAE1F,eAAO,MAAM,eAAe,EAAE,SAAgB,CAAC;AAqD/C,wBAAgB,aAAa,IAAI,SAAS,iBAAiB,EAAE,CAE5D;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,SAAS,GAAG,iBAAiB,CAI3D;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAEzF;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAIjG;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,GAC7B,OAAO,CAET;AAED,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,SAAiB,EACjB,MAAM,EACN,UAAU,GACX,EAAE;IACD,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAC5C,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,SAAS,EAAE,CAcd"}
|
|
@@ -8,6 +8,7 @@ const harnesses = [
|
|
|
8
8
|
'anthropic',
|
|
9
9
|
'ant-ling',
|
|
10
10
|
'azure-openai-responses',
|
|
11
|
+
'baseten',
|
|
11
12
|
'openai',
|
|
12
13
|
'deepseek',
|
|
13
14
|
'nvidia',
|
|
@@ -30,6 +31,7 @@ const harnesses = [
|
|
|
30
31
|
'kimi-coding',
|
|
31
32
|
'qwen-token-plan',
|
|
32
33
|
'qwen-token-plan-cn',
|
|
34
|
+
'qwen-token-plan-individual',
|
|
33
35
|
'minimax',
|
|
34
36
|
'minimax-cn',
|
|
35
37
|
'moonshotai',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/core/harness-policy.ts"],"sourcesContent":["import type {AgentModel, HarnessDescriptor, HarnessId, ProviderConfig} from './models.js';\n\nexport const DEFAULT_HARNESS: HarnessId = 'pi';\n\nconst harnesses: readonly HarnessDescriptor[] = [\n {\n id: 'pi',\n label: 'pi',\n description: 'Works with 30+ model providers',\n supportedProviderIds: [\n 'anthropic',\n 'ant-ling',\n 'azure-openai-responses',\n 'openai',\n 'deepseek',\n 'nvidia',\n 'google',\n 'mistral',\n 'groq',\n 'cerebras',\n 'cloudflare-ai-gateway',\n 'cloudflare-workers-ai',\n 'xai',\n 'openrouter',\n 'vercel-ai-gateway',\n 'zai',\n 'zai-coding-cn',\n 'opencode',\n 'opencode-go',\n 'huggingface',\n 'fireworks',\n 'together',\n 'kimi-coding',\n 'qwen-token-plan',\n 'qwen-token-plan-cn',\n 'minimax',\n 'minimax-cn',\n 'moonshotai',\n 'moonshotai-cn',\n 'xiaomi',\n 'xiaomi-token-plan-cn',\n 'xiaomi-token-plan-ams',\n 'xiaomi-token-plan-sgp',\n ],\n },\n {\n id: 'claude',\n label: 'Claude',\n description: 'Runs on your Anthropic API key',\n supportedProviderIds: ['anthropic'],\n },\n];\n\nexport function listHarnesses(): readonly HarnessDescriptor[] {\n return harnesses;\n}\n\nexport function getHarness(id: HarnessId): HarnessDescriptor {\n const harness = harnesses.find((item) => item.id === id);\n if (harness === undefined) throw new Error(`Unknown harness: ${id}`);\n return harness;\n}\n\nexport function harnessSupportsProvider(harnessId: HarnessId, providerId: string): boolean {\n return getHarness(harnessId).supportedProviderIds.includes(providerId);\n}\n\nexport function configSupportsHarness(config: ProviderConfig, harness: HarnessDescriptor): boolean {\n return config.kind === 'custom'\n ? harness.id === DEFAULT_HARNESS\n : harness.supportedProviderIds.includes(config.providerId);\n}\n\nexport function managedModelSupportsHarness(\n harnessId: HarnessId,\n model: Pick<AgentModel, 'api'>,\n): boolean {\n return harnessId === 'pi' || model.api === undefined || model.api === 'anthropic-messages';\n}\n\nexport function compatibleHarnessIds({\n isCustom,\n isManaged = false,\n models,\n providerId,\n}: {\n isCustom: boolean;\n isManaged?: boolean;\n models?: readonly Pick<AgentModel, 'api'>[];\n providerId: string;\n}): HarnessId[] {\n if (isCustom) return [DEFAULT_HARNESS];\n if (isManaged) {\n return harnesses\n .filter(\n (harness) =>\n models === undefined ||\n models.some((model) => managedModelSupportsHarness(harness.id, model)),\n )\n .map((harness) => harness.id);\n }\n return harnesses\n .filter((harness) => harness.supportedProviderIds.includes(providerId))\n .map((harness) => harness.id);\n}\n"],"names":["DEFAULT_HARNESS","harnesses","id","label","description","supportedProviderIds","listHarnesses","getHarness","harness","find","item","undefined","Error","harnessSupportsProvider","harnessId","providerId","includes","configSupportsHarness","config","kind","managedModelSupportsHarness","model","api","compatibleHarnessIds","isCustom","isManaged","models","filter","some","map"],"mappings":"AAEA,OAAO,MAAMA,kBAA6B,KAAK;AAE/C,MAAMC,YAA0C;IAC9C;QACEC,IAAI;QACJC,OAAO;QACPC,aAAa;QACbC,sBAAsB;YACpB;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACA;QACEH,IAAI;QACJC,OAAO;QACPC,aAAa;QACbC,sBAAsB;YAAC;SAAY;IACrC;CACD;AAED,OAAO,SAASC;IACd,OAAOL;AACT;AAEA,OAAO,SAASM,WAAWL,EAAa;IACtC,MAAMM,UAAUP,UAAUQ,IAAI,CAAC,CAACC,OAASA,KAAKR,EAAE,KAAKA;IACrD,IAAIM,YAAYG,WAAW,MAAM,IAAIC,MAAM,CAAC,iBAAiB,EAAEV,IAAI;IACnE,OAAOM;AACT;AAEA,OAAO,SAASK,wBAAwBC,SAAoB,EAAEC,UAAkB;IAC9E,OAAOR,WAAWO,WAAWT,oBAAoB,CAACW,QAAQ,CAACD;AAC7D;AAEA,OAAO,SAASE,sBAAsBC,MAAsB,EAAEV,OAA0B;IACtF,OAAOU,OAAOC,IAAI,KAAK,WACnBX,QAAQN,EAAE,KAAKF,kBACfQ,QAAQH,oBAAoB,CAACW,QAAQ,CAACE,OAAOH,UAAU;AAC7D;AAEA,OAAO,SAASK,4BACdN,SAAoB,EACpBO,KAA8B;IAE9B,OAAOP,cAAc,QAAQO,MAAMC,GAAG,KAAKX,aAAaU,MAAMC,GAAG,KAAK;AACxE;AAEA,OAAO,SAASC,qBAAqB,EACnCC,QAAQ,EACRC,YAAY,KAAK,EACjBC,MAAM,EACNX,UAAU,EAMX;IACC,IAAIS,UAAU,OAAO;QAACxB;KAAgB;IACtC,IAAIyB,WAAW;QACb,OAAOxB,UACJ0B,MAAM,CACL,CAACnB,UACCkB,WAAWf,aACXe,OAAOE,IAAI,CAAC,CAACP,QAAUD,4BAA4BZ,QAAQN,EAAE,EAAEmB,SAElEQ,GAAG,CAAC,CAACrB,UAAYA,QAAQN,EAAE;IAChC;IACA,OAAOD,UACJ0B,MAAM,CAAC,CAACnB,UAAYA,QAAQH,oBAAoB,CAACW,QAAQ,CAACD,aAC1Dc,GAAG,CAAC,CAACrB,UAAYA,QAAQN,EAAE;AAChC"}
|
|
1
|
+
{"version":3,"sources":["../../src/core/harness-policy.ts"],"sourcesContent":["import type {AgentModel, HarnessDescriptor, HarnessId, ProviderConfig} from './models.js';\n\nexport const DEFAULT_HARNESS: HarnessId = 'pi';\n\nconst harnesses: readonly HarnessDescriptor[] = [\n {\n id: 'pi',\n label: 'pi',\n description: 'Works with 30+ model providers',\n supportedProviderIds: [\n 'anthropic',\n 'ant-ling',\n 'azure-openai-responses',\n 'baseten',\n 'openai',\n 'deepseek',\n 'nvidia',\n 'google',\n 'mistral',\n 'groq',\n 'cerebras',\n 'cloudflare-ai-gateway',\n 'cloudflare-workers-ai',\n 'xai',\n 'openrouter',\n 'vercel-ai-gateway',\n 'zai',\n 'zai-coding-cn',\n 'opencode',\n 'opencode-go',\n 'huggingface',\n 'fireworks',\n 'together',\n 'kimi-coding',\n 'qwen-token-plan',\n 'qwen-token-plan-cn',\n 'qwen-token-plan-individual',\n 'minimax',\n 'minimax-cn',\n 'moonshotai',\n 'moonshotai-cn',\n 'xiaomi',\n 'xiaomi-token-plan-cn',\n 'xiaomi-token-plan-ams',\n 'xiaomi-token-plan-sgp',\n ],\n },\n {\n id: 'claude',\n label: 'Claude',\n description: 'Runs on your Anthropic API key',\n supportedProviderIds: ['anthropic'],\n },\n];\n\nexport function listHarnesses(): readonly HarnessDescriptor[] {\n return harnesses;\n}\n\nexport function getHarness(id: HarnessId): HarnessDescriptor {\n const harness = harnesses.find((item) => item.id === id);\n if (harness === undefined) throw new Error(`Unknown harness: ${id}`);\n return harness;\n}\n\nexport function harnessSupportsProvider(harnessId: HarnessId, providerId: string): boolean {\n return getHarness(harnessId).supportedProviderIds.includes(providerId);\n}\n\nexport function configSupportsHarness(config: ProviderConfig, harness: HarnessDescriptor): boolean {\n return config.kind === 'custom'\n ? harness.id === DEFAULT_HARNESS\n : harness.supportedProviderIds.includes(config.providerId);\n}\n\nexport function managedModelSupportsHarness(\n harnessId: HarnessId,\n model: Pick<AgentModel, 'api'>,\n): boolean {\n return harnessId === 'pi' || model.api === undefined || model.api === 'anthropic-messages';\n}\n\nexport function compatibleHarnessIds({\n isCustom,\n isManaged = false,\n models,\n providerId,\n}: {\n isCustom: boolean;\n isManaged?: boolean;\n models?: readonly Pick<AgentModel, 'api'>[];\n providerId: string;\n}): HarnessId[] {\n if (isCustom) return [DEFAULT_HARNESS];\n if (isManaged) {\n return harnesses\n .filter(\n (harness) =>\n models === undefined ||\n models.some((model) => managedModelSupportsHarness(harness.id, model)),\n )\n .map((harness) => harness.id);\n }\n return harnesses\n .filter((harness) => harness.supportedProviderIds.includes(providerId))\n .map((harness) => harness.id);\n}\n"],"names":["DEFAULT_HARNESS","harnesses","id","label","description","supportedProviderIds","listHarnesses","getHarness","harness","find","item","undefined","Error","harnessSupportsProvider","harnessId","providerId","includes","configSupportsHarness","config","kind","managedModelSupportsHarness","model","api","compatibleHarnessIds","isCustom","isManaged","models","filter","some","map"],"mappings":"AAEA,OAAO,MAAMA,kBAA6B,KAAK;AAE/C,MAAMC,YAA0C;IAC9C;QACEC,IAAI;QACJC,OAAO;QACPC,aAAa;QACbC,sBAAsB;YACpB;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACA;QACEH,IAAI;QACJC,OAAO;QACPC,aAAa;QACbC,sBAAsB;YAAC;SAAY;IACrC;CACD;AAED,OAAO,SAASC;IACd,OAAOL;AACT;AAEA,OAAO,SAASM,WAAWL,EAAa;IACtC,MAAMM,UAAUP,UAAUQ,IAAI,CAAC,CAACC,OAASA,KAAKR,EAAE,KAAKA;IACrD,IAAIM,YAAYG,WAAW,MAAM,IAAIC,MAAM,CAAC,iBAAiB,EAAEV,IAAI;IACnE,OAAOM;AACT;AAEA,OAAO,SAASK,wBAAwBC,SAAoB,EAAEC,UAAkB;IAC9E,OAAOR,WAAWO,WAAWT,oBAAoB,CAACW,QAAQ,CAACD;AAC7D;AAEA,OAAO,SAASE,sBAAsBC,MAAsB,EAAEV,OAA0B;IACtF,OAAOU,OAAOC,IAAI,KAAK,WACnBX,QAAQN,EAAE,KAAKF,kBACfQ,QAAQH,oBAAoB,CAACW,QAAQ,CAACE,OAAOH,UAAU;AAC7D;AAEA,OAAO,SAASK,4BACdN,SAAoB,EACpBO,KAA8B;IAE9B,OAAOP,cAAc,QAAQO,MAAMC,GAAG,KAAKX,aAAaU,MAAMC,GAAG,KAAK;AACxE;AAEA,OAAO,SAASC,qBAAqB,EACnCC,QAAQ,EACRC,YAAY,KAAK,EACjBC,MAAM,EACNX,UAAU,EAMX;IACC,IAAIS,UAAU,OAAO;QAACxB;KAAgB;IACtC,IAAIyB,WAAW;QACb,OAAOxB,UACJ0B,MAAM,CACL,CAACnB,UACCkB,WAAWf,aACXe,OAAOE,IAAI,CAAC,CAACP,QAAUD,4BAA4BZ,QAAQN,EAAE,EAAEmB,SAElEQ,GAAG,CAAC,CAACrB,UAAYA,QAAQN,EAAE;IAChC;IACA,OAAOD,UACJ0B,MAAM,CAAC,CAACnB,UAAYA,QAAQH,oBAAoB,CAACW,QAAQ,CAACD,aAC1Dc,GAAG,CAAC,CAACrB,UAAYA,QAAQN,EAAE;AAChC"}
|