@hiper2d/ai-agents 0.14.1 → 0.15.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/dist/index.js CHANGED
@@ -1240,10 +1240,15 @@ var SupportedAiModels = {
1240
1240
  // Live 2026-08-30 (one sample each): day-2 vote 11.8s, 15-character story 56.2s.
1241
1241
  tags: ["cheap"]
1242
1242
  },
1243
- // Sakana Fugu models — OpenAI-compatible. They reason internally (and bill it as
1244
- // "orchestration" tokens), but never surface reasoning to us: responses come back with
1245
- // reasoning_tokens: 0 and no reasoning_content. So hasThinking is false — there's no
1246
- // thinking content to show and no user-facing thinking toggle. Single entry per model.
1243
+ // Sakana Fugu models — OpenAI-compatible. They reason internally, but Chat Completions
1244
+ // (what FuguAgent uses) never returns the text: reasoning_tokens are reported and billed,
1245
+ // there is no reasoning_content. So hasThinking is false. Single entry per model.
1246
+ // The Messages and Responses APIs DO return reasoning (thinking blocks with an empty
1247
+ // signature / reasoning items, some with encrypted_content), but probed 2026-09-24 on
1248
+ // fugu-max it isn't worth switching for, since we keep reasoning only to replay it: the
1249
+ // returned text is often a vague status summary or empty rather than the actual
1250
+ // reasoning, and replayed reasoning reaches the model distorted (a planted "4817" came
1251
+ // back as "4829" on both APIs, presumably rewritten by the orchestrator).
1247
1252
  //
1248
1253
  // Base `fugu` was RETIRED 2026-08-04. It was carried as a cheap everyday option at an
1249
1254
  // assumed $1/$3, but reconciling token logs against the Sakana balance showed it actually
@@ -4909,7 +4914,11 @@ ${schemaDescription}`;
4909
4914
  const params = {
4910
4915
  ...this.defaultParams,
4911
4916
  messages: openAIMessages,
4912
- ...this.thinkingParams()
4917
+ ...this.thinkingParams(),
4918
+ response_format: {
4919
+ type: "json_schema",
4920
+ json_schema: ZodSchemaConverter.toOpenAIJsonSchema(zodSchema, "response_schema")
4921
+ }
4913
4922
  };
4914
4923
  completion = await this.client.chat.completions.create(params);
4915
4924
  } catch (apiError) {