@oh-my-pi/pi-coding-agent 6.9.0 → 6.9.69

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 (133) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/package.json +6 -5
  3. package/src/cli/stats-cli.ts +191 -0
  4. package/src/core/agent-session.ts +103 -1
  5. package/src/core/extensions/index.ts +2 -0
  6. package/src/core/extensions/runner.ts +31 -0
  7. package/src/core/extensions/types.ts +24 -0
  8. package/src/core/messages.ts +48 -0
  9. package/src/core/session-manager.ts +10 -1
  10. package/src/core/tools/bash.ts +5 -7
  11. package/src/core/tools/index.ts +1 -1
  12. package/src/core/tools/patch/applicator.ts +115 -17
  13. package/src/core/tools/patch/index.ts +1 -1
  14. package/src/core/tools/patch/normalize.ts +185 -10
  15. package/src/core/tools/python.ts +444 -86
  16. package/src/core/tools/task/executor.ts +2 -6
  17. package/src/core/tools/task/index.ts +30 -12
  18. package/src/core/tools/task/render.ts +163 -30
  19. package/src/core/tools/task/template.ts +37 -0
  20. package/src/core/tools/task/types.ts +6 -2
  21. package/src/core/tools/task/worker.ts +1 -1
  22. package/src/index.ts +2 -0
  23. package/src/main.ts +12 -0
  24. package/src/modes/interactive/components/python-execution.ts +180 -0
  25. package/src/modes/interactive/components/welcome.ts +1 -0
  26. package/src/modes/interactive/controllers/command-controller.ts +46 -0
  27. package/src/modes/interactive/controllers/input-controller.ts +28 -1
  28. package/src/modes/interactive/interactive-mode.ts +10 -0
  29. package/src/modes/interactive/theme/dark.json +2 -9
  30. package/src/modes/interactive/theme/defaults/alabaster.json +2 -8
  31. package/src/modes/interactive/theme/defaults/amethyst.json +2 -9
  32. package/src/modes/interactive/theme/defaults/anthracite.json +2 -9
  33. package/src/modes/interactive/theme/defaults/basalt.json +89 -88
  34. package/src/modes/interactive/theme/defaults/birch.json +2 -8
  35. package/src/modes/interactive/theme/defaults/dark-abyss.json +2 -8
  36. package/src/modes/interactive/theme/defaults/dark-arctic.json +2 -9
  37. package/src/modes/interactive/theme/defaults/dark-aurora.json +3 -2
  38. package/src/modes/interactive/theme/defaults/dark-catppuccin.json +2 -1
  39. package/src/modes/interactive/theme/defaults/dark-cavern.json +2 -8
  40. package/src/modes/interactive/theme/defaults/dark-copper.json +3 -2
  41. package/src/modes/interactive/theme/defaults/dark-cosmos.json +2 -8
  42. package/src/modes/interactive/theme/defaults/dark-cyberpunk.json +2 -9
  43. package/src/modes/interactive/theme/defaults/dark-dracula.json +2 -9
  44. package/src/modes/interactive/theme/defaults/dark-eclipse.json +2 -8
  45. package/src/modes/interactive/theme/defaults/dark-ember.json +3 -2
  46. package/src/modes/interactive/theme/defaults/dark-equinox.json +2 -8
  47. package/src/modes/interactive/theme/defaults/dark-forest.json +2 -9
  48. package/src/modes/interactive/theme/defaults/dark-github.json +2 -9
  49. package/src/modes/interactive/theme/defaults/dark-gruvbox.json +2 -9
  50. package/src/modes/interactive/theme/defaults/dark-lavender.json +3 -2
  51. package/src/modes/interactive/theme/defaults/dark-lunar.json +2 -8
  52. package/src/modes/interactive/theme/defaults/dark-midnight.json +3 -2
  53. package/src/modes/interactive/theme/defaults/dark-monochrome.json +2 -9
  54. package/src/modes/interactive/theme/defaults/dark-monokai.json +2 -9
  55. package/src/modes/interactive/theme/defaults/dark-nebula.json +2 -8
  56. package/src/modes/interactive/theme/defaults/dark-nord.json +2 -9
  57. package/src/modes/interactive/theme/defaults/dark-ocean.json +2 -9
  58. package/src/modes/interactive/theme/defaults/dark-one.json +2 -9
  59. package/src/modes/interactive/theme/defaults/dark-rainforest.json +2 -8
  60. package/src/modes/interactive/theme/defaults/dark-reef.json +2 -8
  61. package/src/modes/interactive/theme/defaults/dark-retro.json +2 -9
  62. package/src/modes/interactive/theme/defaults/dark-rose-pine.json +2 -1
  63. package/src/modes/interactive/theme/defaults/dark-sakura.json +3 -2
  64. package/src/modes/interactive/theme/defaults/dark-slate.json +3 -2
  65. package/src/modes/interactive/theme/defaults/dark-solarized.json +2 -1
  66. package/src/modes/interactive/theme/defaults/dark-solstice.json +2 -8
  67. package/src/modes/interactive/theme/defaults/dark-starfall.json +2 -8
  68. package/src/modes/interactive/theme/defaults/dark-sunset.json +2 -9
  69. package/src/modes/interactive/theme/defaults/dark-swamp.json +2 -8
  70. package/src/modes/interactive/theme/defaults/dark-synthwave.json +2 -1
  71. package/src/modes/interactive/theme/defaults/dark-taiga.json +2 -8
  72. package/src/modes/interactive/theme/defaults/dark-terminal.json +3 -2
  73. package/src/modes/interactive/theme/defaults/dark-tokyo-night.json +2 -9
  74. package/src/modes/interactive/theme/defaults/dark-tundra.json +2 -8
  75. package/src/modes/interactive/theme/defaults/dark-twilight.json +2 -8
  76. package/src/modes/interactive/theme/defaults/dark-volcanic.json +2 -8
  77. package/src/modes/interactive/theme/defaults/graphite.json +2 -9
  78. package/src/modes/interactive/theme/defaults/light-arctic.json +2 -1
  79. package/src/modes/interactive/theme/defaults/light-aurora-day.json +2 -8
  80. package/src/modes/interactive/theme/defaults/light-canyon.json +2 -8
  81. package/src/modes/interactive/theme/defaults/light-catppuccin.json +2 -1
  82. package/src/modes/interactive/theme/defaults/light-cirrus.json +2 -8
  83. package/src/modes/interactive/theme/defaults/light-coral.json +3 -2
  84. package/src/modes/interactive/theme/defaults/light-cyberpunk.json +2 -9
  85. package/src/modes/interactive/theme/defaults/light-dawn.json +2 -8
  86. package/src/modes/interactive/theme/defaults/light-dunes.json +2 -8
  87. package/src/modes/interactive/theme/defaults/light-eucalyptus.json +3 -2
  88. package/src/modes/interactive/theme/defaults/light-forest.json +2 -9
  89. package/src/modes/interactive/theme/defaults/light-frost.json +3 -2
  90. package/src/modes/interactive/theme/defaults/light-github.json +2 -1
  91. package/src/modes/interactive/theme/defaults/light-glacier.json +2 -8
  92. package/src/modes/interactive/theme/defaults/light-gruvbox.json +2 -9
  93. package/src/modes/interactive/theme/defaults/light-haze.json +2 -8
  94. package/src/modes/interactive/theme/defaults/light-honeycomb.json +3 -2
  95. package/src/modes/interactive/theme/defaults/light-lagoon.json +2 -8
  96. package/src/modes/interactive/theme/defaults/light-lavender.json +3 -2
  97. package/src/modes/interactive/theme/defaults/light-meadow.json +2 -8
  98. package/src/modes/interactive/theme/defaults/light-mint.json +3 -2
  99. package/src/modes/interactive/theme/defaults/light-monochrome.json +2 -1
  100. package/src/modes/interactive/theme/defaults/light-ocean.json +2 -9
  101. package/src/modes/interactive/theme/defaults/light-one.json +2 -8
  102. package/src/modes/interactive/theme/defaults/light-opal.json +2 -8
  103. package/src/modes/interactive/theme/defaults/light-orchard.json +2 -8
  104. package/src/modes/interactive/theme/defaults/light-paper.json +3 -2
  105. package/src/modes/interactive/theme/defaults/light-prism.json +2 -8
  106. package/src/modes/interactive/theme/defaults/light-retro.json +2 -9
  107. package/src/modes/interactive/theme/defaults/light-sand.json +3 -2
  108. package/src/modes/interactive/theme/defaults/light-savanna.json +2 -8
  109. package/src/modes/interactive/theme/defaults/light-solarized.json +2 -1
  110. package/src/modes/interactive/theme/defaults/light-soleil.json +2 -8
  111. package/src/modes/interactive/theme/defaults/light-sunset.json +2 -9
  112. package/src/modes/interactive/theme/defaults/light-synthwave.json +2 -9
  113. package/src/modes/interactive/theme/defaults/light-tokyo-night.json +2 -9
  114. package/src/modes/interactive/theme/defaults/light-wetland.json +2 -8
  115. package/src/modes/interactive/theme/defaults/light-zenith.json +2 -8
  116. package/src/modes/interactive/theme/defaults/limestone.json +2 -8
  117. package/src/modes/interactive/theme/defaults/mahogany.json +2 -9
  118. package/src/modes/interactive/theme/defaults/marble.json +2 -8
  119. package/src/modes/interactive/theme/defaults/obsidian.json +89 -88
  120. package/src/modes/interactive/theme/defaults/onyx.json +89 -88
  121. package/src/modes/interactive/theme/defaults/pearl.json +2 -8
  122. package/src/modes/interactive/theme/defaults/porcelain.json +89 -88
  123. package/src/modes/interactive/theme/defaults/quartz.json +2 -8
  124. package/src/modes/interactive/theme/defaults/sandstone.json +2 -8
  125. package/src/modes/interactive/theme/defaults/titanium.json +88 -87
  126. package/src/modes/interactive/theme/light.json +2 -8
  127. package/src/modes/interactive/theme/theme-schema.json +5 -0
  128. package/src/modes/interactive/theme/theme.ts +7 -0
  129. package/src/modes/interactive/types.ts +5 -0
  130. package/src/modes/interactive/utils/ui-helpers.ts +20 -0
  131. package/src/prompts/system/system-prompt.md +8 -0
  132. package/src/prompts/tools/python.md +40 -2
  133. package/src/prompts/tools/task.md +8 -13
