@polderlabs/bizar 3.9.0 → 3.9.1

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/config/AGENTS.md CHANGED
@@ -102,6 +102,7 @@ BizarHarness ships always-on coding rules organized by language and concern. All
102
102
  | `rules/python.md` | Python conventions |
103
103
  | `rules/git.md` | Git and commit conventions |
104
104
  | `rules/testing.md` | Test methodology and coverage |
105
+ | `rules/thinking.md` | All agents — concise thinking behavior |
105
106
 
106
107
  ### How to Use
107
108
 
@@ -110,6 +111,10 @@ BizarHarness ships always-on coding rules organized by language and concern. All
110
111
  3. All implementation agents (Heimdall, Thor, Tyr, Vidarr) MUST follow these rules
111
112
  4. Agents MAY propose additions to the rule files when patterns are discovered
112
113
 
114
+ ### Thinking Rule
115
+
116
+ For agents with `reasoning: true` + `variant: "high"`, follow `rules/thinking.md` strictly. Cap reasoning at 2–4 sentences. No informal self-talk, no "what if" loops, no mid-thought self-correction. Think once, decide, act.
117
+
113
118
  ---
114
119
 
115
120
  ## Model Routing & Agents
@@ -184,6 +184,9 @@ You may be dispatched alongside sibling agents working on the same repository at
184
184
  ### Reporting
185
185
  End your final summary with: `Siblings: <list>. Conflicts: <list or "none">. Git ops performed: <list or "none">.`
186
186
 
187
+ ## Thinking style
188
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
189
+
187
190
  ---
188
191
 
189
192
  ## Always-On Behavior Baseline
@@ -124,6 +124,9 @@ Be professional and concise. Do not write long essays for every action.
124
124
  - One sentence of context beats three paragraphs of preamble.
125
125
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
126
126
 
127
+ ## Thinking style
128
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
129
+
127
130
  ## Parallel Execution
128
131
 
129
132
  You may be invoked alongside other audit agents (parallel reviews of different files) or alongside implementation agents. The shared `AGENTS.md` baseline rules apply.
@@ -111,6 +111,10 @@ The injected message you will see is exactly one of:
111
111
  - `[loop guard: 8 identical calls to <tool>]. Consider using the task tool to report back to your parent with what you've learned and what you need.`
112
112
  - An error containing: `Loop protection: 12 identical calls to <tool>. Use task to escalate.`
113
113
 
114
+
115
+ ## Thinking style
116
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
117
+
114
118
  ---
115
119
 
116
120
  ## Always-On Behavior Baseline
@@ -169,6 +169,9 @@ Be professional and concise. Do not write long essays for every action.
169
169
  - One sentence of context beats three paragraphs of preamble.
170
170
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
171
171
 
172
+ ## Thinking style
173
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
174
+
172
175
  ## Parallel Execution
173
176
 
174
177
  You may be dispatched alongside sibling agents working on the same repository at the same time. The shared `AGENTS.md` baseline contains the universal rules — read those first. This section adds role-specific guidance.
@@ -144,6 +144,9 @@ Be professional and concise. Do not write long essays for every action.
144
144
  - One sentence of context beats three paragraphs of preamble.
145
145
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
146
146
 
147
+ ## Thinking style
148
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
149
+
147
150
  ## PR Review Mode
148
151
 
149
152
  When dispatched for a `/pr-review`:
@@ -127,6 +127,9 @@ Be professional and concise. Do not write long essays for every action.
127
127
  - One sentence of context beats three paragraphs of preamble.
128
128
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
129
129
 
130
+ ## Thinking style
131
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
132
+
130
133
  ## Parallel Execution
131
134
 
132
135
  You may be dispatched alongside sibling agents working on the same repository at the same time. The shared `AGENTS.md` baseline contains the universal rules — read those first. This section adds role-specific guidance.
@@ -90,6 +90,10 @@ The injected message you will see is exactly one of:
90
90
  - `[loop guard: 8 identical calls to <tool>]. Consider using the task tool to report back to your parent with what you've learned and what you need.`
91
91
  - An error containing: `Loop protection: 12 identical calls to <tool>. Use task to escalate.`
92
92
 
93
+
94
+ ## Thinking style
95
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
96
+
93
97
  ---
94
98
 
95
99
  ## Always-On Behavior Baseline
