theclawbay 0.6.6 → 0.6.7

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.
@@ -35,6 +35,22 @@ const DEFAULT_REASONING_LEVELS = [
35
35
  { effort: "high", description: "Greater reasoning depth for complex problems" },
36
36
  { effort: "xhigh", description: "Extra high reasoning depth for complex problems" },
37
37
  ];
38
+ const GPT56_MODEL_IDS = new Set(["gpt-5.6", "gpt-5.6-sol", "gpt-5.6-terra"]);
39
+ const GPT56_REASONING_LEVELS = [
40
+ ...DEFAULT_REASONING_LEVELS,
41
+ { effort: "max", description: "Maximum reasoning depth for the hardest problems" },
42
+ { effort: "ultra", description: "Maximum reasoning with automatic task delegation" },
43
+ ];
44
+ const GPT56_FAST_SERVICE_TIERS = [
45
+ {
46
+ id: "priority",
47
+ name: "Fast",
48
+ description: "1.5x speed, increased usage",
49
+ },
50
+ ];
51
+ const GPT56_SOL_AVAILABILITY_NUX = {
52
+ message: "GPT-5.6 Sol is the flagship tier for complex coding, research, and ambitious agentic work.",
53
+ };
38
54
  const FALLBACK_BASE_INSTRUCTIONS = `You are Codex, a coding agent based on GPT-5. You and the user share the same workspace and collaborate to achieve the user's goals.
39
55
 
40
56
  ## General
@@ -42,6 +58,14 @@ const FALLBACK_BASE_INSTRUCTIONS = `You are Codex, a coding agent based on GPT-5
42
58
  - Prefer rg or rg --files for search when available.
43
59
  - Make safe, minimal code changes that preserve user work.
