{"version":"2.1.312","anchor":"background-shell-kills-now-carry-a-cause","canonical_anchor":"background-shell-kills-now-carry-a-cause","heading":"Stopped background shell commands now record why they were stopped","tier":"internal","area":"Background Shells","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.312\/e\/background-shell-kills-now-carry-a-cause","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.312","markdown":"### Stopped background shell commands now record why they were stopped\n\nWhen Claude Code stops background shell commands, it now records whether the session ended or the subagent that started them did\n\n**What**\n\nA background shell command is a terminal command Claude starts and leaves running while it carries on with other work. When Claude Code stops one of these, it now records a reason:\n\n- `session_exit`: a session run in print mode (the non-interactive mode that prints one answer and exits) is winding down.\n\n- `owner_ended`: the subagent that started the command was stopped. A subagent is a helper that Claude starts to handle part of a task.\n\n**Why**\n\nThe reason is for diagnostics. Nothing you see changes: the commands are stopped at the same moments as before.\n\n- Area: Background Shells\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}