Skip to content

acpx v0.13.0

Latest

Choose a tag to compare

@steipete steipete released this 27 Jul 17:07
v0.13.0
47dc1c5

Highlights

  • Windows agent launches now use structured argv end to end. Unambiguous legacy command plus args entries migrate automatically; ambiguous/raw commands and .sh wrappers must move to agents.<name>.argv, and existing saved custom-agent sessions without argv must be recreated.
  • Built-in Pool and ZeroClaw support makes both native ACP stdio servers available without custom registry configuration.
  • The new --no-fs flag lets compatible agents use their native filesystem implementation instead of ACP client filesystem methods.
  • The dependency and pnpm refresh resolves all four known PostCSS, fast-uri, js-yaml, and brace-expansion advisories.

Changes

  • Agents/built-ins: add Pool via pool acp. Thanks @dan-roberts-poolside and @osolmaz.
  • Agents/built-ins: add ZeroClaw via zeroclaw acp, ZeroClaw's native ACP v1 stdio server. Thanks @JordanTheJet.
  • CLI/ACP: add --no-fs to disable advertised ACP file read/write capabilities so compatible agents can use their native filesystem implementation. Thanks @zgxkbtl.
  • CLI/timers: preserve tiny positive timeout and TTL values from flags or config as 1 ms instead of disabling timers, and reject delays beyond Node's supported timer range. Thanks @realmehmetali.
  • Dependencies/tooling: refresh the ACP SDK, runtime and development toolchain, update pnpm to 10.34.5, and resolve the PostCSS, fast-uri, js-yaml, and brace-expansion advisories.

Breaking

  • Windows agent launches now require structured agents.<name>.argv; unambiguous legacy command plus args entries migrate automatically, while raw, ambiguous, or directly executable .sh commands fail with explicit migration guidance instead of lossy parsing or CreateProcess ENOENT. Existing custom-agent sessions without saved argv must be recreated. Fixes #466. Thanks @MarcelCFritsche.

Fixes

  • Flows: swallow best-effort heartbeat write failures at the timer boundary so storage errors do not become unhandled promise rejections. Thanks @SebTardif.
  • Runtime/sessions: use collision-resistant temporary paths for concurrent atomic session and index writes. Thanks @henkterharmsel.
  • CLI/status: report a normal cold-start session as agent starting while preserving needs reconnect for an unreachable live owner. Thanks @guettli.

Verification

  • Source commit: 47dc1c56b20da3c248a4a1b5c5106f52e65e6594
  • Signed tag: v0.13.0, SSH signing key SHA256:buNEi6/r+uo+ILUkRvDkyyOc+SQ8kjWzo0lh99ci8NM
  • Exact-head CI: run 30287042622 — format, typecheck, lint, build, Node 22 tests, mutation, Slophammer, conformance, and docs passed
  • Trusted npm publish with provenance: run 30287673214
  • npm: acpx@0.13.0
  • Registry tarball: acpx-0.13.0.tgz
  • Integrity: sha512-EdGgMx5osY4bNpVN+7dTTT67ZXsFqx/itl4QjGYTKH/Nzm3fqGmWL3E6FjRkVrlWRpiFnRNi+J1lxUJPie4lmg==
  • SHA-1: 9a346c41171add368bd26bd031dfc187ba0b43c0
  • Published: 2026-07-27T17:05:49.996Z
  • Installed-artifact smoke: clean temporary npm install reported 0.13.0, completed real Codex ACP initialize/session creation, returned exactly OK, and exited 0