| trigger_phrase | Trigger phrase for comments, review comments, issues, and PR bodies | no | @garda |
| assignee_trigger | Assignee username that triggers the action, without @ | no | "" |
| base_branch | Base/source branch for issue fix branches. Defaults to repository default branch. | no | "" |
| label_trigger | Issue/PR label that triggers the action | no | garda |
| mode | auto, review, ask, fix, security, ci-analysis, release-notes | no | auto |
| prompt | Direct prompt for agent mode. If empty, the action extracts the request from the GitHub event. | no | "" |
| model | Neosantara model id | no | grok-code-fast |
| neosantara_base_url | Neosantara OpenAI-compatible base URL | no | https://api.neosantara.xyz/v1 |
| github_token | GitHub token with repo, issue, pull request, and optional actions permissions | no | ${{ github.token }} |
| allowed_bots | Comma-separated bot usernames allowed to trigger this action, or * | no | "" |
| allowed_non_write_users | Comma-separated users allowed without write permission, or *. Use with care on public repos. | no | "" |
| include_comments_by_actor | Comma-separated actor usernames to include while building context. Supports *[bot]. | no | "" |
| exclude_comments_by_actor | Comma-separated actor usernames to exclude while building context. Supports *[bot]. | no | "" |
| review_language | Language used in the review and tracking comments | no | id |
| custom_instructions | Trusted maintainer-supplied extra instructions appended to the Garda Code system prompt. Do not pass untrusted user/repo content here. | no | "" |
| inline_comments | Enable buffered inline PR review comments | no | true |
| classify_inline_comments | Classify and filter buffered inline comments before posting. Heuristic in v0.x; safer than posting every tool test. | no | true |
| batch_inline_comments | Post inline comments as one PR review when possible, falling back to individual comments. | no | true |
| inline_classifier_mode | Inline comment classifier mode: model, heuristic, or off. Model mode uses Neosantara Responses API to reject low-signal/probe inline comments. | no | model |
| inline_classifier_model | Optional Neosantara model id for inline comment classification. Defaults to model. | no | "" |
| min_inline_severity | Minimum severity for inline comments after classification: low, medium, or high. | no | low |
| include_fix_links | Include a compact fix request hint on inline comments. | no | true |
| track_progress | Create and update one sticky progress comment | no | true |
| use_sticky_comment | Reuse one Garda Code tracking comment when available | no | true |
| allow_fix | Allow file writes and commits. Defaults to false. | no | false |
| commit_message | Commit message used by fix mode when files are changed | no | chore: apply Garda Code changes |
| branch_prefix | Branch prefix for issue fix mode branch creation | no | garda/ |
| branch_name_template | Branch template for issue fix mode. Supports {{prefix}}, {{entityType}}, {{entityNumber}}, {{description}}, {{timestamp}}, {{sha}}, {{label}} | no | {{prefix}}{{entityType}}-{{entityNumber}}-{{description}} |
| bot_id | GitHub App bot user ID used for git commits, e.g. 12345678. Optional for review-only mode. | no | "" |
| bot_name | GitHub App bot username used for git commits, e.g. garda-code[bot] or neosantara-ai[bot]. | no | garda-code[bot] |
| commit_strategy | Commit strategy for fix mode: git or github-api. github-api avoids git push auth state and is closer to GitHub App file-ops behavior. | no | git |
| use_commit_signing | Compatibility flag. When true and commit_strategy is not set, uses github-api commit strategy. Real cryptographic signing still depends on GitHub/App configuration. | no | false |
| enable_mcp_compat | Expose MCP-style tool aliases such as mcp__github_comment__update_garda_comment and mcp__github_file_ops__commit_files. | no | true |
| allowed_tools | Optional comma/newline-separated exact or glob tool allowlist. Empty means all safe tools for the current mode. | no | "" |
| disallowed_tools | Optional comma/newline-separated exact or glob tool denylist applied after allowed_tools. Use this to remove risky tools from a workflow. | no | "" |
| use_github_app_token_exchange | Use GitHub Actions OIDC to request a GitHub App installation token from a hosted token exchange service. | no | false |
| github_app_token_exchange_url | Hosted token exchange endpoint. Requires use_github_app_token_exchange=true and id-token: write permission. | no | "" |
| github_app_token_exchange_audience | OIDC audience used when requesting a token for the hosted GitHub App token exchange. | no | garda-code-action |
| max_steps | Maximum Responses API tool loop steps | no | 40 |
| max_diff_chars | Maximum diff context size sent to the model | no | 80000 |
| max_file_chars | Maximum file content returned by read_file | no | 30000 |
| max_inline_comments | Maximum inline comments to post | no | 20 |
| max_tool_calls_per_step | Maximum model-requested tool calls executed in one Responses API step | no | 8 |
| max_repeated_tool_calls | Maximum repeated identical tool calls before the runner returns a guard error | no | 3 |
| retry_max_attempts | Maximum retry attempts for transient Neosantara Responses API errors | no | 3 |
| max_runtime_seconds | Maximum wall-clock seconds for the Responses API tool loop before returning a guarded stop result. | no | 900 |
| include_image_context | Download GitHub user-attachment images from the trigger/context and pass them to Neosantara Responses API when supported. | no | true |
| max_comment_images | Maximum GitHub user-attachment images to include as multimodal context. | no | 5 |
| max_image_bytes | Maximum bytes per downloaded comment image. | no | 1572864 |
| cleanup_empty_branch | Delete Garda-created issue fix branches when no changes were committed. | no | true |
| restore_trusted_config | Restore sensitive Garda/Neosantara/MCP/git config from the PR base branch before running on PRs | no | true |
| ignore | Newline or comma separated ignore patterns | no | .git/**
.garda-pr/**
.neo-pr/**
.env
.env.*
*.pem
*.key
id_rsa
id_ed25519
.npmrc
.pypirc
.netrc
node_modules/**
dist/**
build/**
coverage/**
*.lock
pnpm-lock.yaml
package-lock.json
yarn.lock
|
| dry_run | Run without posting comments, inline comments, or commits | no | false |
| show_full_output | Print full model/tool output. Warning: may expose sensitive data in logs. | no | false |
| display_report | Write model-authored content to GitHub Step Summary. Disabled by default for untrusted PR/comment content. | no | false |