@@ -27,7 +27,6 @@
27
27
  "dim": "dimAsh",
28
28
  "text": "",
29
29
  "thinkingText": "ashGray",
30
-
31
30
  "selectedBg": "lavaRock",
32
31
  "userMessageBg": "craterDark",
33
32
  "userMessageText": "",
@@ -39,7 +38,6 @@
39
38
  "toolErrorBg": "#24100E",
40
39
  "toolTitle": "",
41
40
  "toolOutput": "ashGray",
42
-
43
41
  "mdHeading": "emberGold",
44
42
  "mdLink": "magmaOrange",
45
43
  "mdLinkUrl": "dimAsh",
@@ -50,11 +48,9 @@
50
48
  "mdQuoteBorder": "emberBorder",
51
49
  "mdHr": "lavaRock",
52
50
  "mdListBullet": "magmaOrange",
53
-
54
51
  "toolDiffAdded": "mossGreen",
55
52
  "toolDiffRemoved": "fireRed",
56
53
  "toolDiffContext": "ashGray",
57
-
58
54
  "syntaxComment": "dimAsh",
59
55
  "syntaxKeyword": "magmaOrange",
60
56
  "syntaxFunction": "emberGold",
@@ -64,16 +60,13 @@
64
60
  "syntaxType": "obsidianBlue",
