@polderlabs/bizar 6.2.5 → 6.3.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.
Files changed (329) hide show
  1. package/.claude/CLAUDE.md +15 -0
  2. package/.claude/agents/_shared/AGENT_BASELINE.md +168 -0
  3. package/.claude/agents/_shared/CLAUDE_TOOLS.md +412 -0
  4. package/.claude/agents/_shared/SKILLS.md +109 -0
  5. package/.claude/agents/agent-browser.md +80 -0
  6. package/.claude/agents/baldr.md +49 -0
  7. package/.claude/agents/forseti.md +51 -0
  8. package/.claude/agents/frigg.md +42 -0
  9. package/.claude/agents/heimdall.md +33 -0
  10. package/.claude/agents/hermod.md +53 -0
  11. package/.claude/agents/mimir.md +49 -0
  12. package/.claude/agents/odin.md +287 -0
  13. package/.claude/agents/quick.md +34 -0
  14. package/.claude/agents/semble-search.md +50 -0
  15. package/.claude/agents/thor.md +53 -0
  16. package/.claude/agents/tyr.md +56 -0
  17. package/.claude/agents/vidarr.md +54 -0
  18. package/.claude/agents/vor.md +53 -0
  19. package/.claude/commands/audit.md +25 -0
  20. package/.claude/commands/bizar.md +22 -0
  21. package/.claude/commands/explain.md +17 -0
  22. package/.claude/commands/init.md +29 -0
  23. package/.claude/commands/learn.md +44 -0
  24. package/.claude/commands/plan.md +35 -0
  25. package/.claude/commands/plow-through.md +50 -0
  26. package/.claude/commands/pr-review.md +49 -0
  27. package/.claude/commands/setup-provider.md +96 -0
  28. package/.claude/commands/tailscale-serve.md +100 -0
  29. package/.claude/commands/team.md +132 -0
  30. package/.claude/commands/test.md +62 -0
  31. package/.claude/commands/validate.md +68 -0
  32. package/.claude/commands/visual-plan.md +24 -0
  33. package/.claude/hooks/README.md +92 -0
  34. package/.claude/hooks/posttooluse-editwrite.mjs +91 -0
  35. package/.claude/hooks/pretooluse-bash.mjs +81 -0
  36. package/.claude/hooks/pretooluse-editwrite.mjs +139 -0
  37. package/.claude/hooks/sessionend-recall.mjs +74 -0
  38. package/.claude/hooks/sessionstart-prime.mjs +80 -0
  39. package/.claude/hooks/userpromptsubmit-tag.mjs +80 -0
  40. package/.claude/settings.json +116 -0
  41. package/.claude/skills/9router/SKILL.md +80 -0
  42. package/.claude/skills/9router-chat/SKILL.md +73 -0
  43. package/.claude/skills/9router-embeddings/SKILL.md +69 -0
  44. package/.claude/skills/9router-image/SKILL.md +86 -0
  45. package/.claude/skills/9router-stt/SKILL.md +79 -0
  46. package/.claude/skills/9router-tts/SKILL.md +80 -0
  47. package/.claude/skills/9router-web-fetch/SKILL.md +99 -0
  48. package/.claude/skills/9router-web-search/SKILL.md +91 -0
  49. package/.claude/skills/bizar/README.md +9 -0
  50. package/.claude/skills/bizar/SKILL.md +450 -0
  51. package/.claude/skills/cpp-coding-standards/README.md +28 -0
  52. package/.claude/skills/cpp-coding-standards/SKILL.md +634 -0
  53. package/.claude/skills/cpp-coding-standards/references/concurrency.md +320 -0
  54. package/.claude/skills/cpp-coding-standards/references/error-handling.md +229 -0
  55. package/.claude/skills/cpp-coding-standards/references/memory-safety.md +216 -0
  56. package/.claude/skills/cpp-coding-standards/references/modern-idioms.md +282 -0
  57. package/.claude/skills/cpp-coding-standards/references/review-checklist.md +96 -0
  58. package/.claude/skills/cpp-testing/README.md +28 -0
  59. package/.claude/skills/cpp-testing/SKILL.md +304 -0
  60. package/.claude/skills/cpp-testing/references/coverage.md +370 -0
  61. package/.claude/skills/cpp-testing/references/framework-compare.md +175 -0
  62. package/.claude/skills/cpp-testing/references/host-test-for-embedded.md +499 -0
  63. package/.claude/skills/cpp-testing/references/mocking.md +364 -0
  64. package/.claude/skills/cpp-testing/references/tdd-workflow.md +308 -0
  65. package/.claude/skills/cubesandbox/SKILL.md +148 -0
  66. package/.claude/skills/embedded-esp-idf/README.md +41 -0
  67. package/.claude/skills/embedded-esp-idf/SKILL.md +439 -0
  68. package/.claude/skills/embedded-esp-idf/references/freertos-patterns.md +214 -0
  69. package/.claude/skills/embedded-esp-idf/references/host-tests.md +164 -0
  70. package/.claude/skills/embedded-esp-idf/references/idf-py-commands.md +157 -0
  71. package/.claude/skills/embedded-esp-idf/references/kconfig.md +159 -0
  72. package/.claude/skills/embedded-esp-idf/references/logging-discipline.md +118 -0
  73. package/.claude/skills/embedded-esp-idf/references/memory-and-iram.md +137 -0
  74. package/.claude/skills/embedded-esp-idf/references/nvs.md +121 -0
  75. package/.claude/skills/embedded-esp-idf/references/packed-structs.md +192 -0
  76. package/.claude/skills/embedded-esp-idf/scripts/idf_env.sh +47 -0
  77. package/.claude/skills/embedded-esp-idf/scripts/size_check.sh +77 -0
  78. package/.claude/skills/glyph/SKILL.md +163 -0
  79. package/.claude/skills/harness-engineering/SKILL.md +143 -0
  80. package/.claude/skills/lightrag/SKILL.md +81 -0
  81. package/.claude/skills/memory-protocol/SKILL.md +105 -0
  82. package/.claude/skills/obsidian/SKILL.md +306 -0
  83. package/.claude/skills/read-the-damn-docs/SKILL.md +113 -0
  84. package/.claude/skills/self-improvement/SKILL.md +64 -0
  85. package/README.md +87 -59
  86. package/bizar-dash/dist/assets/{EnvVarsSection-DXM8gRm_.js → EnvVarsSection-B58aiJiE.js} +1 -1
  87. package/bizar-dash/dist/assets/{EnvVarsSection-DXM8gRm_.js.map → EnvVarsSection-B58aiJiE.js.map} +1 -1
  88. package/bizar-dash/dist/assets/{MobileChat-BnKN_Ks_.js → MobileChat-BJrqwVDd.js} +1 -1
  89. package/bizar-dash/dist/assets/{MobileChat-BnKN_Ks_.js.map → MobileChat-BJrqwVDd.js.map} +1 -1
  90. package/bizar-dash/dist/assets/{MobileSettings-DjCPxC-Q.js → MobileSettings-CEQNJNLJ.js} +1 -1
  91. package/bizar-dash/dist/assets/{MobileSettings-DjCPxC-Q.js.map → MobileSettings-CEQNJNLJ.js.map} +1 -1
  92. package/bizar-dash/dist/assets/{main-DYiZqMrn.js → main-IvfQAOfy.js} +1 -1
  93. package/bizar-dash/dist/assets/{main-DYiZqMrn.js.map → main-IvfQAOfy.js.map} +1 -1
  94. package/bizar-dash/dist/assets/{markdown-C6mXtQxD.js → markdown-tOLaD6nm.js} +1 -1
  95. package/bizar-dash/dist/assets/{markdown-C6mXtQxD.js.map → markdown-tOLaD6nm.js.map} +1 -1
  96. package/bizar-dash/dist/assets/{mobile-CMHqtLV2.js → mobile-DYCHcUpq.js} +1 -1
  97. package/bizar-dash/dist/assets/{mobile-CMHqtLV2.js.map → mobile-DYCHcUpq.js.map} +1 -1
  98. package/bizar-dash/dist/assets/{mobile-layout-3jIhHX_p.js → mobile-layout-CBHjpwsb.js} +2 -2
  99. package/bizar-dash/dist/assets/{mobile-layout-3jIhHX_p.js.map → mobile-layout-CBHjpwsb.js.map} +1 -1
  100. package/bizar-dash/dist/assets/{useSlashCommands-DtITw8Xv.js → useSlashCommands-Bd7_FA6U.js} +2 -2
  101. package/bizar-dash/dist/assets/{useSlashCommands-DtITw8Xv.js.map → useSlashCommands-Bd7_FA6U.js.map} +1 -1
  102. package/bizar-dash/dist/assets/{vendor-CeHGtduv.js → vendor-C843201K.js} +12 -12
  103. package/bizar-dash/dist/assets/vendor-C843201K.js.map +1 -0
  104. package/bizar-dash/dist/index.html +6 -6
  105. package/bizar-dash/dist/mobile.html +2 -2
  106. package/bizar-dash/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  107. package/bizar-dash/src/server/api.mjs +4 -4
  108. package/bizar-dash/src/server/background-store.mjs +15 -16
  109. package/bizar-dash/src/server/bg-poller.mjs +25 -35
  110. package/bizar-dash/src/server/bg-retry.mjs +66 -194
  111. package/bizar-dash/src/server/claude-bg-spawner.mjs +390 -0
  112. package/bizar-dash/src/server/claude-info.mjs +412 -0
  113. package/bizar-dash/src/server/{cline-runner.mjs → claude-runner.mjs} +53 -48
  114. package/bizar-dash/src/server/claude-sdk.mjs +191 -0
  115. package/bizar-dash/src/server/providers-store.mjs +22 -49
  116. package/bizar-dash/src/server/routes/background.mjs +24 -20
  117. package/bizar-dash/src/server/routes/chat.mjs +223 -326
  118. package/bizar-dash/src/server/routes/claude-session-detail.mjs +329 -0
  119. package/bizar-dash/src/server/routes/claude-sessions.mjs +259 -0
  120. package/bizar-dash/src/server/routes/tasks.mjs +20 -28
  121. package/bizar-dash/src/server/task-delegator.mjs +76 -77
  122. package/bizar-dash/src/web/components/chat/useChat.ts +23 -27
  123. package/bizar-dash/src/web/views/Chat.tsx +8 -8
  124. package/cli/bin.mjs +17 -18
  125. package/cli/commands/claude-cmd.mjs +348 -0
  126. package/cli/commands/install.mjs +12 -11
  127. package/cli/commands/validate.mjs +252 -325
  128. package/cli/dev-link.test.mjs +11 -11
  129. package/cli/doctor.mjs +131 -213
  130. package/cli/install.mjs +33 -37
  131. package/cli/install.test.mjs +9 -9
  132. package/cli/provision-claude.mjs +893 -0
  133. package/cli/provision.mjs +224 -227
  134. package/cli/utils.mjs +72 -58
  135. package/config/AGENTS.md +28 -28
  136. package/install.sh +66 -44
  137. package/package.json +19 -11
  138. package/packages/sdk/ARCHITECTURE.md +40 -36
  139. package/packages/sdk/package-lock.json +32 -0
  140. package/packages/sdk/package.json +15 -5
  141. package/{plugins/bizar → packages/sdk}/src/dangerous-patterns.ts +6 -28
  142. package/packages/sdk/src/fingerprint.ts +0 -0
  143. package/packages/sdk/src/index.ts +38 -73
  144. package/packages/sdk/src/mcp/bin.ts +51 -0
  145. package/packages/sdk/src/mcp/server.ts +498 -0
  146. package/{plugins/bizar/src/memory-vault.ts → packages/sdk/src/memory/index.ts} +18 -21
  147. package/packages/sdk/tests/sdk.test.mjs +148 -0
  148. package/packages/sdk/vitest.config.ts +1 -1
  149. package/scripts/bh-full-e2e.mjs +166 -363
  150. package/scripts/check-deps.mjs +28 -46
  151. package/scripts/mirror-claude-md.sh +78 -0
  152. package/scripts/test-in-container.sh +31 -9
  153. package/templates/clean-state-checklist.md +3 -3
  154. package/templates/sprint-contract.md +2 -2
  155. package/bizar-dash/.bizar/activity.log +0 -3
  156. package/bizar-dash/.omx/logs/omx-2026-07-07.jsonl +0 -1
  157. package/bizar-dash/.omx/state/session.json +0 -10
  158. package/bizar-dash/bizar-design/EXPLANATION.md +0 -307
  159. package/bizar-dash/bizar-design/INSTRUCTIONS.md +0 -149
  160. package/bizar-dash/bizar-design/canvas.html +0 -281
  161. package/bizar-dash/bizar-design/canvas.html.artifact.json +0 -19
  162. package/bizar-dash/bizar-design/components.css +0 -1665
  163. package/bizar-dash/bizar-design/components.html +0 -557
  164. package/bizar-dash/bizar-design/components.html.artifact.json +0 -19
  165. package/bizar-dash/bizar-design/desktop/agents.html +0 -74
  166. package/bizar-dash/bizar-design/desktop/agents.html.artifact.json +0 -19
  167. package/bizar-dash/bizar-design/desktop/memory.html +0 -75
  168. package/bizar-dash/bizar-design/desktop/memory.html.artifact.json +0 -19
  169. package/bizar-dash/bizar-design/desktop/metrics.html +0 -63
  170. package/bizar-dash/bizar-design/desktop/metrics.html.artifact.json +0 -19
  171. package/bizar-dash/bizar-design/desktop/overview.html +0 -95
  172. package/bizar-dash/bizar-design/desktop/overview.html.artifact.json +0 -19
  173. package/bizar-dash/bizar-design/desktop/settings.html +0 -70
  174. package/bizar-dash/bizar-design/desktop/settings.html.artifact.json +0 -19
  175. package/bizar-dash/bizar-design/icons.svg +0 -44
  176. package/bizar-dash/bizar-design/index.html +0 -192
  177. package/bizar-dash/bizar-design/index.html.artifact.json +0 -19
  178. package/bizar-dash/bizar-design/mobile/agents.html +0 -29
  179. package/bizar-dash/bizar-design/mobile/agents.html.artifact.json +0 -19
  180. package/bizar-dash/bizar-design/mobile/memory.html +0 -28
  181. package/bizar-dash/bizar-design/mobile/memory.html.artifact.json +0 -19
  182. package/bizar-dash/bizar-design/mobile/metrics.html +0 -29
  183. package/bizar-dash/bizar-design/mobile/metrics.html.artifact.json +0 -19
  184. package/bizar-dash/bizar-design/mobile/overview.html +0 -33
  185. package/bizar-dash/bizar-design/mobile/overview.html.artifact.json +0 -19
  186. package/bizar-dash/bizar-design/mobile/settings.html +0 -28
  187. package/bizar-dash/bizar-design/mobile/settings.html.artifact.json +0 -19
  188. package/bizar-dash/bizar-design/prototype.js +0 -114
  189. package/bizar-dash/bizar-design/tokens.css +0 -106
  190. package/bizar-dash/dist/assets/vendor-CeHGtduv.js.map +0 -1
  191. package/bizar-dash/node_modules/.package-lock.json +0 -6
  192. package/bizar-dash/package-lock.json +0 -6
  193. package/bizar-dash/src/server/cline-sdk.mjs +0 -132
  194. package/bizar-dash/src/server/routes/cline-session-detail.mjs +0 -559
  195. package/bizar-dash/src/server/routes/cline-sessions.mjs +0 -291
  196. package/cli/commands/cline-cmd.mjs +0 -289
  197. package/cli/commands/validate.test.mjs +0 -379
  198. package/cli/doctor.test.mjs +0 -350
  199. package/config/cline.json.template +0 -342
  200. package/packages/sdk/src/client.ts +0 -188
  201. package/packages/sdk/src/cline-events.ts +0 -134
  202. package/packages/sdk/src/cline-types.ts +0 -66
  203. package/packages/sdk/src/cline.ts +0 -339
  204. package/packages/sdk/src/errors.ts +0 -129
  205. package/packages/sdk/src/events.ts +0 -153
  206. package/packages/sdk/src/types.ts +0 -176
  207. package/packages/sdk/tests/client.test.ts +0 -217
  208. package/packages/sdk/tests/errors.test.ts +0 -108
  209. package/packages/sdk/tests/events.test.ts +0 -139
  210. package/packages/sdk/tests/fixtures/fetch-mock.ts +0 -152
  211. package/packages/sdk/tests/fixtures/sse-mock.ts +0 -30
  212. package/plugins/bizar/ARCHITECTURE.md +0 -142
  213. package/plugins/bizar/CONSTRAINTS.md +0 -67
  214. package/plugins/bizar/LICENSE +0 -21
  215. package/plugins/bizar/README.md +0 -448
  216. package/plugins/bizar/index.ts +0 -925
  217. package/plugins/bizar/package.json +0 -39
  218. package/plugins/bizar/scripts/check-forbidden-imports.sh +0 -33
  219. package/plugins/bizar/src/background-state.ts +0 -641
  220. package/plugins/bizar/src/background.ts +0 -1806
  221. package/plugins/bizar/src/cline-runner.ts +0 -203
  222. package/plugins/bizar/src/clineruntime.ts +0 -227
  223. package/plugins/bizar/src/commands-impl.ts +0 -151
  224. package/plugins/bizar/src/commands.ts +0 -1799
  225. package/plugins/bizar/src/compaction.d.mts +0 -48
  226. package/plugins/bizar/src/compaction.mjs +0 -192
  227. package/plugins/bizar/src/dashboard-client.ts +0 -233
  228. package/plugins/bizar/src/event-stream.ts +0 -606
  229. package/plugins/bizar/src/fingerprint.ts +0 -120
  230. package/plugins/bizar/src/handoff.ts +0 -79
  231. package/plugins/bizar/src/hooks/memory-flush-on-compact.ts +0 -123
  232. package/plugins/bizar/src/hooks/memory-inject.ts +0 -247
  233. package/plugins/bizar/src/hooks/memory-write-on-end.ts +0 -188
  234. package/plugins/bizar/src/hooks/skill-curator.ts +0 -180
  235. package/plugins/bizar/src/http-client.ts +0 -467
  236. package/plugins/bizar/src/key-rotation.ts +0 -218
  237. package/plugins/bizar/src/logger.ts +0 -144
  238. package/plugins/bizar/src/loop-engineering.ts +0 -241
  239. package/plugins/bizar/src/loop.ts +0 -176
  240. package/plugins/bizar/src/mistake-recovery.ts +0 -98
  241. package/plugins/bizar/src/odin.ts +0 -227
  242. package/plugins/bizar/src/options.ts +0 -470
  243. package/plugins/bizar/src/plan-fs.ts +0 -323
  244. package/plugins/bizar/src/reasoning-clean.ts +0 -454
  245. package/plugins/bizar/src/report.ts +0 -178
  246. package/plugins/bizar/src/research-prompt.ts +0 -35
  247. package/plugins/bizar/src/serve-info.ts +0 -228
  248. package/plugins/bizar/src/serve.ts +0 -496
  249. package/plugins/bizar/src/settings.ts +0 -349
  250. package/plugins/bizar/src/state.ts +0 -298
  251. package/plugins/bizar/src/tool-discipline.ts +0 -105
  252. package/plugins/bizar/src/tools/agent-browser.ts +0 -315
  253. package/plugins/bizar/src/tools/bg-collect.ts +0 -131
  254. package/plugins/bizar/src/tools/bg-get-comments.ts +0 -266
  255. package/plugins/bizar/src/tools/bg-kill.ts +0 -116
  256. package/plugins/bizar/src/tools/bg-pause.ts +0 -99
  257. package/plugins/bizar/src/tools/bg-report-progress.ts +0 -115
  258. package/plugins/bizar/src/tools/bg-resume.ts +0 -94
  259. package/plugins/bizar/src/tools/bg-send-message.ts +0 -223
  260. package/plugins/bizar/src/tools/bg-spawn.ts +0 -502
  261. package/plugins/bizar/src/tools/bg-status.ts +0 -130
  262. package/plugins/bizar/src/tools/graph-query.ts +0 -278
  263. package/plugins/bizar/src/tools/loop-engineering.ts +0 -193
  264. package/plugins/bizar/src/tools/memory-list.ts +0 -43
  265. package/plugins/bizar/src/tools/memory-read.ts +0 -69
  266. package/plugins/bizar/src/tools/memory-search.ts +0 -47
  267. package/plugins/bizar/src/tools/memory-write.ts +0 -54
  268. package/plugins/bizar/src/tools/open-kb.ts +0 -198
  269. package/plugins/bizar/src/tools/plan-action.ts +0 -785
  270. package/plugins/bizar/src/tools/read-glyph-feedback.ts +0 -191
  271. package/plugins/bizar/src/tools/sandbox.ts +0 -232
  272. package/plugins/bizar/src/tools/team-spawn.ts +0 -73
  273. package/plugins/bizar/src/tools/team-status.ts +0 -76
  274. package/plugins/bizar/src/tools/wait-for-feedback.ts +0 -415
  275. package/plugins/bizar/src/trajectory.ts +0 -104
  276. package/plugins/bizar/tests/README.md +0 -99
  277. package/plugins/bizar/tests/attach-handler-bug.test.ts +0 -169
  278. package/plugins/bizar/tests/background-state.test.ts +0 -277
  279. package/plugins/bizar/tests/background.test.ts +0 -402
  280. package/plugins/bizar/tests/block.test.ts +0 -195
  281. package/plugins/bizar/tests/canonical-key-order.test.ts +0 -75
  282. package/plugins/bizar/tests/clineruntime-config.test.ts +0 -283
  283. package/plugins/bizar/tests/commands-impl.test.ts +0 -316
  284. package/plugins/bizar/tests/commands.test.ts +0 -584
  285. package/plugins/bizar/tests/compaction.test.ts +0 -264
  286. package/plugins/bizar/tests/config.test.ts +0 -128
  287. package/plugins/bizar/tests/dashboard-client.test.ts +0 -159
  288. package/plugins/bizar/tests/dispose.test.ts +0 -336
  289. package/plugins/bizar/tests/event-stream.test.ts +0 -409
  290. package/plugins/bizar/tests/event.test.ts +0 -262
  291. package/plugins/bizar/tests/fingerprint.test.ts +0 -190
  292. package/plugins/bizar/tests/http-client.test.ts +0 -404
  293. package/plugins/bizar/tests/init-helpers.test.ts +0 -203
  294. package/plugins/bizar/tests/integration/slash-command.test.ts +0 -349
  295. package/plugins/bizar/tests/integration/tool-routing.test.ts +0 -98
  296. package/plugins/bizar/tests/key-rotation.test.ts +0 -396
  297. package/plugins/bizar/tests/loop-engineering.test.ts +0 -168
  298. package/plugins/bizar/tests/loop.test.ts +0 -397
  299. package/plugins/bizar/tests/memory-write-on-end.test.ts +0 -92
  300. package/plugins/bizar/tests/mistake-recovery.test.ts +0 -116
  301. package/plugins/bizar/tests/odin.test.ts +0 -125
  302. package/plugins/bizar/tests/options.test.ts +0 -329
  303. package/plugins/bizar/tests/reasoning-clean.test.ts +0 -422
  304. package/plugins/bizar/tests/safety.test.ts +0 -281
  305. package/plugins/bizar/tests/serve.test.ts +0 -339
  306. package/plugins/bizar/tests/settings.test.ts +0 -351
  307. package/plugins/bizar/tests/stall-think.test.ts +0 -750
  308. package/plugins/bizar/tests/state.test.ts +0 -276
  309. package/plugins/bizar/tests/tool-discipline.test.ts +0 -77
  310. package/plugins/bizar/tests/tools/agent-browser.test.ts +0 -98
  311. package/plugins/bizar/tests/tools/bg-collect.test.ts +0 -337
  312. package/plugins/bizar/tests/tools/bg-get-comments.test.ts +0 -485
  313. package/plugins/bizar/tests/tools/bg-kill.test.ts +0 -235
  314. package/plugins/bizar/tests/tools/bg-pause.test.ts +0 -61
  315. package/plugins/bizar/tests/tools/bg-report-progress.test.ts +0 -79
  316. package/plugins/bizar/tests/tools/bg-resume.test.ts +0 -40
  317. package/plugins/bizar/tests/tools/bg-send-message.test.ts +0 -116
  318. package/plugins/bizar/tests/tools/bg-spawn-delegation.test.ts +0 -147
  319. package/plugins/bizar/tests/tools/bg-spawn-http.test.ts +0 -233
  320. package/plugins/bizar/tests/tools/bg-spawn.test.ts +0 -311
  321. package/plugins/bizar/tests/tools/bg-status.test.ts +0 -217
  322. package/plugins/bizar/tests/tools/cline-runner.test.ts +0 -115
  323. package/plugins/bizar/tests/tools/plan-action.test.ts +0 -599
  324. package/plugins/bizar/tests/tools/read-glyph-feedback.test.ts +0 -253
  325. package/plugins/bizar/tests/tools/sandbox.test.ts +0 -117
  326. package/plugins/bizar/tests/tools/wait-for-feedback.test.ts +0 -390
  327. package/plugins/bizar/tests/update-deadlock.test.ts +0 -151
  328. package/plugins/bizar/tsconfig.json +0 -29
  329. package/scripts/mirror-agents-md.sh +0 -69
