@oh-my-pi/pi-coding-agent 3.15.0 → 3.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/CHANGELOG.md +61 -1
  2. package/docs/extensions.md +1055 -0
  3. package/docs/rpc.md +69 -13
  4. package/docs/session-tree-plan.md +1 -1
  5. package/examples/extensions/README.md +141 -0
  6. package/examples/extensions/api-demo.ts +87 -0
  7. package/examples/extensions/chalk-logger.ts +26 -0
  8. package/examples/extensions/hello.ts +33 -0
  9. package/examples/extensions/pirate.ts +44 -0
  10. package/examples/extensions/plan-mode.ts +551 -0
  11. package/examples/extensions/subagent/agents/reviewer.md +35 -0
  12. package/examples/extensions/todo.ts +299 -0
  13. package/examples/extensions/tools.ts +145 -0
  14. package/examples/extensions/with-deps/index.ts +36 -0
  15. package/examples/extensions/with-deps/package-lock.json +31 -0
  16. package/examples/extensions/with-deps/package.json +16 -0
  17. package/examples/sdk/02-custom-model.ts +3 -3
  18. package/examples/sdk/05-tools.ts +7 -3
  19. package/examples/sdk/06-extensions.ts +81 -0
  20. package/examples/sdk/06-hooks.ts +14 -13
  21. package/examples/sdk/08-prompt-templates.ts +42 -0
  22. package/examples/sdk/08-slash-commands.ts +17 -12
  23. package/examples/sdk/09-api-keys-and-oauth.ts +2 -2
  24. package/examples/sdk/12-full-control.ts +6 -6
  25. package/package.json +11 -7
  26. package/src/capability/extension-module.ts +34 -0
  27. package/src/cli/args.ts +22 -7
  28. package/src/cli/file-processor.ts +38 -67
  29. package/src/cli/list-models.ts +1 -1
  30. package/src/config.ts +25 -14
  31. package/src/core/agent-session.ts +505 -242
  32. package/src/core/auth-storage.ts +33 -21
  33. package/src/core/compaction/branch-summarization.ts +4 -4
  34. package/src/core/compaction/compaction.ts +3 -3
  35. package/src/core/custom-commands/bundled/wt/index.ts +430 -0
  36. package/src/core/custom-commands/loader.ts +9 -0
  37. package/src/core/custom-tools/wrapper.ts +5 -0
  38. package/src/core/event-bus.ts +59 -0
  39. package/src/core/export-html/vendor/highlight.min.js +1213 -0
  40. package/src/core/export-html/vendor/marked.min.js +6 -0
  41. package/src/core/extensions/index.ts +100 -0
  42. package/src/core/extensions/loader.ts +501 -0
  43. package/src/core/extensions/runner.ts +477 -0
  44. package/src/core/extensions/types.ts +712 -0
  45. package/src/core/extensions/wrapper.ts +147 -0
  46. package/src/core/hooks/types.ts +2 -2
  47. package/src/core/index.ts +10 -21
  48. package/src/core/keybindings.ts +199 -0
  49. package/src/core/messages.ts +26 -7
  50. package/src/core/model-registry.ts +123 -46
  51. package/src/core/model-resolver.ts +7 -5
  52. package/src/core/prompt-templates.ts +242 -0
  53. package/src/core/sdk.ts +378 -295
  54. package/src/core/session-manager.ts +72 -58
  55. package/src/core/settings-manager.ts +118 -22
  56. package/src/core/system-prompt.ts +24 -1
  57. package/src/core/terminal-notify.ts +37 -0
  58. package/src/core/tools/context.ts +4 -4
  59. package/src/core/tools/exa/mcp-client.ts +5 -4
  60. package/src/core/tools/exa/render.ts +176 -131
  61. package/src/core/tools/gemini-image.ts +361 -0
  62. package/src/core/tools/git.ts +216 -0
  63. package/src/core/tools/index.ts +28 -15
  64. package/src/core/tools/lsp/config.ts +5 -4
  65. package/src/core/tools/lsp/index.ts +17 -12
  66. package/src/core/tools/lsp/render.ts +39 -47
  67. package/src/core/tools/read.ts +66 -29
  68. package/src/core/tools/render-utils.ts +268 -0
  69. package/src/core/tools/renderers.ts +243 -225
  70. package/src/core/tools/task/discovery.ts +2 -2
  71. package/src/core/tools/task/executor.ts +66 -58
  72. package/src/core/tools/task/index.ts +29 -10
  73. package/src/core/tools/task/model-resolver.ts +8 -13
  74. package/src/core/tools/task/omp-command.ts +24 -0
  75. package/src/core/tools/task/render.ts +35 -60
  76. package/src/core/tools/task/types.ts +3 -0
  77. package/src/core/tools/web-fetch.ts +29 -28
  78. package/src/core/tools/web-search/index.ts +6 -5
  79. package/src/core/tools/web-search/providers/exa.ts +6 -5
  80. package/src/core/tools/web-search/render.ts +66 -111
  81. package/src/core/voice-controller.ts +135 -0
  82. package/src/core/voice-supervisor.ts +1003 -0
  83. package/src/core/voice.ts +308 -0
  84. package/src/discovery/builtin.ts +75 -1
  85. package/src/discovery/claude.ts +47 -1
  86. package/src/discovery/codex.ts +54 -2
  87. package/src/discovery/gemini.ts +55 -2
  88. package/src/discovery/helpers.ts +100 -1
  89. package/src/discovery/index.ts +2 -0
  90. package/src/index.ts +14 -9
  91. package/src/lib/worktree/collapse.ts +179 -0
  92. package/src/lib/worktree/constants.ts +14 -0
  93. package/src/lib/worktree/errors.ts +23 -0
  94. package/src/lib/worktree/git.ts +110 -0
  95. package/src/lib/worktree/index.ts +23 -0
  96. package/src/lib/worktree/operations.ts +216 -0
  97. package/src/lib/worktree/session.ts +114 -0
  98. package/src/lib/worktree/stats.ts +67 -0
  99. package/src/main.ts +61 -37
  100. package/src/migrations.ts +37 -7
  101. package/src/modes/interactive/components/bash-execution.ts +6 -4
  102. package/src/modes/interactive/components/custom-editor.ts +55 -0
  103. package/src/modes/interactive/components/custom-message.ts +95 -0
  104. package/src/modes/interactive/components/extensions/extension-list.ts +5 -0
  105. package/src/modes/interactive/components/extensions/inspector-panel.ts +18 -12
  106. package/src/modes/interactive/components/extensions/state-manager.ts +12 -0
  107. package/src/modes/interactive/components/extensions/types.ts +1 -0
  108. package/src/modes/interactive/components/footer.ts +324 -0
  109. package/src/modes/interactive/components/hook-editor.ts +1 -0
  110. package/src/modes/interactive/components/hook-selector.ts +3 -3
  111. package/src/modes/interactive/components/model-selector.ts +7 -6
  112. package/src/modes/interactive/components/oauth-selector.ts +3 -3
  113. package/src/modes/interactive/components/settings-defs.ts +55 -6
  114. package/src/modes/interactive/components/status-line/separators.ts +4 -4
  115. package/src/modes/interactive/components/status-line.ts +45 -35
  116. package/src/modes/interactive/components/tool-execution.ts +95 -23
  117. package/src/modes/interactive/interactive-mode.ts +644 -113
  118. package/src/modes/interactive/theme/defaults/alabaster.json +99 -0
  119. package/src/modes/interactive/theme/defaults/amethyst.json +103 -0
  120. package/src/modes/interactive/theme/defaults/anthracite.json +100 -0
  121. package/src/modes/interactive/theme/defaults/basalt.json +90 -0
  122. package/src/modes/interactive/theme/defaults/birch.json +101 -0
  123. package/src/modes/interactive/theme/defaults/dark-abyss.json +97 -0
  124. package/src/modes/interactive/theme/defaults/dark-aurora.json +94 -0
  125. package/src/modes/interactive/theme/defaults/dark-cavern.json +97 -0
  126. package/src/modes/interactive/theme/defaults/dark-copper.json +94 -0
  127. package/src/modes/interactive/theme/defaults/dark-cosmos.json +96 -0
  128. package/src/modes/interactive/theme/defaults/dark-eclipse.json +97 -0
  129. package/src/modes/interactive/theme/defaults/dark-ember.json +94 -0
  130. package/src/modes/interactive/theme/defaults/dark-equinox.json +96 -0
  131. package/src/modes/interactive/theme/defaults/dark-lavender.json +94 -0
  132. package/src/modes/interactive/theme/defaults/dark-lunar.json +95 -0
  133. package/src/modes/interactive/theme/defaults/dark-midnight.json +94 -0
  134. package/src/modes/interactive/theme/defaults/dark-nebula.json +96 -0
  135. package/src/modes/interactive/theme/defaults/dark-rainforest.json +97 -0
  136. package/src/modes/interactive/theme/defaults/dark-reef.json +97 -0
  137. package/src/modes/interactive/theme/defaults/dark-sakura.json +94 -0
  138. package/src/modes/interactive/theme/defaults/dark-slate.json +94 -0
  139. package/src/modes/interactive/theme/defaults/dark-solstice.json +96 -0
  140. package/src/modes/interactive/theme/defaults/dark-starfall.json +97 -0
  141. package/src/modes/interactive/theme/defaults/dark-swamp.json +96 -0
  142. package/src/modes/interactive/theme/defaults/dark-taiga.json +97 -0
  143. package/src/modes/interactive/theme/defaults/dark-terminal.json +94 -0
  144. package/src/modes/interactive/theme/defaults/dark-tundra.json +97 -0
  145. package/src/modes/interactive/theme/defaults/dark-twilight.json +97 -0
  146. package/src/modes/interactive/theme/defaults/dark-volcanic.json +97 -0
  147. package/src/modes/interactive/theme/defaults/graphite.json +99 -0
  148. package/src/modes/interactive/theme/defaults/index.ts +128 -0
  149. package/src/modes/interactive/theme/defaults/light-aurora-day.json +97 -0
  150. package/src/modes/interactive/theme/defaults/light-canyon.json +97 -0
  151. package/src/modes/interactive/theme/defaults/light-cirrus.json +96 -0
  152. package/src/modes/interactive/theme/defaults/light-coral.json +94 -0
  153. package/src/modes/interactive/theme/defaults/light-dawn.json +96 -0
  154. package/src/modes/interactive/theme/defaults/light-dunes.json +97 -0
  155. package/src/modes/interactive/theme/defaults/light-eucalyptus.json +94 -0
  156. package/src/modes/interactive/theme/defaults/light-frost.json +94 -0
  157. package/src/modes/interactive/theme/defaults/light-glacier.json +97 -0
  158. package/src/modes/interactive/theme/defaults/light-haze.json +96 -0
  159. package/src/modes/interactive/theme/defaults/light-honeycomb.json +94 -0
  160. package/src/modes/interactive/theme/defaults/light-lagoon.json +97 -0
  161. package/src/modes/interactive/theme/defaults/light-lavender.json +94 -0
  162. package/src/modes/interactive/theme/defaults/light-meadow.json +97 -0
  163. package/src/modes/interactive/theme/defaults/light-mint.json +94 -0
  164. package/src/modes/interactive/theme/defaults/light-opal.json +97 -0
  165. package/src/modes/interactive/theme/defaults/light-orchard.json +97 -0
  166. package/src/modes/interactive/theme/defaults/light-paper.json +94 -0
  167. package/src/modes/interactive/theme/defaults/light-prism.json +96 -0
  168. package/src/modes/interactive/theme/defaults/light-sand.json +94 -0
  169. package/src/modes/interactive/theme/defaults/light-savanna.json +97 -0
  170. package/src/modes/interactive/theme/defaults/light-soleil.json +96 -0
  171. package/src/modes/interactive/theme/defaults/light-wetland.json +97 -0
  172. package/src/modes/interactive/theme/defaults/light-zenith.json +95 -0
  173. package/src/modes/interactive/theme/defaults/limestone.json +100 -0
  174. package/src/modes/interactive/theme/defaults/mahogany.json +104 -0
  175. package/src/modes/interactive/theme/defaults/marble.json +99 -0
  176. package/src/modes/interactive/theme/defaults/obsidian.json +90 -0
  177. package/src/modes/interactive/theme/defaults/onyx.json +90 -0
  178. package/src/modes/interactive/theme/defaults/pearl.json +99 -0
  179. package/src/modes/interactive/theme/defaults/porcelain.json +90 -0
  180. package/src/modes/interactive/theme/defaults/quartz.json +102 -0
  181. package/src/modes/interactive/theme/defaults/sandstone.json +101 -0
  182. package/src/modes/interactive/theme/defaults/titanium.json +89 -0
  183. package/src/modes/print-mode.ts +14 -72
  184. package/src/modes/rpc/rpc-client.ts +23 -9
  185. package/src/modes/rpc/rpc-mode.ts +137 -125
  186. package/src/modes/rpc/rpc-types.ts +46 -24
  187. package/src/prompts/task.md +1 -0
  188. package/src/prompts/tools/gemini-image.md +4 -0
  189. package/src/prompts/tools/git.md +9 -0
  190. package/src/prompts/voice-summary.md +12 -0
  191. package/src/utils/image-convert.ts +26 -0
  192. package/src/utils/image-resize.ts +215 -0
  193. package/src/utils/shell-snapshot.ts +22 -20
