@code-yeongyu/senpi 2026.5.19 → 2026.5.20-3

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 (589) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/bun/cli.d.ts.map +1 -1
  3. package/dist/bun/cli.js.map +1 -1
  4. package/dist/cli/args.d.ts +1 -1
  5. package/dist/cli/args.d.ts.map +1 -1
  6. package/dist/cli/args.js.map +1 -1
  7. package/dist/cli/config-selector.d.ts +2 -2
  8. package/dist/cli/config-selector.d.ts.map +1 -1
  9. package/dist/cli/config-selector.js.map +1 -1
  10. package/dist/cli/file-processor.d.ts.map +1 -1
  11. package/dist/cli/file-processor.js.map +1 -1
  12. package/dist/cli/initial-message.d.ts +1 -1
  13. package/dist/cli/initial-message.d.ts.map +1 -1
  14. package/dist/cli/initial-message.js.map +1 -1
  15. package/dist/cli/list-models.d.ts +1 -1
  16. package/dist/cli/list-models.d.ts.map +1 -1
  17. package/dist/cli/list-models.js.map +1 -1
  18. package/dist/cli/session-picker.d.ts +1 -1
  19. package/dist/cli/session-picker.d.ts.map +1 -1
  20. package/dist/cli/session-picker.js.map +1 -1
  21. package/dist/cli.d.ts.map +1 -1
  22. package/dist/cli.js.map +1 -1
  23. package/dist/config.d.ts.map +1 -1
  24. package/dist/config.js.map +1 -1
  25. package/dist/core/agent-session-runtime.d.ts +9 -9
  26. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  27. package/dist/core/agent-session-runtime.js +2 -2
  28. package/dist/core/agent-session-runtime.js.map +1 -1
  29. package/dist/core/agent-session-services.d.ts +8 -8
  30. package/dist/core/agent-session-services.d.ts.map +1 -1
  31. package/dist/core/agent-session-services.js.map +1 -1
  32. package/dist/core/agent-session.d.ts +23 -14
  33. package/dist/core/agent-session.d.ts.map +1 -1
  34. package/dist/core/agent-session.js +36 -6
  35. package/dist/core/agent-session.js.map +1 -1
  36. package/dist/core/auth-guidance.d.ts.map +1 -1
  37. package/dist/core/auth-guidance.js.map +1 -1
  38. package/dist/core/auth-storage.d.ts +1 -1
  39. package/dist/core/auth-storage.d.ts.map +1 -1
  40. package/dist/core/auth-storage.js +1 -1
  41. package/dist/core/auth-storage.js.map +1 -1
  42. package/dist/core/bash-executor.d.ts +1 -1
  43. package/dist/core/bash-executor.d.ts.map +1 -1
  44. package/dist/core/bash-executor.js.map +1 -1
  45. package/dist/core/compaction/branch-summarization.d.ts +4 -4
  46. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  47. package/dist/core/compaction/branch-summarization.js.map +1 -1
  48. package/dist/core/compaction/compaction.d.ts +2 -2
  49. package/dist/core/compaction/compaction.d.ts.map +1 -1
  50. package/dist/core/compaction/compaction.js.map +1 -1
  51. package/dist/core/compaction/index.d.ts +3 -3
  52. package/dist/core/compaction/index.d.ts.map +1 -1
  53. package/dist/core/compaction/index.js.map +1 -1
  54. package/dist/core/compaction/utils.d.ts.map +1 -1
  55. package/dist/core/compaction/utils.js.map +1 -1
  56. package/dist/core/dynamic-prompt/build.d.ts +1 -1
  57. package/dist/core/dynamic-prompt/build.d.ts.map +1 -1
  58. package/dist/core/dynamic-prompt/build.js.map +1 -1
  59. package/dist/core/dynamic-prompt/index.d.ts +12 -12
  60. package/dist/core/dynamic-prompt/index.d.ts.map +1 -1
  61. package/dist/core/dynamic-prompt/index.js.map +1 -1
  62. package/dist/core/dynamic-prompt/intent-gate.d.ts +1 -1
  63. package/dist/core/dynamic-prompt/intent-gate.d.ts.map +1 -1
  64. package/dist/core/dynamic-prompt/intent-gate.js.map +1 -1
  65. package/dist/core/dynamic-prompt/tool-categorization.d.ts +1 -1
  66. package/dist/core/dynamic-prompt/tool-categorization.d.ts.map +1 -1
  67. package/dist/core/dynamic-prompt/tool-categorization.js.map +1 -1
  68. package/dist/core/dynamic-prompt/tool-section.d.ts +1 -1
  69. package/dist/core/dynamic-prompt/tool-section.d.ts.map +1 -1
  70. package/dist/core/dynamic-prompt/tool-section.js.map +1 -1
  71. package/dist/core/exec.d.ts.map +1 -1
  72. package/dist/core/exec.js.map +1 -1
  73. package/dist/core/export-html/index.d.ts +1 -1
  74. package/dist/core/export-html/index.d.ts.map +1 -1
  75. package/dist/core/export-html/index.js.map +1 -1
  76. package/dist/core/export-html/template.css +1108 -0
  77. package/dist/core/export-html/template.html +55 -0
  78. package/dist/core/export-html/template.js +1871 -0
  79. package/dist/core/export-html/tool-renderer.d.ts +2 -2
  80. package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
  81. package/dist/core/export-html/tool-renderer.js.map +1 -1
  82. package/dist/core/export-html/vendor/highlight.min.js +1213 -0
  83. package/dist/core/export-html/vendor/marked.min.js +6 -0
  84. package/dist/core/extensions/builtin/anthropic-bash/index.d.ts +1 -1
  85. package/dist/core/extensions/builtin/anthropic-bash/index.d.ts.map +1 -1
  86. package/dist/core/extensions/builtin/anthropic-bash/index.js.map +1 -1
  87. package/dist/core/extensions/builtin/anthropic-web-search/index.d.ts +1 -1
  88. package/dist/core/extensions/builtin/anthropic-web-search/index.d.ts.map +1 -1
  89. package/dist/core/extensions/builtin/anthropic-web-search/index.js.map +1 -1
  90. package/dist/core/extensions/builtin/bash-timeout/index.d.ts +3 -3
  91. package/dist/core/extensions/builtin/bash-timeout/index.d.ts.map +1 -1
  92. package/dist/core/extensions/builtin/bash-timeout/index.js.map +1 -1
  93. package/dist/core/extensions/builtin/compaction/checkpoint-state.d.ts +1 -1
  94. package/dist/core/extensions/builtin/compaction/checkpoint-state.d.ts.map +1 -1
  95. package/dist/core/extensions/builtin/compaction/checkpoint-state.js.map +1 -1
  96. package/dist/core/extensions/builtin/compaction/circuit-breaker.d.ts +2 -2
  97. package/dist/core/extensions/builtin/compaction/circuit-breaker.d.ts.map +1 -1
  98. package/dist/core/extensions/builtin/compaction/circuit-breaker.js.map +1 -1
  99. package/dist/core/extensions/builtin/compaction/index.d.ts +1 -1
  100. package/dist/core/extensions/builtin/compaction/index.d.ts.map +1 -1
  101. package/dist/core/extensions/builtin/compaction/index.js.map +1 -1
  102. package/dist/core/extensions/builtin/compaction/openai-remote.d.ts +4 -3
  103. package/dist/core/extensions/builtin/compaction/openai-remote.d.ts.map +1 -1
  104. package/dist/core/extensions/builtin/compaction/openai-remote.js +88 -17
  105. package/dist/core/extensions/builtin/compaction/openai-remote.js.map +1 -1
  106. package/dist/core/extensions/builtin/compaction/per-turn-cap.d.ts +2 -2
  107. package/dist/core/extensions/builtin/compaction/per-turn-cap.d.ts.map +1 -1
  108. package/dist/core/extensions/builtin/compaction/per-turn-cap.js.map +1 -1
  109. package/dist/core/extensions/builtin/compaction/policy.d.ts +2 -2
  110. package/dist/core/extensions/builtin/compaction/policy.d.ts.map +1 -1
  111. package/dist/core/extensions/builtin/compaction/policy.js.map +1 -1
  112. package/dist/core/extensions/builtin/compaction/restoration-tracker.d.ts +1 -1
  113. package/dist/core/extensions/builtin/compaction/restoration-tracker.d.ts.map +1 -1
  114. package/dist/core/extensions/builtin/compaction/restoration-tracker.js.map +1 -1
  115. package/dist/core/extensions/builtin/compaction/speculative.d.ts +5 -5
  116. package/dist/core/extensions/builtin/compaction/speculative.d.ts.map +1 -1
  117. package/dist/core/extensions/builtin/compaction/speculative.js.map +1 -1
  118. package/dist/core/extensions/builtin/compaction/state.d.ts +1 -1
  119. package/dist/core/extensions/builtin/compaction/state.d.ts.map +1 -1
  120. package/dist/core/extensions/builtin/compaction/state.js.map +1 -1
  121. package/dist/core/extensions/builtin/compaction/todo-bridge.d.ts +2 -2
  122. package/dist/core/extensions/builtin/compaction/todo-bridge.d.ts.map +1 -1
  123. package/dist/core/extensions/builtin/compaction/todo-bridge.js.map +1 -1
  124. package/dist/core/extensions/builtin/diff.d.ts +1 -1
  125. package/dist/core/extensions/builtin/diff.d.ts.map +1 -1
  126. package/dist/core/extensions/builtin/diff.js.map +1 -1
  127. package/dist/core/extensions/builtin/files.d.ts +1 -1
  128. package/dist/core/extensions/builtin/files.d.ts.map +1 -1
  129. package/dist/core/extensions/builtin/files.js.map +1 -1
  130. package/dist/core/extensions/builtin/gpt-apply-patch/apply.d.ts +1 -1
  131. package/dist/core/extensions/builtin/gpt-apply-patch/apply.d.ts.map +1 -1
  132. package/dist/core/extensions/builtin/gpt-apply-patch/apply.js.map +1 -1
  133. package/dist/core/extensions/builtin/gpt-apply-patch/errors.d.ts +1 -1
  134. package/dist/core/extensions/builtin/gpt-apply-patch/errors.d.ts.map +1 -1
  135. package/dist/core/extensions/builtin/gpt-apply-patch/errors.js.map +1 -1
  136. package/dist/core/extensions/builtin/gpt-apply-patch/extension.d.ts +1 -1
  137. package/dist/core/extensions/builtin/gpt-apply-patch/extension.d.ts.map +1 -1
  138. package/dist/core/extensions/builtin/gpt-apply-patch/extension.js.map +1 -1
  139. package/dist/core/extensions/builtin/gpt-apply-patch/index.d.ts +11 -11
  140. package/dist/core/extensions/builtin/gpt-apply-patch/index.d.ts.map +1 -1
  141. package/dist/core/extensions/builtin/gpt-apply-patch/index.js.map +1 -1
  142. package/dist/core/extensions/builtin/gpt-apply-patch/params.d.ts +1 -1
  143. package/dist/core/extensions/builtin/gpt-apply-patch/params.d.ts.map +1 -1
  144. package/dist/core/extensions/builtin/gpt-apply-patch/params.js.map +1 -1
  145. package/dist/core/extensions/builtin/gpt-apply-patch/parser.d.ts +1 -1
  146. package/dist/core/extensions/builtin/gpt-apply-patch/parser.d.ts.map +1 -1
  147. package/dist/core/extensions/builtin/gpt-apply-patch/parser.js.map +1 -1
  148. package/dist/core/extensions/builtin/gpt-apply-patch/patch-replace.d.ts +1 -1
  149. package/dist/core/extensions/builtin/gpt-apply-patch/patch-replace.d.ts.map +1 -1
  150. package/dist/core/extensions/builtin/gpt-apply-patch/patch-replace.js.map +1 -1
  151. package/dist/core/extensions/builtin/gpt-apply-patch/preview-format.d.ts +1 -1
  152. package/dist/core/extensions/builtin/gpt-apply-patch/preview-format.d.ts.map +1 -1
  153. package/dist/core/extensions/builtin/gpt-apply-patch/preview-format.js.map +1 -1
  154. package/dist/core/extensions/builtin/gpt-apply-patch/preview.d.ts +1 -1
  155. package/dist/core/extensions/builtin/gpt-apply-patch/preview.d.ts.map +1 -1
  156. package/dist/core/extensions/builtin/gpt-apply-patch/preview.js.map +1 -1
  157. package/dist/core/extensions/builtin/gpt-apply-patch/streaming-parser.d.ts +1 -1
  158. package/dist/core/extensions/builtin/gpt-apply-patch/streaming-parser.d.ts.map +1 -1
  159. package/dist/core/extensions/builtin/gpt-apply-patch/streaming-parser.js.map +1 -1
  160. package/dist/core/extensions/builtin/gpt-apply-patch/streaming-render.d.ts +1 -1
  161. package/dist/core/extensions/builtin/gpt-apply-patch/streaming-render.d.ts.map +1 -1
  162. package/dist/core/extensions/builtin/gpt-apply-patch/streaming-render.js.map +1 -1
  163. package/dist/core/extensions/builtin/gpt-apply-patch/tool.d.ts +1 -1
  164. package/dist/core/extensions/builtin/gpt-apply-patch/tool.d.ts.map +1 -1
  165. package/dist/core/extensions/builtin/gpt-apply-patch/tool.js.map +1 -1
  166. package/dist/core/extensions/builtin/gpt-apply-patch/types.d.ts +2 -2
  167. package/dist/core/extensions/builtin/gpt-apply-patch/types.d.ts.map +1 -1
  168. package/dist/core/extensions/builtin/gpt-apply-patch/types.js.map +1 -1
  169. package/dist/core/extensions/builtin/index.d.ts +5 -5
  170. package/dist/core/extensions/builtin/index.d.ts.map +1 -1
  171. package/dist/core/extensions/builtin/index.js +2 -0
  172. package/dist/core/extensions/builtin/index.js.map +1 -1
  173. package/dist/core/extensions/builtin/kimi-web-search/index.d.ts +3 -0
  174. package/dist/core/extensions/builtin/kimi-web-search/index.d.ts.map +1 -0
  175. package/dist/core/extensions/builtin/kimi-web-search/index.js +208 -0
  176. package/dist/core/extensions/builtin/kimi-web-search/index.js.map +1 -0
  177. package/dist/core/extensions/builtin/openai-web-search/index.d.ts +1 -1
  178. package/dist/core/extensions/builtin/openai-web-search/index.d.ts.map +1 -1
  179. package/dist/core/extensions/builtin/openai-web-search/index.js.map +1 -1
  180. package/dist/core/extensions/builtin/permission-system/arity.d.ts +3 -3
  181. package/dist/core/extensions/builtin/permission-system/arity.d.ts.map +1 -1
  182. package/dist/core/extensions/builtin/permission-system/arity.js +155 -158
  183. package/dist/core/extensions/builtin/permission-system/arity.js.map +1 -1
  184. package/dist/core/extensions/builtin/permission-system/cli.d.ts +2 -2
  185. package/dist/core/extensions/builtin/permission-system/cli.d.ts.map +1 -1
  186. package/dist/core/extensions/builtin/permission-system/cli.js.map +1 -1
  187. package/dist/core/extensions/builtin/permission-system/config.d.ts +1 -1
  188. package/dist/core/extensions/builtin/permission-system/config.d.ts.map +1 -1
  189. package/dist/core/extensions/builtin/permission-system/config.js.map +1 -1
  190. package/dist/core/extensions/builtin/permission-system/evaluate.d.ts +1 -1
  191. package/dist/core/extensions/builtin/permission-system/evaluate.d.ts.map +1 -1
  192. package/dist/core/extensions/builtin/permission-system/evaluate.js.map +1 -1
  193. package/dist/core/extensions/builtin/permission-system/events.d.ts +2 -2
  194. package/dist/core/extensions/builtin/permission-system/events.d.ts.map +1 -1
  195. package/dist/core/extensions/builtin/permission-system/events.js.map +1 -1
  196. package/dist/core/extensions/builtin/permission-system/index.d.ts +1 -1
  197. package/dist/core/extensions/builtin/permission-system/index.d.ts.map +1 -1
  198. package/dist/core/extensions/builtin/permission-system/index.js.map +1 -1
  199. package/dist/core/extensions/builtin/permission-system/non-interactive.d.ts +1 -1
  200. package/dist/core/extensions/builtin/permission-system/non-interactive.d.ts.map +1 -1
  201. package/dist/core/extensions/builtin/permission-system/non-interactive.js.map +1 -1
  202. package/dist/core/extensions/builtin/permission-system/parsers.d.ts +1 -1
  203. package/dist/core/extensions/builtin/permission-system/parsers.d.ts.map +1 -1
  204. package/dist/core/extensions/builtin/permission-system/parsers.js.map +1 -1
  205. package/dist/core/extensions/builtin/permission-system/prompt.d.ts +2 -2
  206. package/dist/core/extensions/builtin/permission-system/prompt.d.ts.map +1 -1
  207. package/dist/core/extensions/builtin/permission-system/prompt.js.map +1 -1
  208. package/dist/core/extensions/builtin/permission-system/service.d.ts +2 -2
  209. package/dist/core/extensions/builtin/permission-system/service.d.ts.map +1 -1
  210. package/dist/core/extensions/builtin/permission-system/service.js.map +1 -1
  211. package/dist/core/extensions/builtin/permission-system/settings.d.ts +2 -2
  212. package/dist/core/extensions/builtin/permission-system/settings.d.ts.map +1 -1
  213. package/dist/core/extensions/builtin/permission-system/settings.js.map +1 -1
  214. package/dist/core/extensions/builtin/permission-system/storage.d.ts +1 -1
  215. package/dist/core/extensions/builtin/permission-system/storage.d.ts.map +1 -1
  216. package/dist/core/extensions/builtin/permission-system/storage.js.map +1 -1
  217. package/dist/core/extensions/builtin/permission-system/types.d.ts +2 -2
  218. package/dist/core/extensions/builtin/permission-system/types.d.ts.map +1 -1
  219. package/dist/core/extensions/builtin/permission-system/types.js +4 -4
  220. package/dist/core/extensions/builtin/permission-system/types.js.map +1 -1
  221. package/dist/core/extensions/builtin/permission-system/wildcard.d.ts +3 -3
  222. package/dist/core/extensions/builtin/permission-system/wildcard.d.ts.map +1 -1
  223. package/dist/core/extensions/builtin/permission-system/wildcard.js +4 -7
  224. package/dist/core/extensions/builtin/permission-system/wildcard.js.map +1 -1
  225. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.d.ts +1 -1
  226. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.d.ts.map +1 -1
  227. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.js.map +1 -1
  228. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.d.ts +1 -1
  229. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.d.ts.map +1 -1
  230. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.js.map +1 -1
  231. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.d.ts +1 -1
  232. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.d.ts.map +1 -1
  233. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.js.map +1 -1
  234. package/dist/core/extensions/builtin/prompt-preset/gpt-5.2.d.ts +1 -1
  235. package/dist/core/extensions/builtin/prompt-preset/gpt-5.2.d.ts.map +1 -1
  236. package/dist/core/extensions/builtin/prompt-preset/gpt-5.2.js.map +1 -1
  237. package/dist/core/extensions/builtin/prompt-preset/gpt-5.3-codex.d.ts +1 -1
  238. package/dist/core/extensions/builtin/prompt-preset/gpt-5.3-codex.d.ts.map +1 -1
  239. package/dist/core/extensions/builtin/prompt-preset/gpt-5.3-codex.js.map +1 -1
  240. package/dist/core/extensions/builtin/prompt-preset/gpt-5.4.d.ts +1 -1
  241. package/dist/core/extensions/builtin/prompt-preset/gpt-5.4.d.ts.map +1 -1
  242. package/dist/core/extensions/builtin/prompt-preset/gpt-5.4.js.map +1 -1
  243. package/dist/core/extensions/builtin/prompt-preset/gpt-5.5.d.ts +1 -1
  244. package/dist/core/extensions/builtin/prompt-preset/gpt-5.5.d.ts.map +1 -1
  245. package/dist/core/extensions/builtin/prompt-preset/gpt-5.5.js.map +1 -1
  246. package/dist/core/extensions/builtin/prompt-preset/gpt-5.d.ts +1 -1
  247. package/dist/core/extensions/builtin/prompt-preset/gpt-5.d.ts.map +1 -1
  248. package/dist/core/extensions/builtin/prompt-preset/gpt-5.js.map +1 -1
  249. package/dist/core/extensions/builtin/prompt-preset/index.d.ts +1 -1
  250. package/dist/core/extensions/builtin/prompt-preset/index.d.ts.map +1 -1
  251. package/dist/core/extensions/builtin/prompt-preset/index.js.map +1 -1
  252. package/dist/core/extensions/builtin/prompt-preset/kimi-k2-6.d.ts +1 -1
  253. package/dist/core/extensions/builtin/prompt-preset/kimi-k2-6.d.ts.map +1 -1
  254. package/dist/core/extensions/builtin/prompt-preset/kimi-k2-6.js.map +1 -1
  255. package/dist/core/extensions/builtin/prompt-preset/presets.d.ts +3 -3
  256. package/dist/core/extensions/builtin/prompt-preset/presets.d.ts.map +1 -1
  257. package/dist/core/extensions/builtin/prompt-preset/presets.js.map +1 -1
  258. package/dist/core/extensions/builtin/prompt-preset/settings.d.ts +1 -1
  259. package/dist/core/extensions/builtin/prompt-preset/settings.d.ts.map +1 -1
  260. package/dist/core/extensions/builtin/prompt-preset/settings.js.map +1 -1
  261. package/dist/core/extensions/builtin/prompt-url-widget.d.ts +1 -1
  262. package/dist/core/extensions/builtin/prompt-url-widget.d.ts.map +1 -1
  263. package/dist/core/extensions/builtin/prompt-url-widget.js.map +1 -1
  264. package/dist/core/extensions/builtin/redraws.d.ts +1 -1
  265. package/dist/core/extensions/builtin/redraws.d.ts.map +1 -1
  266. package/dist/core/extensions/builtin/redraws.js.map +1 -1
  267. package/dist/core/extensions/builtin/service-tier.d.ts +1 -1
  268. package/dist/core/extensions/builtin/service-tier.d.ts.map +1 -1
  269. package/dist/core/extensions/builtin/service-tier.js.map +1 -1
  270. package/dist/core/extensions/builtin/system-messages.d.ts +2 -2
  271. package/dist/core/extensions/builtin/system-messages.d.ts.map +1 -1
  272. package/dist/core/extensions/builtin/system-messages.js.map +1 -1
  273. package/dist/core/extensions/builtin/todotools/continuation/index.d.ts +1 -1
  274. package/dist/core/extensions/builtin/todotools/continuation/index.d.ts.map +1 -1
  275. package/dist/core/extensions/builtin/todotools/continuation/index.js.map +1 -1
  276. package/dist/core/extensions/builtin/todotools/continuation/prompt.d.ts +1 -1
  277. package/dist/core/extensions/builtin/todotools/continuation/prompt.d.ts.map +1 -1
  278. package/dist/core/extensions/builtin/todotools/continuation/prompt.js.map +1 -1
  279. package/dist/core/extensions/builtin/todotools/continuation/runtime.d.ts +2 -2
  280. package/dist/core/extensions/builtin/todotools/continuation/runtime.d.ts.map +1 -1
  281. package/dist/core/extensions/builtin/todotools/continuation/runtime.js.map +1 -1
  282. package/dist/core/extensions/builtin/todotools/index.d.ts +3 -3
  283. package/dist/core/extensions/builtin/todotools/index.d.ts.map +1 -1
  284. package/dist/core/extensions/builtin/todotools/index.js.map +1 -1
  285. package/dist/core/extensions/builtin/todotools/state.d.ts.map +1 -1
  286. package/dist/core/extensions/builtin/todotools/state.js.map +1 -1
  287. package/dist/core/extensions/builtin/todotools/system-messages.d.ts +1 -1
  288. package/dist/core/extensions/builtin/todotools/system-messages.d.ts.map +1 -1
  289. package/dist/core/extensions/builtin/todotools/system-messages.js.map +1 -1
  290. package/dist/core/extensions/builtin/todotools/tools/todoread.d.ts +2 -2
  291. package/dist/core/extensions/builtin/todotools/tools/todoread.d.ts.map +1 -1
  292. package/dist/core/extensions/builtin/todotools/tools/todoread.js.map +1 -1
  293. package/dist/core/extensions/builtin/todotools/tools/todowrite.d.ts +2 -2
  294. package/dist/core/extensions/builtin/todotools/tools/todowrite.d.ts.map +1 -1
  295. package/dist/core/extensions/builtin/todotools/tools/todowrite.js.map +1 -1
  296. package/dist/core/extensions/builtin/tool-pair-guard/index.d.ts +1 -1
  297. package/dist/core/extensions/builtin/tool-pair-guard/index.d.ts.map +1 -1
  298. package/dist/core/extensions/builtin/tool-pair-guard/index.js.map +1 -1
  299. package/dist/core/extensions/builtin/tps.d.ts +1 -1
  300. package/dist/core/extensions/builtin/tps.d.ts.map +1 -1
  301. package/dist/core/extensions/builtin/tps.js.map +1 -1
  302. package/dist/core/extensions/index.d.ts +8 -8
  303. package/dist/core/extensions/index.d.ts.map +1 -1
  304. package/dist/core/extensions/index.js.map +1 -1
  305. package/dist/core/extensions/loader.d.ts +2 -2
  306. package/dist/core/extensions/loader.d.ts.map +1 -1
  307. package/dist/core/extensions/loader.js.map +1 -1
  308. package/dist/core/extensions/runner.d.ts +32 -6
  309. package/dist/core/extensions/runner.d.ts.map +1 -1
  310. package/dist/core/extensions/runner.js +109 -5
  311. package/dist/core/extensions/runner.js.map +1 -1
  312. package/dist/core/extensions/types.d.ts +19 -19
  313. package/dist/core/extensions/types.d.ts.map +1 -1
  314. package/dist/core/extensions/types.js.map +1 -1
  315. package/dist/core/extensions/wrapper.d.ts +2 -2
  316. package/dist/core/extensions/wrapper.d.ts.map +1 -1
  317. package/dist/core/extensions/wrapper.js.map +1 -1
  318. package/dist/core/footer-data-provider.d.ts.map +1 -1
  319. package/dist/core/footer-data-provider.js.map +1 -1
  320. package/dist/core/index.d.ts +8 -8
  321. package/dist/core/index.d.ts.map +1 -1
  322. package/dist/core/index.js.map +1 -1
  323. package/dist/core/keybindings.d.ts.map +1 -1
  324. package/dist/core/keybindings.js.map +1 -1
  325. package/dist/core/model-registry.d.ts +4 -4
  326. package/dist/core/model-registry.d.ts.map +1 -1
  327. package/dist/core/model-registry.js +2 -2
  328. package/dist/core/model-registry.js.map +1 -1
  329. package/dist/core/model-resolver.d.ts +2 -2
  330. package/dist/core/model-resolver.d.ts.map +1 -1
  331. package/dist/core/model-resolver.js.map +1 -1
  332. package/dist/core/package-manager.d.ts +1 -1
  333. package/dist/core/package-manager.d.ts.map +1 -1
  334. package/dist/core/package-manager.js.map +1 -1
  335. package/dist/core/prompt-templates.d.ts +1 -1
  336. package/dist/core/prompt-templates.d.ts.map +1 -1
  337. package/dist/core/prompt-templates.js.map +1 -1
  338. package/dist/core/resolve-config-value.d.ts.map +1 -1
  339. package/dist/core/resolve-config-value.js.map +1 -1
  340. package/dist/core/resource-loader.d.ts +9 -9
  341. package/dist/core/resource-loader.d.ts.map +1 -1
  342. package/dist/core/resource-loader.js.map +1 -1
  343. package/dist/core/sdk.d.ts +14 -14
  344. package/dist/core/sdk.d.ts.map +1 -1
  345. package/dist/core/sdk.js +7 -5
  346. package/dist/core/sdk.js.map +1 -1
  347. package/dist/core/session-manager.d.ts +1 -1
  348. package/dist/core/session-manager.d.ts.map +1 -1
  349. package/dist/core/session-manager.js.map +1 -1
  350. package/dist/core/settings-manager.d.ts +1 -1
  351. package/dist/core/settings-manager.d.ts.map +1 -1
  352. package/dist/core/settings-manager.js +2 -1
  353. package/dist/core/settings-manager.js.map +1 -1
  354. package/dist/core/skills.d.ts +2 -2
  355. package/dist/core/skills.d.ts.map +1 -1
  356. package/dist/core/skills.js.map +1 -1
  357. package/dist/core/slash-commands.d.ts +1 -1
  358. package/dist/core/slash-commands.d.ts.map +1 -1
  359. package/dist/core/slash-commands.js.map +1 -1
  360. package/dist/core/source-info.d.ts +1 -1
  361. package/dist/core/source-info.d.ts.map +1 -1
  362. package/dist/core/source-info.js.map +1 -1
  363. package/dist/core/system-prompt.d.ts +1 -1
  364. package/dist/core/system-prompt.d.ts.map +1 -1
  365. package/dist/core/system-prompt.js +1 -0
  366. package/dist/core/system-prompt.js.map +1 -1
  367. package/dist/core/telemetry.d.ts +1 -1
  368. package/dist/core/telemetry.d.ts.map +1 -1
  369. package/dist/core/telemetry.js.map +1 -1
  370. package/dist/core/tools/bash.d.ts +2 -2
  371. package/dist/core/tools/bash.d.ts.map +1 -1
  372. package/dist/core/tools/bash.js.map +1 -1
  373. package/dist/core/tools/diff-render.d.ts.map +1 -1
  374. package/dist/core/tools/diff-render.js.map +1 -1
  375. package/dist/core/tools/edit-diff.d.ts.map +1 -1
  376. package/dist/core/tools/edit-diff.js.map +1 -1
  377. package/dist/core/tools/edit.d.ts +2 -2
  378. package/dist/core/tools/edit.d.ts.map +1 -1
  379. package/dist/core/tools/edit.js.map +1 -1
  380. package/dist/core/tools/find.d.ts +2 -2
  381. package/dist/core/tools/find.d.ts.map +1 -1
  382. package/dist/core/tools/find.js.map +1 -1
  383. package/dist/core/tools/grep.d.ts +2 -2
  384. package/dist/core/tools/grep.d.ts.map +1 -1
  385. package/dist/core/tools/grep.js.map +1 -1
  386. package/dist/core/tools/index.d.ts +17 -17
  387. package/dist/core/tools/index.d.ts.map +1 -1
  388. package/dist/core/tools/index.js.map +1 -1
  389. package/dist/core/tools/ls.d.ts +2 -2
  390. package/dist/core/tools/ls.d.ts.map +1 -1
  391. package/dist/core/tools/ls.js.map +1 -1
  392. package/dist/core/tools/output-accumulator.d.ts +1 -1
  393. package/dist/core/tools/output-accumulator.d.ts.map +1 -1
  394. package/dist/core/tools/output-accumulator.js.map +1 -1
  395. package/dist/core/tools/read.d.ts +2 -2
  396. package/dist/core/tools/read.d.ts.map +1 -1
  397. package/dist/core/tools/read.js.map +1 -1
  398. package/dist/core/tools/render-utils.d.ts.map +1 -1
  399. package/dist/core/tools/render-utils.js.map +1 -1
  400. package/dist/core/tools/tool-definition-wrapper.d.ts +1 -1
  401. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  402. package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  403. package/dist/core/tools/write.d.ts +1 -1
  404. package/dist/core/tools/write.d.ts.map +1 -1
  405. package/dist/core/tools/write.js.map +1 -1
  406. package/dist/index.d.ts +28 -27
  407. package/dist/index.d.ts.map +1 -1
  408. package/dist/index.js +1 -0
  409. package/dist/index.js.map +1 -1
  410. package/dist/main.d.ts +1 -1
  411. package/dist/main.d.ts.map +1 -1
  412. package/dist/main.js +1 -0
  413. package/dist/main.js.map +1 -1
  414. package/dist/migrations.d.ts.map +1 -1
  415. package/dist/migrations.js.map +1 -1
  416. package/dist/modes/index.d.ts +5 -5
  417. package/dist/modes/index.d.ts.map +1 -1
  418. package/dist/modes/index.js.map +1 -1
  419. package/dist/modes/interactive/assets/clankolas.png +0 -0
  420. package/dist/modes/interactive/components/armin.d.ts.map +1 -1
  421. package/dist/modes/interactive/components/armin.js.map +1 -1
  422. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  423. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  424. package/dist/modes/interactive/components/bash-execution.d.ts +1 -1
  425. package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  426. package/dist/modes/interactive/components/bash-execution.js.map +1 -1
  427. package/dist/modes/interactive/components/bordered-loader.d.ts +1 -1
  428. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  429. package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  430. package/dist/modes/interactive/components/branch-summary-message.d.ts +1 -1
  431. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  432. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  433. package/dist/modes/interactive/components/compaction-summary-message.d.ts +1 -1
  434. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
  435. package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
  436. package/dist/modes/interactive/components/config-selector.d.ts +2 -2
  437. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  438. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  439. package/dist/modes/interactive/components/countdown-timer.d.ts +2 -2
  440. package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
  441. package/dist/modes/interactive/components/countdown-timer.js +2 -2
  442. package/dist/modes/interactive/components/countdown-timer.js.map +1 -1
  443. package/dist/modes/interactive/components/custom-editor.d.ts +1 -1
  444. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  445. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  446. package/dist/modes/interactive/components/custom-message.d.ts +2 -2
  447. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  448. package/dist/modes/interactive/components/custom-message.js.map +1 -1
  449. package/dist/modes/interactive/components/daxnuts.d.ts.map +1 -1
  450. package/dist/modes/interactive/components/daxnuts.js.map +1 -1
  451. package/dist/modes/interactive/components/diff.d.ts.map +1 -1
  452. package/dist/modes/interactive/components/diff.js.map +1 -1
  453. package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
  454. package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
  455. package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -1
  456. package/dist/modes/interactive/components/earendil-announcement.js.map +1 -1
  457. package/dist/modes/interactive/components/extension-editor.d.ts +1 -1
  458. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  459. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  460. package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
  461. package/dist/modes/interactive/components/extension-input.js.map +1 -1
  462. package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
  463. package/dist/modes/interactive/components/extension-selector.js.map +1 -1
  464. package/dist/modes/interactive/components/favorite-models-selector.d.ts +1 -1
  465. package/dist/modes/interactive/components/favorite-models-selector.d.ts.map +1 -1
  466. package/dist/modes/interactive/components/favorite-models-selector.js.map +1 -1
  467. package/dist/modes/interactive/components/footer.d.ts +3 -2
  468. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  469. package/dist/modes/interactive/components/footer.js +42 -42
  470. package/dist/modes/interactive/components/footer.js.map +1 -1
  471. package/dist/modes/interactive/components/index.d.ts +31 -31
  472. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  473. package/dist/modes/interactive/components/index.js.map +1 -1
  474. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  475. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  476. package/dist/modes/interactive/components/login-dialog.d.ts +1 -1
  477. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  478. package/dist/modes/interactive/components/login-dialog.js +2 -2
  479. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  480. package/dist/modes/interactive/components/model-selector.d.ts +3 -3
  481. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  482. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  483. package/dist/modes/interactive/components/oauth-selector.d.ts +1 -1
  484. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  485. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  486. package/dist/modes/interactive/components/session-selector-search.d.ts +1 -1
  487. package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
  488. package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
  489. package/dist/modes/interactive/components/session-selector.d.ts +3 -3
  490. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  491. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  492. package/dist/modes/interactive/components/settings-selector.d.ts +1 -1
  493. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  494. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  495. package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
  496. package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
  497. package/dist/modes/interactive/components/skill-invocation-message.d.ts +1 -1
  498. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  499. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  500. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  501. package/dist/modes/interactive/components/theme-selector.js.map +1 -1
  502. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  503. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  504. package/dist/modes/interactive/components/tool-execution.d.ts +1 -1
  505. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  506. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  507. package/dist/modes/interactive/components/tree-selector.d.ts +1 -1
  508. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  509. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  510. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  511. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  512. package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
  513. package/dist/modes/interactive/components/user-message.js.map +1 -1
  514. package/dist/modes/interactive/interactive-mode.d.ts +10 -3
  515. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  516. package/dist/modes/interactive/interactive-mode.js +67 -7
  517. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  518. package/dist/modes/interactive/session-info-format.d.ts +1 -1
  519. package/dist/modes/interactive/session-info-format.d.ts.map +1 -1
  520. package/dist/modes/interactive/session-info-format.js.map +1 -1
  521. package/dist/modes/interactive/startup-tools.d.ts.map +1 -1
  522. package/dist/modes/interactive/startup-tools.js.map +1 -1
  523. package/dist/modes/interactive/theme/dark.json +86 -0
  524. package/dist/modes/interactive/theme/light.json +85 -0
  525. package/dist/modes/interactive/theme/theme-schema.json +335 -0
  526. package/dist/modes/interactive/theme/theme.d.ts +1 -1
  527. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  528. package/dist/modes/interactive/theme/theme.js.map +1 -1
  529. package/dist/modes/interactive/working-status.d.ts +3 -0
  530. package/dist/modes/interactive/working-status.d.ts.map +1 -1
  531. package/dist/modes/interactive/working-status.js +10 -0
  532. package/dist/modes/interactive/working-status.js.map +1 -1
  533. package/dist/modes/neo-mode.d.ts +20 -1
  534. package/dist/modes/neo-mode.d.ts.map +1 -1
  535. package/dist/modes/neo-mode.js +30 -2
  536. package/dist/modes/neo-mode.js.map +1 -1
  537. package/dist/modes/print-mode.d.ts +1 -1
  538. package/dist/modes/print-mode.d.ts.map +1 -1
  539. package/dist/modes/print-mode.js.map +1 -1
  540. package/dist/modes/rpc/rpc-client.d.ts +5 -5
  541. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  542. package/dist/modes/rpc/rpc-client.js +1 -1
  543. package/dist/modes/rpc/rpc-client.js.map +1 -1
  544. package/dist/modes/rpc/rpc-mode.d.ts +2 -2
  545. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  546. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  547. package/dist/modes/rpc/rpc-types.d.ts +4 -4
  548. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  549. package/dist/modes/rpc/rpc-types.js.map +1 -1
  550. package/dist/neo-tui-bin/senpi-neo-tui-linux-x64 +0 -0
  551. package/dist/package-manager-cli.d.ts.map +1 -1
  552. package/dist/package-manager-cli.js +40 -1
  553. package/dist/package-manager-cli.js.map +1 -1
  554. package/dist/utils/changelog.d.ts +1 -1
  555. package/dist/utils/changelog.d.ts.map +1 -1
  556. package/dist/utils/changelog.js.map +1 -1
  557. package/dist/utils/clipboard-image.d.ts.map +1 -1
  558. package/dist/utils/clipboard-image.js.map +1 -1
  559. package/dist/utils/clipboard.d.ts.map +1 -1
  560. package/dist/utils/clipboard.js.map +1 -1
  561. package/dist/utils/exif-orientation.d.ts +1 -1
  562. package/dist/utils/exif-orientation.d.ts.map +1 -1
  563. package/dist/utils/exif-orientation.js.map +1 -1
  564. package/dist/utils/image-convert.d.ts.map +1 -1
  565. package/dist/utils/image-convert.js.map +1 -1
  566. package/dist/utils/image-resize.d.ts.map +1 -1
  567. package/dist/utils/image-resize.js.map +1 -1
  568. package/dist/utils/pi-user-agent.d.ts.map +1 -1
  569. package/dist/utils/pi-user-agent.js.map +1 -1
  570. package/dist/utils/shell.d.ts.map +1 -1
  571. package/dist/utils/shell.js.map +1 -1
  572. package/dist/utils/syntax-highlight.d.ts.map +1 -1
  573. package/dist/utils/syntax-highlight.js.map +1 -1
  574. package/dist/utils/tools-manager.d.ts.map +1 -1
  575. package/dist/utils/tools-manager.js.map +1 -1
  576. package/dist/utils/version-check.d.ts +2 -1
  577. package/dist/utils/version-check.d.ts.map +1 -1
  578. package/dist/utils/version-check.js +5 -4
  579. package/dist/utils/version-check.js.map +1 -1
  580. package/dist/utils/windows-self-update.d.ts.map +1 -1
  581. package/dist/utils/windows-self-update.js.map +1 -1
  582. package/docs/settings.md +1 -1
  583. package/examples/extensions/custom-provider-gitlab-duo/test.ts +1 -1
  584. package/examples/extensions/doom-overlay/doom-component.ts +2 -2
  585. package/examples/extensions/doom-overlay/index.ts +3 -3
  586. package/examples/extensions/overlay-qa-tests.ts +97 -66
  587. package/examples/extensions/overlay-test.ts +7 -4
  588. package/examples/extensions/plan-mode/index.ts +1 -1
  589. package/package.json +4 -3