65
61
  "syntaxOperator": "ashGray",
66
62
  "syntaxPunctuation": "ashGray",
67
-
68
63
  "thinkingOff": "lavaRock",
69
64
  "thinkingMinimal": "dimAsh",
70
65
  "thinkingLow": "emberBorder",
71
66
  "thinkingMedium": "magmaOrange",
72
67
  "thinkingHigh": "sulfurYellow",
73
68
  "thinkingXhigh": "emberGold",
74
-
75
69
  "bashMode": "magmaOrange",
76
-
77
70
  "statusLineBg": "#0B0706",
78
71
  "statusLineSep": "emberBorder",
79
72
  "statusLineModel": "emberGold",
@@ -87,7 +80,8 @@
87
80
  "statusLineUntracked": "obsidianBlue",
88
81
  "statusLineOutput": "emberGold",
89
82
  "statusLineCost": "sulfurYellow",
90
- "statusLineSubagents": "magmaOrange"
83
+ "statusLineSubagents": "magmaOrange",
84
+ "pythonMode": "#f0c040"
91
85
  },
92
86
  "export": {
93
87
  "pageBg": "#0B0706",
@@ -27,7 +27,6 @@
27
27
  "dim": "coolLead",
28
28
  "text": "",
29
29
  "thinkingText": "smudgeGray",
30
-
31
30
  "selectedBg": "selectedStroke",
32
31
  "userMessageBg": "#1a1c1f",
33
32
  "userMessageText": "",
@@ -39,7 +38,6 @@
39
38
  "toolErrorBg": "#28232a",
40
39
  "toolTitle": "",
41
40
  "toolOutput": "smudgeGray",
42
-
43
41
  "mdHeading": "pencilYellow",
44
42
  "mdLink": "lightSmudge",
45
43
  "mdLinkUrl": "coolLead",
@@ -50,13 +48,10 @@
50
48
  "mdQuoteBorder": "faintStroke",
51
49
  "mdHr": "pencilStroke",
52
50
  "mdListBullet": "pencilYellow",
53
-
54
51
  "toolDiffAdded": "#85a882",
55
52
  "toolDiffRemoved": "#d88989",
56
53
  "toolDiffContext": "smudgeGray",
57
-
58
54
  "link": "lightSmudge",
59
-
60
55
  "syntaxComment": "#6b7080",
61
56
  "syntaxKeyword": "lightSmudge",
62
57
  "syntaxFunction": "pencilYellow",
@@ -66,16 +61,13 @@
66
61
  "syntaxType": "coolLead",
67
62
  "syntaxOperator": "#c0c4ca",
68
63
  "syntaxPunctuation": "#a8adb8",
69
-
70
64
  "thinkingOff": "faintStroke",
71
65
  "thinkingMinimal": "smudgeGray",
72
66
  "thinkingLow": "coolLead",
73
67
  "thinkingMedium": "lightSmudge",
74
68
  "thinkingHigh": "warmLead",
75
69
  "thinkingXhigh": "pencilYellow",
76
-
77
70
  "bashMode": "lightSmudge",
78
-
79
71
  "statusLineBg": "#18191c",
80
72
  "statusLineSep": 240,
81
73
  "statusLineModel": "#9098a8",
@@ -89,7 +81,8 @@
89
81
  "statusLineUntracked": 246,
90
82
  "statusLineOutput": 222,
91
83
  "statusLineCost": 222,
92
- "statusLineSubagents": "pencilYellow"
84
+ "statusLineSubagents": "pencilYellow",
85
+ "pythonMode": "#f0c040"
93
86
  },