44
60
  - Explain what changed and any remaining risk clearly.`;
61
+ const GPT56_MODEL_MESSAGES = {
62
+ instructions_template: `{{base_instructions}}`,
63
+ instructions_variables: {
64
+ base_instructions: FALLBACK_BASE_INSTRUCTIONS,
65
+ personality_default: "",
66
+ },
67
+ approvals: null,
68
+ };
45
69
  function objectRecordOr(value) {
46
70
  if (typeof value === "object" && value !== null && !Array.isArray(value)) {
47
71
  return value;
@@ -176,6 +200,37 @@ function applySeedMarker(model) {
176
200
  function seedDescription(modelId) {
177
201
  return SUPPORTED_MODEL_CONFIG.get(modelId)?.note ?? "The Claw Bay model.";
178
202
  }
203
+ function applyGpt56CodexMetadata(seed, modelId) {
204
+ if (!GPT56_MODEL_IDS.has(modelId))
205
+ return;
206
+ seed.minimal_client_version = "0.144.0";
207
+ seed.supported_reasoning_levels = cloneJson(GPT56_REASONING_LEVELS);
208
+ seed.default_reasoning_level = modelId === "gpt-5.6-terra" ? "medium" : "low";
209
+ seed.apply_patch_tool_type = "freeform";
210
+ seed.web_search_tool_type = "text_and_image";
211
+ seed.supports_image_detail_original = true;
212
+ seed.tool_mode = "code_mode_only";
213
+ seed.multi_agent_version = "v2";
214
+ seed.use_responses_lite = true;
215
+ seed.include_skills_usage_instructions = false;
216
+ seed.auto_review_model_override = null;
217
+ seed.comp_hash = "3000";
218
+ seed.reasoning_summary_format = "experimental";
219
+ seed.default_reasoning_summary = "none";
220
+ seed.upgrade = null;
221
+ seed.experimental_supported_tools = [];
222
+ seed.supports_search_tool = true;
223
+ seed.default_service_tier = null;
224
+ seed.service_tiers = cloneJson(GPT56_FAST_SERVICE_TIERS);
225
+ seed.additional_speed_tiers = ["fast"];
226
+ seed.model_messages = cloneJson(GPT56_MODEL_MESSAGES);
227
+ if (modelId === "gpt-5.6" || modelId === "gpt-5.6-sol") {
228
+ seed.availability_nux = cloneJson(GPT56_SOL_AVAILABILITY_NUX);
229
+ }
230
+ else {
231
+ seed.availability_nux = null;
232
+ }
233
+ }
179
234
  function normalizeSeedModel(template, modelId) {
180
235
  const modelConfig = SUPPORTED_MODEL_CONFIG.get(modelId);
181
236
  const seed = applySeedMarker(template ?? {});
@@ -244,6 +299,7 @@ function normalizeSeedModel(template, modelId) {
244
299
  if (typeof seed.prefer_websockets !== "boolean") {
245
300
  seed.prefer_websockets = true;
246
301
  }
302
+ applyGpt56CodexMetadata(seed, modelId);
247
303
  return seed;
248
304
  }
249
305
  function buildSeedModel(models, modelId) {
@@ -445,8 +501,17 @@ async function ensureCodexModelCacheHasGpt54(params) {
445
501
  if (existingModel) {
446
502
  const currentFingerprint = fingerprintModel(existingModel);
447
503
  if (hasSeedMarker(existingModel)) {
448
- if (!trackedFingerprint || trackedFingerprint !== currentFingerprint) {
449
- nextState[modelId] = currentFingerprint;
504
+ const normalizedSeed = normalizeSeedModel(existingModel, modelId);
505
+ const normalizedFingerprint = fingerprintModel(normalizedSeed);
506
+ if (normalizedFingerprint !== currentFingerprint) {
507
+ doc.models = doc.models.map((entry) => (entry.slug === modelId ? normalizedSeed : entry));
508
+ nextState[modelId] = normalizedFingerprint;
509
+ changed = true;
510
+ stateChanged = true;
511
+ continue;
512
+ }
513
+ if (!trackedFingerprint || trackedFingerprint !== normalizedFingerprint) {
514
+ nextState[modelId] = normalizedFingerprint;
450
515
  stateChanged = true;
451
516
  }
452
517
  continue;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "theclawbay",
3
- "version": "0.6.6",
3
+ "version": "0.6.7",
4
4
  "description": "CLI for connecting Codex, Hermes Agent, Gemini-compatible apps, Continue, Cline, GSD, OpenClaw, OpenCode, Kilo, Roo Code, Aider, experimental Trae, and experimental Zo to The Claw Bay.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -138,9 +138,9 @@
138
138
  "note": "Lowest-cost large-context DeepSeek model for fast iterations.",
139
139
  "tone": "sea",
140
140
  "provider": "deepseek",
141
- "inputPer1M": 0.14,
142
- "cachedInputPer1M": 0.0028,
143
- "outputPer1M": 0.28,
141
+ "inputPer1M": 0.043,
142
+ "cachedInputPer1M": 0.001,
143
+ "outputPer1M": 0.085,
144
144
  "contextWindow": 1000000
145
145
  },
146
146
  {
@@ -149,33 +149,11 @@
149
149
  "note": "Flagship large-context DeepSeek model for heavier reasoning work.",
150
150
  "tone": "coral",
151
151
  "provider": "deepseek",
152
- "inputPer1M": 0.435,
153
- "cachedInputPer1M": 0.003625,
154
- "outputPer1M": 0.87,
155
- "contextWindow": 1000000
156
- },
157
- {
158
- "id": "deepseek-v4-pro-budget",
159
- "label": "DeepSeek V4 Pro Budget",
160
- "note": "Lower-cost DeepSeek V4 Pro route for high-volume reasoning work.",
161
- "tone": "coral",
162
- "provider": "deepseek",
163
152
  "inputPer1M": 0.127,
164
153
  "cachedInputPer1M": 0.002,
165
154
  "outputPer1M": 0.254,
166
155
  "contextWindow": 1000000
167
156
  },
168
- {
169
- "id": "deepseek-v4-flash-budget",
170
- "label": "DeepSeek V4 Flash Budget",
171
- "note": "Lower-cost DeepSeek V4 Flash route for high-volume fast iterations.",
172
- "tone": "sea",
173
- "provider": "deepseek",
174
- "inputPer1M": 0.043,
175
- "cachedInputPer1M": 0.001,
176
- "outputPer1M": 0.085,
177
- "contextWindow": 1000000
178
- },
179
157
  {
180
158
  "id": "deepseek-v4-pro-lightning",
181
159
  "label": "DeepSeek V4 Pro Lightning",