@@ -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
+ }
@@ -1,67 +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" };
1
7
  import dark_arctic from "./dark-arctic.json" with { type: "json" };
8
+ import dark_aurora from "./dark-aurora.json" with { type: "json" };
2
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" };
3
13
  import dark_cyberpunk from "./dark-cyberpunk.json" with { type: "json" };
4
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" };
5
18
  import dark_forest from "./dark-forest.json" with { type: "json" };
6
19
  import dark_github from "./dark-github.json" with { type: "json" };
7
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" };
8
24
  import dark_monochrome from "./dark-monochrome.json" with { type: "json" };
9
25
  import dark_monokai from "./dark-monokai.json" with { type: "json" };
26
+ import dark_nebula from "./dark-nebula.json" with { type: "json" };
10
27
  import dark_nord from "./dark-nord.json" with { type: "json" };
11
28
  import dark_ocean from "./dark-ocean.json" with { type: "json" };
12
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" };
13
32
  import dark_retro from "./dark-retro.json" with { type: "json" };
14
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" };
15
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" };
16
39
  import dark_sunset from "./dark-sunset.json" with { type: "json" };
40
+ import dark_swamp from "./dark-swamp.json" with { type: "json" };
17
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" };
18
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" };
19
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" };
20
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" };
21
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" };
22
59
  import light_forest from "./light-forest.json" with { type: "json" };