@@ -1,307 +0,0 @@
1
- # How To Use This Mockup To Build The Real UI
2
-
3
- This file explains how to turn the `bizar-design/` mockup package into the actual dashboard UI in `src/web/`.
4
-
5
- It is not a second design system. The design system already lives in:
6
-
7
- - `bizar-design/tokens.css`
8
- - `bizar-design/components.css`
9
- - `bizar-design/components.html`
10
- - `bizar-design/INSTRUCTIONS.md`
11
-
12
- This document explains how to **apply** that system during implementation.
13
-
14
- ## What this package is for
15
-
16
- The mockup package does three jobs:
17
-
18
- 1. It defines the **visual language**.
19
- 2. It defines the **component contracts**.
20
- 3. It defines the **screen structure and interaction behavior**.
21
-
22
- When building the real UI, do not treat these HTML files as disposable inspiration. Treat them as:
23
-
24
- - visual reference
25
- - naming reference
26
- - spacing and hierarchy reference
27
- - behavior reference
28
- - screen composition reference
29
-
30
- ## What maps to what
31
-
32
- Use this mapping when implementing.
33
-
34
- ### Foundations
35
-
36
- - `bizar-design/tokens.css`
37
- - Maps to theme tokens in `src/web/styles/main.css`
38
- - Source of truth for colors, spacing, radii, shadows, typography, and motion
39
-
40
- - `bizar-design/icons.svg`
41
- - Maps to the icon set and sizing rules in the real app
42
- - If using Lucide in React, match the same visual weight, size, and density
43
-
44
- - `bizar-design/components.css`
45
- - Maps to reusable UI primitives in the real app
46
- - Use it to derive component-level CSS classes or component APIs
47
-
48
- ### Screen references
49
-
50
- - `bizar-design/desktop/overview.html`
51
- - Maps to `src/web/views/Overview.tsx`
52
-
53
- - `bizar-design/desktop/agents.html`
54
- - Maps to `src/web/views/Agents.tsx`
55
-
56
- - `bizar-design/desktop/memory.html`
57
- - Maps to `src/web/views/Memory.tsx`
58
-
59
- - `bizar-design/desktop/settings.html`
60
- - Maps to `src/web/views/Settings.tsx`
61
-
62
- - `bizar-design/desktop/metrics.html`
63
- - Maps to `src/web/views/MiniMaxUsage.tsx`
64
-
65
- - `bizar-design/mobile/*.html`
66
- - Map to `src/web/mobile/` views and components
67
-
68
- ### System references
69
-
70
- - `bizar-design/canvas.html`
71
- - Use this as the whole-product reference
72
- - It shows how the system should feel when the pieces work together
73
-
74
- - `bizar-design/components.html`
75
- - Use this as the detailed implementation catalog
76
- - If you need a component or state, check here first
77
-
78
- ## Correct implementation workflow
79
-
80
- Build the real UI in this order:
81
-
82
- 1. **Read the target screen HTML**
83
- - Start with the matching desktop or mobile screen file.
84
- - Understand the layout, information priority, and module list.
85
-
86
- 2. **Identify the reusable primitives**
87
- - Find the corresponding pieces in `components.html`.
88
- - Example: stat card, row list, sidebar item, settings block, info panel, timeline entry.
89
-
90
- 3. **Implement primitives before screens**
91
- - Do not build a whole screen by hardcoding layout-specific UI first.
92
- - First create or update shared building blocks.
93
-
94
- 4. **Bind to real data**
95
- - Once the visual structure exists, connect it to the real view data in `src/web/views/` and `src/web/lib/types.ts`.
96
-
97
- 5. **Apply interaction rules**
98
- - Use `INSTRUCTIONS.md` and `components.html` for hover, focus, scroll, loading, empty, error, drag, and selection behavior.
99
-
100
- 6. **Re-check against the mockup**
101
- - Compare the implemented view to the target screen and the full canvas.
102
-
103
- ## What not to do
104
-
105
- Avoid these mistakes:
106
-
107
- - Do not copy-paste mockup HTML directly into production and call it done.
108
- - Do not implement one-off CSS in a view when a shared primitive should exist.
109
- - Do not invent new spacing, border, or radius patterns per screen.
110
- - Do not shrink desktop layouts into mobile layouts.
111
- - Do not add decorative UI that is not in the system.
112
- - Do not let view code define its own interaction language separately from the design package.
113
-
114
- ## How to read each file
115
-
116
- ### `index.html`
117
-
118
- Use this as the package entry point.
119
-
120
- It tells you:
121
-
122
- - what references exist
123
- - where to start
124
- - which screen sets are available
125
-
126
- ### `canvas.html`
127
-
128
- Use this to understand:
129
-
130
- - overall product posture
131
- - shell density
132
- - how different dashboard modules relate to each other
133
- - how the system should feel at a high level
134
-
135
- This is especially useful when a single view starts looking correct on its own but wrong in the larger system.
136
-
137
- ### `components.html`
138
-
139
- Use this when:
140
-
141
- - you need to build a reusable component
142
- - you need a state variant
143
- - you need theming guidance
144
- - you need behavior guidance
145
-
146
- This should be the first stop before adding a new shared UI pattern.
147
-
148
- ### `desktop/*.html`
149
-
150
- Use these as implementation contracts for desktop views.
151
-
152
- They define:
153
-
154
- - screen structure
155
- - layout regions
156
- - module ordering
157
- - density
158
- - navigation expectations
159
-
160
- ### `mobile/*.html`
161
-
162
- Use these as implementation contracts for mobile views.
163
-
164
- They define:
165
-
166
- - what survives from desktop
167
- - what must stack or collapse
168
- - what gets simplified
169
- - how hierarchy changes on small screens
170
-
171
- ## How to convert mockup patterns into real React components
172
-
173
- The safest pattern is:
174
-
175
- 1. Find the repeated pattern in the mockup.
176
- 2. Name it as a product primitive.
177
- 3. Implement it as a reusable component.
178
- 4. Move styling to shared styles.
179
- 5. Reuse it across views.
180
-
181
- Examples:
182
-
183
- - Sidebar item
184
- - mockup source: shell + components library
185
- - real target: `Sidebar.tsx` plus shared sidebar styles
186
-
187
- - Metric card
188
- - mockup source: overview + metrics screen
189
- - real target: reusable stat/metric component
190
-
191
- - Activity row
192
- - mockup source: overview timeline, approvals, background agents
193
- - real target: shared row component with variant props
194
-
195
- - Settings block
196
- - mockup source: settings screen + components library
197
- - real target: reusable section wrapper used across settings subsections
198
-
199
- - Chat rail row / thread / info panel
200
- - mockup source: chat composition section in `components.html`
201
- - real target: shared chat module components under `src/web/components/chat/`
202
-
203
- ## How to decide whether something belongs in shared code
204
-
205
- Put a pattern in shared code when at least one of these is true:
206
-
207
- - it appears on more than one screen
208
- - it has multiple states
209
- - it defines spacing or hierarchy others will copy
210
- - it is part of the shell or navigation
211
- - it is likely to need consistent behavior later
212
-
213
- If a piece is likely reusable, make it reusable early.
214
-
215
- ## How to use the theming system
216
-
217
- Use the mockup tokens directly as the target vocabulary.
218
-
219
- That means:
220
-
221
- - `--bg`, `--bg-elev`, `--bg-elev-2`, `--bg-elev-3`
222
- - `--border`, `--border-strong`
223
- - `--text-strong`, `--text`, `--text-dim`
224
- - `--accent`
225
- - `--success`, `--warning`, `--error`, `--info`
226
-
227
- Do not create alternate naming systems in the real UI unless they map cleanly back to these tokens.
228
-
229
- ## How to use behavior rules during implementation
230
-
231
- The behavior rules matter as much as visuals.
232
-
233
- Check these during development:
234
-
235
- ### Scrolling
236
-
237
- - Does the correct region scroll?
238
- - Are headers or section rails preserved when needed?
239
- - Is there accidental horizontal overflow?
240
-
241
- ### Hover
242
-
243
- - Does hover clarify affordance without causing visual noise?
244
- - Are important actions still visible without hover?
245
-
246
- ### Focus
247
-
248
- - Can keyboard users understand where they are?
249
- - Does focus look like part of the system?
250
-
251
- ### Click / selection
252
-
253
- - Is the primary action obvious?
254
- - Is selected state distinct from hover state?
255
-
256
- ### Drag / reorder
257
-
258
- - Are drag targets visually clear?
259
- - Is there a visible drop state?
260
-
261
- ### Loading / empty / error
262
-
263
- - Does the view preserve structure while state changes?
264
- - Does the user know what to do next?
265
-
266
- ## Suggested implementation order for this repo
267
-
268
- If you are rebuilding the current dashboard from the package, the safest order is:
269
-
270
- 1. Theme tokens in shared styles
271
- 2. Topbar and expandable sidebar
272
- 3. Shared primitives:
273
- - buttons
274
- - pills
275
- - cards
276
- - rows
277
- - fields
278
- - tables
279
- 4. Overview
280
- 5. Agents
281
- 6. Memory
282
- 7. Settings
283
- 8. Metrics
284
- 9. Mobile equivalents
285
- 10. Polish pass across all screens together
286
-
287
- ## Definition of “done” for an implemented screen
288
-
289
- A screen is only done when:
290
-
291
- - it matches the target mockup structurally
292
- - it uses shared primitives instead of ad hoc local ones
293
- - it uses the shared token language
294
- - it follows the interaction rules
295
- - it works with real data
296
- - it still looks consistent next to the other implemented screens
297
-
298
- ## If you need to extend the mockup first
299
-
300
- If the real product needs a new pattern that the mockup package does not yet cover:
301
-
302
- 1. Add or refine it in `bizar-design/components.html`
303
- 2. Add any new shared rule to `bizar-design/INSTRUCTIONS.md`
304
- 3. Add the shared primitive to `bizar-design/components.css`
305
- 4. Then implement it in the real UI
306
-
307
- That keeps the mockup package as the actual reference instead of letting implementation drift away from it.
@@ -1,149 +0,0 @@
1
- # Bizar Design System
2
-
3
- This folder is the canonical visual and interaction reference for the dashboard redesign. It exists outside `src/web/` so the product UI can be implemented against stable contracts instead of drifting from ad hoc view work.
4
-
5
- ## Package map
6
-
7
- - `tokens.css` — canonical OKLch theme tokens for dark and light modes.
8
- - `components.css` — modular shell, component, state, and layout primitives.
9
- - `icons.svg` — shared icon sprite for sidebar, tabs, and library examples.
10
- - `prototype.js` — theme toggle, segmented control demo behavior, and persistent expandable-sidebar behavior.
11
- - `index.html` — launcher for the full package.
12
- - `canvas.html` — full-system reference canvas.
13
- - `components.html` — extensive component, theming, and behavior library.
14
- - `desktop/*.html` — desktop screen contracts.
15
- - `mobile/*.html` — mobile screen contracts.
16
-
17
- ## Primary rules
18
-
19
- 1. Start from `tokens.css`. Do not invent new hardcoded colors, spacing, or radii in view files.
20
- 2. Extend existing primitives in `components.css` before creating new ones.
21
- 3. Add any new component pattern to `components.html` before shipping it into product code.
22
- 4. Preserve the no-left-stripe rule. Active and alert states use fill, glow, label, or motion.
23
- 5. Keep the package navigable. Launcher, canvas, library, desktop screens, and mobile screens must cross-link.
24
-
25
- ## Modular architecture
26
-
27
- The system is organized in layers. Build in this order:
28
-
29
- 1. **Tokens**
30
- - Surface, text, accent, semantic, motion, spacing, radius, shadow, typography.
31
- 2. **Shell**
32
- - Topbar, expandable sidebar, tabs, search trigger, runtime pills.
33
- 3. **Primitives**
34
- - Buttons, fields, pills, badges, cards, rows, timelines, tables, bars, tabs.
35
- 4. **States**
36
- - Loading, empty, error, disabled, selected, streaming, paused, degraded.
37
- 5. **Domain modules**
38
- - Chat, agents, memory, settings, metrics, approvals, kanban, drawers, modals.
39
-
40
- Each component should be portable. If a component cannot be lifted from the library into React with minimal translation, it is too view-specific.
41
-
42
- ## Theming inventory
43
-
44
- All theming items belong in the library. The package should always cover:
45
-
46
- - Surfaces: `--bg`, `--bg-elev`, `--bg-elev-2`, `--bg-elev-3`
47
- - Borders: `--border`, `--border-strong`
48
- - Text: `--text-strong`, `--text`, `--text-dim`
49
- - Accent: `--accent`, `--accent-2`, `--accent-3`, and derived soft/border/glow tokens
50
- - Semantics: `--success`, `--warning`, `--error`, `--info`
51
- - Type: sans, mono, display/title/body/meta sizes
52
- - Layout: spacing scale, radii, shadows
53
- - Motion: fast / base / slow durations and easing
54
-
55
- Any future theme extension must keep token names stable across dark and light modes.
56
-
57
- ## Component coverage
58
-
59
- The library should maintain examples and usage rules for:
60
-
61
- - Topbar and expandable sidebar
62
- - Search triggers and project/runtime pills
63
- - Tabs and segmented controls
64
- - Buttons and destructive/success variants
65
- - Fields: text input, select, textarea
66
- - Pills, badges, dots, and avatars
67
- - Cards and nested surfaces
68
- - Metric cards and progress bars
69
- - Timelines, activity rows, and list rows
70
- - Tables and comparison layouts
71
- - Charts and sparkline shells
72
- - Chat rail, thread, composer, info panel
73
- - Memory rail, health hero, source blocks
74
- - Settings nav, settings groups, field clusters
75
- - Modals, drawers, inspectors, approval rows
76
- - Loading, empty, error, drag preview, drop zone
77
-
78
- ## Interaction behavior rules
79
-
80
- These are part of the design system, not implementation details.
81
-
82
- ### Scrolling
83
-
84
- - Independent regions scroll independently when they contain long content.
85
- - Preserve context with sticky headers or sticky section nav when content exceeds one screen.
86
- - Avoid horizontal page scroll on desktop; prefer internal scroll regions for tables and rails.
87
- - Mobile screens should stack modules vertically and scroll naturally; no tiny desktop canvases inside phones.
88
-
89
- ### Hover
90
-
91
- - Hover indicates affordance, not surprise.
92
- - Surfaces lift one visual tier at most.
93
- - Border and text contrast may strengthen on hover.
94
- - Critical actions must not appear only on hover if they are required to operate the screen.
95
-
96
- ### Focus
97
-
98
- - Focus uses the shared accent glow or border contract.
99
- - Keyboard focus must follow the same hierarchy as click targets.
100
- - Active and focused are distinct: focus is temporary, active is stateful.
101
-
102
- ### Click
103
-
104
- - Primary click selects or opens.
105
- - Secondary actions live in explicit action buttons or menus.
106
- - Clickable rows need large targets and visible active states.
107
- - Do not overload one row with multiple hidden click targets.
108
-
109
- ### Drag
110
-
111
- - Dragged items use accent-border outlines and elevated shadow states.
112
- - Drop zones use dashed outlines and clearer copy.
113
- - Reorder interactions must have keyboard or button alternatives when practical.
114
- - Drag state should never rely on color alone.
115
-
116
- ### Loading
117
-
118
- - Prefer inline loading bars, pulse rows, or local placeholders over blocking page spinners.
119
- - Streaming states stay near the content being updated.
120
- - Preserve layout during loading to reduce jump.
121
-
122
- ### Empty
123
-
124
- - Empty states explain what is missing and what the operator can do next.
125
- - Empty surfaces still need strong structure; they are not blank cards.
126
-
127
- ### Error
128
-
129
- - Errors must preserve recovery context.
130
- - Always provide the next action: retry, inspect, reconnect, or review.
131
- - Use semantic error color sparingly and pair it with plain technical copy.
132
-
133
- ### Responsive
134
-
135
- - Desktop is dense and multi-column.
136
- - Tablet collapses secondary columns before it reduces core content width.
137
- - Mobile rearranges modules into stacked flows with native-feeling spacing and clear hierarchy.
138
-
139
- ## Implementation workflow
140
-
141
- 1. Start from the closest existing primitive in `components.css`.
142
- 2. If you need a new component, add the primitive first.
143
- 3. Add or update the matching section in `components.html`.
144
- 4. Apply the component in product code.
145
- 5. Verify the new state still matches the shell, token, and behavior rules.
146
-
147
- ## Intent
148
-
149
- This package is meant to be exhaustive enough that UI work in the dashboard can be implemented from it without guessing how things should look or behave. The screens show concrete usage, but the shared component and behavior contracts are the real deliverable.