@korallis/k-pi 0.1.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 (348) hide show
  1. package/CHANGELOG.md +5619 -0
  2. package/LICENSE +21 -0
  3. package/NOTICE +66 -0
  4. package/README.md +723 -0
  5. package/dist/bundle/chunks/anthropic-messages-IBCPCIJO.js +45 -0
  6. package/dist/bundle/chunks/anthropic.js +75 -0
  7. package/dist/bundle/chunks/azure-openai-responses-GUUG57CZ.js +2 -0
  8. package/dist/bundle/chunks/bedrock-converse-stream.js +74 -0
  9. package/dist/bundle/chunks/chunk-4L3WN2XY.js +2 -0
  10. package/dist/bundle/chunks/chunk-6CYCI3EJ.js +12 -0
  11. package/dist/bundle/chunks/chunk-6R7UI4IY.js +2 -0
  12. package/dist/bundle/chunks/chunk-AXIIZGTV.js +2 -0
  13. package/dist/bundle/chunks/chunk-CO7LIZG5.js +2 -0
  14. package/dist/bundle/chunks/chunk-DRQDKNXA.js +2 -0
  15. package/dist/bundle/chunks/chunk-GMWCTUPB.js +2 -0
  16. package/dist/bundle/chunks/chunk-HOFU6X66.js +50 -0
  17. package/dist/bundle/chunks/chunk-JUUC5AZY.js +2 -0
  18. package/dist/bundle/chunks/chunk-L2ZPNLYD.js +2 -0
  19. package/dist/bundle/chunks/chunk-MNAIPA3J.js +2 -0
  20. package/dist/bundle/chunks/chunk-NBBFIJUL.js +11 -0
  21. package/dist/bundle/chunks/chunk-NUHFSC37.js +25 -0
  22. package/dist/bundle/chunks/chunk-PGXDEOVV.js +2 -0
  23. package/dist/bundle/chunks/chunk-PJACZCIR.js +2 -0
  24. package/dist/bundle/chunks/chunk-PRRNXB7S.js +2 -0
  25. package/dist/bundle/chunks/chunk-TEPMHNKQ.js +2 -0
  26. package/dist/bundle/chunks/chunk-TRDNDS6A.js +4 -0
  27. package/dist/bundle/chunks/chunk-UAQELI3K.js +2 -0
  28. package/dist/bundle/chunks/chunk-X5QHCKY4.js +1653 -0
  29. package/dist/bundle/chunks/chunk-XDUWOHPL.js +6 -0
  30. package/dist/bundle/chunks/github-copilot.js +2 -0
  31. package/dist/bundle/chunks/google-generative-ai-YRXF7C4I.js +2 -0
  32. package/dist/bundle/chunks/google-vertex-BVZ6VBRQ.js +2 -0
  33. package/dist/bundle/chunks/https-proxy-agent-2VXB7436.js +13 -0
  34. package/dist/bundle/chunks/image-resize-worker.js +2 -0
  35. package/dist/bundle/chunks/kimi-coding.js +2 -0
  36. package/dist/bundle/chunks/lib-HGQMNYVT.js +9 -0
  37. package/dist/bundle/chunks/mistral-conversations-Q3AWZJAZ.js +5 -0
  38. package/dist/bundle/chunks/multipart-parser-SQ6GDJL7.js +3 -0
  39. package/dist/bundle/chunks/openai-codex-responses-GJVBJXLB.js +8 -0
  40. package/dist/bundle/chunks/openai-codex.js +75 -0
  41. package/dist/bundle/chunks/openai-completions-OICQQ5JB.js +7 -0
  42. package/dist/bundle/chunks/openai-responses-P5LIZTXX.js +2 -0
  43. package/dist/bundle/chunks/openrouter-images-XTKS2AS3.js +2 -0
  44. package/dist/bundle/chunks/openrouter.js +75 -0
  45. package/dist/bundle/chunks/pi-messages-TPFH44NP.js +8 -0
  46. package/dist/bundle/chunks/radius.js +75 -0
  47. package/dist/bundle/chunks/src-UK77SYZE.js +4 -0
  48. package/dist/bundle/chunks/xai.js +2 -0
  49. package/dist/bundle/cli.js +3 -0
  50. package/dist/bundle/client.js +2 -0
  51. package/dist/bundle/index.js +2 -0
  52. package/dist/bundle/rpc-entry.js +3 -0
  53. package/dist/core/export-html/template.css +1066 -0
  54. package/dist/core/export-html/template.html +55 -0
  55. package/dist/core/export-html/template.js +1864 -0
  56. package/dist/core/export-html/vendor/highlight.min.js +1213 -0
  57. package/dist/core/export-html/vendor/marked.min.js +78 -0
  58. package/dist/kpi/graphs/coding-loop.auto.json +377 -0
  59. package/dist/kpi/graphs/coding-loop.gated.json +417 -0
  60. package/dist/kpi/graphs/spec-first.json +40 -0
  61. package/dist/kpi/kstack/NOTICE +5 -0
  62. package/dist/kpi/kstack/UPSTREAM.md +23 -0
  63. package/dist/kpi/kstack/generated/LICENSE +21 -0
  64. package/dist/kpi/kstack/generated/skills/architect/SKILL.md +83 -0
  65. package/dist/kpi/kstack/generated/skills/architect/references/design-red-flags.md +33 -0
  66. package/dist/kpi/kstack/generated/skills/architect/references/rationale-template.md +35 -0
  67. package/dist/kpi/kstack/generated/skills/architect/references/runner-prompt.md +20 -0
  68. package/dist/kpi/kstack/generated/skills/arena/SKILL.md +29 -0
  69. package/dist/kpi/kstack/generated/skills/blast-radius/SKILL.md +50 -0
  70. package/dist/kpi/kstack/generated/skills/bro/SKILL.md +7 -0
  71. package/dist/kpi/kstack/generated/skills/create-verification-skill/SKILL.md +44 -0
  72. package/dist/kpi/kstack/generated/skills/create-verification-skill/references/feature-map-example/README.md +47 -0
  73. package/dist/kpi/kstack/generated/skills/create-verification-skill/references/feature-map-example/create-note.md +39 -0
  74. package/dist/kpi/kstack/generated/skills/create-verification-skill/references/feature-map-example/search.md +45 -0
  75. package/dist/kpi/kstack/generated/skills/figure-it-out/SKILL.md +55 -0
  76. package/dist/kpi/kstack/generated/skills/how/SKILL.md +135 -0
  77. package/dist/kpi/kstack/generated/skills/how/references/critic-prompt.md +59 -0
  78. package/dist/kpi/kstack/generated/skills/how/references/critique-rubric.md +58 -0
  79. package/dist/kpi/kstack/generated/skills/how/references/explainer-prompt.md +55 -0
  80. package/dist/kpi/kstack/generated/skills/how/references/explorer-prompt.md +52 -0
  81. package/dist/kpi/kstack/generated/skills/interrogate/SKILL.md +113 -0
  82. package/dist/kpi/kstack/generated/skills/interrogate/references/code-quality-review.md +47 -0
  83. package/dist/kpi/kstack/generated/skills/interrogate/references/lead-judgment.md +58 -0
  84. package/dist/kpi/kstack/generated/skills/interrogate/references/reviewer-prompt.md +72 -0
  85. package/dist/kpi/kstack/generated/skills/interrogate/references/rubric.md +77 -0
  86. package/dist/kpi/kstack/generated/skills/k-agent/SKILL.md +17 -0
  87. package/dist/kpi/kstack/generated/skills/k-mode/SKILL.md +64 -0
  88. package/dist/kpi/kstack/generated/skills/k-stack-principles/SKILL.md +24 -0
  89. package/dist/kpi/kstack/generated/skills/maintain-verification-skill/SKILL.md +39 -0
  90. package/dist/kpi/kstack/generated/skills/no-comments/SKILL.md +24 -0
  91. package/dist/kpi/kstack/generated/skills/playbook-arena/SKILL.md +20 -0
  92. package/dist/kpi/kstack/generated/skills/playbook-autonomous-run/SKILL.md +22 -0
  93. package/dist/kpi/kstack/generated/skills/playbook-autopilot-full/SKILL.md +20 -0
  94. package/dist/kpi/kstack/generated/skills/playbook-autopilot-stack/SKILL.md +20 -0
  95. package/dist/kpi/kstack/generated/skills/playbook-bug-fix/SKILL.md +21 -0
  96. package/dist/kpi/kstack/generated/skills/playbook-feature/SKILL.md +22 -0
  97. package/dist/kpi/kstack/generated/skills/playbook-investigation/SKILL.md +21 -0
  98. package/dist/kpi/kstack/generated/skills/playbook-shipping/SKILL.md +18 -0
  99. package/dist/kpi/kstack/generated/skills/playbook-swarm/SKILL.md +20 -0
  100. package/dist/kpi/kstack/generated/skills/principle-boundary-discipline/SKILL.md +34 -0
  101. package/dist/kpi/kstack/generated/skills/principle-build-the-lever/SKILL.md +23 -0
  102. package/dist/kpi/kstack/generated/skills/principle-encode-lessons-in-structure/SKILL.md +31 -0
  103. package/dist/kpi/kstack/generated/skills/principle-exhaust-the-design-space/SKILL.md +21 -0
  104. package/dist/kpi/kstack/generated/skills/principle-experience-first/SKILL.md +19 -0
  105. package/dist/kpi/kstack/generated/skills/principle-fix-root-causes/SKILL.md +23 -0
  106. package/dist/kpi/kstack/generated/skills/principle-foundational-thinking/SKILL.md +21 -0
  107. package/dist/kpi/kstack/generated/skills/principle-guard-the-context-window/SKILL.md +17 -0
  108. package/dist/kpi/kstack/generated/skills/principle-laziness-protocol/SKILL.md +18 -0
  109. package/dist/kpi/kstack/generated/skills/principle-make-operations-idempotent/SKILL.md +24 -0
  110. package/dist/kpi/kstack/generated/skills/principle-migrate-callers-then-delete-legacy-apis/SKILL.md +22 -0
  111. package/dist/kpi/kstack/generated/skills/principle-minimize-reader-load/SKILL.md +23 -0
  112. package/dist/kpi/kstack/generated/skills/principle-model-the-domain/SKILL.md +26 -0
  113. package/dist/kpi/kstack/generated/skills/principle-never-block-on-the-human/SKILL.md +23 -0
  114. package/dist/kpi/kstack/generated/skills/principle-outcome-oriented-execution/SKILL.md +22 -0
  115. package/dist/kpi/kstack/generated/skills/principle-prove-it-works/SKILL.md +33 -0
  116. package/dist/kpi/kstack/generated/skills/principle-redesign-from-first-principles/SKILL.md +16 -0
  117. package/dist/kpi/kstack/generated/skills/principle-separate-before-serializing-shared-state/SKILL.md +16 -0
  118. package/dist/kpi/kstack/generated/skills/principle-sequence-verifiable-units/SKILL.md +22 -0
  119. package/dist/kpi/kstack/generated/skills/principle-subtract-before-you-add/SKILL.md +22 -0
  120. package/dist/kpi/kstack/generated/skills/principle-type-system-discipline/SKILL.md +31 -0
  121. package/dist/kpi/kstack/generated/skills/recall/SKILL.md +35 -0
  122. package/dist/kpi/kstack/generated/skills/reflect/SKILL.md +77 -0
  123. package/dist/kpi/kstack/generated/skills/reflect/references/divergent-reviewer.md +43 -0
  124. package/dist/kpi/kstack/generated/skills/reflect/references/judgment-reviewer.md +42 -0
  125. package/dist/kpi/kstack/generated/skills/reflect/references/synthesizer.md +56 -0
  126. package/dist/kpi/kstack/generated/skills/reflect/references/tooling-reviewer.md +57 -0
  127. package/dist/kpi/kstack/generated/skills/setup-kstack/SKILL.md +48 -0
  128. package/dist/kpi/kstack/generated/skills/show-me-your-work/SKILL.md +82 -0
  129. package/dist/kpi/kstack/generated/skills/show-me-your-work/references/decision-log-template.tsv +1 -0
  130. package/dist/kpi/kstack/generated/skills/show-me-your-work/scripts/log.sh +40 -0
  131. package/dist/kpi/kstack/generated/skills/swarm/SKILL.md +27 -0
  132. package/dist/kpi/kstack/generated/skills/tdd/SKILL.md +44 -0
  133. package/dist/kpi/kstack/generated/skills/teach/SKILL.md +21 -0
  134. package/dist/kpi/kstack/generated/skills/technical-writing/SKILL.md +130 -0
  135. package/dist/kpi/kstack/generated/skills/typescript-best-practices/SKILL.md +30 -0
  136. package/dist/kpi/kstack/generated/skills/typescript-best-practices/references/patterns.md +313 -0
  137. package/dist/kpi/kstack/generated/skills/unslop/SKILL.md +81 -0
  138. package/dist/kpi/kstack/generated/skills/why/SKILL.md +230 -0
  139. package/dist/kpi/kstack/generated/skills/why/references/epistemics.md +144 -0
  140. package/dist/kpi/kstack/generated/skills/why/references/investigator-prompt.md +103 -0
  141. package/dist/kpi/kstack/generated/skills/why/references/source-playbook.md +17 -0
  142. package/dist/kpi/kstack/generated/skills/why/references/sources/code-archaeology.md +88 -0
  143. package/dist/kpi/kstack/generated/skills/why/references/sources/databricks.md +70 -0
  144. package/dist/kpi/kstack/generated/skills/why/references/sources/datadog.md +99 -0
  145. package/dist/kpi/kstack/generated/skills/why/references/sources/incident-postmortem.md +15 -0
  146. package/dist/kpi/kstack/generated/skills/why/references/sources/linear.md +48 -0
  147. package/dist/kpi/kstack/generated/skills/why/references/sources/notion.md +55 -0
  148. package/dist/kpi/kstack/generated/skills/why/references/sources/sentry.md +100 -0
  149. package/dist/kpi/kstack/generated/skills/why/references/sources/slack.md +54 -0
  150. package/dist/kpi/kstack/generated/skills/why/references/synthesizer-prompt.md +135 -0
  151. package/dist/kpi/kstack/model-ladder.md +50 -0
  152. package/dist/kpi/kstack/provenance.json +17 -0
  153. package/dist/kpi/prompts/implement.md +6 -0
  154. package/dist/kpi/prompts/plan.md +6 -0
  155. package/dist/kpi/prompts/review.md +6 -0
  156. package/dist/kpi/prompts/ship.md +6 -0
  157. package/dist/kpi/prompts/specify.md +6 -0
  158. package/dist/kpi/prompts/verify.md +6 -0
  159. package/dist/kpi/schemas/event.schema.json +1314 -0
  160. package/dist/kpi/schemas/evidence.schema.json +43 -0
  161. package/dist/kpi/schemas/stack.schema.json +102 -0
  162. package/dist/kpi/schemas/task.schema.json +165 -0
  163. package/dist/kpi/schemas/verdict.schema.json +44 -0
  164. package/dist/kpi/skills/concise-output/SKILL.md +10 -0
  165. package/dist/kpi/skills/context-pack/SKILL.md +10 -0
  166. package/dist/kpi/skills/conventional-commit/SKILL.md +12 -0
  167. package/dist/kpi/skills/isolated-review/SKILL.md +10 -0
  168. package/dist/kpi/skills/kg-claim/SKILL.md +26 -0
  169. package/dist/kpi/skills/minimalist/SKILL.md +24 -0
  170. package/dist/kpi/skills/quality-gates/SKILL.md +10 -0
  171. package/dist/kpi/skills/spec-first/SKILL.md +10 -0
  172. package/dist/kpi/skills/tdd-cycle/SKILL.md +10 -0
  173. package/dist/kpi/templates/AGENTS.md +31 -0
  174. package/dist/kpi/templates/APPEND_SYSTEM.md +13 -0
  175. package/dist/kpi/templates/context-pack/product.md +7 -0
  176. package/dist/kpi/templates/context-pack/structure.md +7 -0
  177. package/dist/kpi/templates/context-pack/tech.md +9 -0
  178. package/dist/kpi/templates/policy.json +17 -0
  179. package/dist/kpi/themes/loop-amber.json +82 -0
  180. package/dist/kpi/themes/protocol-blue.json +82 -0
  181. package/dist/modes/interactive/assets/clankolas.png +0 -0
  182. package/dist/modes/interactive/theme/dark.json +90 -0
  183. package/dist/modes/interactive/theme/light.json +89 -0
  184. package/dist/modes/interactive/theme/theme-schema.json +352 -0
  185. package/docs/compaction.md +418 -0
  186. package/docs/containerization.md +111 -0
  187. package/docs/custom-provider.md +777 -0
  188. package/docs/development.md +71 -0
  189. package/docs/docs.json +156 -0
  190. package/docs/environment-variables.md +97 -0
  191. package/docs/extensions.md +3020 -0
  192. package/docs/images/doom-extension.png +0 -0
  193. package/docs/images/exy.png +0 -0
  194. package/docs/images/interactive-mode.png +0 -0
  195. package/docs/images/tree-view.png +0 -0
  196. package/docs/index.md +84 -0
  197. package/docs/json.md +98 -0
  198. package/docs/keybindings.md +236 -0
  199. package/docs/llama-cpp.md +101 -0
  200. package/docs/models.md +571 -0
  201. package/docs/packages.md +228 -0
  202. package/docs/prompt-templates.md +96 -0
  203. package/docs/providers.md +317 -0
  204. package/docs/quickstart.md +167 -0
  205. package/docs/rpc.md +1618 -0
  206. package/docs/sdk.md +1219 -0
  207. package/docs/security.md +59 -0
  208. package/docs/session-format.md +438 -0
  209. package/docs/sessions.md +145 -0
  210. package/docs/settings.md +369 -0
  211. package/docs/shell-aliases.md +13 -0
  212. package/docs/skills.md +232 -0
  213. package/docs/terminal-setup.md +177 -0
  214. package/docs/termux.md +127 -0
  215. package/docs/themes.md +320 -0
  216. package/docs/tmux.md +63 -0
  217. package/docs/tui.md +942 -0
  218. package/docs/usage.md +311 -0
  219. package/docs/windows.md +39 -0
  220. package/examples/README.md +25 -0
  221. package/examples/extensions/README.md +213 -0
  222. package/examples/extensions/auto-commit-on-exit.ts +49 -0
  223. package/examples/extensions/bash-spawn-hook.ts +30 -0
  224. package/examples/extensions/bookmark.ts +50 -0
  225. package/examples/extensions/border-status-editor.ts +150 -0
  226. package/examples/extensions/built-in-tool-renderer.ts +249 -0
  227. package/examples/extensions/claude-rules.ts +86 -0
  228. package/examples/extensions/commands.ts +72 -0
  229. package/examples/extensions/confirm-destructive.ts +59 -0
  230. package/examples/extensions/custom-compaction.ts +117 -0
  231. package/examples/extensions/custom-footer.ts +64 -0
  232. package/examples/extensions/custom-header.ts +73 -0
  233. package/examples/extensions/custom-provider-anthropic/index.ts +611 -0
  234. package/examples/extensions/custom-provider-anthropic/package-lock.json +24 -0
  235. package/examples/extensions/custom-provider-anthropic/package.json +19 -0
  236. package/examples/extensions/custom-provider-gitlab-duo/index.ts +405 -0
  237. package/examples/extensions/custom-provider-gitlab-duo/package.json +16 -0
  238. package/examples/extensions/custom-provider-gitlab-duo/test.ts +82 -0
  239. package/examples/extensions/dirty-repo-guard.ts +56 -0
  240. package/examples/extensions/doom-overlay/README.md +46 -0
  241. package/examples/extensions/doom-overlay/doom/build/doom.js +21 -0
  242. package/examples/extensions/doom-overlay/doom/build/doom.wasm +0 -0
  243. package/examples/extensions/doom-overlay/doom/build.sh +152 -0
  244. package/examples/extensions/doom-overlay/doom/doomgeneric_pi.c +72 -0
  245. package/examples/extensions/doom-overlay/doom-component.ts +132 -0
  246. package/examples/extensions/doom-overlay/doom-engine.ts +173 -0
  247. package/examples/extensions/doom-overlay/doom-keys.ts +104 -0
  248. package/examples/extensions/doom-overlay/index.ts +74 -0
  249. package/examples/extensions/doom-overlay/wad-finder.ts +55 -0
  250. package/examples/extensions/dynamic-resources/SKILL.md +8 -0
  251. package/examples/extensions/dynamic-resources/dynamic.json +79 -0
  252. package/examples/extensions/dynamic-resources/dynamic.md +5 -0
  253. package/examples/extensions/dynamic-resources/index.ts +15 -0
  254. package/examples/extensions/dynamic-tools.ts +74 -0
  255. package/examples/extensions/entry-renderer.ts +41 -0
  256. package/examples/extensions/event-bus.ts +43 -0
  257. package/examples/extensions/file-trigger.ts +41 -0
  258. package/examples/extensions/git-checkpoint.ts +53 -0
  259. package/examples/extensions/git-merge-and-resolve.ts +115 -0
  260. package/examples/extensions/github-issue-autocomplete.ts +185 -0
  261. package/examples/extensions/gondolin/index.ts +531 -0
  262. package/examples/extensions/gondolin/package-lock.json +185 -0
  263. package/examples/extensions/gondolin/package.json +19 -0
  264. package/examples/extensions/handoff.ts +190 -0
  265. package/examples/extensions/hello.ts +26 -0
  266. package/examples/extensions/hidden-thinking-label.ts +53 -0
  267. package/examples/extensions/inline-bash.ts +94 -0
  268. package/examples/extensions/input-transform-streaming.ts +39 -0
  269. package/examples/extensions/input-transform.ts +43 -0
  270. package/examples/extensions/interactive-shell.ts +196 -0
  271. package/examples/extensions/kimi-deferred-tools.ts +61 -0
  272. package/examples/extensions/mac-system-theme.ts +47 -0
  273. package/examples/extensions/message-renderer.ts +59 -0
  274. package/examples/extensions/minimal-mode.ts +426 -0
  275. package/examples/extensions/modal-editor.ts +85 -0
  276. package/examples/extensions/model-status.ts +31 -0
  277. package/examples/extensions/notify.ts +57 -0
  278. package/examples/extensions/overlay-qa-tests.ts +1450 -0
  279. package/examples/extensions/overlay-test.ts +153 -0
  280. package/examples/extensions/permission-gate.ts +34 -0
  281. package/examples/extensions/pirate.ts +47 -0
  282. package/examples/extensions/plan-mode/README.md +66 -0
  283. package/examples/extensions/plan-mode/index.ts +390 -0
  284. package/examples/extensions/plan-mode/utils.ts +168 -0
  285. package/examples/extensions/preset.ts +436 -0
  286. package/examples/extensions/project-trust.ts +64 -0
  287. package/examples/extensions/prompt-customizer.ts +97 -0
  288. package/examples/extensions/protected-paths.ts +30 -0
  289. package/examples/extensions/provider-payload.ts +18 -0
  290. package/examples/extensions/qna.ts +118 -0
  291. package/examples/extensions/question.ts +286 -0
  292. package/examples/extensions/questionnaire.ts +448 -0
  293. package/examples/extensions/rainbow-editor.ts +88 -0
  294. package/examples/extensions/reload-runtime.ts +37 -0
  295. package/examples/extensions/rpc-demo.ts +118 -0
  296. package/examples/extensions/sandbox/index.ts +321 -0
  297. package/examples/extensions/sandbox/package-lock.json +92 -0
  298. package/examples/extensions/sandbox/package.json +19 -0
  299. package/examples/extensions/send-user-message.ts +97 -0
  300. package/examples/extensions/session-name.ts +27 -0
  301. package/examples/extensions/shutdown-command.ts +63 -0
  302. package/examples/extensions/snake.ts +343 -0
  303. package/examples/extensions/space-invaders.ts +560 -0
  304. package/examples/extensions/ssh.ts +220 -0
  305. package/examples/extensions/status-line.ts +32 -0
  306. package/examples/extensions/structured-output.ts +65 -0
  307. package/examples/extensions/subagent/README.md +177 -0
  308. package/examples/extensions/subagent/agents/planner.md +37 -0
  309. package/examples/extensions/subagent/agents/reviewer.md +35 -0
  310. package/examples/extensions/subagent/agents/scout.md +50 -0
  311. package/examples/extensions/subagent/agents/worker.md +24 -0
  312. package/examples/extensions/subagent/agents.ts +157 -0
  313. package/examples/extensions/subagent/index.ts +1038 -0
  314. package/examples/extensions/subagent/prompts/implement-and-review.md +10 -0
  315. package/examples/extensions/subagent/prompts/implement.md +10 -0
  316. package/examples/extensions/subagent/prompts/scout-and-plan.md +9 -0
  317. package/examples/extensions/summarize.ts +199 -0
  318. package/examples/extensions/system-prompt-header.ts +17 -0
  319. package/examples/extensions/tic-tac-toe.ts +1008 -0
  320. package/examples/extensions/timed-confirm.ts +70 -0
  321. package/examples/extensions/titlebar-spinner.ts +58 -0
  322. package/examples/extensions/todo.ts +297 -0
  323. package/examples/extensions/tool-override.ts +144 -0
  324. package/examples/extensions/tools.ts +146 -0
  325. package/examples/extensions/trigger-compact.ts +50 -0
  326. package/examples/extensions/truncated-tool.ts +195 -0
  327. package/examples/extensions/widget-placement.ts +9 -0
  328. package/examples/extensions/with-deps/index.ts +32 -0
  329. package/examples/extensions/with-deps/package-lock.json +31 -0
  330. package/examples/extensions/with-deps/package.json +22 -0
  331. package/examples/extensions/working-indicator.ts +123 -0
  332. package/examples/extensions/working-message-test.ts +25 -0
  333. package/examples/rpc-extension-ui.ts +641 -0
  334. package/examples/sdk/01-minimal.ts +26 -0
  335. package/examples/sdk/02-custom-model.ts +49 -0
  336. package/examples/sdk/03-custom-prompt.ts +75 -0
  337. package/examples/sdk/04-skills.ts +55 -0
  338. package/examples/sdk/05-tools.ts +48 -0
  339. package/examples/sdk/06-extensions.ts +99 -0
  340. package/examples/sdk/07-context-files.ts +47 -0
  341. package/examples/sdk/08-prompt-templates.ts +51 -0
  342. package/examples/sdk/09-api-keys-and-oauth.ts +34 -0
  343. package/examples/sdk/10-settings.ts +53 -0
  344. package/examples/sdk/11-sessions.ts +52 -0
  345. package/examples/sdk/12-full-control.ts +74 -0
  346. package/examples/sdk/13-session-runtime.ts +67 -0
  347. package/examples/sdk/README.md +140 -0
  348. package/package.json +55 -0
