kiro-spec-engine 1.45.8 → 1.45.9

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
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.45.9] - 2026-02-13
11
+
12
+ ### Fixed
13
+ - **PowerShell parameter expansion error**: `AgentSpawner.spawn()` now stores prompt in `$prompt` variable before passing to codex command, preventing PowerShell from splitting multi-word prompts into separate arguments (fixes `error: unexpected argument 'Spec' found` when bootstrap prompt contains spaces)
14
+
10
15
  ## [1.45.8] - 2026-02-13
11
16
 
12
17
  ### Fixed
@@ -146,18 +146,20 @@ class AgentSpawner extends EventEmitter {
146
146
  if (promptTmpFile) {
147
147
  // On Windows, use PowerShell to read the temp file as the last argument.
148
148
  // PowerShell does not have the 8191-char limit of cmd.exe.
149
- // We construct: powershell -NoProfile -Command "& <command> <args> (Get-Content -Raw -Encoding UTF8 '<tmpfile>')"
149
+ // We construct a PowerShell script that:
150
+ // 1. Reads the prompt file into a variable (with UTF-8 encoding)
151
+ // 2. Passes the variable as a single argument to codex
150
152
  const cmdParts = [command, ...finalArgs].map(a => {
151
153
  if (a.startsWith('"') && a.endsWith('"')) return a;
152
154
  return /\s/.test(a) ? `"${a}"` : a;
153
155
  });
156
+
154
157
  // Use -Encoding UTF8 to correctly read UTF-8 files with non-ASCII characters (e.g., Chinese steering files)
155
- const psPromptExpr = `(Get-Content -Raw -Encoding UTF8 '${promptTmpFile.replace(/'/g, "''")}')`;
156
- cmdParts.push(psPromptExpr);
157
-
158
- const psCommand = `& ${cmdParts.join(' ')}`;
158
+ // Store in $prompt variable first, then pass as argument to avoid PowerShell parameter expansion issues
159
+ const psScript = `$prompt = Get-Content -Raw -Encoding UTF8 '${promptTmpFile.replace(/'/g, "''")}'; & ${cmdParts.join(' ')} $prompt`;
160
+
159
161
  spawnCommand = 'powershell.exe';
160
- spawnArgs = ['-NoProfile', '-Command', psCommand];
162
+ spawnArgs = ['-NoProfile', '-Command', psScript];
161
163
  spawnShell = false; // spawning powershell.exe directly
162
164
  }
163
165
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiro-spec-engine",
3
- "version": "1.45.8",
3
+ "version": "1.45.9",
4
4
  "description": "kiro-spec-engine (kse) - A CLI tool and npm package for spec-driven development with AI coding assistants. NOT the Kiro IDE desktop application.",
5
5
  "main": "index.js",
6
6
  "bin": {