60
+ import light_frost from "./light-frost.json" with { type: "json" };
23
61
  import light_github from "./light-github.json" with { type: "json" };
62
+ import light_glacier from "./light-glacier.json" with { type: "json" };
24
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" };
25
70
  import light_monochrome from "./light-monochrome.json" with { type: "json" };
26
71
  import light_ocean from "./light-ocean.json" with { type: "json" };
27
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" };
28
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" };
29
80
  import light_solarized from "./light-solarized.json" with { type: "json" };
81
+ import light_soleil from "./light-soleil.json" with { type: "json" };
30
82
  import light_sunset from "./light-sunset.json" with { type: "json" };
31
83
  import light_synthwave from "./light-synthwave.json" with { type: "json" };
32
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" };
33
97
 
34
98
  export const defaultThemes = {
99
+ alabaster: alabaster,
100
+ amethyst: amethyst,
101
+ anthracite: anthracite,
102
+ basalt: basalt,
103
+ birch: birch,
104
+ "dark-abyss": dark_abyss,
35
105
  "dark-arctic": dark_arctic,
106
+ "dark-aurora": dark_aurora,
36
107
  "dark-catppuccin": dark_catppuccin,
108
+ "dark-cavern": dark_cavern,
109
+ "dark-copper": dark_copper,
110
+ "dark-cosmos": dark_cosmos,
37
111
  "dark-cyberpunk": dark_cyberpunk,
38
112
  "dark-dracula": dark_dracula,
113
+ "dark-eclipse": dark_eclipse,
114
+ "dark-ember": dark_ember,
115
+ "dark-equinox": dark_equinox,
39
116
  "dark-forest": dark_forest,
40
117
  "dark-github": dark_github,
41
118
  "dark-gruvbox": dark_gruvbox,
119
+ "dark-lavender": dark_lavender,
120
+ "dark-lunar": dark_lunar,
121
+ "dark-midnight": dark_midnight,
42
122
  "dark-monochrome": dark_monochrome,
43
123
  "dark-monokai": dark_monokai,
124
+ "dark-nebula": dark_nebula,
44
125
  "dark-nord": dark_nord,
45
126
  "dark-ocean": dark_ocean,
46
127
  "dark-one": dark_one,
128
+ "dark-rainforest": dark_rainforest,
129
+ "dark-reef": dark_reef,
47
130
  "dark-retro": dark_retro,
48
131
  "dark-rose-pine": dark_rose_pine,
132
+ "dark-sakura": dark_sakura,
133
+ "dark-slate": dark_slate,
49
134
  "dark-solarized": dark_solarized,
135
+ "dark-solstice": dark_solstice,
136
+ "dark-starfall": dark_starfall,
50
137
  "dark-sunset": dark_sunset,
138
+ "dark-swamp": dark_swamp,
51
139
  "dark-synthwave": dark_synthwave,
140
+ "dark-taiga": dark_taiga,
141
+ "dark-terminal": dark_terminal,
52
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,
53
147
  "light-arctic": light_arctic,
148
+ "light-aurora-day": light_aurora_day,
149
+ "light-canyon": light_canyon,
54
150
  "light-catppuccin": light_catppuccin,
151
+ "light-cirrus": light_cirrus,
152
+ "light-coral": light_coral,
55
153
  "light-cyberpunk": light_cyberpunk,
154
+ "light-dawn": light_dawn,
155
+ "light-dunes": light_dunes,
156
+ "light-eucalyptus": light_eucalyptus,
56
157
  "light-forest": light_forest,
158
+ "light-frost": light_frost,
57
159
  "light-github": light_github,
160
+ "light-glacier": light_glacier,
58
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,
59
168
  "light-monochrome": light_monochrome,
60
169
  "light-ocean": light_ocean,
61
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,
62
175
  "light-retro": light_retro,
176
+ "light-sand": light_sand,
177
+ "light-savanna": light_savanna,
63
178
  "light-solarized": light_solarized,
179
+ "light-soleil": light_soleil,
64
180
  "light-sunset": light_sunset,
65
181
  "light-synthwave": light_synthwave,
66
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,
67
195
  };
