@oh-my-pi/pi-coding-agent 3.14.0 → 3.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/CHANGELOG.md +89 -0
  2. package/docs/theme.md +38 -5
  3. package/examples/sdk/11-sessions.ts +2 -2
  4. package/package.json +7 -4
  5. package/src/cli/file-processor.ts +51 -2
  6. package/src/cli/plugin-cli.ts +25 -19
  7. package/src/cli/update-cli.ts +4 -3
  8. package/src/core/agent-session.ts +31 -4
  9. package/src/core/compaction/branch-summarization.ts +4 -32
  10. package/src/core/compaction/compaction.ts +6 -84
  11. package/src/core/compaction/utils.ts +2 -3
  12. package/src/core/custom-tools/types.ts +2 -0
  13. package/src/core/export-html/index.ts +1 -1
  14. package/src/core/hooks/tool-wrapper.ts +0 -1
  15. package/src/core/hooks/types.ts +2 -2
  16. package/src/core/plugins/doctor.ts +9 -1
  17. package/src/core/sdk.ts +2 -1
  18. package/src/core/session-manager.ts +518 -40
  19. package/src/core/settings-manager.ts +174 -0
  20. package/src/core/system-prompt.ts +9 -14
  21. package/src/core/title-generator.ts +2 -8
  22. package/src/core/tools/ask.ts +19 -37
  23. package/src/core/tools/bash.ts +2 -37
  24. package/src/core/tools/edit.ts +2 -9
  25. package/src/core/tools/exa/render.ts +52 -48
  26. package/src/core/tools/find.ts +10 -8
  27. package/src/core/tools/grep.ts +45 -17
  28. package/src/core/tools/ls.ts +22 -2
  29. package/src/core/tools/lsp/clients/biome-client.ts +207 -0
  30. package/src/core/tools/lsp/clients/index.ts +49 -0
  31. package/src/core/tools/lsp/clients/lsp-linter-client.ts +98 -0
  32. package/src/core/tools/lsp/config.ts +3 -0
  33. package/src/core/tools/lsp/index.ts +107 -55
  34. package/src/core/tools/lsp/render.ts +192 -79
  35. package/src/core/tools/lsp/types.ts +27 -0
  36. package/src/core/tools/lsp/utils.ts +62 -22
  37. package/src/core/tools/notebook.ts +9 -1
  38. package/src/core/tools/output.ts +37 -14
  39. package/src/core/tools/read.ts +349 -34
  40. package/src/core/tools/renderers.ts +290 -89
  41. package/src/core/tools/review.ts +12 -5
  42. package/src/core/tools/task/agents.ts +5 -5
  43. package/src/core/tools/task/commands.ts +3 -3
  44. package/src/core/tools/task/executor.ts +33 -1
  45. package/src/core/tools/task/index.ts +93 -6
  46. package/src/core/tools/task/render.ts +147 -66
  47. package/src/core/tools/task/types.ts +14 -9
  48. package/src/core/tools/web-fetch.ts +242 -103
  49. package/src/core/tools/web-search/index.ts +64 -20
  50. package/src/core/tools/web-search/providers/exa.ts +68 -172
  51. package/src/core/tools/web-search/render.ts +264 -74
  52. package/src/core/tools/write.ts +2 -8
  53. package/src/main.ts +10 -6
  54. package/src/modes/cleanup.ts +23 -0
  55. package/src/modes/index.ts +9 -4
  56. package/src/modes/interactive/components/bash-execution.ts +6 -3
  57. package/src/modes/interactive/components/branch-summary-message.ts +1 -1
  58. package/src/modes/interactive/components/compaction-summary-message.ts +1 -1
  59. package/src/modes/interactive/components/dynamic-border.ts +1 -1
  60. package/src/modes/interactive/components/extensions/extension-dashboard.ts +4 -5
  61. package/src/modes/interactive/components/extensions/extension-list.ts +18 -16
  62. package/src/modes/interactive/components/extensions/inspector-panel.ts +8 -8
  63. package/src/modes/interactive/components/hook-editor.ts +1 -0
  64. package/src/modes/interactive/components/hook-message.ts +2 -2
  65. package/src/modes/interactive/components/hook-selector.ts +1 -1
  66. package/src/modes/interactive/components/model-selector.ts +22 -9
  67. package/src/modes/interactive/components/oauth-selector.ts +20 -4
  68. package/src/modes/interactive/components/plugin-settings.ts +4 -2
  69. package/src/modes/interactive/components/session-selector.ts +9 -6
  70. package/src/modes/interactive/components/settings-defs.ts +285 -1
  71. package/src/modes/interactive/components/settings-selector.ts +176 -3
  72. package/src/modes/interactive/components/status-line/index.ts +4 -0
  73. package/src/modes/interactive/components/status-line/presets.ts +94 -0
  74. package/src/modes/interactive/components/status-line/segments.ts +350 -0
  75. package/src/modes/interactive/components/status-line/separators.ts +55 -0
  76. package/src/modes/interactive/components/status-line/types.ts +81 -0
  77. package/src/modes/interactive/components/status-line-segment-editor.ts +357 -0
  78. package/src/modes/interactive/components/status-line.ts +172 -223
  79. package/src/modes/interactive/components/tool-execution.ts +446 -211
  80. package/src/modes/interactive/components/tree-selector.ts +17 -6
  81. package/src/modes/interactive/components/ttsr-notification.ts +4 -4
  82. package/src/modes/interactive/components/welcome.ts +27 -19
  83. package/src/modes/interactive/interactive-mode.ts +99 -13
  84. package/src/modes/interactive/theme/dark.json +3 -2
  85. package/src/modes/interactive/theme/defaults/alabaster.json +99 -0
  86. package/src/modes/interactive/theme/defaults/amethyst.json +103 -0
  87. package/src/modes/interactive/theme/defaults/anthracite.json +100 -0
  88. package/src/modes/interactive/theme/defaults/basalt.json +90 -0
  89. package/src/modes/interactive/theme/defaults/birch.json +101 -0
  90. package/src/modes/interactive/theme/defaults/dark-abyss.json +97 -0
  91. package/src/modes/interactive/theme/defaults/dark-arctic.json +111 -0
  92. package/src/modes/interactive/theme/defaults/dark-aurora.json +94 -0
  93. package/src/modes/interactive/theme/defaults/dark-catppuccin.json +106 -0
  94. package/src/modes/interactive/theme/defaults/dark-cavern.json +97 -0
  95. package/src/modes/interactive/theme/defaults/dark-copper.json +94 -0
  96. package/src/modes/interactive/theme/defaults/dark-cosmos.json +96 -0
  97. package/src/modes/interactive/theme/defaults/dark-cyberpunk.json +109 -0
  98. package/src/modes/interactive/theme/defaults/dark-dracula.json +105 -0
  99. package/src/modes/interactive/theme/defaults/dark-eclipse.json +97 -0
  100. package/src/modes/interactive/theme/defaults/dark-ember.json +94 -0
  101. package/src/modes/interactive/theme/defaults/dark-equinox.json +96 -0
  102. package/src/modes/interactive/theme/defaults/dark-forest.json +103 -0
  103. package/src/modes/interactive/theme/defaults/dark-github.json +112 -0
  104. package/src/modes/interactive/theme/defaults/dark-gruvbox.json +119 -0
  105. package/src/modes/interactive/theme/defaults/dark-lavender.json +94 -0
  106. package/src/modes/interactive/theme/defaults/dark-lunar.json +95 -0
  107. package/src/modes/interactive/theme/defaults/dark-midnight.json +94 -0
  108. package/src/modes/interactive/theme/defaults/dark-monochrome.json +101 -0
  109. package/src/modes/interactive/theme/defaults/dark-monokai.json +105 -0
  110. package/src/modes/interactive/theme/defaults/dark-nebula.json +96 -0
  111. package/src/modes/interactive/theme/defaults/dark-nord.json +104 -0
  112. package/src/modes/interactive/theme/defaults/dark-ocean.json +108 -0
  113. package/src/modes/interactive/theme/defaults/dark-one.json +107 -0
  114. package/src/modes/interactive/theme/defaults/dark-rainforest.json +97 -0
  115. package/src/modes/interactive/theme/defaults/dark-reef.json +97 -0
  116. package/src/modes/interactive/theme/defaults/dark-retro.json +99 -0
  117. package/src/modes/interactive/theme/defaults/dark-rose-pine.json +95 -0
  118. package/src/modes/interactive/theme/defaults/dark-sakura.json +94 -0
  119. package/src/modes/interactive/theme/defaults/dark-slate.json +94 -0
  120. package/src/modes/interactive/theme/defaults/dark-solarized.json +96 -0
  121. package/src/modes/interactive/theme/defaults/dark-solstice.json +96 -0
  122. package/src/modes/interactive/theme/defaults/dark-starfall.json +97 -0
  123. package/src/modes/interactive/theme/defaults/dark-sunset.json +106 -0
  124. package/src/modes/interactive/theme/defaults/dark-swamp.json +96 -0
  125. package/src/modes/interactive/theme/defaults/dark-synthwave.json +102 -0
  126. package/src/modes/interactive/theme/defaults/dark-taiga.json +97 -0
  127. package/src/modes/interactive/theme/defaults/dark-terminal.json +94 -0
  128. package/src/modes/interactive/theme/defaults/dark-tokyo-night.json +108 -0
  129. package/src/modes/interactive/theme/defaults/dark-tundra.json +97 -0
  130. package/src/modes/interactive/theme/defaults/dark-twilight.json +97 -0
  131. package/src/modes/interactive/theme/defaults/dark-volcanic.json +97 -0
  132. package/src/modes/interactive/theme/defaults/graphite.json +99 -0
  133. package/src/modes/interactive/theme/defaults/index.ts +195 -0
  134. package/src/modes/interactive/theme/defaults/light-arctic.json +106 -0
  135. package/src/modes/interactive/theme/defaults/light-aurora-day.json +97 -0
  136. package/src/modes/interactive/theme/defaults/light-canyon.json +97 -0
  137. package/src/modes/interactive/theme/defaults/light-catppuccin.json +105 -0
  138. package/src/modes/interactive/theme/defaults/light-cirrus.json +96 -0
  139. package/src/modes/interactive/theme/defaults/light-coral.json +94 -0
  140. package/src/modes/interactive/theme/defaults/light-cyberpunk.json +103 -0
  141. package/src/modes/interactive/theme/defaults/light-dawn.json +96 -0
  142. package/src/modes/interactive/theme/defaults/light-dunes.json +97 -0
  143. package/src/modes/interactive/theme/defaults/light-eucalyptus.json +94 -0
  144. package/src/modes/interactive/theme/defaults/light-forest.json +107 -0
  145. package/src/modes/interactive/theme/defaults/light-frost.json +94 -0
  146. package/src/modes/interactive/theme/defaults/light-github.json +114 -0
  147. package/src/modes/interactive/theme/defaults/light-glacier.json +97 -0
  148. package/src/modes/interactive/theme/defaults/light-gruvbox.json +115 -0
  149. package/src/modes/interactive/theme/defaults/light-haze.json +96 -0
  150. package/src/modes/interactive/theme/defaults/light-honeycomb.json +94 -0
  151. package/src/modes/interactive/theme/defaults/light-lagoon.json +97 -0
  152. package/src/modes/interactive/theme/defaults/light-lavender.json +94 -0
  153. package/src/modes/interactive/theme/defaults/light-meadow.json +97 -0
  154. package/src/modes/interactive/theme/defaults/light-mint.json +94 -0
  155. package/src/modes/interactive/theme/defaults/light-monochrome.json +100 -0
  156. package/src/modes/interactive/theme/defaults/light-ocean.json +106 -0
  157. package/src/modes/interactive/theme/defaults/light-one.json +105 -0
  158. package/src/modes/interactive/theme/defaults/light-opal.json +97 -0
  159. package/src/modes/interactive/theme/defaults/light-orchard.json +97 -0
  160. package/src/modes/interactive/theme/defaults/light-paper.json +94 -0
  161. package/src/modes/interactive/theme/defaults/light-prism.json +96 -0
  162. package/src/modes/interactive/theme/defaults/light-retro.json +105 -0
  163. package/src/modes/interactive/theme/defaults/light-sand.json +94 -0
  164. package/src/modes/interactive/theme/defaults/light-savanna.json +97 -0
  165. package/src/modes/interactive/theme/defaults/light-solarized.json +101 -0
  166. package/src/modes/interactive/theme/defaults/light-soleil.json +96 -0
  167. package/src/modes/interactive/theme/defaults/light-sunset.json +106 -0
  168. package/src/modes/interactive/theme/defaults/light-synthwave.json +105 -0
  169. package/src/modes/interactive/theme/defaults/light-tokyo-night.json +118 -0
  170. package/src/modes/interactive/theme/defaults/light-wetland.json +97 -0
  171. package/src/modes/interactive/theme/defaults/light-zenith.json +95 -0
  172. package/src/modes/interactive/theme/defaults/limestone.json +100 -0
  173. package/src/modes/interactive/theme/defaults/mahogany.json +104 -0
  174. package/src/modes/interactive/theme/defaults/marble.json +99 -0
  175. package/src/modes/interactive/theme/defaults/obsidian.json +90 -0
  176. package/src/modes/interactive/theme/defaults/onyx.json +90 -0
  177. package/src/modes/interactive/theme/defaults/pearl.json +99 -0
  178. package/src/modes/interactive/theme/defaults/porcelain.json +90 -0
  179. package/src/modes/interactive/theme/defaults/quartz.json +102 -0
  180. package/src/modes/interactive/theme/defaults/sandstone.json +101 -0
  181. package/src/modes/interactive/theme/defaults/titanium.json +89 -0
  182. package/src/modes/interactive/theme/light.json +3 -2
  183. package/src/modes/interactive/theme/theme-schema.json +120 -4
  184. package/src/modes/interactive/theme/theme.ts +1228 -14
  185. package/src/prompts/branch-summary-preamble.md +3 -0
  186. package/src/prompts/branch-summary.md +28 -0
  187. package/src/prompts/compaction-summary.md +34 -0
  188. package/src/prompts/compaction-turn-prefix.md +16 -0
  189. package/src/prompts/compaction-update-summary.md +41 -0
  190. package/src/prompts/init.md +30 -0
  191. package/src/{core/tools/task/bundled-agents → prompts}/reviewer.md +6 -0
  192. package/src/prompts/summarization-system.md +3 -0
  193. package/src/prompts/system-prompt.md +27 -0
  194. package/src/{core/tools/task/bundled-agents → prompts}/task.md +2 -0
  195. package/src/prompts/title-system.md +8 -0
  196. package/src/prompts/tools/ask.md +24 -0
  197. package/src/prompts/tools/bash.md +23 -0
  198. package/src/prompts/tools/edit.md +9 -0
  199. package/src/prompts/tools/find.md +6 -0
  200. package/src/prompts/tools/grep.md +12 -0
  201. package/src/prompts/tools/lsp.md +14 -0
  202. package/src/prompts/tools/output.md +23 -0
  203. package/src/prompts/tools/read.md +25 -0
  204. package/src/prompts/tools/web-fetch.md +8 -0
  205. package/src/prompts/tools/web-search.md +10 -0
  206. package/src/prompts/tools/write.md +10 -0
  207. package/src/commands/init.md +0 -20
  208. /package/src/{core/tools/task/bundled-commands → prompts}/architect-plan.md +0 -0
  209. /package/src/{core/tools/task/bundled-agents → prompts}/browser.md +0 -0
  210. /package/src/{core/tools/task/bundled-agents → prompts}/explore.md +0 -0
  211. /package/src/{core/tools/task/bundled-commands → prompts}/implement-with-critic.md +0 -0
  212. /package/src/{core/tools/task/bundled-commands → prompts}/implement.md +0 -0
  213. /package/src/{core/tools/task/bundled-agents → prompts}/plan.md +0 -0
