@oh-my-pi/pi-coding-agent 9.2.3 → 9.2.4

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/CHANGELOG.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [9.2.4] - 2026-01-31
6
+ ### Fixed
7
+
8
+ - Prevented interactive commands from blocking on stdin by redirecting from /dev/null in POSIX and Fish shell sessions
9
+
5
10
  ## [9.2.3] - 2026-01-31
6
11
  ### Added
7
12
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oh-my-pi/pi-coding-agent",
3
- "version": "9.2.3",
3
+ "version": "9.2.4",
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.3",
83
- "@oh-my-pi/pi-agent-core": "9.2.3",
84
- "@oh-my-pi/pi-ai": "9.2.3",
85
- "@oh-my-pi/pi-natives": "9.2.3",
86
- "@oh-my-pi/pi-tui": "9.2.3",
87
- "@oh-my-pi/pi-utils": "9.2.3",
82
+ "@oh-my-pi/omp-stats": "9.2.4",
83
+ "@oh-my-pi/pi-agent-core": "9.2.4",
84
+ "@oh-my-pi/pi-ai": "9.2.4",
85
+ "@oh-my-pi/pi-natives": "9.2.4",
86
+ "@oh-my-pi/pi-tui": "9.2.4",
87
+ "@oh-my-pi/pi-utils": "9.2.4",
88
88
  "@openai/agents": "^0.4.4",
89
89
  "@sinclair/typebox": "^0.34.48",
90
90
  "ajv": "^8.17.1",
@@ -90,7 +90,10 @@ function buildPosixCommandScript(
90
90
  ];
91
91
  if (envExports) lines.push(envExports);
92
92
  if (cwd) lines.push(`cd -- ${escapePosix(cwd)}`);
93
- lines.push(commandLine.length > 0 ? commandLine : ":");
93
+ // Redirect stdin from /dev/null to prevent interactive commands from blocking
94
+ // on the shell's stdin pipe (which is used for sending commands, not user input).
95
+ // Explicit pipes within the command (e.g., `echo "y" | cmd`) still work.
96
+ lines.push(commandLine.length > 0 ? `{ ${commandLine}; } < /dev/null` : ":");
94
97
  lines.push("__omp_status=$?");
95
98
  lines.push("unset -f exit logout exec 2>/dev/null");
96
99
  lines.push('if [ -n "$__omp_prev_exit" ]; then eval "$__omp_prev_exit"; fi');
@@ -145,7 +148,8 @@ function buildFishCommandScript(
145
148
  ];
146
149
  if (envExports) lines.push(envExports);
147
150
  if (cwd) lines.push(`cd -- ${escapePosix(cwd)}`);
148
- lines.push(commandLine.length > 0 ? commandLine : ":");
151
+ // Redirect stdin from /dev/null to prevent interactive commands from blocking
152
+ lines.push(commandLine.length > 0 ? `begin; ${commandLine}; end < /dev/null` : ":");
149
153
  lines.push("if set -q __omp_exit_code");
150
154
  lines.push(" set -l __omp_status $__omp_exit_code");
151
155
  lines.push(" set -e __omp_exit_code");