94
87
  "export": {
95
88
  "pageBg": "#1c1e22",
@@ -96,7 +96,8 @@
96
96
  "statusLineUntracked": 109,
97
97
  "statusLineOutput": 139,
98
98
  "statusLineCost": 139,
99
- "statusLineSubagents": "frost1"
99
+ "statusLineSubagents": "frost1",
100
+ "pythonMode": "#f0c040"
100
101
  },
101
102
  "export": {
102
103
  "pageBg": "#FAFBFC",
@@ -27,7 +27,6 @@
27
27
  "dim": "dim",
28
28
  "text": "",
29
29
  "thinkingText": "muted",
30
-
31
30
  "selectedBg": "#eef6f5",
32
31
  "userMessageBg": "#ffffff",
33
32
  "userMessageText": "",
@@ -39,7 +38,6 @@
39
38
  "toolErrorBg": "#f9eef0",
40
39
  "toolTitle": "",
41
40
  "toolOutput": "muted",
42
-
43
41
  "mdHeading": "mint",
44
42
  "mdLink": "sky",
45
43
  "mdLinkUrl": "dim",
@@ -50,11 +48,9 @@
50
48
  "mdQuoteBorder": "ice",
51
49
  "mdHr": "ice",
52
50
  "mdListBullet": "rose",
53
-
54
51
  "toolDiffAdded": "success",
55
52
  "toolDiffRemoved": "error",
56
53
  "toolDiffContext": "muted",
57
-
58
54
  "syntaxComment": "dim",
59
55
  "syntaxKeyword": "sky",
60
56
  "syntaxFunction": "mint",
@@ -64,16 +60,13 @@
64
60
  "syntaxType": "success",
65
61
  "syntaxOperator": "ink",
66
62
  "syntaxPunctuation": "ink",
67
-
68
63
  "thinkingOff": "#dfe9ea",
69
64
  "thinkingMinimal": "dim",
70
65
  "thinkingLow": "glow",
71
66
  "thinkingMedium": "mint",
72
67
  "thinkingHigh": "sky",
73
68
  "thinkingXhigh": "rose",
74
-
75
69
  "bashMode": "sky",
76
-
77
70
  "statusLineBg": "#f1f6f6",
78
71
  "statusLineSep": "#c9d6d6",
79
72
  "statusLineModel": "mint",
@@ -87,7 +80,8 @@
87
80
  "statusLineUntracked": "sky",
88
81
  "statusLineOutput": "ink",
89
82
  "statusLineCost": "rose",
90
- "statusLineSubagents": "mint"
83
+ "statusLineSubagents": "mint",
84
+ "pythonMode": "#f0c040"
91
85
  },