@@ -50,6 +50,9 @@ If `semble` is not on `$PATH`, use `uvx --from "semble[mcp]" semble` in its plac
50
50
 
51
51
  ---
52
52
 
53
+ ## Thinking style
54
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
55
+
53
56
  ## Always-On Behavior Baseline
54
57
 
55
58
  **Follow the global baseline in `config/AGENTS.md` → "General Agent Baseline — Always-On Behavior".** It covers identity, refusal, tone, formatting, lists, user wellbeing, evenhandedness, mistakes, knowledge cutoff and research-first, MCP servers and skills, mandatory skill-read, file creation, file handling, search, copyright, harmful content, citations, images, memory privacy, execution, clarification, and communication.
@@ -109,6 +109,9 @@ Be professional and concise. Do not write long essays for every action.
109
109
  - One sentence of context beats three paragraphs of preamble.
110
110
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
111
111
 
112
+ ## Thinking style
113
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
114
+
112
115
  ## Parallel Execution
113
116
 
114
117
  You may be dispatched alongside sibling agents working on the same repository at the same time. The shared `AGENTS.md` baseline contains the universal rules — read those first. This section adds role-specific guidance.
@@ -108,6 +108,9 @@ Be professional and concise. Do not write long essays for every action.
108
108
  - One sentence of context beats three paragraphs of preamble.
109
109
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
110
110
 
111
+ ## Thinking style
112
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
113
+
111
114
  ## Parallel Execution
112
115
 
113
116
  You may be dispatched alongside sibling agents working on the same repository at the same time. The shared `AGENTS.md` baseline contains the universal rules — read those first. This section adds role-specific guidance.
@@ -112,6 +112,9 @@ Be professional and concise. Do not write long essays for every action.
112
112
  - One sentence of context beats three paragraphs of preamble.
113
113
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
114
114
 
115
+ ## Thinking style
116
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
117
+
115
118
  ## Parallel Execution
116
119
 
117
120
  You may be dispatched alongside sibling agents working on the same repository at the same time. The shared `AGENTS.md` baseline contains the universal rules — read those first. This section adds role-specific guidance.
@@ -150,6 +150,9 @@ Be professional and concise. Do not write long essays for every action.
150
150
  - One sentence of context beats three paragraphs of preamble.
151
151
  - Match the user's register: if they write briefly, reply briefly. If they want depth, they will ask.
152
152
 
153
+ ## Thinking style
154
+ Follow `config/rules/thinking.md` strictly. Be precise, concise, and decisive in reasoning. No informal self-talk, no "what if" loops, no mid-thought self-correction.
155
+
153
156
  ---
154
157
 
155
158
  ## Always-On Behavior Baseline
