Tools a bounded CC unit may declare: read-only ∪ the decidable
side-effecting tools (Write/Edit/MultiEdit/NotebookEdit) ∪ Bash (its
command is decided at RUNTIME by the gate). Bars MCP / unknown / wildcard —
those are simply not in the built-in union, so listing one is a tsc error.
NOTE: BashOutput/KillBash are read-only-ish helpers tied to a running
Bash; Bash is the admitting tool, so they're included via the read-only
exclusion path only if read-only — here they stay side-effecting, hence the
explicit add of the bounded-decidable set plus Bash.
Tools a
boundedCC unit may declare: read-only ∪ the decidable side-effecting tools (Write/Edit/MultiEdit/NotebookEdit) ∪Bash(its command is decided at RUNTIME by the gate). Bars MCP / unknown / wildcard — those are simply not in the built-in union, so listing one is atscerror.NOTE:
BashOutput/KillBashare read-only-ish helpers tied to a running Bash;Bashis the admitting tool, so they're included via the read-only exclusion path only if read-only — here they stay side-effecting, hence the explicit add of the bounded-decidable set plusBash.