Triage
Confirmed. This is still the case on current main, including the 0.0.43 nightly from today, so 0.0.42 is not behind a fix. I did not find a duplicate.
ClaudeAdapter always starts the session with the Claude Code preset and an append of T3's runtime instructions (buildRuntimeInstructions({ harness: "Claude Code" }) in apps/server/src/provider/Layers/ClaudeAdapter.ts). Other launch arguments are forwarded as Agent SDK extraArgs, which is why --append-system-prompt-file shows up on the process command line.
The SDK does not use that flag as the append. A preset append is sent as appendSystemPrompt on the stream-json initialize control message. Claude Code's initialize handler then assigns that value over the text it already loaded from the CLI flag (options.appendSystemPrompt = request.appendSystemPrompt) instead of concatenating them. The file is read at startup and then discarded. The process keeps running, so nothing in the UI says the argument had no effect. That matches the code-word repro: the flag is in argv, and the model does not have the file.
--append-system-prompt (the inline string) lands in the same slot and is dropped the same way. --system-prompt and --system-prompt-file are a different field. T3 does not send a replacement systemPrompt on initialize, so those are not overwritten by this path.
This is the same shape as #7577, which #11026 fixed by folding the permission launch arg into the mode T3 sends and removing it from extraArgs. These append flags need the same treatment: read --append-system-prompt or --append-system-prompt-file in the adapter, concatenate that text with the runtime instructions on systemPrompt.append, and drop the flags from extraArgs. If the file is missing or unreadable, session start should fail the way the CLI does, rather than spawn a session that is silently missing the text.
The SessionStart hook in the report is the practical workaround for now. That content stays session context rather than system-prompt text, and Claude Code still saves a large hook result to a file and only gives the model a preview.