@@ -0,0 +1,368 @@
1
+ {
2
+ "$schema": "https://opencode.ai/config.json",
3
+ "model": "minimax/MiniMax-M3",
4
+ "small_model": "minimax/MiniMax-M2.7",
5
+ "default_agent": "odin",
6
+ "permission": "allow",
7
+ "snapshot": false,
8
+ "mcp": {
9
+ "supabase": {
10
+ "type": "remote",
11
+ "url": "https://mcp.supabase.com/mcp",
12
+ "enabled": false
13
+ },
14
+ "hindsight": {
15
+ "type": "remote",
16
+ "url": "https://memory-api.polderlabs.io/mcp",
17
+ "enabled": false,
18
+ "oauth": false,
19
+ "headers": {
20
+ "Authorization": "Bearer __HINDSIGHT_BEARER_TOKEN__",
21
+ "Content-Type": "application/json"
22
+ }
23
+ },
24
+ "semble": {
25
+ "type": "local",
26
+ "command": [
27
+ "uvx",
28
+ "--from",
29
+ "semble[mcp]",
30
+ "semble"
31
+ ],
32
+ "enabled": true
33
+ }
34
+ },
35
+ "plugin": [
36
+ ["./plugins/bizar/index.ts", {
37
+ "loopThresholdWarn": 5,
38
+ "loopThresholdEscalate": 8,
39
+ "loopThresholdBlock": 12,
40
+ "loopWindowSize": 10
41
+ }]
42
+ ],
43
+ "tools": {
44
+ "bizar_plan_action": true,
45
+ "bizar_get_plan_comments": true,
46
+ "bizar_wait_for_feedback": true,
47
+ "bizar_spawn_background": true,
48
+ "bizar_status": true,
49
+ "bizar_collect": true,
50
+ "bizar_kill": true
51
+ },
52
+ "agent": {
53
+ "odin": {
54
+ "description": "Odin — Pure router that delegates all work to subagents. Routes across Frigg (DeepSeek/Q&A), Vör (DeepSeek/clarify), Mimir (DeepSeek/research), Heimdall (DeepSeek/simple), Hermod (M2.7/git), Thor (M2.7/mid), Baldr (M2.7/design), Tyr (M3/top), Vidarr (GPT-5.5/ultra), Forseti (verifier/M3).",
55
+ "mode": "primary",
56
+ "model": "minimax/MiniMax-M3",
57
+ "color": "#6366f1",
58
+ "permission": {
59
+ "task": "allow",
60
+ "read": "allow",
61
+ "list": "allow",
62
+ "todowrite": "allow",
63
+ "webfetch": "allow",
64
+ "websearch": "allow",
65
+ "hindsight_recall": "allow",
66
+ "hindsight_retain": "allow",
67
+ "hindsight_list_banks": "allow",
68
+ "hindsight_create_bank": "allow"
69
+ }
70
+ },
71
+ "vor": {
72
+ "description": "Vör — The Questioning One. When a task is ambiguous, incomplete, or unclear, Vör asks the right clarifying questions before any work begins.",
73
+ "mode": "subagent",
74
+ "model": "opencode/deepseek-v4-flash-free",
75
+ "color": "#8b5cf6",
76
+ "permission": {
77
+ "read": "allow",
78
+ "list": "allow",
79
+ "question": "allow",
80
+ "hindsight_recall": "allow",
81
+ "hindsight_retain": "allow"
82
+ }
83
+ },
84
+ "frigg": {
85
+ "description": "Frigg — All-knowing Q&A agent. Read-only codebase questions and answers. Never edits, never writes, only answers.",
86
+ "mode": "primary",
87
+ "model": "opencode/deepseek-v4-flash-free",
88
+ "color": "#06b6d4",
89
+ "permission": {
90
+ "read": "allow",
91
+ "list": "allow",
92
+ "glob": "allow",
93
+ "grep": "allow",
94
+ "bash": "allow",
95
+ "webfetch": "allow",
96
+ "websearch": "allow",
97
+ "hindsight_recall": "allow",
98
+ "hindsight_retain": "allow",
99
+ "question": "allow"
100
+ }
101
+ },
102
+ "quick": {
103
+ "description": "Quick — Fast single-shot tasks. No delegation, no parallel streams. Use for small edits, mechanical changes, one-shot questions. Routes to no one.",
104
+ "mode": "primary",
105
+ "model": "minimax/MiniMax-M2.7",
106
+ "color": "#22d3ee",
107
+ "permission": {
108
+ "read": "allow",
109
+ "edit": "allow",
110
+ "write": "allow",
111
+ "bash": "allow",
112
+ "glob": "allow",
113
+ "grep": "allow",
114
+ "list": "allow",
115
+ "todowrite": "allow",
116
+ "webfetch": "allow",
117
+ "websearch": "allow",
118
+ "task": "deny",
119
+ "hindsight_recall": "allow",
120
+ "hindsight_retain": "allow"
121
+ }
122
+ },
123
+ "mimir": {
124
+ "description": "Mimir — Dedicated research and codebase exploration agent. Uses Semble as primary search tool. Deep codebase analysis, pattern discovery, and documentation research.",
125
+ "mode": "subagent",
126
+ "model": "opencode/deepseek-v4-flash-free",
127
+ "color": "#0ea5e9",
128
+ "permission": {
129
+ "read": "allow",
130
+ "write": "allow",
131
+ "edit": "allow",
132
+ "bash": "allow",
133
+ "glob": "allow",
134
+ "grep": "allow",
135
+ "list": "allow",
136
+ "webfetch": "allow",
137
+ "websearch": "allow",
138
+ "todowrite": "allow",
139
+ "hindsight_recall": "allow",
140
+ "hindsight_retain": "allow"
141
+ }
142
+ },
143
+ "heimdall": {
144
+ "description": "Heimdall — Simple, routine, and deterministic tasks using DeepSeek. Quick edits, mechanical work, file operations. The ever-watchful guardian.",
145
+ "mode": "subagent",
146
+ "model": "opencode/deepseek-v4-flash-free",
147
+ "color": "#10b981",
148
+ "permission": {
149
+ "read": "allow",
150
+ "edit": "allow",
151
+ "bash": "allow",
152
+ "glob": "allow",
153
+ "grep": "allow",
154
+ "list": "allow",
155
+ "todowrite": "allow",
156
+ "webfetch": "allow",
157
+ "websearch": "allow",
158
+ "hindsight_recall": "allow",
159
+ "hindsight_retain": "allow"
160
+ }
161
+ },
162
+ "hermod": {
163
+ "description": "Hermod — Git and GitHub operations specialist using MiniMax M2.7. Branching, commits, PRs, merge/rebase, conflict resolution, CI/CD, releases, gh CLI.",
164
+ "mode": "subagent",
165
+ "model": "minimax/MiniMax-M2.7",
166
+ "color": "#06b6d4",
167
+ "permission": {
168
+ "read": "allow",
169
+ "edit": "allow",
170
+ "bash": "allow",
171
+ "glob": "allow",
172
+ "grep": "allow",
173
+ "list": "allow",
174
+ "webfetch": "allow",
175
+ "websearch": "allow",
176
+ "hindsight_recall": "allow",
177
+ "hindsight_retain": "allow"
178
+ }
179
+ },
180
+ "thor": {
181
+ "description": "Thor — Handles medium-complexity tasks using MiniMax M2.7 from minimax.io. Strong and reliable, cheaper than Tyr but more capable than Heimdall.",
182
+ "mode": "subagent",
183
+ "model": "minimax/MiniMax-M2.7",
184
+ "color": "#a855f7",
185
+ "permission": {
186
+ "read": "allow",
187
+ "edit": "allow",
188
+ "bash": "allow",
189
+ "glob": "allow",
190
+ "grep": "allow",
191
+ "list": "allow",
192
+ "todowrite": "allow",
193
+ "webfetch": "allow",
194
+ "websearch": "allow",
195
+ "hindsight_recall": "allow",
196
+ "hindsight_retain": "allow"
197
+ }
198
+ },
199
+ "baldr": {
200
+ "description": "Baldr — UI/UX design system specialist. Creates DESIGN.md files using Google's design.md standard. Focuses on visual consistency, usability, accessibility, and design tokens.",
201
+ "mode": "subagent",
202
+ "model": "minimax/MiniMax-M2.7",
203
+ "color": "#ec4899",
204
+ "permission": {
205
+ "read": "allow",
206
+ "edit": "allow",
207
+ "bash": "allow",
208
+ "glob": "allow",
209
+ "grep": "allow",
210
+ "list": "allow",
211
+ "todowrite": "allow",
212
+ "webfetch": "allow",
213
+ "websearch": "allow",
214
+ "hindsight_recall": "allow",
215
+ "hindsight_retain": "allow"
216
+ }
217
+ },
218
+ "tyr": {
219
+ "description": "Tyr — Handles the most complex implementation, debugging, and architectural work using MiniMax M3 via minimax.io. Unmatched wisdom for the hardest problems.",
220
+ "mode": "subagent",
221
+ "model": "minimax/MiniMax-M3",
222
+ "color": "#f59e0b",
223
+ "permission": {
224
+ "read": "allow",
225
+ "edit": "allow",
226
+ "bash": "allow",
227
+ "glob": "allow",
228
+ "grep": "allow",
229
+ "list": "allow",
230
+ "todowrite": "allow",
231
+ "webfetch": "allow",
232
+ "websearch": "allow",
233
+ "hindsight_recall": "allow",
234
+ "hindsight_retain": "allow"
235
+ }
236
+ },
237
+ "vidarr": {
238
+ "description": "Vidarr — The ultimate fallback using GPT-5.5 via OpenAI ChatGPT subscription. For the hardest problems when debugging stalls or nothing else works. Use sparingly — highest cost.",
239
+ "mode": "subagent",
240
+ "model": "openai/gpt-5.5",
241
+ "color": "#dc2626",
242
+ "permission": {
243
+ "read": "allow",
244
+ "edit": "allow",
245
+ "bash": "allow",
246
+ "glob": "allow",
247
+ "grep": "allow",
248
+ "list": "allow",
249
+ "todowrite": "allow",
250
+ "webfetch": "allow",
251
+ "websearch": "allow",
252
+ "hindsight_recall": "allow",
253
+ "hindsight_retain": "allow"
254
+ }
255
+ },
256
+ "forseti": {
257
+ "description": "Forseti — Audits, criticizes, and corrects implementation plans before execution using MiniMax M3. No write permissions — review only.",
258
+ "mode": "subagent",
259
+ "model": "minimax/MiniMax-M3",
260
+ "color": "#ef4444",
261
+ "permission": {
262
+ "read": "allow",
263
+ "edit": "deny",
264
+ "bash": "allow",
265
+ "glob": "allow",
266
+ "grep": "allow",
267
+ "list": "allow",
268
+ "todowrite": "allow",
269
+ "question": "allow",
270
+ "webfetch": "allow",
271
+ "websearch": "allow",
272
+ "hindsight_recall": "allow",
273
+ "hindsight_retain": "allow"
274
+ }
275
+ },
276
+ "semble-search": {
277
+ "description": "Code search agent for exploring any codebase. Use for finding code by intent, locating implementations, understanding how something works.",
278
+ "mode": "subagent",
279
+ "model": "opencode/deepseek-v4-flash-free",
280
+ "color": "#0ea5e9",
281
+ "permission": {
282
+ "bash": "allow",
283
+ "read": "allow",
284
+ "glob": "allow",
285
+ "grep": "allow",
286
+ "list": "allow"
287
+ }
288
+ }
289
+ },
290
+ "command": {
291
+ "audit": {
292
+ "description": "Run bizar audit to scan agent configuration for security issues.",
293
+ "agent": "forseti",
294
+ "template": "commands/audit.md"
295
+ },
296
+ "explain": {
297
+ "description": "Route to @frigg for read-only codebase Q&A. She will explore the code and answer without making any changes.",
298
+ "agent": "frigg",
299
+ "template": "commands/explain.md"
300
+ },
301
+ "init": {
302
+ "description": "Run bizar init to detect project stack, install relevant skills, and create .bizar/PROJECT.md.",
303
+ "agent": "heimdall",
304
+ "template": "commands/init.md"
305
+ },
306
+ "learn": {
307
+ "description": "Route to @heimdall. Extract patterns from the current session and append to .bizar/AGENTS_SELF_IMPROVEMENT.md.",
308
+ "agent": "heimdall",
309
+ "template": "commands/learn.md"
310
+ },
311
+ "plan": {
312
+ "description": "Open the Bizar visual plan canvas or manage existing plans.",
313
+ "agent": "odin",
314
+ "template": "commands/plan.md"
315
+ },
316
+ "pr-review": {
317
+ "description": "Route to @hermod for PR review mode. Launches @mimir (research) and @forseti (audit) in parallel, then posts the combined review as a PR comment.",
318
+ "agent": "hermod",
319
+ "template": "commands/pr-review.md"
320
+ },
321
+ "tailscale-serve": {
322
+ "description": "Authenticate Tailscale Serve and expose a local port on your tailnet.",
323
+ "agent": "heimdall",
324
+ "template": "commands/tailscale-serve.md"
325
+ },
326
+ "visual-plan": {
327
+ "description": "Toggle the Bizar visual plan canvas on or off, or check its current status.",
328
+ "agent": "odin",
329
+ "template": "commands/visual-plan.md"
330
+ },
331
+ "bizar": {
332
+ "description": "Bizar Plugin Menu — route to the right Bizar action based on the user's request.",
333
+ "agent": "odin",
334
+ "template": "commands/bizar.md",
335
+ "arguments": "$ARGUMENTS"
336
+ }
337
+ },
338
+ "provider": {
339
+ "minimax": {
340
+ "models": {
341
+ "MiniMax-M3": {
342
+ "interleaved": { "field": "reasoning_details" },
343
+ "reasoning": true
344
+ },
345
+ "MiniMax-M2.7": {
346
+ "interleaved": { "field": "reasoning_details" },
347
+ "reasoning": true
348
+ }
349
+ }
350
+ },
351
+ "openrouter": {
352
+ "models": {
353
+ "minimax/minimax-m3": {
354
+ "interleaved": { "field": "reasoning_details" },
355
+ "reasoning": true
356
+ },
357
+ "minimax/minimax-m2.7": {
358
+ "interleaved": { "field": "reasoning_details" },
359
+ "reasoning": true
360
+ },
361
+ "minimax/owl-alpha": {
362
+ "interleaved": { "field": "reasoning_details" },
363
+ "reasoning": true
364
+ }
365
+ }
366
+ }
367
+ }
368
+ }
@@ -319,5 +319,35 @@
319
319
  "agent": "odin",