92
86
  "export": {
93
87
  "pageBg": "#fbfcfd",
@@ -27,7 +27,6 @@
27
27
  "dim": "dimBrown",
28
28
  "text": "",
29
29
  "thinkingText": "mesaBrown",
30
-
31
30
  "selectedBg": "canyonElevated",
32
31
  "userMessageBg": "canyonSurface",
33
32
  "userMessageText": "",
@@ -39,7 +38,6 @@
39
38
  "toolErrorBg": "#F1E0DA",
40
39
  "toolTitle": "",
41
40
  "toolOutput": "mesaBrown",
42
-
43
41
  "mdHeading": "ironRed",
44
42
  "mdLink": "riverTeal",
45
43
  "mdLinkUrl": "dimBrown",
@@ -50,11 +48,9 @@
50
48
  "mdQuoteBorder": "canyonBorder",
51
49
  "mdHr": "canyonBorder",
52
50
  "mdListBullet": "pinonGreen",
53
-
54
51
  "toolDiffAdded": "pinonGreen",
55
52
  "toolDiffRemoved": "errorRed",
56
53
  "toolDiffContext": "mesaBrown",
57
-
58
54
  "syntaxComment": "dimBrown",
59
55
  "syntaxKeyword": "ironRed",
60
56
  "syntaxFunction": "riverTeal",
@@ -64,16 +60,13 @@
64
60
  "syntaxType": "riverTeal",
65
61
  "syntaxOperator": "mesaBrown",
66
62
  "syntaxPunctuation": "mesaBrown",
67
-
68
63
  "thinkingOff": "canyonBorder",
69
64
  "thinkingMinimal": "dimBrown",
70
65
  "thinkingLow": "sunsetOrange",
71
66
  "thinkingMedium": "ironRed",
72
67
  "thinkingHigh": "riverTeal",
73
68
  "thinkingXhigh": "pinonGreen",
74
-
75
69
  "bashMode": "pinonGreen",
76
-
77
70
  "statusLineBg": "#F2E8DD",
78
71
  "statusLineSep": "canyonBorder",
79
72
  "statusLineModel": "ironRed",
@@ -87,7 +80,8 @@
87
80
  "statusLineUntracked": "riverTeal",
88
81
  "statusLineOutput": "ironRed",
89
82
  "statusLineCost": "sunsetOrange",
90
- "statusLineSubagents": "ironRed"
83
+ "statusLineSubagents": "ironRed",
84
+ "pythonMode": "#f0c040"
91
85
  },
92
86
  "export": {
93
87
  "pageBg": "#F8F1EA",
@@ -95,7 +95,8 @@
95
95
  "statusLineUntracked": "sky",
96
96
  "statusLineOutput": "mauve",
97
97
  "statusLineCost": "maroon",
98
- "statusLineSubagents": "mauve"
98
+ "statusLineSubagents": "mauve",
99
+ "pythonMode": "yellow"
99
100
  },
100
101
  "export": {
101
102
  "pageBg": "base",
@@ -26,7 +26,6 @@
26
26
  "dim": "dim",
27
27
  "text": "",
28
28
  "thinkingText": "slate",
29
-
30
29
  "selectedBg": "#edf1f7",
31
30
  "userMessageBg": "#ffffff",
32
31
  "userMessageText": "",
@@ -38,7 +37,6 @@
38
37
  "toolErrorBg": "#f9eeee",
39
38
  "toolTitle": "",
40
39
  "toolOutput": "slate",
41
-
42
40
  "mdHeading": "blue",
43
41
  "mdLink": "sky",
44
42
  "mdLinkUrl": "dim",
@@ -49,11 +47,9 @@
49
47
  "mdQuoteBorder": "mist",
50
48
  "mdHr": "mist",
51
49
  "mdListBullet": "sky",
52
-
53
50
  "toolDiffAdded": "success",
54
51
  "toolDiffRemoved": "error",
55
52
  "toolDiffContext": "slate",
56
-
57
53
  "syntaxComment": "dim",
58
54
  "syntaxKeyword": "blue",
59
55
  "syntaxFunction": "charcoal",
@@ -63,16 +59,13 @@
63
59
  "syntaxType": "success",
64
60
  "syntaxOperator": "charcoal",
65
61
  "syntaxPunctuation": "charcoal",
66
-
67
62
  "thinkingOff": "#dde3ec",
68
63
  "thinkingMinimal": "dim",
69
64
  "thinkingLow": "silver",
70
65
  "thinkingMedium": "sky",
71
66
  "thinkingHigh": "blue",
72
67
  "thinkingXhigh": "#1f5f9e",
73
-
74
68
  "bashMode": "blue",
75
-
76
69
  "statusLineBg": "#eef2f7",
77
70
  "statusLineSep": "#c7d0dc",
78
71
  "statusLineModel": "blue",
@@ -86,7 +79,8 @@
86
79
  "statusLineUntracked": "sky",
87
80
  "statusLineOutput": "charcoal",
88
81
  "statusLineCost": "blue",
89
- "statusLineSubagents": "blue"
82
+ "statusLineSubagents": "blue",
83
+ "pythonMode": "#f0c040"
90
84
  },
91
85
  "export": {
92
86
  "pageBg": "#fafbfd",
@@ -84,11 +84,12 @@
84
84
  "statusLineUntracked": 39,
85
85
  "statusLineOutput": 205,
86
86
  "statusLineCost": 205,
87
- "statusLineSubagents": "accent"
87
+ "statusLineSubagents": "accent",
88
+ "pythonMode": "yellow"
88
89
  },
