Request
Expose a system-prompt mode for the packaged Claude agent — e.g. systemPromptMode: "preset-append" (default) | "replace" as a session option, ACP config option, or agent-package env var. In replace mode, pass the caller's instructions as a plain-string systemPrompt to the SDK instead of { type: "preset", preset: "claude_code", append }.
Why
The claude_code preset expands to a large (~16K tokens) generic Claude Code system prompt describing CLI workflows, git usage, etc. When the agent is used for anything that is not a coding CLI, the preset actively misleads the model (it describes an environment that does not exist for the end user) and burns context on every turn. Append-only customization cannot remove the preset; a replace mode is the only way to run a fully custom system prompt.
Request
Expose a system-prompt mode for the packaged Claude agent — e.g.
systemPromptMode: "preset-append" (default) | "replace"as a session option, ACP config option, or agent-package env var. Inreplacemode, pass the caller's instructions as a plain-stringsystemPromptto the SDK instead of{ type: "preset", preset: "claude_code", append }.Why
The
claude_codepreset expands to a large (~16K tokens) generic Claude Code system prompt describing CLI workflows, git usage, etc. When the agent is used for anything that is not a coding CLI, the preset actively misleads the model (it describes an environment that does not exist for the end user) and burns context on every turn. Append-only customization cannot remove the preset; a replace mode is the only way to run a fully custom system prompt.