跳到主要内容
知仓学习社ZHICANG

cli-reference

Claude Code CLI commands, flags, headless mode, and automation patterns

写文件严重 0 · 高危 2parcadei/Continuous-Claude-v3

它会碰到什么

扫了多少1 个文本文件,7 KB
它会碰到什么写文件
命中总数2 处
命中统计严重 0 · 高 2 · 中 0 · 低 0
逐条看命中(2 条严重或高危)
  • SKILL.md:117identity-config-write
    | `--mcp-config` | Load MCP servers from JSON | `--mcp-config ./mcp.json` |
  • SKILL.md:118identity-config-write
    | `--strict-mcp-config` | Only use these MCP servers | `--strict-mcp-config --mcp-config ./mcp.json` |

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

CLI Reference

Complete reference for Claude Code command-line interface.

When to Use

  • "What CLI flags are available?"
  • "How do I use headless mode?"
  • "Claude in automation/CI/CD"
  • "Output format options"
  • "System prompt via CLI"
  • "How do I spawn agents properly?"

Core Commands

| Command | Description | Example |

|---------|-------------|---------|

| claude | Start interactive REPL | claude |

| claude "query" | REPL with initial prompt | claude "explain this project" |

| claude -p "query" | Headless mode (SDK) | claude -p "explain function" |

| cat file \| claude -p | Process piped content | cat logs.txt \| claude -p "explain" |

| claude -c | Continue most recent | claude -c |

| claude -c -p "query" | Continue via SDK | claude -c -p "check types" |

| claude -r "id" "query" | Resume session | claude -r "auth" "finish PR" |

| claude update | Update version | claude update |

| claude mcp | Configure MCP servers | See MCP docs |

Session Control

| Flag | Description | Example |

|------|-------------|---------|

| --continue, -c | Load most recent conversation | claude --continue |

| --resume, -r | Resume session by ID/name | claude --resume auth-refactor |

| --session-id | Use specific UUID | claude --session-id "550e8400-..." |

| --fork-session | Create new session on resume | claude --resume abc --fork-session |

Headless Mode (Critical for Agents)

| Flag | Description | Example |

|------|-------------|---------|

| --print, -p | Non-interactive, exit after | claude -p "query" |

| --output-format | text, json, stream-json | claude -p --output-format json |

| --max-turns | Limit agentic turns | claude -p --max-turns 100 "query" |

| --verbose | Full turn-by-turn output | claude --verbose |

| --dangerously-skip-permissions | Skip permission prompts | claude -p --dangerously-skip-permissions |

| --include-partial-messages | Include streaming events | claude -p --output-format stream-json --include-partial-messages |

| --input-format | Input format (text/stream-json) | claude -p --input-format stream-json |

Tool Control

| Flag | Description | Example |

|------|-------------|---------|

| --allowedTools | Auto-approve these tools | "Bash(git log:*)" "Read" |

| --disallowedTools | Block these tools | "Bash(rm:*)" "Edit" |

| --tools | Only allow these tools | --tools "Bash,Edit,Read" |

Subagent Definition (--agents flag)

Define custom subagents inline via JSON:

claude --agents '{
  "code-reviewer": {
    "description": "Expert code reviewer. Use proactively after code changes.",
    "prompt": "You are a senior code reviewer. Focus on code quality and security.",
    "tools": ["Read", "Grep", "Glob", "Bash"],
    "model": "sonnet"
  },
  "debugger": {
    "description": "Debugging specialist for errors and test failures.",
    "prompt": "You are an expert debugger. Analyze errors and provide fixes."
  }
}'

Agent Fields

| Field | Required | Description |

|-------|----------|-------------|

| description | Yes | When to invoke this agent |

| prompt | Yes | System prompt for behavior |

| tools | No | Allowed tools (inherits all if omitted) |

| model | No | sonnet, haiku, or claude-opus-4-5-20251101 |

Key Insight