89
90
  "export": {
90
91
  "pageBg": "#fff8e1",
91
92
  "cardBg": "#fff5ec",
92
93
  "infoBg": "#f1f8e9"
93
94
  }
94
- }
95
+ }
@@ -30,7 +30,6 @@
30
30
  "dim": "dimGray",
31
31
  "text": "darkNavy",
32
32
  "thinkingText": "cyberPurple",
33
-
34
33
  "selectedBg": "purpleTint",
35
34
  "userMessageBg": "pinkTint",
36
35
  "userMessageText": "darkNavy",
@@ -43,7 +42,6 @@
43
42
  "toolText": "darkNavy",
44
43
  "toolTitle": "neonMagenta",
45
44
  "toolOutput": "mediumGray",
46
-
47
45
  "mdHeading": "neonMagenta",
48
46
  "mdLink": "electricBlue",
49
47
  "mdLinkUrl": "cyberPurple",
@@ -54,13 +52,10 @@
54
52
  "mdQuoteBorder": "neonMagenta",
55
53
  "mdHr": "electricBlue",
56
54
  "mdListBullet": "acidGreen",
57
-
58
55
  "toolDiffAdded": "acidGreen",
59
56
  "toolDiffRemoved": "neonPink",
60
57
  "toolDiffContext": "mediumGray",
61
-
62
58
  "link": "electricBlue",
63
-
64
59
  "syntaxComment": "#6B6B70",
65
60
  "syntaxKeyword": "#D600FF",
66
61
  "syntaxFunction": "#EA00D9",
@@ -70,16 +65,13 @@
70
65
  "syntaxType": "#00BFFF",
71
66
  "syntaxOperator": "#8E44AD",
72
67
  "syntaxPunctuation": "#6B6B70",
73
-
74
68
  "thinkingOff": "lightGray",
75
69
  "thinkingMinimal": "dimGray",
76
70
  "thinkingLow": "electricBlue",
77
71
  "thinkingMedium": "cyberPurple",
78
72
  "thinkingHigh": "neonMagenta",
79
73
  "thinkingXhigh": "deepMagenta",
80
-
81
74
  "bashMode": "acidGreen",
82
-
83
75
  "statusLineBg": "lightGray",
84
76
  "statusLineSep": "neonMagenta",
85
77
  "statusLineModel": "deepMagenta",
@@ -93,7 +85,8 @@
93
85
  "statusLineUntracked": "#00BFFF",
94
86
  "statusLineOutput": "deepMagenta",
95
87
  "statusLineCost": "neonPink",
96
- "statusLineSubagents": "neonMagenta"
88
+ "statusLineSubagents": "neonMagenta",
89
+ "pythonMode": "#f0c040"
97
90
  },
98
91
  "export": {
99
92
  "pageBg": "offWhite",
@@ -26,7 +26,6 @@
26
26
  "dim": "dim",
27
27
  "text": "",
28
28
  "thinkingText": "muted",
29
-
30
29
  "selectedBg": "#f1e7db",
31
30
  "userMessageBg": "#fdf8f3",
32
31
  "userMessageText": "",
@@ -38,7 +37,6 @@
38
37
  "toolErrorBg": "#fbefef",
39
38
  "toolTitle": "",
40
39
  "toolOutput": "muted",
41
-
42
40
  "mdHeading": "gold",
43
41
  "mdLink": "sky",
44
42
  "mdLinkUrl": "dim",
@@ -49,11 +47,9 @@
49
47
  "mdQuoteBorder": "#e1e5ee",
50
48
  "mdHr": "#e1e5ee",
51
49
  "mdListBullet": "gold",
52
-
53
50
  "toolDiffAdded": "success",
54
51
  "toolDiffRemoved": "error",
55
52
  "toolDiffContext": "muted",
56
-
57
53
  "syntaxComment": "dim",
58
54
  "syntaxKeyword": "sky",
59
55
  "syntaxFunction": "gold",
@@ -63,16 +59,13 @@
63
59
  "syntaxType": "success",
64
60
  "syntaxOperator": "ink",
65
61
  "syntaxPunctuation": "ink",
66
-
67
62
  "thinkingOff": "#dfe4ec",
68
63
  "thinkingMinimal": "dim",
69
64
  "thinkingLow": "mist",
70
65
  "thinkingMedium": "sky",
71
66
  "thinkingHigh": "gold",
72
67
  "thinkingXhigh": "sunrise",
73
-
74
68
  "bashMode": "sky",
75
-
76
69
  "statusLineBg": "#f4f6fa",
77
70
  "statusLineSep": "#c9d1dc",
78
71
  "statusLineModel": "gold",
@@ -86,7 +79,8 @@
86
79
  "statusLineUntracked": "sky",
87
80
  "statusLineOutput": "ink",
88
81
  "statusLineCost": "sunrise",
89
- "statusLineSubagents": "gold"
82
+ "statusLineSubagents": "gold",
83
+ "pythonMode": "gold"
90
84
  },
