What's wrong with this entry?
New programmatic working-directory change mechanism for SDK hosts (e.g. Claude Desktop) — the headless twin of the interactive /cd command.
- Accepts
path(required),trust_accepted(boolean), andtrusted_directory(required iftrust_acceptedis true) - Runs the same validation,
Cd(...)permission rules, and relocation path as the interactive/cd - Returns structured responses:
ok(withcwd,changed,transcript_relocated),needs_trust(when the directory requires a trust dialog), orrejected(with reason:busy,not_found,not_a_directory,blocked_by_rule,unsafe_path) - Rejects requests while a turn is in progress with a clear "busy" reason
- The
trust_acceptedflow requires echoing back the exact directory string from theneeds_trustresponse to pin the attestation - Paths containing invisible or non-printing characters are rejected as unsafe
New set_cwd handler (search for "A turn is in progress — the working directory can only change", "set_cwd: invalid request — path must be a non-empty string", "set_cwd: invalid request — trust_accepted requires trusted_directory")
Strings lifted out of the shipped bundle, so the claim above can be checked against them.