Repository navigation
Releases: huskyhoochu/polydeukes
Releases · huskyhoochu/polydeukes
Release list
v0.20.1
v0.20.0
0.20.0 (2026-10-21)
⚠ BREAKING CHANGES
- adapter: adapter-specific installers and runHook are replaced by pdks adapter init and hook commands. SDKs use the standalone executable protocol. Resolves ISSUE-84c; source report #84.
- sdk: TS and Rust use an explicit executable or pdks on PATH instead of discovering npm installations. Injected process seams carry bytes. TS CheckCovenantSpawnSpec becomes SpawnSpec.
Features
- adapter: unify host hooks in the standalone pdks executable (dee9cfd)
- sdk-python: add standalone pdks process client (edfa095)
- sdk: align TypeScript and Rust with the standalone process contract (4fa026b)
Installation and migration
Download the executable for your platform from the assets below. The executable bundles the runtime and all three adapters.
Register hooks with the same executable:
pdks adapter claude-code init
pdks adapter codex init
pdks adapter grok initAdapter-specific npm installer commands and runHook have been removed. Run init again to migrate owned legacy registrations; user-modified files and sibling handlers are preserved. Codex requires approval of changed hook definitions in /hooks.
TypeScript, Rust, and Python SDKs share the four covenant/memory verbs and select an explicit executable or pdks on PATH. They do not discover npm installations. Host-specific evidence and failure behavior are documented separately; see the bundled documentation and package references.
v0.19.1
v0.19.0
v0.18.0
0.18.0 (2026-10-11)
⚠ BREAKING CHANGES
- sdk-rust: CheckCovenantSpec, CheckChangeSetSpec, MemoryIngestSpec, MemorySearchSpec and SpawnSpec gain a timeout field; struct literals must add
timeout: Noneto keep the current behavior. - polydeukes: an input pdks covenant check cannot read exits 3, not 2. A host that reads only status 2 as a block must treat every status other than 0 as a refusal.
Features
- polydeukes: exit 3 with the reason when covenant check cannot read its input (#230) (0a8bff7)
- polydeukes: let onlyIn count occurrences of a key with count: true (9fcd283)
- polydeukes: let onlyIn count occurrences of a key with count: true (#228) (9fcd283)
- sdk-rust: give each verb a timeout that kills a child past it (#231) (92a86b2)
v0.17.0
0.17.0 (2026-10-10)
⚠ BREAKING CHANGES
- sdk-rust: CheckCovenantSpec, CheckChangeSetSpec, MemoryIngestSpec and MemorySearchSpec gain a public
executablefield. A caller that builds a spec with a struct literal addsexecutable: None(or the path).
Features
v0.16.0
v0.15.0
0.15.0 (2026-10-10)
⚠ BREAKING CHANGES
- sdk-rust: SpawnOutcome gains a public
stdoutfield. A spawn seam that builds SpawnOutcome with a struct literal addsstdout: String::new()(or the child's stdout).
Features
- polydeukes: ship pdks as a single executable and let sdk-rust run it from PATH (#216) (ee7039b)
- sdk-rust: add memory_ingest and memory_search beside the covenant verbs (#215) (8cf8c17)