kaizen-agent 1.9.3 → 1.9.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.
Files changed (2) hide show
  1. package/cli/state.ts +7 -2
  2. package/package.json +1 -1
package/cli/state.ts CHANGED
@@ -98,7 +98,7 @@ function answers(cmd: string[]): boolean {
98
98
  const bin = onPath(cmd[0]);
99
99
  if (!bin) return false;
100
100
  try {
101
- return Bun.spawnSync([bin, ...cmd.slice(1)], { stdin: "ignore", stdout: "ignore", stderr: "ignore", timeout: 2000 }).exitCode === 0;
101
+ return Bun.spawnSync([bin, ...cmd.slice(1)], { stdin: "ignore", stdout: "ignore", stderr: "ignore", timeout: 2000, windowsHide: true }).exitCode === 0;
102
102
  } catch {
103
103
  return false;
104
104
  }
@@ -878,6 +878,9 @@ export function launchRun(it: Item, from: string): Launch {
878
878
  stdout: "ignore",
879
879
  stderr: "ignore",
880
880
  detached: term.detached,
881
+ // A detached launch is the terminal window itself; anything else (herdr's
882
+ // launcher) is plumbing, and must not flash a console on Windows.
883
+ windowsHide: !term.detached,
881
884
  });
882
885
  if (term.detached) proc.unref();
883
886
  return { ok: true, agent, prompt, projectDir, cmd: term.cmd };
@@ -902,7 +905,9 @@ export async function pidOnPort(port: number): Promise<number | null> {
902
905
  // ---- git, for the board's commit and push. Always argv, never a shell: the commit
903
906
  // message is whatever the user typed. A credential prompt has no terminal to appear
904
907
  // in, so git is told not to ask and is given a minute at most.
905
- const gitOpts = () => ({ env: { ...process.env, GIT_TERMINAL_PROMPT: "0" }, stdin: "ignore" as const, timeout: 60_000 });
908
+ // windowsHide: a board started from the Windows shortcut has no console, so each
909
+ // git it runs would open one of its own -- a window flashing on every refresh.
910
+ const gitOpts = () => ({ env: { ...process.env, GIT_TERMINAL_PROMPT: "0" }, stdin: "ignore" as const, timeout: 60_000, windowsHide: true });
906
911
  const gitDone = (code: number | null, stdout: string, stderr: string) => {
907
912
  const out = stdout.trimEnd(), err = stderr.trim();
908
913
  return { ok: code === 0, out, why: (err || out).split("\n").pop() || "git did not finish" };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kaizen-agent",
3
- "version": "1.9.3",
3
+ "version": "1.9.4",
4
4
  "description": "Staged workflow for AI agents — code, writing, research, operations: plan, human approval, build, independent review, bounded fix loop.",
5
5
  "type": "module",
6
6
  "bin": {