my-pi 0.0.4 → 0.0.6

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.
@@ -9,7 +9,10 @@ import {
9
9
  import { Type } from '@sinclair/typebox';
10
10
  import { spawn } from 'node:child_process';
11
11
  import { existsSync, readFileSync, readdirSync } from 'node:fs';
12
- import { join, resolve } from 'node:path';
12
+ import { dirname, join, resolve } from 'node:path';
13
+ import { fileURLToPath } from 'node:url';
14
+
15
+ const __dirname = dirname(fileURLToPath(import.meta.url));
13
16
 
14
17
  // ── Types ───────────────────────────────────────
15
18
 
@@ -154,17 +157,35 @@ function scan_agent_dirs(cwd: string): Map<string, AgentDef> {
154
157
 
155
158
  // ── Run a single agent step via my-pi print mode ─
156
159
 
160
+ const AGENT_STEP_TIMEOUT_MS = 5 * 60 * 1000; // 5 minutes
161
+
157
162
  function run_agent_step(
158
163
  agent_def: AgentDef,
159
164
  task: string,
165
+ model?: string,
160
166
  ): Promise<{ output: string; exitCode: number }> {
161
- // Use the current process (my-pi) in print mode
162
- const bin = process.argv[1];
163
- const args = ['--no-builtin', '-P', task];
167
+ // Resolve bin path: prefer known dist location over process.argv[1]
168
+ // (process.argv[1] may point to a wrapper like codex, not my-pi)
169
+ const bin = join(__dirname, '..', 'index.js');
170
+ const args = ['--no-builtin', '--json', '--prompt', task];
171
+ if (model) {
172
+ args.push('--model', model);
173
+ }
164
174
 
165
175
  const chunks: string[] = [];
166
176
 
167
177
  return new Promise((res) => {
178
+ let settled = false;
179
+ const resolve_once = (result: {
180
+ output: string;
181
+ exitCode: number;
182
+ }) => {
183
+ if (settled) return;
184
+ settled = true;
185
+ clearTimeout(timer);
186
+ res(result);
187
+ };
188
+
168
189
  const proc = spawn(process.execPath, [bin, ...args], {
169
190
  stdio: ['ignore', 'pipe', 'pipe'],
170
191
  env: {
@@ -173,6 +194,14 @@ function run_agent_step(
173
194
  },
174
195
  });
175
196
 
197
+ const timer = setTimeout(() => {
198
+ proc.kill('SIGTERM');
199
+ resolve_once({
200
+ output: `Agent step timed out after ${AGENT_STEP_TIMEOUT_MS / 1000}s`,
201
+ exitCode: 1,
202
+ });
203
+ }, AGENT_STEP_TIMEOUT_MS);
204
+
176
205
  proc.stdout!.setEncoding('utf-8');
177
206
  proc.stdout!.on('data', (chunk: string) => {
178
207
  chunks.push(chunk);
@@ -182,14 +211,36 @@ function run_agent_step(
182
211
  proc.stderr!.on('data', () => {});
183
212
 
184
213
  proc.on('close', (code) => {
185
- res({
186
- output: chunks.join('').trim(),
214
+ // Parse NDJSON events to extract assistant text content
215
+ const raw = chunks.join('');
216
+ const text_parts: string[] = [];
217
+ for (const line of raw.split('\n')) {
218
+ if (!line.trim()) continue;
219
+ try {
220
+ const event = JSON.parse(line);
221
+ if (
222
+ event?.role === 'assistant' &&
223
+ Array.isArray(event?.content)
224
+ ) {
225
+ for (const c of event.content) {
226
+ if (c.type === 'text' && c.text) {
227
+ text_parts.push(c.text);
228
+ }
229
+ }
230
+ }
231
+ } catch {
232
+ // not JSON — use raw line
233
+ text_parts.push(line);
234
+ }
235
+ }
236
+ resolve_once({
237
+ output: text_parts.join('\n').trim() || raw.trim(),
187
238
  exitCode: code ?? 1,
188
239
  });
189
240
  });
190
241
 
191
242
  proc.on('error', (err) => {
192
- res({
243
+ resolve_once({
193
244
  output: `Error spawning agent: ${err.message}`,
194
245
  exitCode: 1,
195
246
  });
@@ -200,9 +251,26 @@ function run_agent_step(
200
251
  // ── Extension ──────────────────────────────────
201
252
 
202
253
  // Default export for Pi Package / additionalExtensionPaths loading
254
+ function parse_model_from_argv(): string | undefined {
255
+ const argv = process.argv;
256
+ for (let i = 0; i < argv.length; i++) {
257
+ if (
258
+ (argv[i] === '--model' || argv[i] === '-m') &&
259
+ i + 1 < argv.length
260
+ ) {
261
+ return argv[i + 1];
262
+ }
263
+ if (argv[i]?.startsWith('--model=')) {
264
+ return argv[i].slice('--model='.length);
265
+ }
266
+ }
267
+ return undefined;
268
+ }
269
+
203
270
  export default async function chain(pi: ExtensionAPI) {
204
271
  const cwd = process.cwd();
205
272
  const agents = scan_agent_dirs(cwd);
273
+ const current_model = parse_model_from_argv();
206
274
  let chains: ChainDef[] = [];
207
275
  let active_chain: ChainDef | null = null;
208
276
 
@@ -292,6 +360,7 @@ export default async function chain(pi: ExtensionAPI) {
292
360
  const result = await run_agent_step(
293
361
  agent_def,
294
362
  resolved_prompt,
363
+ current_model,
295
364
  );
296
365
 
297
366
  if (result.exitCode !== 0) {
@@ -0,0 +1,79 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "catppuccin-mocha",
4
+ "vars": {
5
+ "bg": "#1e1e2e",
6
+ "bgLight": "#313244",
7
+ "bgLighter": "#45475a",
8
+ "fg": "#cdd6f4",
9
+ "accent": "#cba6f7",
10
+ "blue": "#89b4fa",
11
+ "green": "#a6e3a1",
12
+ "red": "#f38ba8",
13
+ "orange": "#fab387",
14
+ "yellow": "#f9e2af",
15
+ "cyan": "#94e2d5",
16
+ "purple": "#cba6f7",
17
+ "pink": "#f5c2e7",
18
+ "gray": "#6c7086",
19
+ "dimGray": "#585b70"
20
+ },
21
+ "colors": {
22
+ "accent": "accent",
23
+ "border": "blue",
24
+ "borderAccent": "purple",
25
+ "borderMuted": "dimGray",
26
+ "success": "green",
27
+ "error": "red",
28
+ "warning": "yellow",
29
+ "muted": "gray",
30
+ "dim": "dimGray",
31
+ "text": "",
32
+ "thinkingText": "gray",
33
+ "selectedBg": "bgLighter",
34
+ "userMessageBg": "bgLight",
35
+ "userMessageText": "",
36
+ "customMessageBg": "#272839",
37
+ "customMessageText": "",
38
+ "customMessageLabel": "pink",
39
+ "toolPendingBg": "#1b1b2b",
40
+ "toolSuccessBg": "#1e2b2a",
41
+ "toolErrorBg": "#2b1b22",
42
+ "toolTitle": "",
43
+ "toolOutput": "gray",
44
+ "mdHeading": "orange",
45
+ "mdLink": "blue",
46
+ "mdLinkUrl": "dimGray",
47
+ "mdCode": "cyan",
48
+ "mdCodeBlock": "green",
49
+ "mdCodeBlockBorder": "gray",
50
+ "mdQuote": "gray",
51
+ "mdQuoteBorder": "gray",
52
+ "mdHr": "gray",
53
+ "mdListBullet": "accent",
54
+ "toolDiffAdded": "green",
55
+ "toolDiffRemoved": "red",
56
+ "toolDiffContext": "gray",
57
+ "syntaxComment": "#6c7086",
58
+ "syntaxKeyword": "#cba6f7",
59
+ "syntaxFunction": "#89b4fa",
60
+ "syntaxVariable": "#cdd6f4",
61
+ "syntaxString": "#a6e3a1",
62
+ "syntaxNumber": "#fab387",
63
+ "syntaxType": "#94e2d5",
64
+ "syntaxOperator": "#cba6f7",
65
+ "syntaxPunctuation": "#bac2de",
66
+ "thinkingOff": "dimGray",
67
+ "thinkingMinimal": "#6c7086",
68
+ "thinkingLow": "blue",
69
+ "thinkingMedium": "cyan",
70
+ "thinkingHigh": "purple",
71
+ "thinkingXhigh": "red",
72
+ "bashMode": "green"
73
+ },
74
+ "export": {
75
+ "pageBg": "#1e1e2e",
76
+ "cardBg": "#313244",
77
+ "infoBg": "#45475a"
78
+ }
79
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "dracula",
4
+ "vars": {
5
+ "bg": "#282a36",
6
+ "bgLight": "#343746",
7
+ "bgLighter": "#44475a",
8
+ "fg": "#f8f8f2",
9
+ "accent": "#bd93f9",
10
+ "pink": "#ff79c6",
11
+ "green": "#50fa7b",
12
+ "red": "#ff5555",
13
+ "orange": "#ffb86c",
14
+ "yellow": "#f1fa8c",
15
+ "cyan": "#8be9fd",
16
+ "purple": "#bd93f9",
17
+ "gray": "#6272a4",
18
+ "dimGray": "#4e5579"
19
+ },
20
+ "colors": {
21
+ "accent": "accent",
22
+ "border": "purple",
23
+ "borderAccent": "pink",
24
+ "borderMuted": "dimGray",
25
+ "success": "green",
26
+ "error": "red",
27
+ "warning": "yellow",
28
+ "muted": "gray",
29
+ "dim": "dimGray",
30
+ "text": "",
31
+ "thinkingText": "gray",
32
+ "selectedBg": "bgLighter",
33
+ "userMessageBg": "bgLight",
34
+ "userMessageText": "",
35
+ "customMessageBg": "#2e3042",
36
+ "customMessageText": "",
37
+ "customMessageLabel": "pink",
38
+ "toolPendingBg": "#252733",
39
+ "toolSuccessBg": "#253033",
40
+ "toolErrorBg": "#352530",
41
+ "toolTitle": "",
42
+ "toolOutput": "gray",
43
+ "mdHeading": "pink",
44
+ "mdLink": "cyan",
45
+ "mdLinkUrl": "dimGray",
46
+ "mdCode": "accent",
47
+ "mdCodeBlock": "green",
48
+ "mdCodeBlockBorder": "gray",
49
+ "mdQuote": "gray",
50
+ "mdQuoteBorder": "gray",
51
+ "mdHr": "gray",
52
+ "mdListBullet": "cyan",
53
+ "toolDiffAdded": "green",
54
+ "toolDiffRemoved": "red",
55
+ "toolDiffContext": "gray",
56
+ "syntaxComment": "#6272a4",
57
+ "syntaxKeyword": "#ff79c6",
58
+ "syntaxFunction": "#50fa7b",
59
+ "syntaxVariable": "#f8f8f2",
60
+ "syntaxString": "#f1fa8c",
61
+ "syntaxNumber": "#bd93f9",
62
+ "syntaxType": "#8be9fd",
63
+ "syntaxOperator": "#ff79c6",
64
+ "syntaxPunctuation": "#f8f8f2",
65
+ "thinkingOff": "dimGray",
66
+ "thinkingMinimal": "#6272a4",
67
+ "thinkingLow": "cyan",
68
+ "thinkingMedium": "green",
69
+ "thinkingHigh": "purple",
70
+ "thinkingXhigh": "pink",
71
+ "bashMode": "green"
72
+ },
73
+ "export": {
74
+ "pageBg": "#282a36",
75
+ "cardBg": "#343746",
76
+ "infoBg": "#44475a"
77
+ }
78
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "gruvbox-dark",
4
+ "vars": {
5
+ "bg": "#282828",
6
+ "bgLight": "#3c3836",
7
+ "bgLighter": "#504945",
8
+ "fg": "#ebdbb2",
9
+ "accent": "#fe8019",
10
+ "blue": "#83a598",
11
+ "green": "#b8bb26",
12
+ "red": "#fb4934",
13
+ "orange": "#fe8019",
14
+ "yellow": "#fabd2f",
15
+ "cyan": "#8ec07c",
16
+ "purple": "#d3869b",
17
+ "gray": "#928374",
18
+ "dimGray": "#665c54"
19
+ },
20
+ "colors": {
21
+ "accent": "accent",
22
+ "border": "blue",
23
+ "borderAccent": "orange",
24
+ "borderMuted": "dimGray",
25
+ "success": "green",
26
+ "error": "red",
27
+ "warning": "yellow",
28
+ "muted": "gray",
29
+ "dim": "dimGray",
30
+ "text": "",
31
+ "thinkingText": "gray",
32
+ "selectedBg": "bgLighter",
33
+ "userMessageBg": "bgLight",
34
+ "userMessageText": "",
35
+ "customMessageBg": "#32302f",
36
+ "customMessageText": "",
37
+ "customMessageLabel": "purple",
38
+ "toolPendingBg": "#252525",
39
+ "toolSuccessBg": "#2a2e22",
40
+ "toolErrorBg": "#2e2222",
41
+ "toolTitle": "",
42
+ "toolOutput": "gray",
43
+ "mdHeading": "orange",
44
+ "mdLink": "blue",
45
+ "mdLinkUrl": "dimGray",
46
+ "mdCode": "yellow",
47
+ "mdCodeBlock": "green",
48
+ "mdCodeBlockBorder": "gray",
49
+ "mdQuote": "gray",
50
+ "mdQuoteBorder": "gray",
51
+ "mdHr": "gray",
52
+ "mdListBullet": "orange",
53
+ "toolDiffAdded": "green",
54
+ "toolDiffRemoved": "red",
55
+ "toolDiffContext": "gray",
56
+ "syntaxComment": "#928374",
57
+ "syntaxKeyword": "#fb4934",
58
+ "syntaxFunction": "#fabd2f",
59
+ "syntaxVariable": "#ebdbb2",
60
+ "syntaxString": "#b8bb26",
61
+ "syntaxNumber": "#d3869b",
62
+ "syntaxType": "#83a598",
63
+ "syntaxOperator": "#fe8019",
64
+ "syntaxPunctuation": "#ebdbb2",
65
+ "thinkingOff": "dimGray",
66
+ "thinkingMinimal": "#928374",
67
+ "thinkingLow": "blue",
68
+ "thinkingMedium": "cyan",
69
+ "thinkingHigh": "purple",
70
+ "thinkingXhigh": "red",
71
+ "bashMode": "green"
72
+ },
73
+ "export": {
74
+ "pageBg": "#282828",
75
+ "cardBg": "#3c3836",
76
+ "infoBg": "#504945"
77
+ }
78
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "night-owl",
4
+ "vars": {
5
+ "bg": "#011627",
6
+ "bgLight": "#0b2942",
7
+ "bgLighter": "#13344f",
8
+ "fg": "#d6deeb",
9
+ "accent": "#7fdbca",
10
+ "blue": "#82aaff",
11
+ "purple": "#c792ea",
12
+ "green": "#addb67",
13
+ "red": "#ef5350",
14
+ "orange": "#f78c6c",
15
+ "yellow": "#ffeb95",
16
+ "cyan": "#80cbc4",
17
+ "gray": "#637777",
18
+ "dimGray": "#4b6479"
19
+ },
20
+ "colors": {
21
+ "accent": "accent",
22
+ "border": "blue",
23
+ "borderAccent": "cyan",
24
+ "borderMuted": "dimGray",
25
+ "success": "green",
26
+ "error": "red",
27
+ "warning": "yellow",
28
+ "muted": "gray",
29
+ "dim": "dimGray",
30
+ "text": "",
31
+ "thinkingText": "gray",
32
+ "selectedBg": "bgLighter",
33
+ "userMessageBg": "bgLight",
34
+ "userMessageText": "",
35
+ "customMessageBg": "#0d253a",
36
+ "customMessageText": "",
37
+ "customMessageLabel": "purple",
38
+ "toolPendingBg": "#01172a",
39
+ "toolSuccessBg": "#011e27",
40
+ "toolErrorBg": "#1e0f14",
41
+ "toolTitle": "",
42
+ "toolOutput": "gray",
43
+ "mdHeading": "orange",
44
+ "mdLink": "blue",
45
+ "mdLinkUrl": "dimGray",
46
+ "mdCode": "accent",
47
+ "mdCodeBlock": "green",
48
+ "mdCodeBlockBorder": "gray",
49
+ "mdQuote": "gray",
50
+ "mdQuoteBorder": "gray",
51
+ "mdHr": "gray",
52
+ "mdListBullet": "accent",
53
+ "toolDiffAdded": "green",
54
+ "toolDiffRemoved": "red",
55
+ "toolDiffContext": "gray",
56
+ "syntaxComment": "#637777",
57
+ "syntaxKeyword": "#c792ea",
58
+ "syntaxFunction": "#82aaff",
59
+ "syntaxVariable": "#d6deeb",
60
+ "syntaxString": "#ecc48d",
61
+ "syntaxNumber": "#f78c6c",
62
+ "syntaxType": "#7fdbca",
63
+ "syntaxOperator": "#c792ea",
64
+ "syntaxPunctuation": "#d6deeb",
65
+ "thinkingOff": "dimGray",
66
+ "thinkingMinimal": "#5f7e97",
67
+ "thinkingLow": "blue",
68
+ "thinkingMedium": "cyan",
69
+ "thinkingHigh": "purple",
70
+ "thinkingXhigh": "#ff5874",
71
+ "bashMode": "green"
72
+ },
73
+ "export": {
74
+ "pageBg": "#011627",
75
+ "cardBg": "#0b2942",
76
+ "infoBg": "#13344f"
77
+ }
78
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "nord",
4
+ "vars": {
5
+ "bg": "#2e3440",
6
+ "bgLight": "#3b4252",
7
+ "bgLighter": "#434c5e",
8
+ "fg": "#eceff4",
9
+ "accent": "#88c0d0",
10
+ "blue": "#81a1c1",
11
+ "green": "#a3be8c",
12
+ "red": "#bf616a",
13
+ "orange": "#d08770",
14
+ "yellow": "#ebcb8b",
15
+ "cyan": "#8fbcbb",
16
+ "purple": "#b48ead",
17
+ "gray": "#616e88",
18
+ "dimGray": "#4c566a"
19
+ },
20
+ "colors": {
21
+ "accent": "accent",
22
+ "border": "blue",
23
+ "borderAccent": "accent",
24
+ "borderMuted": "dimGray",
25
+ "success": "green",
26
+ "error": "red",
27
+ "warning": "yellow",
28
+ "muted": "gray",
29
+ "dim": "dimGray",
30
+ "text": "",
31
+ "thinkingText": "gray",
32
+ "selectedBg": "bgLighter",
33
+ "userMessageBg": "bgLight",
34
+ "userMessageText": "",
35
+ "customMessageBg": "#333a47",
36
+ "customMessageText": "",
37
+ "customMessageLabel": "purple",
38
+ "toolPendingBg": "#2b3039",
39
+ "toolSuccessBg": "#2e3639",
40
+ "toolErrorBg": "#362e30",
41
+ "toolTitle": "",
42
+ "toolOutput": "gray",
43
+ "mdHeading": "orange",
44
+ "mdLink": "accent",
45
+ "mdLinkUrl": "dimGray",
46
+ "mdCode": "cyan",
47
+ "mdCodeBlock": "green",
48
+ "mdCodeBlockBorder": "gray",
49
+ "mdQuote": "gray",
50
+ "mdQuoteBorder": "gray",
51
+ "mdHr": "gray",
52
+ "mdListBullet": "accent",
53
+ "toolDiffAdded": "green",
54
+ "toolDiffRemoved": "red",
55
+ "toolDiffContext": "gray",
56
+ "syntaxComment": "#616e88",
57
+ "syntaxKeyword": "#81a1c1",
58
+ "syntaxFunction": "#88c0d0",
59
+ "syntaxVariable": "#eceff4",
60
+ "syntaxString": "#a3be8c",
61
+ "syntaxNumber": "#b48ead",
62
+ "syntaxType": "#8fbcbb",
63
+ "syntaxOperator": "#81a1c1",
64
+ "syntaxPunctuation": "#d8dee9",
65
+ "thinkingOff": "dimGray",
66
+ "thinkingMinimal": "#616e88",
67
+ "thinkingLow": "blue",
68
+ "thinkingMedium": "accent",
69
+ "thinkingHigh": "purple",
70
+ "thinkingXhigh": "red",
71
+ "bashMode": "green"
72
+ },
73
+ "export": {
74
+ "pageBg": "#2e3440",
75
+ "cardBg": "#3b4252",
76
+ "infoBg": "#434c5e"
77
+ }
78
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "one-dark",
4
+ "vars": {
5
+ "bg": "#282c34",
6
+ "bgLight": "#2c313c",
7
+ "bgLighter": "#3e4451",
8
+ "fg": "#abb2bf",
9
+ "accent": "#61afef",
10
+ "blue": "#61afef",
11
+ "green": "#98c379",
12
+ "red": "#e06c75",
13
+ "orange": "#d19a66",
14
+ "yellow": "#e5c07b",
15
+ "cyan": "#56b6c2",
16
+ "purple": "#c678dd",
17
+ "gray": "#5c6370",
18
+ "dimGray": "#4b5263"
19
+ },
20
+ "colors": {
21
+ "accent": "accent",
22
+ "border": "blue",
23
+ "borderAccent": "cyan",
24
+ "borderMuted": "dimGray",
25
+ "success": "green",
26
+ "error": "red",
27
+ "warning": "yellow",
28
+ "muted": "gray",
29
+ "dim": "dimGray",
30
+ "text": "",
31
+ "thinkingText": "gray",
32
+ "selectedBg": "bgLighter",
33
+ "userMessageBg": "bgLight",
34
+ "userMessageText": "",
35
+ "customMessageBg": "#2a2f38",
36
+ "customMessageText": "",
37
+ "customMessageLabel": "purple",
38
+ "toolPendingBg": "#252930",
39
+ "toolSuccessBg": "#252e2a",
40
+ "toolErrorBg": "#2e2528",
41
+ "toolTitle": "",
42
+ "toolOutput": "gray",
43
+ "mdHeading": "orange",
44
+ "mdLink": "blue",
45
+ "mdLinkUrl": "dimGray",
46
+ "mdCode": "cyan",
47
+ "mdCodeBlock": "green",
48
+ "mdCodeBlockBorder": "gray",
49
+ "mdQuote": "gray",
50
+ "mdQuoteBorder": "gray",
51
+ "mdHr": "gray",
52
+ "mdListBullet": "blue",
53
+ "toolDiffAdded": "green",
54
+ "toolDiffRemoved": "red",
55
+ "toolDiffContext": "gray",
56
+ "syntaxComment": "#5c6370",
57
+ "syntaxKeyword": "#c678dd",
58
+ "syntaxFunction": "#61afef",
59
+ "syntaxVariable": "#e06c75",
60
+ "syntaxString": "#98c379",
61
+ "syntaxNumber": "#d19a66",
62
+ "syntaxType": "#e5c07b",
63
+ "syntaxOperator": "#56b6c2",
64
+ "syntaxPunctuation": "#abb2bf",
65
+ "thinkingOff": "dimGray",
66
+ "thinkingMinimal": "#5c6370",
67
+ "thinkingLow": "blue",
68
+ "thinkingMedium": "cyan",
69
+ "thinkingHigh": "purple",
70
+ "thinkingXhigh": "red",
71
+ "bashMode": "green"
72
+ },
73
+ "export": {
74
+ "pageBg": "#282c34",
75
+ "cardBg": "#2c313c",
76
+ "infoBg": "#3e4451"
77
+ }
78
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",
3
+ "name": "rose-pine",
4
+ "vars": {
5
+ "bg": "#191724",
6
+ "bgLight": "#1f1d2e",
7
+ "bgLighter": "#26233a",
8
+ "fg": "#e0def4",
9
+ "accent": "#c4a7e7",
10
+ "blue": "#9ccfd8",
11
+ "green": "#31748f",
12
+ "red": "#eb6f92",
13
+ "orange": "#ebbcba",
14
+ "yellow": "#f6c177",
15
+ "cyan": "#9ccfd8",
16
+ "purple": "#c4a7e7",
17
+ "gray": "#6e6a86",
18
+ "dimGray": "#524f67"
19
+ },
20
+ "colors": {
21
+ "accent": "accent",
22
+ "border": "purple",
23
+ "borderAccent": "cyan",
24
+ "borderMuted": "dimGray",
25
+ "success": "green",
26
+ "error": "red",
27
+ "warning": "yellow",
28
+ "muted": "gray",
29
+ "dim": "dimGray",
30
+ "text": "",
31
+ "thinkingText": "gray",
32
+ "selectedBg": "bgLighter",
33
+ "userMessageBg": "bgLight",
34
+ "userMessageText": "",
35
+ "customMessageBg": "#1d1a2b",
36
+ "customMessageText": "",
37
+ "customMessageLabel": "orange",
38
+ "toolPendingBg": "#171521",
39
+ "toolSuccessBg": "#171d24",
40
+ "toolErrorBg": "#211521",
41
+ "toolTitle": "",
42
+ "toolOutput": "gray",
43
+ "mdHeading": "orange",
44
+ "mdLink": "cyan",
45
+ "mdLinkUrl": "dimGray",
46
+ "mdCode": "accent",
47
+ "mdCodeBlock": "green",
48
+ "mdCodeBlockBorder": "gray",
49
+ "mdQuote": "gray",
50
+ "mdQuoteBorder": "gray",
51
+ "mdHr": "gray",
52
+ "mdListBullet": "accent",
53
+ "toolDiffAdded": "green",
54
+ "toolDiffRemoved": "red",
55
+ "toolDiffContext": "gray",
56
+ "syntaxComment": "#6e6a86",
57
+ "syntaxKeyword": "#c4a7e7",
58
+ "syntaxFunction": "#ebbcba",
59
+ "syntaxVariable": "#e0def4",
60
+ "syntaxString": "#f6c177",
61
+ "syntaxNumber": "#eb6f92",
62
+ "syntaxType": "#9ccfd8",
63
+ "syntaxOperator": "#c4a7e7",
64
+ "syntaxPunctuation": "#e0def4",
65
+ "thinkingOff": "dimGray",
66
+ "thinkingMinimal": "#6e6a86",
67
+ "thinkingLow": "cyan",
68
+ "thinkingMedium": "green",
69
+ "thinkingHigh": "purple",
70
+ "thinkingXhigh": "red",
71
+ "bashMode": "green"
72
+ },
73
+ "export": {
74
+ "pageBg": "#191724",
75
+ "cardBg": "#1f1d2e",
76
+ "infoBg": "#26233a"
77
+ }
78
+ }