@@ -0,0 +1,97 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/can1357/oh-my-pi/main/packages/coding-agent/theme-schema.json",
3
+ "name": "dark-tundra",
4
+ "vars": {
5
+ "frostBlack": "#0B0F12",
6
+ "iceCave": "#11171C",
7
+ "glacierBlue": "#172028",
8
+ "permafrost": "#1E2A34",
9
+ "coldBorder": "#2A3A46",
10
+ "iceWhite": "#E3E9F0",
11
+ "auroraGreen": "#66D1A1",
12
+ "successGreen": "#5FB487",
13
+ "warningGold": "#D0B04D",
14
+ "errorRed": "#D26B6B",
15
+ "mutedIce": "#A3B0BF",
16
+ "dimIce": "#667381"
17
+ },
18
+ "colors": {
19
+ "accent": "auroraGreen",
20
+ "border": "coldBorder",
21
+ "borderAccent": "iceWhite",
22
+ "borderMuted": "glacierBlue",
23
+ "success": "successGreen",
24
+ "error": "errorRed",
25
+ "warning": "warningGold",
26
+ "muted": "mutedIce",
27
+ "dim": "dimIce",
28
+ "text": "",
29
+ "thinkingText": "mutedIce",
30
+
31
+ "selectedBg": "glacierBlue",
32
+ "userMessageBg": "iceCave",
33
+ "userMessageText": "",
34
+ "customMessageBg": "#162028",
35
+ "customMessageText": "",
36
+ "customMessageLabel": "iceWhite",
37
+ "toolPendingBg": "frostBlack",
38
+ "toolSuccessBg": "#0F1816",
39
+ "toolErrorBg": "#211415",
40
+ "toolTitle": "",
41
+ "toolOutput": "mutedIce",
42
+
43
+ "mdHeading": "iceWhite",
44
+ "mdLink": "auroraGreen",
45
+ "mdLinkUrl": "dimIce",
46
+ "mdCode": "iceWhite",
47
+ "mdCodeBlock": "auroraGreen",
48
+ "mdCodeBlockBorder": "coldBorder",
49
+ "mdQuote": "mutedIce",
50
+ "mdQuoteBorder": "coldBorder",
51
+ "mdHr": "glacierBlue",
52
+ "mdListBullet": "auroraGreen",
53
+
54
+ "toolDiffAdded": "successGreen",
55
+ "toolDiffRemoved": "errorRed",
56
+ "toolDiffContext": "mutedIce",
57
+
58
+ "syntaxComment": "dimIce",
59
+ "syntaxKeyword": "auroraGreen",
60
+ "syntaxFunction": "warningGold",
61
+ "syntaxVariable": "iceWhite",
62
+ "syntaxString": "successGreen",
63
+ "syntaxNumber": "warningGold",
64
+ "syntaxType": "auroraGreen",
65
+ "syntaxOperator": "mutedIce",
66
+ "syntaxPunctuation": "mutedIce",
67
+
68
+ "thinkingOff": "glacierBlue",
69
+ "thinkingMinimal": "dimIce",
70
+ "thinkingLow": "coldBorder",
71
+ "thinkingMedium": "auroraGreen",
72
+ "thinkingHigh": "iceWhite",
73
+ "thinkingXhigh": "warningGold",
74
+
75
+ "bashMode": "auroraGreen",
76
+
77
+ "statusLineBg": "#080B0E",
78
+ "statusLineSep": "coldBorder",
79
+ "statusLineModel": "iceWhite",
80
+ "statusLinePath": "auroraGreen",
81
+ "statusLineGitClean": "successGreen",
82
+ "statusLineGitDirty": "warningGold",
83
+ "statusLineContext": "mutedIce",
84
+ "statusLineSpend": "auroraGreen",
85
+ "statusLineStaged": "successGreen",
86
+ "statusLineDirty": "warningGold",
87
+ "statusLineUntracked": "iceWhite",
88
+ "statusLineOutput": "auroraGreen",
89
+ "statusLineCost": "warningGold",
90
+ "statusLineSubagents": "auroraGreen"
91
+ },
92
+ "export": {
93
+ "pageBg": "#080B0E",
94
+ "cardBg": "#11171C",
95
+ "infoBg": "#172028"
96
+ }
97
+ }
@@ -0,0 +1,97 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/can1357/oh-my-pi/main/packages/coding-agent/theme-schema.json",
3
+ "name": "dark-twilight",
4
+ "vars": {
5
+ "indigo": "#15142a",
6
+ "deepIndigo": "#1e1b3a",
7
+ "sunset": "#e07a3f",
8
+ "afterglow": "#f2b36f",
9
+ "violet": "#4a3b73",
10
+ "rose": "#c85d8a",
11
+ "teal": "#4ba3a6",
12
+ "success": "#6cc48f",
13
+ "error": "#e05f63",
14
+ "warning": "#f0a35c",
15
+ "muted": "#8d869c",
16
+ "dim": "#6a6378"
17
+ },
18
+ "colors": {
19
+ "accent": "sunset",
20
+ "border": "deepIndigo",
21
+ "borderAccent": "rose",
22
+ "borderMuted": "indigo",
23
+ "success": "success",
24
+ "error": "error",
25
+ "warning": "warning",
26
+ "muted": "muted",
27
+ "dim": "dim",
28
+ "text": "",
29
+ "thinkingText": "muted",
30
+
31
+ "selectedBg": "#241f3f",
32
+ "userMessageBg": "#171329",
33
+ "userMessageText": "",
34
+ "customMessageBg": "#231a36",
35
+ "customMessageText": "",
36
+ "customMessageLabel": "rose",
37
+ "toolPendingBg": "#1a1830",
38
+ "toolSuccessBg": "#1b2521",
39
+ "toolErrorBg": "#2b161b",
40
+ "toolTitle": "",
41
+ "toolOutput": "muted",
42
+
43
+ "mdHeading": "afterglow",
44
+ "mdLink": "teal",
45
+ "mdLinkUrl": "dim",
46
+ "mdCode": "afterglow",
47
+ "mdCodeBlock": "afterglow",
48
+ "mdCodeBlockBorder": "deepIndigo",
49
+ "mdQuote": "muted",
50
+ "mdQuoteBorder": "deepIndigo",
51
+ "mdHr": "deepIndigo",
52
+ "mdListBullet": "sunset",
53
+
54
+ "toolDiffAdded": "success",
55
+ "toolDiffRemoved": "error",
56
+ "toolDiffContext": "muted",
57
+
58
+ "syntaxComment": "dim",
59
+ "syntaxKeyword": "violet",
60
+ "syntaxFunction": "sunset",
61
+ "syntaxVariable": "teal",
62
+ "syntaxString": "afterglow",
63
+ "syntaxNumber": "rose",
64
+ "syntaxType": "success",
65
+ "syntaxOperator": "#c7bfd4",
66
+ "syntaxPunctuation": "#c7bfd4",
67
+
68
+ "thinkingOff": "indigo",
69
+ "thinkingMinimal": "dim",
70
+ "thinkingLow": "teal",
71
+ "thinkingMedium": "violet",
72
+ "thinkingHigh": "rose",
73
+ "thinkingXhigh": "afterglow",
74
+
75
+ "bashMode": "teal",
76
+
77
+ "statusLineBg": "#121025",
78
+ "statusLineSep": "#2c2644",
79
+ "statusLineModel": "rose",
80
+ "statusLinePath": "teal",
81
+ "statusLineGitClean": "success",
82
+ "statusLineGitDirty": "warning",
83
+ "statusLineContext": "muted",
84
+ "statusLineSpend": "sunset",
85
+ "statusLineStaged": "success",
86
+ "statusLineDirty": "warning",
87
+ "statusLineUntracked": "teal",
88
+ "statusLineOutput": "afterglow",
89
+ "statusLineCost": "sunset",
90
+ "statusLineSubagents": "rose"
91
+ },
92
+ "export": {
93
+ "pageBg": "#0f0e21",
94
+ "cardBg": "#17142c",
95
+ "infoBg": "#241a36"
96
+ }
97
+ }
@@ -0,0 +1,97 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/can1357/oh-my-pi/main/packages/coding-agent/theme-schema.json",
3
+ "name": "dark-volcanic",
4
+ "vars": {
5
+ "basaltBlack": "#100908",
6
+ "craterDark": "#1A100E",
7
+ "lavaRock": "#261513",
8
+ "emberBorder": "#3A201C",
9
+ "ashGray": "#8F7D74",
10
+ "dimAsh": "#66574F",
11
+ "magmaOrange": "#FF7A3D",
12
+ "sulfurYellow": "#F3C24F",
13
+ "obsidianBlue": "#6A8CA0",
14
+ "mossGreen": "#4FC48A",
15
+ "fireRed": "#FF5C5C",
16
+ "emberGold": "#F2A53A"
17
+ },
18
+ "colors": {
19
+ "accent": "magmaOrange",
20
+ "border": "emberBorder",
21
+ "borderAccent": "sulfurYellow",
22
+ "borderMuted": "lavaRock",
23
+ "success": "mossGreen",
24
+ "error": "fireRed",
25
+ "warning": "sulfurYellow",
26
+ "muted": "ashGray",
27
+ "dim": "dimAsh",
28
+ "text": "",
29
+ "thinkingText": "ashGray",
30
+
31
+ "selectedBg": "lavaRock",
32
+ "userMessageBg": "craterDark",
33
+ "userMessageText": "",
34
+ "customMessageBg": "#1F1412",
35
+ "customMessageText": "",
36
+ "customMessageLabel": "emberGold",
37
+ "toolPendingBg": "basaltBlack",
38
+ "toolSuccessBg": "#0F1813",
39
+ "toolErrorBg": "#24100E",
40
+ "toolTitle": "",
41
+ "toolOutput": "ashGray",
42
+
43
+ "mdHeading": "emberGold",
44
+ "mdLink": "magmaOrange",
45
+ "mdLinkUrl": "dimAsh",
46
+ "mdCode": "obsidianBlue",
47
+ "mdCodeBlock": "sulfurYellow",
48
+ "mdCodeBlockBorder": "emberBorder",
49
+ "mdQuote": "ashGray",
50
+ "mdQuoteBorder": "emberBorder",
51
+ "mdHr": "lavaRock",
52
+ "mdListBullet": "magmaOrange",
53
+
54
+ "toolDiffAdded": "mossGreen",
55
+ "toolDiffRemoved": "fireRed",
56
+ "toolDiffContext": "ashGray",
57
+
58
+ "syntaxComment": "dimAsh",
59
+ "syntaxKeyword": "magmaOrange",
60
+ "syntaxFunction": "emberGold",
61
+ "syntaxVariable": "obsidianBlue",
62
+ "syntaxString": "sulfurYellow",
63
+ "syntaxNumber": "mossGreen",
64
+ "syntaxType": "obsidianBlue",
65
+ "syntaxOperator": "ashGray",
66
+ "syntaxPunctuation": "ashGray",
67
+
68
+ "thinkingOff": "lavaRock",
69
+ "thinkingMinimal": "dimAsh",
70
+ "thinkingLow": "emberBorder",
71
+ "thinkingMedium": "magmaOrange",
72
+ "thinkingHigh": "sulfurYellow",
73
+ "thinkingXhigh": "emberGold",
74
+
75
+ "bashMode": "magmaOrange",
76
+
77
+ "statusLineBg": "#0B0706",
78
+ "statusLineSep": "emberBorder",
79
+ "statusLineModel": "emberGold",
80
+ "statusLinePath": "obsidianBlue",
81
+ "statusLineGitClean": "mossGreen",
82
+ "statusLineGitDirty": "sulfurYellow",
83
+ "statusLineContext": "ashGray",
84
+ "statusLineSpend": "magmaOrange",
85
+ "statusLineStaged": "mossGreen",
86
+ "statusLineDirty": "sulfurYellow",
87
+ "statusLineUntracked": "obsidianBlue",
88
+ "statusLineOutput": "emberGold",
89
+ "statusLineCost": "sulfurYellow",
90
+ "statusLineSubagents": "magmaOrange"
91
+ },
92
+ "export": {
93
+ "pageBg": "#0B0706",
94
+ "cardBg": "#1A100E",
95
+ "infoBg": "#261513"
96
+ }
97
+ }
@@ -0,0 +1,99 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/can1357/oh-my-pi/main/packages/coding-agent/theme-schema.json",
3
+ "name": "graphite",
4
+ "vars": {
5
+ "pencilYellow": "#f0d050",
6
+ "graphiteBase": "#1c1e22",
7
+ "paperWhite": "#f4f4f6",
8
+ "pencilStroke": "#404550",
9
+ "leadDark": "#2a2d32",
10
+ "smudgeGray": "#6b7080",
11
+ "lightSmudge": "#9098a8",
12
+ "faintStroke": "#2f3339",
13
+ "sharpContrast": "#e8eaed",
14
+ "warmLead": "#d4b896",
15
+ "coolLead": "#8893a8",
16
+ "selectedStroke": "#2d3138"
17
+ },
18
+ "colors": {
19
+ "accent": "pencilYellow",
20
+ "border": "pencilStroke",
21
+ "borderAccent": "lightSmudge",
22
+ "borderMuted": "faintStroke",
23
+ "success": "#85a882",
24
+ "error": "#d88989",
25
+ "warning": "pencilYellow",
26
+ "muted": "smudgeGray",
27
+ "dim": "coolLead",
28
+ "text": "",
29
+ "thinkingText": "smudgeGray",
30
+
31
+ "selectedBg": "selectedStroke",
32
+ "userMessageBg": "#1a1c1f",
33
+ "userMessageText": "",
34
+ "customMessageBg": "#252729",
35
+ "customMessageText": "",
36
+ "customMessageLabel": "lightSmudge",
37
+ "toolPendingBg": "#1e2024",
38
+ "toolSuccessBg": "#1a1d20",
39
+ "toolErrorBg": "#28232a",
40
+ "toolTitle": "",
41
+ "toolOutput": "smudgeGray",
42
+
43
+ "mdHeading": "pencilYellow",
44
+ "mdLink": "lightSmudge",
45
+ "mdLinkUrl": "coolLead",
46
+ "mdCode": "warmLead",
47
+ "mdCodeBlock": "sharpContrast",
48
+ "mdCodeBlockBorder": "pencilStroke",
49
+ "mdQuote": "smudgeGray",
50
+ "mdQuoteBorder": "faintStroke",
51
+ "mdHr": "pencilStroke",
52
+ "mdListBullet": "pencilYellow",
53
+
54
+ "toolDiffAdded": "#85a882",
55
+ "toolDiffRemoved": "#d88989",
56
+ "toolDiffContext": "smudgeGray",
57
+
58
+ "link": "lightSmudge",
59
+
60
+ "syntaxComment": "#6b7080",
61
+ "syntaxKeyword": "lightSmudge",
62
+ "syntaxFunction": "pencilYellow",
63
+ "syntaxVariable": "sharpContrast",
64
+ "syntaxString": "warmLead",
65
+ "syntaxNumber": "#9db89a",
66
+ "syntaxType": "coolLead",
67
+ "syntaxOperator": "#c0c4ca",
68
+ "syntaxPunctuation": "#a8adb8",
69
+
70
+ "thinkingOff": "faintStroke",
71
+ "thinkingMinimal": "smudgeGray",
72
+ "thinkingLow": "coolLead",
73
+ "thinkingMedium": "lightSmudge",
74
+ "thinkingHigh": "warmLead",
75
+ "thinkingXhigh": "pencilYellow",
76
+
77
+ "bashMode": "lightSmudge",
78
+
79
+ "statusLineBg": "#18191c",
80
+ "statusLineSep": 240,
81
+ "statusLineModel": "#9098a8",
82
+ "statusLinePath": "#8893a8",
83
+ "statusLineGitClean": "#85a882",
84
+ "statusLineGitDirty": "#d4b896",
85
+ "statusLineContext": "#6b7080",
86
+ "statusLineSpend": "#8893a8",
87
+ "statusLineStaged": 108,
88
+ "statusLineDirty": 180,
89
+ "statusLineUntracked": 246,
90
+ "statusLineOutput": 222,
91
+ "statusLineCost": 222,
92
+ "statusLineSubagents": "pencilYellow"
93
+ },
94
+ "export": {
95
+ "pageBg": "#1c1e22",
96
+ "cardBg": "#22242a",
97
+ "infoBg": "#2a2d32"
98
+ }
99
+ }
@@ -0,0 +1,195 @@
1
+ import alabaster from "./alabaster.json" with { type: "json" };
2
+ import amethyst from "./amethyst.json" with { type: "json" };
3
+ import anthracite from "./anthracite.json" with { type: "json" };
4
+ import basalt from "./basalt.json" with { type: "json" };
5
+ import birch from "./birch.json" with { type: "json" };
6
+ import dark_abyss from "./dark-abyss.json" with { type: "json" };
7
+ import dark_arctic from "./dark-arctic.json" with { type: "json" };
8
+ import dark_aurora from "./dark-aurora.json" with { type: "json" };
9
+ import dark_catppuccin from "./dark-catppuccin.json" with { type: "json" };
10
+ import dark_cavern from "./dark-cavern.json" with { type: "json" };
11
+ import dark_copper from "./dark-copper.json" with { type: "json" };
12
+ import dark_cosmos from "./dark-cosmos.json" with { type: "json" };
13
+ import dark_cyberpunk from "./dark-cyberpunk.json" with { type: "json" };
14
+ import dark_dracula from "./dark-dracula.json" with { type: "json" };
15
+ import dark_eclipse from "./dark-eclipse.json" with { type: "json" };
16
+ import dark_ember from "./dark-ember.json" with { type: "json" };
17
+ import dark_equinox from "./dark-equinox.json" with { type: "json" };
18
+ import dark_forest from "./dark-forest.json" with { type: "json" };
19
+ import dark_github from "./dark-github.json" with { type: "json" };
20
+ import dark_gruvbox from "./dark-gruvbox.json" with { type: "json" };
21
+ import dark_lavender from "./dark-lavender.json" with { type: "json" };
22
+ import dark_lunar from "./dark-lunar.json" with { type: "json" };
23
+ import dark_midnight from "./dark-midnight.json" with { type: "json" };
24
+ import dark_monochrome from "./dark-monochrome.json" with { type: "json" };
25
+ import dark_monokai from "./dark-monokai.json" with { type: "json" };
26
+ import dark_nebula from "./dark-nebula.json" with { type: "json" };
27
+ import dark_nord from "./dark-nord.json" with { type: "json" };
28
+ import dark_ocean from "./dark-ocean.json" with { type: "json" };
29
+ import dark_one from "./dark-one.json" with { type: "json" };
30
+ import dark_rainforest from "./dark-rainforest.json" with { type: "json" };
31
+ import dark_reef from "./dark-reef.json" with { type: "json" };
32
+ import dark_retro from "./dark-retro.json" with { type: "json" };
33
+ import dark_rose_pine from "./dark-rose-pine.json" with { type: "json" };
34
+ import dark_sakura from "./dark-sakura.json" with { type: "json" };
35
+ import dark_slate from "./dark-slate.json" with { type: "json" };
36
+ import dark_solarized from "./dark-solarized.json" with { type: "json" };
37
+ import dark_solstice from "./dark-solstice.json" with { type: "json" };
38
+ import dark_starfall from "./dark-starfall.json" with { type: "json" };
39
+ import dark_sunset from "./dark-sunset.json" with { type: "json" };
40
+ import dark_swamp from "./dark-swamp.json" with { type: "json" };
41
+ import dark_synthwave from "./dark-synthwave.json" with { type: "json" };
42
+ import dark_taiga from "./dark-taiga.json" with { type: "json" };
43
+ import dark_terminal from "./dark-terminal.json" with { type: "json" };
44
+ import dark_tokyo_night from "./dark-tokyo-night.json" with { type: "json" };
45
+ import dark_tundra from "./dark-tundra.json" with { type: "json" };
46
+ import dark_twilight from "./dark-twilight.json" with { type: "json" };
47
+ import dark_volcanic from "./dark-volcanic.json" with { type: "json" };
48
+ import graphite from "./graphite.json" with { type: "json" };
49
+ import light_arctic from "./light-arctic.json" with { type: "json" };
50
+ import light_aurora_day from "./light-aurora-day.json" with { type: "json" };
51
+ import light_canyon from "./light-canyon.json" with { type: "json" };
52
+ import light_catppuccin from "./light-catppuccin.json" with { type: "json" };
53
+ import light_cirrus from "./light-cirrus.json" with { type: "json" };
54
+ import light_coral from "./light-coral.json" with { type: "json" };
55
+ import light_cyberpunk from "./light-cyberpunk.json" with { type: "json" };
56
+ import light_dawn from "./light-dawn.json" with { type: "json" };
57
+ import light_dunes from "./light-dunes.json" with { type: "json" };
58
+ import light_eucalyptus from "./light-eucalyptus.json" with { type: "json" };
59
+ import light_forest from "./light-forest.json" with { type: "json" };
60
+ import light_frost from "./light-frost.json" with { type: "json" };
61
+ import light_github from "./light-github.json" with { type: "json" };
62
+ import light_glacier from "./light-glacier.json" with { type: "json" };
63
+ import light_gruvbox from "./light-gruvbox.json" with { type: "json" };
64
+ import light_haze from "./light-haze.json" with { type: "json" };
65
+ import light_honeycomb from "./light-honeycomb.json" with { type: "json" };
66
+ import light_lagoon from "./light-lagoon.json" with { type: "json" };
67
+ import light_lavender from "./light-lavender.json" with { type: "json" };
68
+ import light_meadow from "./light-meadow.json" with { type: "json" };
69
+ import light_mint from "./light-mint.json" with { type: "json" };
70
+ import light_monochrome from "./light-monochrome.json" with { type: "json" };
71
+ import light_ocean from "./light-ocean.json" with { type: "json" };
72
+ import light_one from "./light-one.json" with { type: "json" };
73
+ import light_opal from "./light-opal.json" with { type: "json" };
74
+ import light_orchard from "./light-orchard.json" with { type: "json" };
75
+ import light_paper from "./light-paper.json" with { type: "json" };
76
+ import light_prism from "./light-prism.json" with { type: "json" };
77
+ import light_retro from "./light-retro.json" with { type: "json" };
78
+ import light_sand from "./light-sand.json" with { type: "json" };
79
+ import light_savanna from "./light-savanna.json" with { type: "json" };
80
+ import light_solarized from "./light-solarized.json" with { type: "json" };
81
+ import light_soleil from "./light-soleil.json" with { type: "json" };
82
+ import light_sunset from "./light-sunset.json" with { type: "json" };
83
+ import light_synthwave from "./light-synthwave.json" with { type: "json" };
84
+ import light_tokyo_night from "./light-tokyo-night.json" with { type: "json" };
85
+ import light_wetland from "./light-wetland.json" with { type: "json" };
86
+ import light_zenith from "./light-zenith.json" with { type: "json" };
87
+ import limestone from "./limestone.json" with { type: "json" };
88
+ import mahogany from "./mahogany.json" with { type: "json" };
89
+ import marble from "./marble.json" with { type: "json" };
90
+ import obsidian from "./obsidian.json" with { type: "json" };
91
+ import onyx from "./onyx.json" with { type: "json" };
92
+ import pearl from "./pearl.json" with { type: "json" };
93
+ import porcelain from "./porcelain.json" with { type: "json" };
94
+ import quartz from "./quartz.json" with { type: "json" };
95
+ import sandstone from "./sandstone.json" with { type: "json" };
96
+ import titanium from "./titanium.json" with { type: "json" };
97
+
98
+ export const defaultThemes = {
99
+ "alabaster": alabaster,
100
+ "amethyst": amethyst,
101
+ "anthracite": anthracite,
102
+ "basalt": basalt,
103
+ "birch": birch,
104
+ "dark-abyss": dark_abyss,
105
+ "dark-arctic": dark_arctic,
106
+ "dark-aurora": dark_aurora,
107
+ "dark-catppuccin": dark_catppuccin,
108
+ "dark-cavern": dark_cavern,
109
+ "dark-copper": dark_copper,
110
+ "dark-cosmos": dark_cosmos,
111
+ "dark-cyberpunk": dark_cyberpunk,
112
+ "dark-dracula": dark_dracula,
113
+ "dark-eclipse": dark_eclipse,
114
+ "dark-ember": dark_ember,
115
+ "dark-equinox": dark_equinox,
116
+ "dark-forest": dark_forest,
117
+ "dark-github": dark_github,
118
+ "dark-gruvbox": dark_gruvbox,
119
+ "dark-lavender": dark_lavender,
120
+ "dark-lunar": dark_lunar,
121
+ "dark-midnight": dark_midnight,
122
+ "dark-monochrome": dark_monochrome,
123
+ "dark-monokai": dark_monokai,
124
+ "dark-nebula": dark_nebula,
125
+ "dark-nord": dark_nord,
126
+ "dark-ocean": dark_ocean,
127
+ "dark-one": dark_one,
128
+ "dark-rainforest": dark_rainforest,
129
+ "dark-reef": dark_reef,
130
+ "dark-retro": dark_retro,
131
+ "dark-rose-pine": dark_rose_pine,
132
+ "dark-sakura": dark_sakura,
133
+ "dark-slate": dark_slate,
134
+ "dark-solarized": dark_solarized,
135
+ "dark-solstice": dark_solstice,
136
+ "dark-starfall": dark_starfall,
137
+ "dark-sunset": dark_sunset,
138
+ "dark-swamp": dark_swamp,
139
+ "dark-synthwave": dark_synthwave,
140
+ "dark-taiga": dark_taiga,
141
+ "dark-terminal": dark_terminal,
142
+ "dark-tokyo-night": dark_tokyo_night,
143
+ "dark-tundra": dark_tundra,
144
+ "dark-twilight": dark_twilight,
145
+ "dark-volcanic": dark_volcanic,
146
+ "graphite": graphite,
147
+ "light-arctic": light_arctic,
148
+ "light-aurora-day": light_aurora_day,
149
+ "light-canyon": light_canyon,
150
+ "light-catppuccin": light_catppuccin,
151
+ "light-cirrus": light_cirrus,
152
+ "light-coral": light_coral,
153
+ "light-cyberpunk": light_cyberpunk,
154
+ "light-dawn": light_dawn,
155
+ "light-dunes": light_dunes,
156
+ "light-eucalyptus": light_eucalyptus,
157
+ "light-forest": light_forest,
158
+ "light-frost": light_frost,
159
+ "light-github": light_github,
160
+ "light-glacier": light_glacier,
161
+ "light-gruvbox": light_gruvbox,
162
+ "light-haze": light_haze,
163
+ "light-honeycomb": light_honeycomb,
164
+ "light-lagoon": light_lagoon,
165
+ "light-lavender": light_lavender,
166
+ "light-meadow": light_meadow,
167
+ "light-mint": light_mint,
168
+ "light-monochrome": light_monochrome,
169
+ "light-ocean": light_ocean,
170
+ "light-one": light_one,
171
+ "light-opal": light_opal,
172
+ "light-orchard": light_orchard,
173
+ "light-paper": light_paper,
174
+ "light-prism": light_prism,
175
+ "light-retro": light_retro,
176
+ "light-sand": light_sand,
177
+ "light-savanna": light_savanna,
178
+ "light-solarized": light_solarized,
179
+ "light-soleil": light_soleil,
180
+ "light-sunset": light_sunset,
181
+ "light-synthwave": light_synthwave,
182
+ "light-tokyo-night": light_tokyo_night,
183
+ "light-wetland": light_wetland,
184
+ "light-zenith": light_zenith,
185
+ "limestone": limestone,
186
+ "mahogany": mahogany,
187
+ "marble": marble,
188
+ "obsidian": obsidian,
189
+ "onyx": onyx,
190
+ "pearl": pearl,
191
+ "porcelain": porcelain,
192
+ "quartz": quartz,
193
+ "sandstone": sandstone,
194
+ "titanium": titanium,
195
+ };