Nodes/Claude Code ComfyUI Nodes/Claude Tools Config
ComfyUI Node

Claude Tools Config

Decide exactly which tools Claude gets before it runs your command

By christian-byrne·Created about a year ago·Updated about a year ago· 34
Claude Tools Config
    • tools
    • tools_list
    • skip_permissions
    presetcode_dev
    custom_tools
    remove_tools
    file_readtrue
    file_writetrue
    file_edittrue
    bashtrue
    searchtrue
    webfalse
    skip_permissionsfalse

    Claude Tools Config is the guardrail node of the Claude Code ComfyUI Nodes pack. An agent running claude -p gets a bunch of tools by default - file reads, writes, edits, Bash, Grep, Glob, web fetch, web search. That's a lot of power, and this node is how you decide how much of it the run actually gets. Wire its output into the tools input of Claude Code Execute and it turns into --allowedTools flags on the underlying CLI call.

    You pick a preset and then subtract or add. The presets are all (everything, including web), read_only (Read, Grep, Glob, LS), file_ops, code_dev (the default: file tools plus Bash, no web), web, minimal (just Read and Write), and none (empty). On top of that you've got custom_tools and remove_tools as comma-separated lists, so "code_dev but no Bash, plus WebFetch" is a single line each away.

    The inputs that matter

    • preset - start here. code_dev is the sane default; switch to read_only when you just want analysis, or minimal/none when you're nervous.
    • skip_permissions - the big one. When on, it adds --dangerously-skip-permissions to the CLI call, meaning Claude never stops to ask you before doing something. The name is not editorializing; that flag is exactly as dangerous as it sounds.
    • custom_tools / remove_tools - your fine-grained override.

    The boolean toggles (file_read, file_write, file_edit, bash, search, web) have a quirk worth knowing: per the source, they only actually apply when the preset is none. If you pick code_dev and flip web on, don't expect the web tools to appear - the preset wins, and the toggles are really a manual-build mode for none. Set preset to none and the toggles become your tool list builder.

    Outputs

    Outputs: tools (CLAUDE_TOOLS, the wire format the Execute node parses - internally it's the comma list plus a |skip_permissions:true/false suffix), tools_list (a clean comma-separated string you can eyeball or log), and skip_permissions (the boolean, if you want to use it elsewhere).

    Installing

    Install: ComfyUI Manager, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/christian-byrne/claude-code-comfyui-nodes
    

    then restart. No models, no extra weight - it just assembles a string.

    Why this matters

    The honest use of this node is defense-in-depth. The pack's Reddit scraper deliberately hardcodes full permissions because automation needs them; this node exists so that your commands don't have to. The community's scar tissue here is real - every malware incident in the ComfyUI ecosystem rode in on nodes that run arbitrary code with your user account, and an agent with Bash and write access is that same power with initiative. Keep skip_permissions off for anything you're not ready to fully trust, and treat read_only as your default until a workflow earns more. This is one of those nodes where the boring setting is the correct one.

    Categoryclaude_code/helpers

    Inputs (10)

    NameTypeDefaultDescription
    presetCOMBOcode_devTool preset to use
    custom_toolsSTRINGAdditional tools to add (comma-separated)
    remove_toolsSTRINGTools to remove from preset (comma-separated)
    file_readoptBOOLEANtrue
    file_writeoptBOOLEANtrue
    file_editoptBOOLEANtrue
    bashoptBOOLEANtrue
    searchoptBOOLEANtrue
    weboptBOOLEANfalse
    skip_permissionsoptBOOLEANfalseSkip permission prompts (adds --dangerously-skip-permissions)

    Outputs (3)

    NameTypeDescription
    toolsCLAUDE_TOOLS
    tools_listSTRING
    skip_permissionsBOOLEAN