Claude Code
Claude Code is Anthropic's agentic coding tool that lets you collaborate with Claude directly from your terminal.
Installation
See the official installation guide.
For containerized Dagu runs, see Run Claude Code in a Container.
Base Invocation
claude -p "<prompt>"Common Flags
Any with key other than provider and fallback is passed as a CLI flag. Snake-case keys are normalized to kebab-case.
| Flag | Type | Description |
|---|---|---|
--model | string | Model variant (e.g. sonnet, opus) |
--bare | boolean | Minimal output mode |
--max-turns | number | Maximum tool-calling iterations |
Example
steps:
- name: review-pr
action: harness.run
with:
provider: claude
prompt: |
Review the current branch for bugs and style issues
model: sonnet
bare: trueGenerated invocation:
claude -p "Review the current branch for bugs and style issues" --bare --model sonnetYOLO Mode
By default, Claude Code asks for approval before running commands. In a Dagu workflow this is not possible, so you should run in non-interactive mode:
steps:
- name: auto-refactor
action: harness.run
with:
provider: claude
prompt: |
Refactor the auth module
dangerously_skip_permissions: trueGenerated invocation:
claude -p "Refactor the auth module" --dangerously-skip-permissionsWarning: This skips all safety checks. Only use in isolated or trusted environments.
Approval Push-back
When combined with Dagu's approval gates, Claude Code steps can be reviewed and iterated:
steps:
- id: implement
action: harness.run
with:
provider: claude
prompt: |
Implement the requested feature
model: opus
approval:
prompt: "Review the implementation"
input: [FEEDBACK]On push-back, the prompt is augmented with reviewer feedback and the previous stdout log path.
See Also
- Claude Code CLI Reference — Complete flag reference
- Permission Modes — How approval and YOLO mode work
- Environment Variables —
CLAUDE_CODE_*env vars - Common Workflows — Example prompts and patterns
- Settings — Global and project-level configuration