@@ -0,0 +1,1108 @@
1
+ :root {
2
+ {{THEME_VARS}}
3
+ --body-bg: {{BODY_BG}};
4
+ --container-bg: {{CONTAINER_BG}};
5
+ --info-bg: {{INFO_BG}};
6
+ }
7
+
8
+ * { margin: 0; padding: 0; box-sizing: border-box; }
9
+
10
+ :root {
11
+ --line-height: 18px; /* 12px font * 1.5 */
12
+ --sidebar-width: 400px;
13
+ --sidebar-min-width: 240px;
14
+ --sidebar-max-width: 840px;
15
+ --sidebar-resizer-width: 6px;
16
+ }
17
+
18
+ body {
19
+ font-family: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Consolas, 'DejaVu Sans Mono', monospace;
20
+ font-size: 12px;
21
+ line-height: var(--line-height);
22
+ color: var(--text);
23
+ background: var(--body-bg);
24
+ }
25
+
26
+ body.sidebar-resizing {
27
+ cursor: col-resize;
28
+ user-select: none;
29
+ }
30
+
31
+ #app {
32
+ display: flex;
33
+ min-height: 100vh;
34
+ }
35
+
36
+ /* Sidebar */
37
+ #sidebar {
38
+ width: var(--sidebar-width);
39
+ min-width: var(--sidebar-width);
40
+ max-width: var(--sidebar-width);
41
+ background: var(--container-bg);
42
+ flex-shrink: 0;
43
+ display: flex;
44
+ flex-direction: column;
45
+ position: sticky;
46
+ top: 0;
47
+ height: 100vh;
48
+ border-right: 1px solid var(--dim);
49
+ }
50
+
51
+ #sidebar-resizer {
52
+ width: var(--sidebar-resizer-width);
53
+ flex-shrink: 0;
54
+ position: sticky;
55
+ top: 0;
56
+ height: 100vh;
57
+ cursor: col-resize;
58
+ touch-action: none;
59
+ background: transparent;
60
+ border-right: 1px solid transparent;
61
+ }
62
+
63
+ #sidebar-resizer:hover,
64
+ body.sidebar-resizing #sidebar-resizer {
65
+ background: var(--selectedBg);
66
+ border-right-color: var(--dim);
67
+ }
68
+
69
+ .sidebar-header {
70
+ padding: 8px 12px;
71
+ flex-shrink: 0;
72
+ }
73
+
74
+ .sidebar-controls {
75
+ padding: 8px 8px 4px 8px;
76
+ }
77
+
78
+ .sidebar-search {
79
+ width: 100%;
80
+ box-sizing: border-box;
81
+ padding: 4px 8px;
82
+ font-size: 11px;
83
+ font-family: inherit;
84
+ background: var(--body-bg);
85
+ color: var(--text);
86
+ border: 1px solid var(--dim);
87
+ border-radius: 3px;
88
+ }
89
+
90
+ .sidebar-filters {
91
+ display: flex;
92
+ padding: 4px 8px 8px 8px;
93
+ gap: 4px;
94
+ align-items: center;
95
+ flex-wrap: wrap;
96
+ }
97
+
98
+ .sidebar-search:focus {
99
+ outline: none;
100
+ border-color: var(--accent);
101
+ }
102
+
103
+ .sidebar-search::placeholder {
104
+ color: var(--muted);
105
+ }
106
+
107
+ .filter-btn {
108
+ padding: 3px 8px;
109
+ font-size: 10px;
110
+ font-family: inherit;
111
+ background: transparent;
112
+ color: var(--muted);
113
+ border: 1px solid var(--dim);
114
+ border-radius: 3px;
115
+ cursor: pointer;
116
+ }
117
+
118
+ .filter-btn:hover {
119
+ color: var(--text);
120
+ border-color: var(--text);
121
+ }
122
+
123
+ .filter-btn.active {
124
+ background: var(--accent);
125
+ color: var(--body-bg);
126
+ border-color: var(--accent);
127
+ }
128
+
129
+ .sidebar-close {
130
+ display: none;
131
+ padding: 3px 8px;
132
+ font-size: 12px;
133
+ font-family: inherit;
134
+ background: transparent;
135
+ color: var(--muted);
136
+ border: 1px solid var(--dim);
137
+ border-radius: 3px;
138
+ cursor: pointer;
139
+ margin-left: auto;
140
+ }
141
+
142
+ .sidebar-close:hover {
143
+ color: var(--text);
144
+ border-color: var(--text);
145
+ }
146
+
147
+ .tree-container {
148
+ flex: 1;
149
+ overflow: auto;
150
+ padding: 4px 0;
151
+ }
152
+
153
+ .tree-node {
154
+ padding: 0 8px;
155
+ cursor: pointer;
156
+ display: flex;
157
+ align-items: baseline;
158
+ font-size: 11px;
159
+ line-height: 13px;
160
+ white-space: nowrap;
161
+ }
162
+
163
+ .tree-node:hover {
164
+ background: var(--selectedBg);
165
+ }
166
+
167
+ .tree-node.active {
168
+ background: var(--selectedBg);
169
+ }
170
+
171
+ .tree-node.active .tree-content {
172
+ font-weight: bold;
173
+ }
174
+
175
+ .tree-node.in-path {
176
+ background: color-mix(in srgb, var(--accent) 10%, transparent);
177
+ }
178
+
179
+ .tree-node:not(.in-path) {
180
+ opacity: 0.5;
181
+ }
182
+
183
+ .tree-node:not(.in-path):hover {
184
+ opacity: 1;
185
+ }
186
+
187
+ .tree-prefix {
188
+ color: var(--muted);
189
+ flex-shrink: 0;
190
+ font-family: monospace;
191
+ white-space: pre;
192
+ }
193
+
194
+ .tree-marker {
195
+ color: var(--accent);
196
+ flex-shrink: 0;
197
+ }
198
+
199
+ .tree-content {
200
+ color: var(--text);
201
+ }
202
+
203
+ .tree-role-user {
204
+ color: var(--accent);
205
+ }
206
+
207
+ .tree-role-skill {
208
+ color: var(--customMessageLabel);
209
+ }
210
+
211
+ .tree-role-assistant {
212
+ color: var(--success);
213
+ }
214
+
215
+ .tree-role-tool {
216
+ color: var(--muted);
217
+ }
218
+
219
+ .tree-muted {
220
+ color: var(--muted);
221
+ }
222
+
223
+ .tree-error {
224
+ color: var(--error);
225
+ }
226
+
227
+ .tree-compaction {
228
+ color: var(--borderAccent);
229
+ }
230
+
231
+ .tree-branch-summary {
232
+ color: var(--warning);
233
+ }
234
+
235
+ .tree-custom-message {
236
+ color: var(--customMessageLabel);
237
+ }
238
+
239
+ .tree-status {
240
+ padding: 4px 12px;
241
+ font-size: 10px;
242
+ color: var(--muted);
243
+ flex-shrink: 0;
244
+ }
245
+
246
+ /* Main content */
247
+ #content {
248
+ flex: 1;
249
+ min-width: 0;
250
+ overflow-y: auto;
251
+ padding: var(--line-height) calc(var(--line-height) * 2);
252
+ display: flex;
253
+ flex-direction: column;
254
+ align-items: center;
255
+ }
256
+
257
+ #content > * {
258
+ width: 100%;
259
+ max-width: 800px;
260
+ }
261
+
262
+ /* Help bar */
263
+ .help-bar {
264
+ font-size: 11px;
265
+ color: var(--warning);
266
+ margin-bottom: var(--line-height);
267
+ display: flex;
268
+ align-items: center;
269
+ justify-content: space-between;
270
+ flex-wrap: wrap;
271
+ gap: 12px;
272
+ }
273
+
274
+ .help-hint {
275
+ flex: 1 1 240px;
276
+ }
277
+
278
+ .help-actions {
279
+ display: flex;
280
+ align-items: center;
281
+ flex-wrap: wrap;
282
+ gap: 8px;
283
+ }
284
+
285
+ .header-toggle-btn,
286
+ .download-json-btn {
287
+ font-size: 10px;
288
+ padding: 2px 8px;
289
+ background: var(--container-bg);
290
+ border: 1px solid var(--border);
291
+ border-radius: 3px;
292
+ color: var(--text);
293
+ cursor: pointer;
294
+ font-family: inherit;
295
+ }
296
+
297
+ .header-toggle-btn:hover,
298
+ .download-json-btn:hover {
299
+ background: var(--hover);
300
+ border-color: var(--borderAccent);
301
+ }
302
+
303
+ /* Header */
304
+ .header {
305
+ background: var(--container-bg);
306
+ border-radius: 4px;
307
+ padding: var(--line-height);
308
+ margin-bottom: var(--line-height);
309
+ }
310
+
311
+ .header h1 {
312
+ font-size: 12px;
313
+ font-weight: bold;
314
+ color: var(--borderAccent);
315
+ margin-bottom: var(--line-height);
316
+ }
317
+
318
+ .header-info {
319
+ display: flex;
320
+ flex-direction: column;
321
+ gap: 0;
322
+ font-size: 11px;
323
+ }
324
+
325
+ .info-item {
326
+ color: var(--dim);
327
+ display: flex;
328
+ align-items: baseline;
329
+ }
330
+
331
+ .info-label {
332
+ font-weight: 600;
333
+ margin-right: 8px;
334
+ min-width: 100px;
335
+ }
336
+
337
+ .info-value {
338
+ color: var(--text);
339
+ flex: 1;
340
+ }
341
+
342
+ /* Messages */
343
+ #messages {
344
+ display: flex;
345
+ flex-direction: column;
346
+ gap: var(--line-height);
347
+ }
348
+
349
+ .message-timestamp {
350
+ font-size: 10px;
351
+ color: var(--dim);
352
+ opacity: 0.8;
353
+ }
354
+
355
+ .user-message {
356
+ background: var(--userMessageBg);
357
+ color: var(--userMessageText);
358
+ padding: var(--line-height);
359
+ border-radius: 4px;
360
+ position: relative;
361
+ }
362
+
363
+ .assistant-message {
364
+ padding: 0;
365
+ position: relative;
366
+ }
367
+
368
+ /* Copy link button - appears on hover */
369
+ .copy-link-btn {
370
+ position: absolute;
371
+ top: 8px;
372
+ right: 8px;
373
+ width: 28px;
374
+ height: 28px;
375
+ padding: 6px;
376
+ background: var(--container-bg);
377
+ border: 1px solid var(--dim);
378
+ border-radius: 4px;
379
+ color: var(--muted);
380
+ cursor: pointer;
381
+ opacity: 0;
382
+ transition: opacity 0.15s, background 0.15s, color 0.15s;
383
+ display: flex;
384
+ align-items: center;
385
+ justify-content: center;
386
+ z-index: 10;
387
+ }
388
+
389
+ .user-message:hover .copy-link-btn,
390
+ .assistant-message:hover .copy-link-btn,
391
+ .skill-user-entry:hover .copy-link-btn {
392
+ opacity: 1;
393
+ }
394
+
395
+ .copy-link-btn:hover {
396
+ background: var(--accent);
397
+ color: var(--body-bg);
398
+ border-color: var(--accent);
399
+ }
400
+
401
+ .copy-link-btn.copied {
402
+ background: var(--success, #22c55e);
403
+ color: white;
404
+ border-color: var(--success, #22c55e);
405
+ }
406
+
407
+ /* Highlight effect for deep-linked messages */
408
+ .user-message.highlight,
409
+ .assistant-message.highlight {
410
+ animation: highlight-pulse 2s ease-out;
411
+ }
412
+
413
+ @keyframes highlight-pulse {
414
+ 0% {
415
+ box-shadow: 0 0 0 3px var(--accent);
416
+ }
417
+ 100% {
418
+ box-shadow: 0 0 0 0 transparent;
419
+ }
420
+ }
421
+
422
+ .assistant-message > .message-timestamp {
423
+ padding-left: var(--line-height);
424
+ }
425
+
426
+ .assistant-text {
427
+ padding: var(--line-height);
428
+ padding-bottom: 0;
429
+ }
430
+
431
+ .message-timestamp + .assistant-text,
432
+ .message-timestamp + .thinking-block {
433
+ padding-top: 0;
434
+ }
435
+
436
+ .thinking-block + .assistant-text {
437
+ padding-top: 0;
438
+ }
439
+
440
+ .provider-native-block {
441
+ margin: var(--line-height);
442
+ color: var(--muted);
443
+ }
444
+
445
+ .message-timestamp + .provider-native-block {
446
+ margin-top: 0;
447
+ }
448
+
449
+ .provider-native-block summary {
450
+ cursor: pointer;
451
+ color: var(--muted);
452
+ list-style: none;
453
+ }
454
+
455
+ .provider-native-block summary::-webkit-details-marker {
456
+ display: none;
457
+ }
458
+
459
+ .provider-native-body {
460
+ margin: 8px 0 0 0;
461
+ padding: 8px;
462
+ border: 1px solid var(--dim);
463
+ border-radius: 4px;
464
+ background: var(--toolPendingBg);
465
+ color: var(--text);
466
+ white-space: pre-wrap;
467
+ overflow-wrap: anywhere;
468
+ }
469
+
470
+ .provider-native-full {
471
+ display: none;
472
+ }
473
+
474
+ .provider-native-block[open] .provider-native-collapsed {
475
+ display: none;
476
+ }
477
+
478
+ .provider-native-block[open] .provider-native-full {
479
+ display: block;
480
+ }
481
+
482
+ .thinking-text {
483
+ padding: var(--line-height);
484
+ color: var(--thinkingText);
485
+ font-style: italic;
486
+ white-space: pre-wrap;
487
+ }
488
+
489
+ .message-timestamp + .thinking-block .thinking-text,
490
+ .message-timestamp + .thinking-block .thinking-collapsed {
491
+ padding-top: 0;
492
+ }
493
+
494
+ .thinking-collapsed {
495
+ display: none;
496
+ padding: var(--line-height);
497
+ color: var(--thinkingText);
498
+ font-style: italic;
499
+ }
500
+
501
+ /* Tool execution */
502
+ .tool-execution {
503
+ padding: var(--line-height);
504
+ border-radius: 4px;
505
+ }
506
+
507
+ .tool-execution + .tool-execution {
508
+ margin-top: var(--line-height);
509
+ }
510
+
511
+ .assistant-text + .tool-execution {
512
+ margin-top: var(--line-height);
513
+ }
514
+
515
+ .tool-execution.pending { background: var(--toolPendingBg); }
516
+ .tool-execution.success { background: var(--toolSuccessBg); }
517
+ .tool-execution.error { background: var(--toolErrorBg); }
518
+
519
+ .tool-header, .tool-name {
520
+ font-weight: bold;
521
+ }
522
+
523
+ .tool-path {
524
+ color: var(--accent);
525
+ word-break: break-all;
526
+ }
527
+
528
+ .line-numbers {
529
+ color: var(--warning);
530
+ }
531
+
532
+ .line-count {
533
+ color: var(--dim);
534
+ }
535
+
536
+ .tool-command {
537
+ font-weight: bold;
538
+ white-space: pre-wrap;
539
+ word-wrap: break-word;
540
+ overflow-wrap: break-word;
541
+ word-break: break-word;
542
+ }
543
+
544
+ .tool-output {
545
+ margin-top: var(--line-height);
546
+ color: var(--toolOutput);
547
+ word-wrap: break-word;
548
+ overflow-wrap: break-word;
549
+ word-break: break-word;
550
+ font-family: inherit;
551
+ overflow-x: auto;
552
+ }
553
+
554
+ .tool-output > div,
555
+ .output-preview > div,
556
+ .output-full > div {
557
+ margin: 0;
558
+ padding: 0;
559
+ line-height: var(--line-height);
560
+ }
561
+
562
+ .tool-output > div:not(.output-preview):not(.output-full),
563
+ .output-preview > div:not(.expand-hint),
564
+ .output-full > div:not(.expand-hint) {
565
+ white-space: pre-wrap;
566
+ }
567
+
568
+ .tool-output pre {
569
+ margin: 0;
570
+ padding: 0;
571
+ font-family: inherit;
572
+ color: inherit;
573
+ white-space: pre-wrap;
574
+ word-wrap: break-word;
575
+ overflow-wrap: break-word;
576
+ }
577
+
578
+ .tool-output code {
579
+ padding: 0;
580
+ background: none;
581
+ color: var(--text);
582
+ }
583
+
584
+ .tool-output.expandable {
585
+ cursor: pointer;
586
+ }
587
+
588
+ .tool-output.expandable:hover {
589
+ opacity: 0.9;
590
+ }
591
+
592
+ .tool-output.expandable .output-full {
593
+ display: none;
594
+ }
595
+
596
+ .tool-output.expandable.expanded .output-preview {
597
+ display: none;
598
+ }
599
+
600
+ .tool-output.expandable.expanded .output-full {
601
+ display: block;
602
+ }
603
+
604
+ .ansi-line {
605
+ white-space: pre;
606
+ }
607
+
608
+ .tool-images {
609
+ }
610
+
611
+ .tool-image {
612
+ max-width: 100%;
613
+ max-height: 500px;
614
+ border-radius: 4px;
615
+ margin: var(--line-height) 0;
616
+ }
617
+
618
+ .expand-hint {
619
+ color: var(--toolOutput);
620
+ }
621
+
622
+ /* Diff */
623
+ .tool-diff {
624
+ font-size: 11px;
625
+ overflow-x: auto;
626
+ white-space: pre;
627
+ }
628
+
629
+ .diff-added { color: var(--toolDiffAdded); }
630
+ .diff-removed { color: var(--toolDiffRemoved); }
631
+ .diff-context { color: var(--toolDiffContext); }
632
+
633
+ /* Model change */
634
+ .model-change {
635
+ padding: 0 var(--line-height);
636
+ color: var(--dim);
637
+ font-size: 11px;
638
+ }
639
+
640
+ .model-name {
641
+ color: var(--borderAccent);
642
+ font-weight: bold;
643
+ }
644
+
645
+ /* Compaction / Branch Summary - matches customMessage colors from TUI */
646
+ .compaction {
647
+ background: var(--customMessageBg);
648
+ border-radius: 4px;
649
+ padding: var(--line-height);
650
+ cursor: pointer;
651
+ }
652
+
653
+ .compaction-label {
654
+ color: var(--customMessageLabel);
655
+ font-weight: bold;
656
+ }
657
+
658
+ .compaction-collapsed {
659
+ color: var(--customMessageText);
660
+ }
661
+
662
+ .compaction-content {
663
+ display: none;
664
+ color: var(--customMessageText);
665
+ white-space: pre-wrap;
666
+ margin-top: var(--line-height);
667
+ }
668
+
669
+ .compaction.expanded .compaction-collapsed {
670
+ display: none;
671
+ }
672
+
673
+ .compaction.expanded .compaction-content {
674
+ display: block;
675
+ }
676
+
677
+ /* System prompt */
678
+ .system-prompt {
679
+ background: var(--customMessageBg);
680
+ padding: var(--line-height);
681
+ border-radius: 4px;
682
+ margin-bottom: var(--line-height);
683
+ }
684
+
685
+ .system-prompt.expandable {
686
+ cursor: pointer;
687
+ }
688
+
689
+ .system-prompt-header {
690
+ font-weight: bold;
691
+ color: var(--customMessageLabel);
692
+ }
693
+
694
+ .system-prompt-preview {
695
+ color: var(--customMessageText);
696
+ white-space: pre-wrap;
697
+ word-wrap: break-word;
698
+ font-size: 11px;
699
+ margin-top: var(--line-height);
700
+ }
701
+
702
+ .system-prompt-expand-hint {
703
+ color: var(--muted);
704
+ font-style: italic;
705
+ margin-top: 4px;
706
+ }
707
+
708
+ .system-prompt-full {
709
+ display: none;
710
+ color: var(--customMessageText);
711
+ white-space: pre-wrap;
712
+ word-wrap: break-word;
713
+ font-size: 11px;
714
+ margin-top: var(--line-height);
715
+ }
716
+
717
+ .system-prompt.expanded .system-prompt-preview,
718
+ .system-prompt.expanded .system-prompt-expand-hint {
719
+ display: none;
720
+ }
721
+
722
+ .system-prompt.expanded .system-prompt-full {
723
+ display: block;
724
+ }
725
+
726
+ .system-prompt.provider-prompt {
727
+ border-left: 3px solid var(--warning);
728
+ }
729
+
730
+ .system-prompt-note {
731
+ font-size: 10px;
732
+ font-style: italic;
733
+ color: var(--muted);
734
+ margin-top: 4px;
735
+ }
736
+
737
+ /* Tools list */
738
+ .tools-list {
739
+ background: var(--customMessageBg);
740
+ padding: var(--line-height);
741
+ border-radius: 4px;
742
+ margin-bottom: var(--line-height);
743
+ }
744
+
745
+ .tools-header {
746
+ font-weight: bold;
747
+ color: var(--customMessageLabel);
748
+ margin-bottom: var(--line-height);
749
+ }
750
+
751
+ .tool-item {
752
+ font-size: 11px;
753
+ }
754
+
755
+ .tool-item-name {
756
+ font-weight: bold;
757
+ color: var(--text);
758
+ }
759
+
760
+ .tool-item-desc {
761
+ color: var(--dim);
762
+ }
763
+
764
+ .tool-params-hint {
765
+ color: var(--muted);
766
+ font-style: italic;
767
+ }
768
+
769
+ .tool-item:has(.tool-params-hint) {
770
+ cursor: pointer;
771
+ }
772
+
773
+ .tool-params-hint::after {
774
+ content: '[click to show parameters]';
775
+ }
776
+
777
+ .tool-item.params-expanded .tool-params-hint::after {
778
+ content: '[hide parameters]';
779
+ }
780
+
781
+ .tool-params-content {
782
+ display: none;
783
+ margin-top: 4px;
784
+ margin-left: 12px;
785
+ padding-left: 8px;
786
+ border-left: 1px solid var(--dim);
787
+ }
788
+
789
+ .tool-item.params-expanded .tool-params-content {
790
+ display: block;
791
+ }
792
+
793
+ .tool-param {
794
+ margin-bottom: 4px;
795
+ font-size: 11px;
796
+ }
797
+
798
+ .tool-param-name {
799
+ font-weight: bold;
800
+ color: var(--text);
801
+ }
802
+
803
+ .tool-param-type {
804
+ color: var(--dim);
805
+ font-style: italic;
806
+ }
807
+
808
+ .tool-param-required {
809
+ color: var(--warning, #e8a838);
810
+ font-size: 10px;
811
+ }
812
+
813
+ .tool-param-optional {
814
+ color: var(--dim);
815
+ font-size: 10px;
816
+ }
817
+
818
+ .tool-param-desc {
819
+ color: var(--dim);
820
+ margin-left: 8px;
821
+ }
822
+
823
+ /* Hook/custom messages */
824
+ .hook-message {
825
+ background: var(--customMessageBg);
826
+ color: var(--customMessageText);
827
+ padding: var(--line-height);
828
+ border-radius: 4px;
829
+ }
830
+
831
+ .hook-type {
832
+ color: var(--customMessageLabel);
833
+ font-weight: bold;
834
+ }
835
+
836
+ /* Skill invocation - matches compaction style (clickable, collapsed by default) */
837
+ .skill-invocation {
838
+ background: var(--customMessageBg);
839
+ border-radius: 4px;
840
+ padding: var(--line-height);
841
+ cursor: pointer;
842
+ }
843
+
844
+ .skill-invocation-label {
845
+ color: var(--customMessageLabel);
846
+ font-weight: bold;
847
+ }
848
+
849
+ .skill-invocation-collapsed {
850
+ color: var(--customMessageText);
851
+ }
852
+
853
+ .skill-invocation-content {
854
+ display: none;
855
+ color: var(--customMessageText);
856
+ margin-top: var(--line-height);
857
+ }
858
+
859
+ .skill-invocation.expanded .skill-invocation-collapsed {
860
+ display: none;
861
+ }
862
+
863
+ .skill-invocation.expanded .skill-invocation-content {
864
+ display: block;
865
+ }
866
+
867
+ .skill-invocation + .user-message {
868
+ margin-top: var(--line-height);
869
+ }
870
+
871
+ .skill-user-entry {
872
+ position: relative;
873
+ }
874
+
875
+ /* Branch summary */
876
+ .branch-summary {
877
+ background: var(--customMessageBg);
878
+ padding: var(--line-height);
879
+ border-radius: 4px;
880
+ }
881
+
882
+ .branch-summary-header {
883
+ font-weight: bold;
884
+ color: var(--borderAccent);
885
+ }
886
+
887
+ /* Error */
888
+ .error-text {
889
+ color: var(--error);
890
+ padding: 0 var(--line-height);
891
+ }
892
+ .tool-error {
893
+ color: var(--error);
894
+ }
895
+
896
+ /* Images */
897
+ .message-images {
898
+ margin-bottom: 12px;
899
+ }
900
+
901
+ .message-image {
902
+ max-width: 100%;
903
+ max-height: 400px;
904
+ border-radius: 4px;
905
+ margin: var(--line-height) 0;
906
+ }
907
+
908
+ /* Markdown content */
909
+ .markdown-content h1,
910
+ .markdown-content h2,
911
+ .markdown-content h3,
912
+ .markdown-content h4,
913
+ .markdown-content h5,
914
+ .markdown-content h6 {
915
+ color: var(--mdHeading);
916
+ margin: var(--line-height) 0 0 0;
917
+ font-weight: bold;
918
+ }
919
+
920
+ .markdown-content h1 { font-size: 1em; }
921
+ .markdown-content h2 { font-size: 1em; }
922
+ .markdown-content h3 { font-size: 1em; }
923
+ .markdown-content h4 { font-size: 1em; }
924
+ .markdown-content h5 { font-size: 1em; }
925
+ .markdown-content h6 { font-size: 1em; }
926
+ .markdown-content p { margin: 0; }
927
+ .markdown-content p + p { margin-top: var(--line-height); }
928
+
929
+ .markdown-content a {
930
+ color: var(--mdLink);
931
+ text-decoration: underline;
932
+ }
933
+
934
+ .markdown-content code {
935
+ background: rgba(128, 128, 128, 0.2);
936
+ color: var(--mdCode);
937
+ padding: 0 4px;
938
+ border-radius: 3px;
939
+ font-family: inherit;
940
+ }
941
+
942
+ .markdown-content pre {
943
+ background: transparent;
944
+ margin: var(--line-height) 0;
945
+ overflow-x: auto;
946
+ }
947
+
948
+ .markdown-content pre code {
949
+ display: block;
950
+ background: none;
951
+ color: var(--text);
952
+ }
953
+
954
+ .markdown-content blockquote {
955
+ border-left: 3px solid var(--mdQuoteBorder);
956
+ padding-left: var(--line-height);
957
+ margin: var(--line-height) 0;
958
+ color: var(--mdQuote);
959
+ font-style: italic;
960
+ }
961
+
962
+ .markdown-content ul,
963
+ .markdown-content ol {
964
+ margin: var(--line-height) 0;
965
+ padding-left: calc(var(--line-height) * 2);
966
+ }
967
+
968
+ .markdown-content li { margin: 0; }
969
+ .markdown-content li::marker { color: var(--mdListBullet); }
970
+
971
+ .markdown-content hr {
972
+ border: none;
973
+ border-top: 1px solid var(--mdHr);
974
+ margin: var(--line-height) 0;
975
+ }
976
+
977
+ .markdown-content table {
978
+ border-collapse: collapse;
979
+ margin: 0.5em 0;
980
+ width: 100%;
981
+ }
982
+
983
+ .markdown-content th,
984
+ .markdown-content td {
985
+ border: 1px solid var(--mdCodeBlockBorder);
986
+ padding: 6px 10px;
987
+ text-align: left;
988
+ }
989
+
990
+ .markdown-content th {
991
+ background: rgba(128, 128, 128, 0.1);
992
+ font-weight: bold;
993
+ }
994
+
995
+ .markdown-content img {
996
+ max-width: 100%;
997
+ border-radius: 4px;
998
+ }
999
+
1000
+ /* Syntax highlighting */
1001
+ .hljs { background: transparent; color: var(--text); }
1002
+ .hljs-comment, .hljs-quote { color: var(--syntaxComment); }
1003
+ .hljs-keyword, .hljs-selector-tag { color: var(--syntaxKeyword); }
1004
+ .hljs-number, .hljs-literal { color: var(--syntaxNumber); }
1005
+ .hljs-string, .hljs-doctag { color: var(--syntaxString); }
1006
+ /* Function names: hljs v11 uses .hljs-title.function_ compound class */
1007
+ .hljs-function, .hljs-title, .hljs-title.function_, .hljs-section, .hljs-name { color: var(--syntaxFunction); }
1008
+ /* Types: hljs v11 uses .hljs-title.class_ for class names */
1009
+ .hljs-type, .hljs-class, .hljs-title.class_, .hljs-built_in { color: var(--syntaxType); }
1010
+ .hljs-attr, .hljs-variable, .hljs-variable.language_, .hljs-params, .hljs-property { color: var(--syntaxVariable); }
1011
+ .hljs-meta, .hljs-meta .hljs-keyword, .hljs-meta .hljs-string { color: var(--syntaxKeyword); }
1012
+ .hljs-operator { color: var(--syntaxOperator); }
1013
+ .hljs-punctuation { color: var(--syntaxPunctuation); }
1014
+ .hljs-subst { color: var(--text); }
1015
+
1016
+ /* Footer */
1017
+ .footer {
1018
+ margin-top: 48px;
1019
+ padding: 20px;
1020
+ text-align: center;
1021
+ color: var(--dim);
1022
+ font-size: 10px;
1023
+ }
1024
+
1025
+ /* Mobile */
1026
+ #hamburger {
1027
+ display: none;
1028
+ position: fixed;
1029
+ top: 10px;
1030
+ left: 10px;
1031
+ z-index: 100;
1032
+ padding: 3px 8px;
1033
+ font-size: 12px;
1034
+ font-family: inherit;
1035
+ background: transparent;
1036
+ color: var(--muted);
1037
+ border: 1px solid var(--dim);
1038
+ border-radius: 3px;
1039
+ cursor: pointer;
1040
+ }
1041
+
1042
+ #hamburger:hover {
1043
+ color: var(--text);
1044
+ border-color: var(--text);
1045
+ }
1046
+
1047
+
1048
+
1049
+ #sidebar-overlay {
1050
+ display: none;
1051
+ position: fixed;
1052
+ top: 0;
1053
+ left: 0;
1054
+ right: 0;
1055
+ bottom: 0;
1056
+ background: rgba(0, 0, 0, 0.5);
1057
+ z-index: 98;
1058
+ }
1059
+
1060
+ @media (max-width: 900px) {
1061
+ #sidebar {
1062
+ position: fixed;
1063
+ left: 0;
1064
+ width: min(var(--sidebar-width), 100vw);
1065
+ min-width: min(var(--sidebar-width), 100vw);
1066
+ max-width: min(var(--sidebar-width), 100vw);
1067
+ top: 0;
1068
+ bottom: 0;
1069
+ height: 100vh;
1070
+ z-index: 99;
1071
+ transform: translateX(-100%);
1072
+ transition: transform 0.3s;
1073
+ }
1074
+
1075
+ #sidebar.open {
1076
+ transform: translateX(0);
1077
+ }
1078
+
1079
+ #sidebar-resizer {
1080
+ display: none;
1081
+ }
1082
+
1083
+ #sidebar-overlay.open {
1084
+ display: block;
1085
+ }
1086
+
1087
+ #hamburger {
1088
+ display: block;
1089
+ }
1090
+
1091
+ .sidebar-close {
1092
+ display: block;
1093
+ }
1094
+
1095
+ #content {
1096
+ padding: var(--line-height) 16px;
1097
+ }
1098
+
1099
+ #content > * {
1100
+ max-width: 100%;
1101
+ }
1102
+ }
1103
+
1104
+ @media print {
1105
+ #sidebar, #sidebar-resizer, #sidebar-toggle { display: none !important; }
1106
+ body { background: white; color: black; }
1107
+ #content { max-width: none; }
1108
+ }