@@ -0,0 +1,97 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/can1357/oh-my-pi/main/packages/coding-agent/theme-schema.json",
3
+ "name": "light-aurora-day",
4
+ "vars": {
5
+ "arctic": "#fbfcfd",
6
+ "ice": "#e6f0f1",
7
+ "mint": "#8bcbb8",
8
+ "glow": "#c9f1e3",
9
+ "rose": "#e3a7b4",
10
+ "sky": "#7fb0d6",
11
+ "ink": "#2f3b3a",
12
+ "muted": "#4f5f5c",
13
+ "dim": "#6c7a78",
14
+ "success": "#3fa977",
15
+ "error": "#c9545c",
16
+ "warning": "#d8a34a"
17
+ },
18
+ "colors": {
19
+ "accent": "mint",
20
+ "border": "ice",
21
+ "borderAccent": "sky",
22
+ "borderMuted": "#d8e5e6",
23
+ "success": "success",
24
+ "error": "error",
25
+ "warning": "warning",
26
+ "muted": "muted",
27
+ "dim": "dim",
28
+ "text": "",
29
+ "thinkingText": "muted",
30
+
31
+ "selectedBg": "#eef6f5",
32
+ "userMessageBg": "#ffffff",
33
+ "userMessageText": "",
34
+ "customMessageBg": "#f1f7f7",
35
+ "customMessageText": "",
36
+ "customMessageLabel": "rose",
37
+ "toolPendingBg": "#f0f4f5",
38
+ "toolSuccessBg": "#edf7f1",
39
+ "toolErrorBg": "#f9eef0",
40
+ "toolTitle": "",
41
+ "toolOutput": "muted",
42
+
43
+ "mdHeading": "mint",
44
+ "mdLink": "sky",
45
+ "mdLinkUrl": "dim",
46
+ "mdCode": "ink",
47
+ "mdCodeBlock": "ink",
48
+ "mdCodeBlockBorder": "ice",
49
+ "mdQuote": "muted",
50
+ "mdQuoteBorder": "ice",
51
+ "mdHr": "ice",
52
+ "mdListBullet": "rose",
53
+
54
+ "toolDiffAdded": "success",
55
+ "toolDiffRemoved": "error",
56
+ "toolDiffContext": "muted",
57
+
58
+ "syntaxComment": "dim",
59
+ "syntaxKeyword": "sky",
60
+ "syntaxFunction": "mint",
61
+ "syntaxVariable": "ink",
62
+ "syntaxString": "warning",
63
+ "syntaxNumber": "rose",
64
+ "syntaxType": "success",
65
+ "syntaxOperator": "ink",
66
+ "syntaxPunctuation": "ink",
67
+
68
+ "thinkingOff": "#dfe9ea",
69
+ "thinkingMinimal": "dim",
70
+ "thinkingLow": "glow",
71
+ "thinkingMedium": "mint",
72
+ "thinkingHigh": "sky",
73
+ "thinkingXhigh": "rose",
74
+
75
+ "bashMode": "sky",
76
+
77
+ "statusLineBg": "#f1f6f6",
78
+ "statusLineSep": "#c9d6d6",
79
+ "statusLineModel": "mint",
80
+ "statusLinePath": "sky",
81
+ "statusLineGitClean": "success",
82
+ "statusLineGitDirty": "warning",
83
+ "statusLineContext": "muted",
84
+ "statusLineSpend": "rose",
85
+ "statusLineStaged": "success",
86
+ "statusLineDirty": "warning",
87
+ "statusLineUntracked": "sky",
88
+ "statusLineOutput": "ink",
89
+ "statusLineCost": "rose",
90
+ "statusLineSubagents": "mint"
91
+ },
92
+ "export": {
93
+ "pageBg": "#fbfcfd",
94
+ "cardBg": "#ffffff",
95
+ "infoBg": "#eef4f4"
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": "light-canyon",
4
+ "vars": {
5
+ "canyonBg": "#F8F1EA",
6
+ "canyonSurface": "#FFF8F1",
7
+ "canyonElevated": "#EEDCCB",
8
+ "canyonBorder": "#E3D0BF",
9
+ "ironRed": "#C96A3B",
10
+ "pinonGreen": "#7F9A55",
11
+ "sunsetOrange": "#D09A4A",
12
+ "riverTeal": "#4F7F82",
13
+ "mesaBrown": "#7A5A45",
14
+ "dimBrown": "#9A7A65",
15
+ "errorRed": "#B84B3D",
16
+ "stoneGray": "#6E5A50"
17
+ },
18
+ "colors": {
19
+ "accent": "ironRed",
20
+ "border": "canyonBorder",
21
+ "borderAccent": "sunsetOrange",
22
+ "borderMuted": "canyonElevated",
23
+ "success": "pinonGreen",
24
+ "error": "errorRed",
25
+ "warning": "sunsetOrange",
26
+ "muted": "mesaBrown",
27
+ "dim": "dimBrown",
28
+ "text": "",
29
+ "thinkingText": "mesaBrown",
30
+
31
+ "selectedBg": "canyonElevated",
32
+ "userMessageBg": "canyonSurface",
33
+ "userMessageText": "",
34
+ "customMessageBg": "#F0E3D6",
35
+ "customMessageText": "",
36
+ "customMessageLabel": "ironRed",
37
+ "toolPendingBg": "canyonBg",
38
+ "toolSuccessBg": "#E7F0DE",
39
+ "toolErrorBg": "#F1E0DA",
40
+ "toolTitle": "",
41
+ "toolOutput": "mesaBrown",
42
+
43
+ "mdHeading": "ironRed",
44
+ "mdLink": "riverTeal",
45
+ "mdLinkUrl": "dimBrown",
46
+ "mdCode": "pinonGreen",
47
+ "mdCodeBlock": "riverTeal",
48
+ "mdCodeBlockBorder": "canyonBorder",
49
+ "mdQuote": "mesaBrown",
50
+ "mdQuoteBorder": "canyonBorder",
51
+ "mdHr": "canyonBorder",
52
+ "mdListBullet": "pinonGreen",
53
+
54
+ "toolDiffAdded": "pinonGreen",
55
+ "toolDiffRemoved": "errorRed",
56
+ "toolDiffContext": "mesaBrown",
57
+
58
+ "syntaxComment": "dimBrown",
59
+ "syntaxKeyword": "ironRed",
60
+ "syntaxFunction": "riverTeal",
61
+ "syntaxVariable": "stoneGray",
62
+ "syntaxString": "pinonGreen",
63
+ "syntaxNumber": "sunsetOrange",
64
+ "syntaxType": "riverTeal",
65
+ "syntaxOperator": "mesaBrown",
66
+ "syntaxPunctuation": "mesaBrown",
67
+
68
+ "thinkingOff": "canyonBorder",
69
+ "thinkingMinimal": "dimBrown",
70
+ "thinkingLow": "sunsetOrange",
71
+ "thinkingMedium": "ironRed",
72
+ "thinkingHigh": "riverTeal",
73
+ "thinkingXhigh": "pinonGreen",
74
+
75
+ "bashMode": "pinonGreen",
76
+
77
+ "statusLineBg": "#F2E8DD",
78
+ "statusLineSep": "canyonBorder",
79
+ "statusLineModel": "ironRed",
80
+ "statusLinePath": "riverTeal",
81
+ "statusLineGitClean": "pinonGreen",
82
+ "statusLineGitDirty": "sunsetOrange",
83
+ "statusLineContext": "mesaBrown",
84
+ "statusLineSpend": "ironRed",
85
+ "statusLineStaged": "pinonGreen",
86
+ "statusLineDirty": "sunsetOrange",
87
+ "statusLineUntracked": "riverTeal",
88
+ "statusLineOutput": "ironRed",
89
+ "statusLineCost": "sunsetOrange",
90
+ "statusLineSubagents": "ironRed"
91
+ },
92
+ "export": {
93
+ "pageBg": "#F8F1EA",
94
+ "cardBg": "#FFF8F1",
95
+ "infoBg": "#EEDCCB"
96
+ }
97
+ }