@oh-my-pi/pi-coding-agent 9.2.0 → 9.2.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.
- package/package.json +7 -7
- package/src/cli/stats-cli.ts +1 -0
- package/src/commit/git/operations.ts +1 -0
- package/src/debug/index.ts +1 -1
- package/src/extensibility/plugins/installer.ts +2 -0
- package/src/extensibility/plugins/manager.ts +3 -0
- package/src/ipy/gateway-coordinator.ts +1 -0
- package/src/lsp/clients/biome-client.ts +1 -0
- package/src/lsp/index.ts +1 -0
- package/src/lsp/lspmux.ts +1 -0
- package/src/utils/clipboard.ts +13 -5
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oh-my-pi/pi-coding-agent",
|
|
3
|
-
"version": "9.2.
|
|
3
|
+
"version": "9.2.1",
|
|
4
4
|
"description": "Coding agent CLI with read, bash, edit, write tools and session management",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"ompConfig": {
|
|
@@ -79,12 +79,12 @@
|
|
|
79
79
|
"test": "bun test"
|
|
80
80
|
},
|
|
81
81
|
"dependencies": {
|
|
82
|
-
"@oh-my-pi/omp-stats": "9.2.
|
|
83
|
-
"@oh-my-pi/pi-agent-core": "9.2.
|
|
84
|
-
"@oh-my-pi/pi-ai": "9.2.
|
|
85
|
-
"@oh-my-pi/pi-natives": "9.2.
|
|
86
|
-
"@oh-my-pi/pi-tui": "9.2.
|
|
87
|
-
"@oh-my-pi/pi-utils": "9.2.
|
|
82
|
+
"@oh-my-pi/omp-stats": "9.2.1",
|
|
83
|
+
"@oh-my-pi/pi-agent-core": "9.2.1",
|
|
84
|
+
"@oh-my-pi/pi-ai": "9.2.1",
|
|
85
|
+
"@oh-my-pi/pi-natives": "9.2.1",
|
|
86
|
+
"@oh-my-pi/pi-tui": "9.2.1",
|
|
87
|
+
"@oh-my-pi/pi-utils": "9.2.1",
|
|
88
88
|
"@openai/agents": "^0.4.4",
|
|
89
89
|
"@sinclair/typebox": "^0.34.48",
|
|
90
90
|
"ajv": "^8.17.1",
|
package/src/cli/stats-cli.ts
CHANGED
|
@@ -114,6 +114,7 @@ export async function runStatsCommand(cmd: StatsCommandArgs): Promise<void> {
|
|
|
114
114
|
Bun.spawn(openCommand === "cmd" ? ["cmd", "/c", "start", url] : [openCommand, url], {
|
|
115
115
|
stdout: "ignore",
|
|
116
116
|
stderr: "ignore",
|
|
117
|
+
windowsHide: true,
|
|
117
118
|
}).unref();
|
|
118
119
|
|
|
119
120
|
console.log("Press Ctrl+C to stop\n");
|
package/src/debug/index.ts
CHANGED
|
@@ -310,7 +310,7 @@ export class DebugSelectorComponent extends Container {
|
|
|
310
310
|
const [cmd, ...args] = openArgs;
|
|
311
311
|
|
|
312
312
|
try {
|
|
313
|
-
Bun.spawn([cmd, ...args], { stdout: "ignore", stderr: "ignore" }).unref();
|
|
313
|
+
Bun.spawn([cmd, ...args], { stdout: "ignore", stderr: "ignore", windowsHide: true }).unref();
|
|
314
314
|
this.ctx.showStatus(`Opened: ${artifactsDir}`);
|
|
315
315
|
} catch (err) {
|
|
316
316
|
this.ctx.showError(`Failed to open artifact folder: ${err instanceof Error ? err.message : String(err)}`);
|
|
@@ -50,6 +50,7 @@ export async function installPlugin(packageName: string): Promise<InstalledPlugi
|
|
|
50
50
|
stdin: "ignore",
|
|
51
51
|
stdout: "pipe",
|
|
52
52
|
stderr: "pipe",
|
|
53
|
+
windowsHide: true,
|
|
53
54
|
});
|
|
54
55
|
|
|
55
56
|
const exitCode = await proc.exited;
|
|
@@ -91,6 +92,7 @@ export async function uninstallPlugin(name: string): Promise<void> {
|
|
|
91
92
|
stdin: "ignore",
|
|
92
93
|
stdout: "pipe",
|
|
93
94
|
stderr: "pipe",
|
|
95
|
+
windowsHide: true,
|
|
94
96
|
});
|
|
95
97
|
|
|
96
98
|
const exitCode = await proc.exited;
|
|
@@ -159,6 +159,7 @@ export class PluginManager {
|
|
|
159
159
|
stdin: "ignore",
|
|
160
160
|
stdout: "pipe",
|
|
161
161
|
stderr: "pipe",
|
|
162
|
+
windowsHide: true,
|
|
162
163
|
});
|
|
163
164
|
|
|
164
165
|
const exitCode = await proc.exited;
|
|
@@ -239,6 +240,7 @@ export class PluginManager {
|
|
|
239
240
|
stdin: "ignore",
|
|
240
241
|
stdout: "pipe",
|
|
241
242
|
stderr: "pipe",
|
|
243
|
+
windowsHide: true,
|
|
242
244
|
});
|
|
243
245
|
|
|
244
246
|
const exitCode = await proc.exited;
|
|
@@ -621,6 +623,7 @@ export class PluginManager {
|
|
|
621
623
|
stdin: "ignore",
|
|
622
624
|
stdout: "pipe",
|
|
623
625
|
stderr: "pipe",
|
|
626
|
+
windowsHide: true,
|
|
624
627
|
});
|
|
625
628
|
return (await proc.exited) === 0;
|
|
626
629
|
} catch {
|
package/src/lsp/index.ts
CHANGED
package/src/lsp/lspmux.ts
CHANGED
package/src/utils/clipboard.ts
CHANGED
|
@@ -37,25 +37,33 @@ export async function copyToClipboard(text: string): Promise<void> {
|
|
|
37
37
|
|
|
38
38
|
try {
|
|
39
39
|
if (p === "darwin") {
|
|
40
|
-
await Bun.spawn(["pbcopy"], { stdin: Buffer.from(text), timeout }).exited;
|
|
40
|
+
await Bun.spawn(["pbcopy"], { stdin: Buffer.from(text), timeout, windowsHide: true }).exited;
|
|
41
41
|
} else if (p === "win32") {
|
|
42
|
-
await Bun.spawn(["clip"], { stdin: Buffer.from(text), timeout }).exited;
|
|
42
|
+
await Bun.spawn(["clip"], { stdin: Buffer.from(text), timeout, windowsHide: true }).exited;
|
|
43
43
|
} else {
|
|
44
44
|
const wayland = isWaylandSession();
|
|
45
45
|
if (wayland) {
|
|
46
46
|
const wlCopyPath = Bun.which("wl-copy");
|
|
47
47
|
if (wlCopyPath) {
|
|
48
48
|
// Fire-and-forget: wl-copy may not exit promptly, so we unref to avoid blocking
|
|
49
|
-
void Bun.spawn([wlCopyPath], { stdin: Buffer.from(text), timeout }).unref();
|
|
49
|
+
void Bun.spawn([wlCopyPath], { stdin: Buffer.from(text), timeout, windowsHide: true }).unref();
|
|
50
50
|
return;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
// Linux - try xclip first, fall back to xsel
|
|
55
55
|
try {
|
|
56
|
-
await Bun.spawn(["xclip", "-selection", "clipboard"], {
|
|
56
|
+
await Bun.spawn(["xclip", "-selection", "clipboard"], {
|
|
57
|
+
stdin: Buffer.from(text),
|
|
58
|
+
timeout,
|
|
59
|
+
windowsHide: true,
|
|
60
|
+
}).exited;
|
|
57
61
|
} catch {
|
|
58
|
-
await Bun.spawn(["xsel", "--clipboard", "--input"], {
|
|
62
|
+
await Bun.spawn(["xsel", "--clipboard", "--input"], {
|
|
63
|
+
stdin: Buffer.from(text),
|
|
64
|
+
timeout,
|
|
65
|
+
windowsHide: true,
|
|
66
|
+
}).exited;
|
|
59
67
|
}
|
|
60
68
|
}
|
|
61
69
|
} catch (error) {
|