This guide covers the available tools that can be configured in agentic workflows, including GitHub tools and Claude-specific tools.
📘 Looking for MCP servers? See the complete MCPs for Model Context Protocol configuration, debugging, and examples.
Tools are defined in the frontmatter to specify which GitHub API calls and AI capabilities are available to your workflow:
tools:
github:
allowed: [create_issue, update_issue]
claude:
allowed:
Edit:
Bash: ["echo", "ls", "git status"]All tools declared in included components are merged into the final workflow.
Tip
You can inspect the tools available for an Agentic Workflow by running
gh aw mcp-inspect <workflow-file>
Configure which GitHub API operations are allowed for your workflow.
tools:
github:
allowed: [create_issue, update_issue, add_issue_comment]The system automatically includes comprehensive default read-only GitHub tools. These defaults are merged with your custom allowed tools, providing comprehensive repository access.
Default Read-Only Tools:
Actions: download_workflow_run_artifact, get_job_logs, get_workflow_run, list_workflows
Issues & PRs: get_issue, get_pull_request, list_issues, list_pull_requests, search_issues
Repository: get_commit, get_file_contents, list_branches, list_commits, search_code
Security: get_code_scanning_alert, list_secret_scanning_alerts, get_dependabot_alert
Users & Organizations: search_users, search_orgs, get_me
Available when using engine: claude (it is the default engine). Configure Claude-specific capabilities and tools.
tools:
claude:
allowed:
Edit: # File editing capabilities
MultiEdit: # Multi-file editing
Write: # File writing
NotebookEdit: # Jupyter notebook editing
WebFetch: # Web content fetching
WebSearch: # Web search capabilities
Bash: ["echo", "ls", "git status"] # Allowed bash commandstools:
claude:
allowed:
Bash: ["echo", "ls", "git", "npm", "python"]tools:
claude:
allowed:
Bash:
allowed: [":*"] # Allow ALL bash commands - use with cautionWildcard Options:
:*: Allows all bash commands without restrictionprefix:*: Allows all commands starting with prefix
Security Note: Using :* allows unrestricted bash access. Use only in trusted environments.
When using engine: claude with a github tool, these tools are automatically added:
Task: Task management and workflow coordinationGlob: File pattern matching and globbing operationsGrep: Text search and pattern matching within filesLS: Directory listing and file system navigationRead: File reading operationsNotebookRead: Jupyter notebook reading capabilities
No explicit declaration needed - automatically included with Claude + GitHub configuration.
tools:
github:
allowed: [get_issue, add_issue_comment]
claude:
allowed:
Edit:
Write:
WebFetch:
Bash: ["echo", "ls", "git", "npm test"]tools:
claude:
allowed:
Bash: ["echo", "ls", "git status"] # ✅ Restricted set
# Bash: [":*"] # ⚠️ Unrestricted - use carefullytools:
github:
allowed: [get_issue, add_issue_comment] # ✅ Minimal required permissions
# allowed: ["*"] # ⚠️ Broad access - review carefully- Commands - CLI commands for workflow management
- MCPs - Complete Model Context Protocol setup and usage
- Workflow Structure - Directory layout and organization
- Frontmatter Options - All configuration options
- Include Directives - Modularizing workflows with includes
- Secrets Management - Managing secrets and environment variables