@@ -0,0 +1,43 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "evidence.schema.json",
4
+ "title": "K-pi evidence",
5
+ "type": "object",
6
+ "required": ["head", "commands", "ac_results"],
7
+ "properties": {
8
+ "head": {
9
+ "type": "string",
10
+ "minLength": 1
11
+ },
12
+ "commands": {
13
+ "type": "array",
14
+ "items": { "$ref": "#/$defs/commandRecord" }
15
+ },
16
+ "ac_results": {
17
+ "type": "array",
18
+ "items": { "$ref": "#/$defs/acResult" }
19
+ }
20
+ },
21
+ "$defs": {
22
+ "commandRecord": {
23
+ "type": "object",
24
+ "required": ["cmd", "exit"],
25
+ "properties": {
26
+ "cmd": { "type": "string", "minLength": 1 },
27
+ "exit": { "type": "integer" },
28
+ "excerpt": { "type": "string" }
29
+ },
30
+ "additionalProperties": false
31
+ },
32
+ "acResult": {
33
+ "type": "object",
34
+ "required": ["id", "passed"],
35
+ "properties": {
36
+ "id": { "type": "string", "minLength": 1 },
37
+ "passed": { "type": "boolean" }
38
+ },
39
+ "additionalProperties": false
40
+ }
41
+ },
42
+ "additionalProperties": false
43
+ }
@@ -0,0 +1,102 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "stack.schema.json",
4
+ "title": "K-pi Dune stack",
5
+ "type": "object",
6
+ "required": [
7
+ "version",
8
+ "shape",
9
+ "delivery",
10
+ "root",
11
+ "modules",
12
+ "scaffold_first"
13
+ ],
14
+ "properties": {
15
+ "version": {
16
+ "const": 1
17
+ },
18
+ "shape": {
19
+ "const": "dune"
20
+ },
21
+ "delivery": {
22
+ "enum": [
23
+ "vertical",
24
+ "horizontal"
25
+ ]
26
+ },
27
+ "delivery_reason": {
28
+ "type": "string",
29
+ "minLength": 1
30
+ },
31
+ "root": {
32
+ "type": "string",
33
+ "minLength": 1
34
+ },
35
+ "scaffold_first": {
36
+ "const": true
37
+ },
38
+ "task_hash": {
39
+ "type": "string",
40
+ "minLength": 1
41
+ },
42
+ "current_module_id": {
43
+ "type": "string",
44
+ "minLength": 1
45
+ },
46
+ "modules": {
47
+ "type": "array",
48
+ "minItems": 1,
49
+ "items": {
50
+ "$ref": "#/$defs/module"
51
+ }
52
+ }
53
+ },
54
+ "additionalProperties": false,
55
+ "$defs": {
56
+ "module": {
57
+ "type": "object",
58
+ "required": [
59
+ "id",
60
+ "purpose",
61
+ "folder",
62
+ "interface",
63
+ "allowed_paths",
64
+ "depends_on"
65
+ ],
66
+ "properties": {
67
+ "id": {
68
+ "type": "string",
69
+ "minLength": 1
70
+ },
71
+ "purpose": {
72
+ "type": "string",
73
+ "minLength": 1
74
+ },
75
+ "folder": {
76
+ "type": "string",
77
+ "minLength": 1
78
+ },
79
+ "interface": {
80
+ "type": "string",
81
+ "minLength": 1
82
+ },
83
+ "allowed_paths": {
84
+ "type": "array",
85
+ "minItems": 1,
86
+ "items": {
87
+ "type": "string",
88
+ "minLength": 1
89
+ }
90
+ },
91
+ "depends_on": {
92
+ "type": "array",
93
+ "items": {
94
+ "type": "string",
95
+ "minLength": 1
96
+ }
97
+ }
98
+ },
99
+ "additionalProperties": false
100
+ }
101
+ }
102
+ }
@@ -0,0 +1,165 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "task.schema.json",
4
+ "title": "K-pi task",
5
+ "type": "object",
6
+ "required": [
7
+ "job_id",
8
+ "mode",
9
+ "goal",
10
+ "nongoals",
11
+ "acceptance",
12
+ "constraints",
13
+ "quality_gates",
14
+ "ac"
15
+ ],
16
+ "properties": {
17
+ "job_id": {
18
+ "type": "string",
19
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
20
+ "maxLength": 128
21
+ },
22
+ "mode": {
23
+ "enum": ["gated", "autopilot"]
24
+ },
25
+ "goal": {
26
+ "type": "string",
27
+ "minLength": 1
28
+ },
29
+ "nongoals": {
30
+ "type": "array",
31
+ "items": { "type": "string" }
32
+ },
33
+ "acceptance": {
34
+ "type": "array",
35
+ "items": { "$ref": "#/$defs/acceptanceCriterion" }
36
+ },
37
+ "constraints": {
38
+ "type": "array",
39
+ "items": { "type": "string" }
40
+ },
41
+ "quality_gates": {
42
+ "type": "array",
43
+ "items": { "type": "string", "minLength": 1 }
44
+ },
45
+ "ac": {
46
+ "type": "object",
47
+ "required": ["quality"],
48
+ "properties": {
49
+ "quality": {
50
+ "enum": ["executable", "partial", "narrative"]
51
+ }
52
+ },
53
+ "additionalProperties": false
54
+ },
55
+ "playbook": {
56
+ "type": "string",
57
+ "minLength": 1
58
+ },
59
+ "playbook_steps": {
60
+ "type": "array",
61
+ "minItems": 1,
62
+ "items": { "$ref": "#/$defs/playbookStep" }
63
+ },
64
+ "runtime_dependencies": {
65
+ "type": "array",
66
+ "items": { "type": "string", "minLength": 1 }
67
+ },
68
+ "dependency_baseline": {
69
+ "type": "array",
70
+ "items": { "type": "string", "minLength": 1 }
71
+ },
72
+ "limits": { "$ref": "#/$defs/taskLimits" },
73
+ "current_module_id": {
74
+ "type": "string",
75
+ "minLength": 1
76
+ },
77
+ "research_network": { "enum": ["auto", "offline"] }
78
+ },
79
+ "dependentRequired": {
80
+ "playbook": ["playbook_steps"],
81
+ "playbook_steps": ["playbook"]
82
+ },
83
+ "$defs": {
84
+ "playbookStep": {
85
+ "type": "object",
86
+ "required": ["node", "text"],
87
+ "properties": {
88
+ "node": { "type": "string", "minLength": 1 },
89
+ "text": { "type": "string", "minLength": 1 },
90
+ "skip": { "type": "string", "minLength": 1 }
91
+ },
92
+ "additionalProperties": false
93
+ },
94
+ "taskLimits": {
95
+ "type": "object",
96
+ "properties": {
97
+ "maxSteps": { "type": "integer", "minimum": 1 },
98
+ "maxNodeRuns": { "type": "integer", "minimum": 1 },
99
+ "maxConcurrency": { "type": "integer", "minimum": 1 },
100
+ "maxRounds": { "type": "integer", "minimum": 1 },
101
+ "maxTransientRetries": { "type": "integer", "minimum": 1 },
102
+ "maxCostUsd": { "type": "number", "exclusiveMinimum": 0 },
103
+ "timeoutMs": { "type": "number", "minimum": 1 }
104
+ },
105
+ "additionalProperties": false
106
+ },
107
+ "acceptanceCriterion": {
108
+ "type": "object",
109
+ "required": ["id", "statement", "required"],
110
+ "properties": {
111
+ "id": { "type": "string", "minLength": 1 },
112
+ "statement": { "type": "string", "minLength": 1 },
113
+ "required": { "type": "boolean" },
114
+ "check": { "$ref": "#/$defs/acceptanceCheck" },
115
+ "bounds": { "$ref": "#/$defs/acceptanceBounds" }
116
+ },
117
+ "additionalProperties": false
118
+ },
119
+ "acceptanceCheck": {
120
+ "type": "object",
121
+ "required": ["kind"],
122
+ "properties": {
123
+ "kind": {
124
+ "enum": [
125
+ "command",
126
+ "file_exists",
127
+ "file_absent",
128
+ "grep_empty",
129
+ "grep_matches",
130
+ "json_path",
131
+ "http_probe"
132
+ ]
133
+ },
134
+ "cmd": { "type": "string", "minLength": 1 },
135
+ "expect": {
136
+ "type": "object",
137
+ "properties": {
138
+ "exit": { "type": "integer" },
139
+ "stdout_includes": {
140
+ "type": "array",
141
+ "items": { "type": "string" }
142
+ }
143
+ },
144
+ "additionalProperties": false
145
+ }
146
+ },
147
+ "additionalProperties": true
148
+ },
149
+ "acceptanceBounds": {
150
+ "type": "object",
151
+ "properties": {
152
+ "write_allow": {
153
+ "type": "array",
154
+ "items": { "type": "string", "minLength": 1 }
155
+ },
156
+ "write_deny": {
157
+ "type": "array",
158
+ "items": { "type": "string", "minLength": 1 }
159
+ }
160
+ },
161
+ "additionalProperties": false
162
+ }
163
+ },
164
+ "additionalProperties": false
165
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "verdict.schema.json",
4
+ "title": "K-pi verdict",
5
+ "type": "object",
6
+ "required": [
7
+ "status",
8
+ "approved",
9
+ "blockingIssues",
10
+ "nonBlockingIssues",
11
+ "evidence",
12
+ "round",
13
+ "output_fingerprint"
14
+ ],
15
+ "properties": {
16
+ "status": {
17
+ "enum": ["PASS", "REVISE", "BLOCKED"]
18
+ },
19
+ "approved": {
20
+ "type": "boolean"
21
+ },
22
+ "blockingIssues": {
23
+ "type": "array",
24
+ "items": { "type": "string" }
25
+ },
26
+ "nonBlockingIssues": {
27
+ "type": "array",
28
+ "items": { "type": "string" }
29
+ },
30
+ "evidence": {
31
+ "type": "array",
32
+ "items": { "type": "string" }
33
+ },
34
+ "round": {
35
+ "type": "integer",
36
+ "minimum": 0
37
+ },
38
+ "output_fingerprint": {
39
+ "type": "string",
40
+ "pattern": "^sha256:[0-9a-f]{64}$"
41
+ }
42
+ },
43
+ "additionalProperties": false
44
+ }
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: concise-output
3
+ description: Use whenever writing to the user.
4
+ ---
5
+
6
+ # Concise output
7
+
8
+ Lead with the verdict. Then give only relevant paths, commands, evidence, and the next action.
9
+
10
+ Do not narrate routine work, restate the request, or reproduce board state in chat. Never claim completion without fresh verification.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: context-pack
3
+ description: Use at job start to freeze the minimum repository and task context needed by graph workers.
4
+ ---
5
+
6
+ # Context pack
7
+
8
+ Build run-scoped `context.md` from the goal or frozen plan, applicable `AGENTS.md`, repository structure, relevant existing patterns, constraints, and quality gates. Prefer file-backed facts over conversation memory. Include exact source paths and omit secrets, generated output, unrelated files, and speculative decisions.
9
+
10
+ Once execution begins, acceptance criteria and frozen plan fingerprints do not change. A mismatch requires a plan check or human decision.
@@ -0,0 +1,12 @@
1
+ ---
2
+ name: conventional-commit
3
+ description: Use only in the ship node after gated approval to create the local commit.
4
+ ---
5
+
6
+ # Conventional commit
7
+
8
+ Create exactly one local commit for the approved candidate. Its subject must match:
9
+
10
+ `^(feat|fix|docs|refactor|test|chore)(\(.+\))?: `
11
+
12
+ Choose the narrowest accurate type and optional scope. Use an imperative summary tied to the frozen goal. Do not amend unrelated history, push, deploy, or include files outside the approved candidate.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: isolated-review
3
+ description: Use in the isolated, read-only reviewer node after fresh verification evidence exists.
4
+ ---
5
+
6
+ # Isolated review
7
+
8
+ Read the frozen task, candidate, current diff, and HEAD-bound evidence without relying on implementer conversation. Check every required acceptance criterion, write bounds, and claimed command result. Do not modify repository files.
9
+
10
+ Return only a verdict matching `schemas/verdict.schema.json`. `approved` is true only when status is `PASS`, blocking issues are empty, required evidence is fresh, and bounds held. Cite concrete paths or receipts in `evidence`.
@@ -0,0 +1,26 @@
1
+ ---
2
+ name: kg-claim
3
+ description: Use when a decision should outlive the run, to propose a source-backed knowledge graph claim through the inbox.
4
+ ---
5
+
6
+ # KG claim
7
+
8
+ A claim that outlives the run is a record, not a sentence in chat. Propose it with `kg_propose`, which writes one patch to `.kpi/kg/inbox/`. The control plane is the only authoritative writer: it snapshots the prior state, validates the patch, stamps the next revision, and appends to `.kpi/kg/{nodes,edges,sources}.jsonl`.
9
+
10
+ Never write those files, and never write `.kpi/kg/snapshots/`. Policy denies it, and a direct write would break the one-writer rule the store depends on.
11
+
12
+ ## Patch contract
13
+
14
+ One patch carries a `source`, a `node`, an `edge`, or any combination, applied in that order so an edge may cite a source and a node the same patch adds.
15
+
16
+ Every record carries `id`, `kind`, `source_ids`, `status`, `observed_at`. The control plane assigns `rev`; state one only when you mean the exact next revision.
17
+
18
+ - `status` is `proposed | verified | rejected | superseded`. A claim you have not verified is `proposed`.
19
+ - `observed_at` is an RFC 3339 instant, and `valid_from` / `valid_to` bound a claim that is only true for a period.
20
+ - A `source` also carries `uri`. Register the source before, or in the same patch as, the claim that cites it.
21
+ - A `node` and an `edge` must cite at least one existing source id. An unresolvable `source_ids` entry is rejected.
22
+ - An `edge` also carries `from` and `to`, which must name known nodes, plus `confidence` between 0 and 1 when the edge is inferred rather than observed.
23
+
24
+ ## When not to claim
25
+
26
+ Skip the claim for anything the run already records: acceptance criteria, evidence, verdicts, and commits live in the run store. Claim the durable decision and the source that justifies it.
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: minimalist
3
+ description: Choose the smallest correct implementation before changing files
4
+ ---
5
+
6
+ # Minimalist
7
+
8
+ Adapted from Alireza Rezvani's `engineering/minimalist` skill under the MIT License.
9
+
10
+ Before the first implementation change, write `candidate.json.ladder` with `ladder`, `used`, and `skipped`.
11
+
12
+ Stop at the first rung that holds:
13
+
14
+ 1. YAGNI: do not build an unrequested capability.
15
+ 2. Reuse: use the repository's existing implementation.
16
+ 3. Standard library: use it directly.
17
+ 4. Native platform: prefer the runtime or operating system primitive.
18
+ 5. Existing dependency: use only dependencies already declared.
19
+ 6. One-liner: do not create a helper for one expression.
20
+ 7. Minimum code: write the smallest correct implementation.
21
+
22
+ No new runtime dependency unless `task.json` explicitly names it. No utility module before a second caller. Proof gates still apply.
23
+
24
+ Copyright © Alireza Rezvani. MIT License.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: quality-gates
3
+ description: Use in tester and verify nodes to produce mechanical, HEAD-bound evidence.
4
+ ---
5
+
6
+ # Quality gates
7
+
8
+ Read `task.json.quality_gates`; those exact commands are authoritative and originate from project `AGENTS.md`. Run every required acceptance check and quality gate. Record command, exit code, concise excerpt, current HEAD, and per-criterion result in `evidence.json`.
9
+
10
+ Any required non-zero command or stale HEAD is red. Never replace a required command with an easier proxy, infer success from model output, or omit a failing receipt.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: spec-first
3
+ description: Use for a non-trivial feature when frozen requirements, design, and tasks do not exist yet.
4
+ ---
5
+
6
+ # Spec first
7
+
8
+ Research repository behavior and existing conventions before planning. Write `specs/<id>/requirements.md`, `design.md`, and `tasks.md` before implementation. Requirements include observable acceptance criteria, constraints, and non-goals. Design identifies existing extension points and risks. Tasks are ordered vertical slices with explicit checks and write bounds.
9
+
10
+ Do not implement production code. Do not invent evidence or mark narrative criteria executable.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: tdd-cycle
3
+ description: Use when the implementer writes or changes production behavior.
4
+ ---
5
+
6
+ # TDD cycle
7
+
8
+ For non-trivial behavior, add or update the smallest test that expresses the frozen acceptance criterion. Run it before production changes and preserve the failing command, exit code, and relevant output in `evidence.json`. Implement only enough to make that behavior pass, then rerun the focused test.
9
+
10
+ Never weaken an assertion to obtain green. Keep deterministic tests isolated and full-suite safe. A one-line fix may skip the red step only when `task.json` identifies it as trivial.
@@ -0,0 +1,31 @@
1
+ # Project instructions
2
+
3
+ ## Commands
4
+
5
+ - Setup: `<setup-command>`
6
+ - Test: `<test-command>`
7
+ - Lint: `<lint-command>`
8
+ - Typecheck: `<typecheck-command>`
9
+
10
+ ## Quality gates
11
+
12
+ Before completion, run `<test-command>`, `<lint-command>`, and `<typecheck-command>`. Record their outputs in the active run evidence.
13
+
14
+ ## Do not
15
+
16
+ - Edit outside the active task bounds.
17
+ - Push, deploy, delete production data, or expose secrets.
18
+ - Add a runtime dependency unless the task contract names it.
19
+ - Claim completion without fresh verification.
20
+
21
+ ## Loop protocol
22
+
23
+ 1. Read the task, research, plan, and current run files.
24
+ 2. Record the minimalist ladder decision before editing.
25
+ 3. Implement only the current vertical slice.
26
+ 4. Run the acceptance checks and quality gates.
27
+ 5. Leave irreversible actions to the outer loop.
28
+
29
+ ## Voice
30
+
31
+ Keep user-visible answers short: verdict, paths, commands, next action.
@@ -0,0 +1,13 @@
1
+ # K-π outer-loop instructions
2
+
3
+ Keep Pi's default system instructions active and apply this file in addition.
4
+
5
+ The outer loop owns node order, return paths, approval gates, and terminal state. Workers produce contract files; they do not declare the run complete.
6
+
7
+ Keep user-visible answers short: verdict, paths, commands, next action. Do not narrate routine work or reproduce the control board in chat.
8
+
9
+ Do not claim completion unless the responsible node ran and fresh verification exists. Prefer `task.json`, `candidate.json`, `evidence.json`, `verdict.json`, and `state.json` over guesses or chat memory.
10
+
11
+ Irreversible external actions require a human gate or an evidence-backed deterministic `release.set` permitted by policy.
12
+
13
+ Before attaching a new Anthropic subscription slot, show the extra-usage warning in the package accounts contract: harness usage may incur per-token extra usage and is not the in-app plan bar.
@@ -0,0 +1,7 @@
1
+ # Product context
2
+
3
+ - Product: `<product-name>`
4
+ - Users: `<primary-users>`
5
+ - Goal: `<current-product-goal>`
6
+ - Non-goals: `<explicit-non-goals>`
7
+ - Acceptance criteria: `<executable-acceptance-criteria>`
@@ -0,0 +1,7 @@
1
+ # Structure context
2
+
3
+ - Source root: `<source-root>`
4
+ - Capability folders: `<folder-map>`
5
+ - Public interfaces: `<interface-paths>`
6
+ - Test twins: `<test-paths>`
7
+ - Active write bounds: `<allowed-paths>`
@@ -0,0 +1,9 @@
1
+ # Technology context
2
+
3
+ - Runtime: `<runtime-and-version>`
4
+ - Package manager: `<package-manager>`
5
+ - Frameworks: `<frameworks>`
6
+ - Setup: `<setup-command>`
7
+ - Test: `<test-command>`
8
+ - Lint: `<lint-command>`
9
+ - Typecheck: `<typecheck-command>`
@@ -0,0 +1,17 @@
1
+ {
2
+ "deny": [
3
+ "git push",
4
+ "git push --force",
5
+ "git reset --hard",
6
+ "rm -rf",
7
+ "chmod 777"
8
+ ],
9
+ "commit": {
10
+ "gated": "confirm",
11
+ "autopilot": "after-release"
12
+ },
13
+ "unknown": {
14
+ "gated": "confirm",
15
+ "autopilot": "deny"
16
+ }
17
+ }
@@ -0,0 +1,82 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/earendil-works/pi/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "loop-amber",
4
+ "vars": {
5
+ "accent": "#ff6a1a",
6
+ "success": "#3dff6a",
7
+ "error": "#ff3b3b",
8
+ "warning": "#ffb020",
9
+ "text": "#ddd7ce",
10
+ "muted": "#948b80",
11
+ "dim": "#625c54",
12
+ "borderMuted": "#3d3832",
13
+ "selectedBg": "#3a2519",
14
+ "userMessageBg": "#2b211b",
15
+ "customMessageBg": "#241f1b",
16
+ "toolPendingBg": "#2d211a",
17
+ "toolSuccessBg": "#19301f",
18
+ "toolErrorBg": "#351b1b"
19
+ },
20
+ "colors": {
21
+ "accent": "#ff6a1a",
22
+ "border": "#78401f",
23
+ "borderAccent": "#ff6a1a",
24
+ "borderMuted": "borderMuted",
25
+ "success": "#3dff6a",
26
+ "error": "#ff3b3b",
27
+ "warning": "#ffb020",
28
+ "muted": "muted",
29
+ "dim": "dim",
30
+ "text": "text",
31
+ "thinkingText": "muted",
32
+ "selectedBg": "selectedBg",
33
+ "scrollbarThumb": "selectedBg",
34
+ "searchMatchBg": "selectedBg",
35
+ "searchMatchText": "text",
36
+ "userMessageBg": "userMessageBg",
37
+ "userMessageText": "text",
38
+ "customMessageBg": "customMessageBg",
39
+ "customMessageText": "text",
40
+ "customMessageLabel": "#ff6a1a",
41
+ "toolPendingBg": "toolPendingBg",
42
+ "toolSuccessBg": "toolSuccessBg",
43
+ "toolErrorBg": "toolErrorBg",
44
+ "toolTitle": "#ff6a1a",
45
+ "toolOutput": "muted",
46
+ "mdHeading": "warning",
47
+ "mdLink": "accent",
48
+ "mdLinkUrl": "dim",
49
+ "mdCode": "#ff9154",
50
+ "mdCodeBlock": "success",
51
+ "mdCodeBlockBorder": "borderMuted",
52
+ "mdQuote": "muted",
53
+ "mdQuoteBorder": "#78401f",
54
+ "mdHr": "borderMuted",
55
+ "mdListBullet": "accent",
56
+ "toolDiffAdded": "success",
57
+ "toolDiffRemoved": "error",
58
+ "toolDiffContext": "muted",
59
+ "syntaxComment": "#7f766c",
60
+ "syntaxKeyword": "#ff8a4c",
61
+ "syntaxFunction": "#ffc06b",
62
+ "syntaxVariable": "#ddd7ce",
63
+ "syntaxString": "#d7b56d",
64
+ "syntaxNumber": "#a7d98b",
65
+ "syntaxType": "#72d6b0",
66
+ "syntaxOperator": "#ff9154",
67
+ "syntaxPunctuation": "#b7afa5",
68
+ "thinkingOff": "dim",
69
+ "thinkingMinimal": "#766d63",
70
+ "thinkingLow": "#9a5935",
71
+ "thinkingMedium": "#c45b20",
72
+ "thinkingHigh": "accent",
73
+ "thinkingXhigh": "#ff9a63",
74
+ "thinkingMax": "#ffc09c",
75
+ "bashMode": "success"
76
+ },
77
+ "export": {
78
+ "pageBg": "#0d0e0e",
79
+ "cardBg": "#151515",
80
+ "infoBg": "#2d211a"
81
+ }
82
+ }