320
320
  "template": "commands-bizar/bizar.md\n\n$ARGUMENTS"
321
321
  }
322
+ },
323
+ "provider": {
324
+ "minimax": {
325
+ "models": {
326
+ "MiniMax-M3": {
327
+ "interleaved": { "field": "reasoning_details" },
328
+ "reasoning": true
329
+ },
330
+ "MiniMax-M2.7": {
331
+ "interleaved": { "field": "reasoning_details" },
332
+ "reasoning": true
333
+ }
334
+ }
335
+ },
336
+ "openrouter": {
337
+ "models": {
338
+ "minimax/minimax-m3": {
339
+ "interleaved": { "field": "reasoning_details" },
340
+ "reasoning": true
341
+ },
342
+ "minimax/minimax-m2.7": {
343
+ "interleaved": { "field": "reasoning_details" },
344
+ "reasoning": true
345
+ },
346
+ "minimax/owl-alpha": {
347
+ "interleaved": { "field": "reasoning_details" },
348
+ "reasoning": true
349
+ }
350
+ }
351
+ }
322
352
  }
323
353
  }
@@ -0,0 +1,56 @@
1
+ # Concise Thinking Rule
2
+
3
+ ## The Problem
4
+
5
+ Models with `reasoning: true` + `variant: "high"` produce unbounded self-talk: "oh but what if this... actually let me reconsider... wait..." This is verbose, indecisive, and costly.
6
+
7
+ ## The Rule
8
+
9
+ **Think in 2–4 sentences. One-shot. No loops.**
10
+
11
+ ### Structure
12
+
13
+ Every reasoning output must follow this shape:
14
+
15
+ ```
16
+ [Premise — what I know] → [Decision — what I'm doing] → [Next step]
17
+ ```
18
+
19
+ No hedging. No "but what if". No mid-thought self-correction.
20
+
21
+ ### Hard Bans
22
+
23
+ Never use these phrases in thinking output:
24
+ - "oh but what if..."
25
+ - "actually..."
26
+ - "let me think..."
27
+ - "wait..."
28
+ - "hmm..."
29
+ - "I wonder..."
30
+ - "on second thought..."
31
+ - "alternatively..."
32
+
33
+ ### One-Shot Pattern
34
+
35
+ Think once. Decide. Act. Move on.
36
+
37
+ **Forbidden patterns:**
38
+ - "Option A... no wait Option B... actually let's try C..."
39
+ - "I considered X, but then I realized Y, so maybe Z..."
40
+ - "Let me reconsider..." followed by another reconsideration
41
+
42
+ ### What Thinking Should Look Like
43
+
44
+ **BAD:**
45
+ > "The file is missing a semicolon. Oh but what if it's actually a parsing issue? Let me think... Actually, looking more carefully, the real problem is the import statement is wrong. Wait, I should also check if the export is correct. Actually let me try fixing the import first..."
46
+
47
+ **GOOD:**
48
+ > "The import path is wrong — `../utils` should be `./utils`. Fixing the path resolves the missing export error. Next: re-run the build."
49
+
50
+ ### Length Cap
51
+
52
+ Maximum **80 words** of thinking output before the first tool call or response. If you cannot decide in 80 words, state the decision you reached and proceed.
53
+
54
+ ### Enforcement
55
+
56
+ This rule is injected into every model that supports `reasoning: true`. Non-compliance produces verbose, unhelpful output and is a correctness failure.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polderlabs/bizar",
3
- "version": "3.9.0",
3
+ "version": "3.9.1",
4
4
  "description": "Norse-pantheon multi-agent system for opencode — 13 agents across 4 cost tiers with cost-aware routing, plans, and a configurable agent harness.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -42,5 +42,13 @@
42
42
  },
43
43
  "devDependencies": {
44
44
  "typescript": "^5.0.0"
45
- }
45
+ },
46
+ "repository": {
47
+ "type": "git",
48
+ "url": "git@github.com:DrB0rk/BizarHarness.git"
49
+ },
50
+ "bugs": {
51
+ "url": "https://github.com/DrB0rk/BizarHarness/issues"
52
+ },
53
+ "homepage": "https://github.com/DrB0rk/BizarHarness#readme"
46
54
  }