91
85
  "export": {
92
86
  "pageBg": "#faf7f2",
@@ -27,7 +27,6 @@
27
27
  "dim": "dimText",
28
28
  "text": "",
29
29
  "thinkingText": "mutedText",
30
-
31
30
  "selectedBg": "dunesPanel",
32
31
  "userMessageBg": "dunesSurface",
33
32
  "userMessageText": "",
@@ -39,7 +38,6 @@
39
38
  "toolErrorBg": "#F4E0DB",
40
39
  "toolTitle": "",
41
40
  "toolOutput": "mutedText",
42
-
43
41
  "mdHeading": "sunBakedOrange",
44
42
  "mdLink": "seaBlue",
45
43
  "mdLinkUrl": "dimText",
@@ -50,11 +48,9 @@
50
48
  "mdQuoteBorder": "dunesBorder",
51
49
  "mdHr": "dunesBorder",
52
50
  "mdListBullet": "seaFoam",
53
-
54
51
  "toolDiffAdded": "successGreen",
55
52
  "toolDiffRemoved": "errorRed",
56
53
  "toolDiffContext": "mutedText",
57
-
58
54
  "syntaxComment": "dimText",
59
55
  "syntaxKeyword": "sunBakedOrange",
60
56
  "syntaxFunction": "seaBlue",
@@ -64,16 +60,13 @@
64
60
  "syntaxType": "seaFoam",
65
61
  "syntaxOperator": "mutedText",
66
62
  "syntaxPunctuation": "mutedText",
67
-
68
63
  "thinkingOff": "dunesBorder",
69
64
  "thinkingMinimal": "dimText",
70
65
  "thinkingLow": "seaFoam",
71
66
  "thinkingMedium": "sunBakedOrange",
72
67
  "thinkingHigh": "seaBlue",
73
68
  "thinkingXhigh": "successGreen",
74
-
75
69
  "bashMode": "seaFoam",
76
-
77
70
  "statusLineBg": "#F4EBDD",
78
71
  "statusLineSep": "dunesBorder",
79
72
  "statusLineModel": "sunBakedOrange",
@@ -87,7 +80,8 @@
87
80
  "statusLineUntracked": "seaBlue",
88
81
  "statusLineOutput": "sunBakedOrange",
89
82
  "statusLineCost": "warningGold",
90
- "statusLineSubagents": "seaFoam"
83
+ "statusLineSubagents": "seaFoam",
84
+ "pythonMode": "#f0c040"
91
85
  },
92
86
  "export": {
93
87
  "pageBg": "#FBF3E6",
@@ -84,11 +84,12 @@
84
84
  "statusLineUntracked": 39,
85
85
  "statusLineOutput": 205,
86
86
  "statusLineCost": 205,
87
- "statusLineSubagents": "accent"
87
+ "statusLineSubagents": "accent",
88
+ "pythonMode": "yellow"
88
89
  },
89
90
  "export": {
90
91
  "pageBg": "#e0f7fa",
91
92
  "cardBg": "#e6f5f3",
92
93
  "infoBg": "#e8f5e9"
93
94
  }
94
- }
95
+ }
@@ -36,7 +36,6 @@
36
36
  "text": "",
37
37
  "thinkingText": "earthGray",
38
38
  "selectedBg": "softMint",
39
-
40
39
  "userMessageBg": "lightEarth",
41
40
  "userMessageText": "",
42
41
  "customMessageBg": "paleLeaf",
@@ -47,7 +46,6 @@
47
46
  "toolErrorBg": "#f0e8e0",
48
47
  "toolTitle": "forestShadow",
49
48
  "toolOutput": "earthGray",
50
-
51
49
  "mdHeading": "oliveBrown",
52
50
  "mdLink": "fernGreen",
53
51
  "mdLinkUrl": "bark",
@@ -58,13 +56,10 @@
58
56
  "mdQuoteBorder": "lichen",
59
57
  "mdHr": "lichen",
60
58
  "mdListBullet": "sageGreen",
61
-
62
59
  "toolDiffAdded": "sageGreen",
63
60
  "toolDiffRemoved": "burnishedOrange",
64
61
  "toolDiffContext": "earthGray",
65
-
66
62
  "link": "fernGreen",
67
-
68
63
  "syntaxComment": "#7a7466",
69
64
  "syntaxKeyword": "#3d5a3c",
70
65
  "syntaxFunction": "#636b2f",