When Lead uses Task tool, it auto-spawns from these definitions. No manual spawn needed.

System Prompt Customization

| Flag | Behavior | Modes |

|------|----------|-------|

| --system-prompt | Replace entire prompt | Interactive + Print |

| --system-prompt-file | Replace from file | Print only |

| --append-system-prompt | Append to default (recommended) | Interactive + Print |

Use --append-system-prompt for most cases - preserves Claude Code capabilities.

Model Selection

| Flag | Description | Example |

|------|-------------|---------|

| --model | Set model for session | --model claude-sonnet-4-5 |

| --fallback-model | Fallback if default overloaded | --fallback-model sonnet |

Aliases: sonnet, opus, haiku

MCP Configuration

| Flag | Description | Example |

|------|-------------|---------|

| --mcp-config | Load MCP servers from JSON | --mcp-config ./mcp.json |

| --strict-mcp-config | Only use these MCP servers | --strict-mcp-config --mcp-config ./mcp.json |

Advanced Flags

| Flag | Description | Example |

|------|-------------|---------|

| --add-dir | Add working directories | --add-dir ../apps ../lib |

| --agent | Specify agent for session | --agent my-custom-agent |

| --permission-mode | Start in permission mode | --permission-mode plan |

| --permission-prompt-tool | MCP tool for permissions | --permission-prompt-tool mcp_auth |

| --plugin-dir | Load plugins from directory | --plugin-dir ./my-plugins |

| --settings | Load settings from file/JSON | --settings ./settings.json |

| --setting-sources | Which settings to load | --setting-sources user,project |

| --betas | Beta API headers | --betas interleaved-thinking |

| --debug | Enable debug mode | --debug "api,hooks" |

| --ide | Auto-connect to IDE | --ide |

| --chrome | Enable Chrome integration | --chrome |

| --no-chrome | Disable Chrome for session | --no-chrome |

| --enable-lsp-logging | Verbose LSP debugging | --enable-lsp-logging |

| --version, -v | Output version | claude -v |

Output Formats

JSON (for parsing)

claude -p "query" --output-format json
# {"result": "...", "session_id": "...", "usage": {...}}

Streaming (for real-time monitoring)

claude -p "query" --output-format stream-json
# Newline-delimited JSON events

Structured Output (schema validation)

claude -p "Extract data" \
  --output-format json \
  --json-schema '{"type":"object","properties":{...}}'

Headless Agent Pattern (CRITICAL)

Proper headless agent spawn:

claude -p "$TASK_PROMPT" \
  --session-id "$UUID" \
  --dangerously-skip-permissions \
  --max-turns 100 \
  --output-format stream-json \
  --agents '{...}' \
  --append-system-prompt "Context: ..."

Missing any of these causes hangs:

  • --session-id - Track the session
  • --dangerously-skip-permissions - Headless requires this
  • --max-turns - Prevents infinite loops

Common Patterns

CI/CD Automation

claude -p "Run tests and fix failures" \
  --dangerously-skip-permissions \
  --max-turns 50 \
  --output-format json | jq '.result'

Piped Input

cat error.log | claude -p "Find root cause"
gh pr diff | claude -p "Review for security"

Multi-turn Session

id=$(claude -p "Start task" --output-format json | jq -r '.session_id')
claude -p "Continue" --resume "$id"

Stream Monitoring

claude -p "Long task" \
  --output-format stream-json \
  --include-partial-messages | while read -r line; do
    echo "$line" | jq '.type'
done

Keyboard Shortcuts (Interactive)

| Shortcut | Action |

|----------|--------|

| Ctrl+C | Cancel current |

| Ctrl+D | Exit |

| Ctrl+R | Reverse search history |

| Esc Esc | Rewind changes |

| Shift+Tab | Toggle permission mode |

Quick Commands

| Prefix | Action |

|--------|--------|

| / | Slash command |

| ! | Bash mode |

| # | Add to memory |

| @ | File mention |

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。