docs: Update documentation for v1.0 release (#476)

* docs: Update documentation for v1.0 release

- Integrate breaking changes naturally without alarming users
- Replace deprecated inputs (direct_prompt, custom_instructions, mode) with new unified approach
- Update all examples to use prompt and claude_args instead of deprecated inputs
- Add migration guides to help users transition from v0.x to v1.0
- Emphasize automatic mode detection as a key feature
- Update all workflow examples to @v1 from @beta
- Document how claude_args provides direct CLI control
- Update FAQ with automatic mode detection explanation
- Convert all tool configuration to use claude_args format

* fix: Apply prettier formatting to documentation files

* fix: Update all Claude model versions to latest and improve documentation accuracy

- Update all model references to claude-4-0-sonnet-20250805 (latest Sonnet 4)
- Update Bedrock models to anthropic.claude-4-0-sonnet-20250805-v1:0
- Update Vertex models to claude-4-0-sonnet@20250805
- Fix cloud-providers.md to use claude_args instead of deprecated model input
- Ensure all examples use @v1 instead of @beta
- Keep claude-opus-4-1-20250805 in examples where Opus is demonstrated
- Align all documentation with v1.0 patterns consistently

* feat: Add dedicated migration guide as requested in PR feedback

- Create comprehensive migration-guide.md with step-by-step instructions
- Add prominent links to migration guide in README.md
- Update usage.md to reference the separate migration guide
- Include before/after examples for all common scenarios
- Add checklist for systematic migration
- Address Ashwin's feedback about having a separate, clearly linked migration guide
This commit is contained in:
km-anthropic
2025-08-21 13:34:38 -07:00
committed by GitHub
parent f7111a5d2b
commit b903a6e445
13 changed files with 580 additions and 195 deletions

View File

@@ -2,65 +2,66 @@
**Note:** Experimental features are considered unstable and not supported for production use. They may change or be removed at any time.
## Execution Modes
## Automatic Mode Detection
The action supports three execution modes, each optimized for different use cases:
The action intelligently detects the appropriate execution mode based on your workflow context, eliminating the need for manual mode configuration.
### Tag Mode (Default)
### Interactive Mode (Tag Mode)
The traditional implementation mode that responds to @claude mentions, issue assignments, or labels.
Activated when Claude detects @mentions, issue assignments, or labels—without an explicit `prompt`.
- **Triggers**: `@claude` mentions, issue assignment, label application
- **Triggers**: `@claude` mentions in comments, issue assignment to claude user, label application
- **Features**: Creates tracking comments with progress checkboxes, full implementation capabilities
- **Use case**: General-purpose code implementation and Q&A
- **Use case**: Interactive code assistance, Q&A, and implementation requests
```yaml
- uses: anthropics/claude-code-action@beta
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
# mode: tag is the default
# No prompt needed - responds to @claude mentions
```
### Agent Mode
### Automation Mode (Agent Mode)
**Note: Agent mode is currently in active development and may undergo breaking changes.**
Automatically activated when you provide a `prompt` input.
For direct automation when an explicit prompt is provided.
- **Triggers**: Works with any event when `prompt` input is provided
- **Features**: Direct execution without @claude mentions, no tracking comments
- **Triggers**: Any GitHub event when `prompt` input is provided
- **Features**: Direct execution without requiring @claude mentions, streamlined for automation
- **Use case**: Automated PR reviews, scheduled tasks, workflow automation
```yaml
- uses: anthropics/claude-code-action@beta
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
Check for outdated dependencies and create an issue if any are found.
# Mode is auto-detected when prompt is provided
# Automatically runs in agent mode when prompt is provided
```
### Experimental Review Mode
### How It Works
**Warning: This is an experimental feature that may change or be removed at any time.**
The action uses this logic to determine the mode:
For automated code reviews on pull requests.
1. **If `prompt` is provided** → Runs in **agent mode** for automation
2. **If no `prompt` but @claude is mentioned** → Runs in **tag mode** for interaction
3. **If neither** → No action is taken
- **Triggers**: Pull request events (`opened`, `synchronize`) or `@claude review` comments
- **Features**: Provides detailed code reviews with inline comments and suggestions
- **Use case**: Automated PR reviews, code quality checks
This automatic detection ensures your workflows are simpler and more intuitive, without needing to understand or configure different modes.
### Advanced Mode Control
For specialized use cases, you can fine-tune behavior using `claude_args`:
```yaml
- uses: anthropics/claude-code-action@beta
- uses: anthropics/claude-code-action@v1
with:
mode: experimental-review
prompt: "Review this PR"
claude_args: |
--max-turns 20
--system-prompt "You are a code review specialist"
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
custom_instructions: |
Focus on code quality, security, and best practices.
```
See [`examples/claude-modes.yml`](../examples/claude-modes.yml) and [`examples/claude-experimental-review-mode.yml`](../examples/claude-experimental-review-mode.yml) for complete examples of each mode.
## Network Restrictions
For enhanced security, you can restrict Claude's network access to specific domains only. This feature is particularly useful for:
@@ -76,7 +77,7 @@ When `experimental_allowed_domains` is set, Claude can only access the domains y
#### If using Anthropic API or subscription
```yaml
- uses: anthropics/claude-code-action@beta
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
# Or: claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
@@ -87,7 +88,7 @@ When `experimental_allowed_domains` is set, Claude can only access the domains y
#### If using AWS Bedrock
```yaml
- uses: anthropics/claude-code-action@beta
- uses: anthropics/claude-code-action@v1
with:
use_bedrock: "true"
experimental_allowed_domains: |
@@ -98,7 +99,7 @@ When `experimental_allowed_domains` is set, Claude can only access the domains y
#### If using Google Vertex AI
```yaml
- uses: anthropics/claude-code-action@beta
- uses: anthropics/claude-code-action@v1
with:
use_vertex: "true"
experimental_allowed_domains: |
@@ -111,7 +112,7 @@ When `experimental_allowed_domains` is set, Claude can only access the domains y
In addition to your provider domains, you may need to include GitHub-related domains. For GitHub.com users, common domains include:
```yaml
- uses: anthropics/claude-code-action@beta
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
experimental_allowed_domains: |