@kenkaiiii/gg-boss 4.5.0 → 4.6.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.
@@ -63254,7 +63254,7 @@ function finaliseBySource(source2, message, requestId, hint) {
63254
63254
  headline: message,
63255
63255
  source: source2,
63256
63256
  message: "",
63257
- guidance: hint ?? "Only Kimi, Gemini, and MiniMax can analyze video. Switch with /model.",
63257
+ guidance: hint ?? "Only Kimi, Gemini, MiniMax, and MiMo-V2.5 can analyze video. Switch with /model.",
63258
63258
  ...requestId ? { requestId } : {}
63259
63259
  };
63260
63260
  case "ggcoder":
@@ -63880,13 +63880,14 @@ function toOpenAIMessages(messages, options) {
63880
63880
  }
63881
63881
  if (msg.role === "tool") {
63882
63882
  const isMoonshot = options?.provider === "moonshot";
63883
- const imageBlocks = [];
63883
+ const followUpMediaBlocks = [];
63884
+ let followUpHasVideo = false;
63884
63885
  for (const result of msg.content) {
63885
63886
  const text = toolResultText(result.content);
63886
63887
  const images = toolResultImages(result.content);
63887
- const videos = isMoonshot ? toolResultVideos(result.content) : [];
63888
+ const videos = toolResultVideos(result.content);
63888
63889
  const hasText = text.length > 0;
63889
- if (videos.length > 0) {
63890
+ if (isMoonshot && videos.length > 0) {
63890
63891
  const parts = [];
63891
63892
  if (hasText) parts.push({ type: "text", text });
63892
63893
  const videoParts = videos.map((v) => {
@@ -63903,21 +63904,31 @@ function toOpenAIMessages(messages, options) {
63903
63904
  out.push({
63904
63905
  role: "tool",
63905
63906
  tool_call_id: remapToolCallId(result.toolCallId, idMap),
63906
- content: hasText ? text : "(see attached image)"
63907
+ content: hasText ? text : "(see attached media)"
63907
63908
  });
63908
63909
  if (images.length > 0 && options?.supportsImages !== false) {
63909
63910
  for (const img of images) {
63910
- imageBlocks.push({
63911
+ followUpMediaBlocks.push({
63911
63912
  type: "image_url",
63912
63913
  image_url: { url: `data:${img.mediaType};base64,${img.data}` }
63913
63914
  });
63914
63915
  }
63915
63916
  }
63917
+ if (!isMoonshot && videos.length > 0) {
63918
+ for (const v of videos) {
63919
+ followUpMediaBlocks.push({
63920
+ type: "video_url",
63921
+ video_url: { url: `data:${v.mediaType};base64,${v.data}` }
63922
+ });
63923
+ followUpHasVideo = true;
63924
+ }
63925
+ }
63916
63926
  }
63917
- if (imageBlocks.length > 0) {
63927
+ if (followUpMediaBlocks.length > 0) {
63928
+ const label = followUpHasVideo ? "Attached media from tool result:" : "Attached image(s) from tool result:";
63918
63929
  out.push({
63919
63930
  role: "user",
63920
- content: [{ type: "text", text: "Attached image(s) from tool result:" }, ...imageBlocks]
63931
+ content: [{ type: "text", text: label }, ...followUpMediaBlocks]
63921
63932
  });
63922
63933
  }
63923
63934
  }
@@ -67350,7 +67361,7 @@ var Agent = class {
67350
67361
  }
67351
67362
  };
67352
67363
 
67353
- // ../gg-core/dist/chunk-LLWQ3Z76.js
67364
+ // ../gg-core/dist/chunk-74Z6I5V7.js
67354
67365
  init_esm_shims();
67355
67366
  var MODELS = [
67356
67367
  // ── Anthropic ──────────────────────────────────────────
@@ -67534,9 +67545,11 @@ var MODELS = [
67534
67545
  maxThinkingLevel: "high"
67535
67546
  },
67536
67547
  // ── Xiaomi (MiMo) ──────────────────────────────────────
67548
+ // Pro series: text-only coding/agentic flagship. The legacy mimo-v2-pro
67549
+ // auto-routes to v2.5 on 2026-06-01 and is fully deprecated by 2026-06-30.
67537
67550
  {
67538
- id: "mimo-v2-pro",
67539
- name: "MiMo-V2-Pro",
67551
+ id: "mimo-v2.5-pro",
67552
+ name: "MiMo-V2.5-Pro",
67540
67553
  provider: "xiaomi",
67541
67554
  contextWindow: 1e6,
67542
67555
  maxOutputTokens: 131072,
@@ -67546,6 +67559,22 @@ var MODELS = [
67546
67559
  costTier: "medium",
67547
67560
  maxThinkingLevel: "high"
67548
67561
  },
67562
+ // Omni series: native full-modal understanding (image + audio + video).
67563
+ // Video/image ride the OpenAI-compatible transport as base64 data URLs
67564
+ // (`video_url`/`image_url`), which the shared transform already emits.
67565
+ {
67566
+ id: "mimo-v2.5",
67567
+ name: "MiMo-V2.5",
67568
+ provider: "xiaomi",
67569
+ contextWindow: 1e6,
67570
+ maxOutputTokens: 131072,
67571
+ supportsThinking: true,
67572
+ supportsImages: true,
67573
+ supportsVideo: true,
67574
+ maxVideoBytes: 36 * 1024 * 1024,
67575
+ costTier: "medium",
67576
+ maxThinkingLevel: "high"
67577
+ },
67549
67578
  // ── DeepSeek ───────────────────────────────────────────
67550
67579
  {
67551
67580
  id: "deepseek-v4-pro",
@@ -67599,7 +67628,7 @@ function getVideoByteLimit(modelId) {
67599
67628
  return model.maxVideoBytes ?? DEFAULT_MAX_VIDEO_BYTES;
67600
67629
  }
67601
67630
  function getDefaultModel(provider) {
67602
- if (provider === "xiaomi") return MODELS.find((m) => m.id === "mimo-v2-pro");
67631
+ if (provider === "xiaomi") return MODELS.find((m) => m.id === "mimo-v2.5-pro");
67603
67632
  if (provider === "openai") return MODELS.find((m) => m.id === "gpt-5.5");
67604
67633
  if (provider === "gemini") return MODELS.find((m) => m.id === "gemini-3.1-flash-lite-preview");
67605
67634
  if (provider === "glm") return MODELS.find((m) => m.id === "glm-5.1");
@@ -73342,7 +73371,8 @@ function createTools(cwd2, opts) {
73342
73371
  if (opts?.onExitPlan) {
73343
73372
  tools.push(createExitPlanTool(cwd2, opts.onExitPlan));
73344
73373
  }
73345
- return { tools, processManager };
73374
+ const rebuildReadTool = (model) => createReadTool(cwd2, readFiles, ops, opts?.onFileRead, getVideoByteLimit(model));
73375
+ return { tools, processManager, rebuildReadTool };
73346
73376
  }
73347
73377
 
73348
73378
  // ../ggcoder/dist/system-prompt.js
@@ -114401,4 +114431,4 @@ react/cjs/react-jsx-runtime.development.js:
114401
114431
  * LICENSE file in the root directory of this source tree.
114402
114432
  *)
114403
114433
  */
114404
- //# sourceMappingURL=chunk-RB5EYLWQ.js.map
114434
+ //# sourceMappingURL=chunk-5VHUIDDX.js.map