@@ -74,16 +69,13 @@
74
69
  "syntaxType": "#4f5c2e",
75
70
  "syntaxOperator": "#3d5a3c",
76
71
  "syntaxPunctuation": "#636b2f",
77
-
78
72
  "thinkingOff": "lichen",
79
73
  "thinkingMinimal": "#9caf88",
80
74
  "thinkingLow": "#7e8c54",
81
75
  "thinkingMedium": "#4f7942",
82
76
  "thinkingHigh": "#3d5a3c",
83
77
  "thinkingXhigh": "#2d4a2c",
84
-
85
78
  "bashMode": "sageGreen",
86
-
87
79
  "statusLineBg": "morningDew",
88
80
  "statusLineSep": 144,
89
81
  "statusLineModel": "deepOlive",
@@ -97,7 +89,8 @@
97
89
  "statusLineUntracked": 65,
98
90
  "statusLineOutput": 131,
99
91
  "statusLineCost": 131,
100
- "statusLineSubagents": "oliveBrown"
92
+ "statusLineSubagents": "oliveBrown",
93
+ "pythonMode": "#f0c040"
101
94
  },
102
95
  "export": {
103
96
  "pageBg": "#f5f3ed",
@@ -84,11 +84,12 @@
84
84
  "statusLineUntracked": 39,
85
85
  "statusLineOutput": 205,
86
86
  "statusLineCost": 205,
87
- "statusLineSubagents": "accent"
87
+ "statusLineSubagents": "accent",
88
+ "pythonMode": "yellow"
88
89
  },
89
90
  "export": {
90
91
  "pageBg": "#f1faff",
91
92
  "cardBg": "#e6f7ff",
92
93
  "infoBg": "#e8f5e9"
93
94
  }
94
- }
95
+ }
@@ -104,7 +104,8 @@
104
104
  "statusLineUntracked": "untrackedColor",
105
105
  "statusLineOutput": "outputColor",
106
106
  "statusLineCost": "costColor",
107
- "statusLineSubagents": "subagentsColor"
107
+ "statusLineSubagents": "subagentsColor",
108
+ "pythonMode": "#f0c040"
108
109
  },
109
110
  "export": {
110
111
  "pageBg": "#f6f8fa",
@@ -27,7 +27,6 @@
27
27
  "dim": "dimText",
28
28
  "text": "",
29
29
  "thinkingText": "mutedText",
30
-
31
30
  "selectedBg": "glacierMist",
32
31
  "userMessageBg": "glacierSurface",
33
32
  "userMessageText": "",
@@ -39,7 +38,6 @@
39
38
  "toolErrorBg": "#F1E1E2",
40
39
  "toolTitle": "",
41
40
  "toolOutput": "mutedText",
42
-
43
41
  "mdHeading": "crevasseBlue",
44
42
  "mdLink": "frostBlue",
45
43
  "mdLinkUrl": "dimText",
@@ -50,11 +48,9 @@
50
48
  "mdQuoteBorder": "glacierBorder",
51
49
  "mdHr": "glacierBorder",
52
50
  "mdListBullet": "iceTeal",
53
-
54
51
  "toolDiffAdded": "iceTeal",
55
52
  "toolDiffRemoved": "errorRed",
56
53
  "toolDiffContext": "mutedText",
57
-
58
54
  "syntaxComment": "dimText",
59
55
  "syntaxKeyword": "crevasseBlue",
60
56
  "syntaxFunction": "frostBlue",
@@ -64,16 +60,13 @@
64
60
  "syntaxType": "crevasseBlue",
65
61
  "syntaxOperator": "mutedText",
66
62
  "syntaxPunctuation": "mutedText",
67
-
68
63
  "thinkingOff": "glacierBorder",
69
64
  "thinkingMinimal": "dimText",
70
65
  "thinkingLow": "frostBlue",
71
66
  "thinkingMedium": "crevasseBlue",
72
67
  "thinkingHigh": "iceTeal",
73
68
  "thinkingXhigh": "warningAmber",
74
-
75
69
  "bashMode": "crevasseBlue",
76
-
77
70
  "statusLineBg": "#EEF5F9",
78
71
  "statusLineSep": "glacierBorder",
79
72
  "statusLineModel": "crevasseBlue",
@@ -87,7 +80,8 @@
87
80
  "statusLineUntracked": "frostBlue",
88
81
  "statusLineOutput": "crevasseBlue",
89
82
  "statusLineCost": "warningAmber",
90
- "statusLineSubagents": "crevasseBlue"
83
+ "statusLineSubagents": "crevasseBlue",
84
+ "pythonMode": "#f0c040"
91
85
  },
92
86
  "export": {
93
87
  "pageBg": "#F2F7FA",