dipjyotimetia/Deep Agent Action

Issue/PR coding agent powered by the Deep Agents JS harness, running in-process on the runner.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Jul 8, 2026
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: dipjyotimetia/deep-agent-action@026c378ef1f8571ef9e626d3e29e8945807504c2 # v0.2.1

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
trigger_phrasePhrase that triggers the agent in issue/PR/comment bodies.no@agent
promptExplicit instruction for workflow_dispatch runs (bypasses the trigger phrase).no
modelModel id, optionally provider-prefixed. Providers: anthropic, openai, azure, google (Gemini), openrouter, openai-compatible (+ base_url), bedrock (AWS), vertexai (GCP). Examples: 'claude-sonnet-4-6', 'openai:gpt-5', 'google:gemini-2.5-pro', 'openrouter:openai/gpt-4o', 'bedrock:anthropic.claude-3-5-sonnet-20241022-v2:0', 'openai-compatible:llama-3.1-70b'.noclaude-sonnet-4-6
base_urlEndpoint URL for the 'openai-compatible' provider (Groq, xAI, DeepSeek, Together, Ollama, vLLM, …).no
mcp_configMCP servers JSON: { "mcpServers": { name: { command, args, env } | { url } } }. Tools are exposed to the agent.no
harness_profileOptional deepagents harness profile JSON. Supports systemPromptSuffix, toolDescriptionOverrides, excludedTools, excludedMiddleware, and generalPurposeSubagent. Strictly validated before execution.no
filesystem_permissionsOptional deepagents filesystem permission rules JSON. Each rule has operations (read/write), absolute glob paths, and optional mode (allow/deny). Repository .deepagents memory/skills remain write-protected.no
interrupt_onOptional deepagents HITL interrupt policy JSON mapping tool names to true/false or an allowedDecisions object. MCP tools require approval by default; an explicit false disables that default.no
allowed_permissionsComma-separated repository permission levels allowed to trigger the agent.nowrite,admin
allowed_commandsComma/newline-separated allow-list of shell command names the agent may run. Defaults to a common dev toolchain.no
denied_commandsExtra command names to block (merged with the built-in deny-list).no
fork_allow_labelLabel a write-access user can apply to authorize the agent on a fork PR. If unset, fork PRs are never run.no
auto_run_labelLabel that, when applied to an issue, triggers the agent without a trigger-phrase match.no
auto_run_assigneeGitHub username that, when assigned to an issue, triggers the agent without a trigger-phrase match.no
auto_run_default_instructionFallback instruction for an auto-run (auto_run_label/auto_run_assignee) event when the issue has no title/body text.no
shell_timeout_secondsMax seconds for a single shell command.no600
comment_debounce_msMinimum interval between tracking-comment progress edits.no8000
provider_api_keyModel provider API key (anthropic/openai/google/openrouter/openai-compatible). May also be supplied via PROVIDER_API_KEY / ANTHROPIC_API_KEY / OPENAI_API_KEY / GOOGLE_API_KEY / OPENROUTER_API_KEY env. Bedrock uses the AWS env chain; Vertex AI and Azure use their own standard env vars.no
app_idGitHub App id used to mint a scoped, short-lived installation token. May also be supplied via APP_ID env.no
app_private_keyGitHub App private key (PEM). May also be supplied via APP_PRIVATE_KEY env.no
github_tokenToken for GitHub API/git operations. Defaults to the workflow's GITHUB_TOKEN, so no setup is needed. NOTE: PRs opened with GITHUB_TOKEN do not trigger downstream CI — configure a GitHub App (app_id + app_private_key) only if you need the agent's PRs to run your CI.no${{ github.token }}
require_push_approvalGate landing of changes behind human review: opens a draft PR (issue mode) or pushes a proposed branch with a compare link (PR mode).nofalse
verified_commitsLand commits via the GitHub App's createCommitOnBranch GraphQL mutation so they show as "Verified" on GitHub, instead of a plain git push. Requires app_id + app_private_key; the run fails loudly if set without App auth. Limitation: executable-bit/symlink changes are not preserved (files always land as mode 100644).nofalse
apply_suggestionsMake every review run also apply its own single-line suggestions directly and land them as a commit, instead of only leaving comments. A mention of "review and fix" always does this regardless of this input.nofalse
enable_triageClassify a new issue with no trigger phrase via a cheap one-shot model call, deciding whether to open a PR, request a review, ask for clarification, add labels, or do nothing. Default off. Only ever acts when the issue's author passes the same human/permission checks as a manual mention, and any resulting PR is forced through the approval gate.nofalse
triage_allowed_labelsComma/newline-separated labels the triage classifier may apply. Anything outside this list is ignored.no
triage_modelModel used for the triage classification call. Defaults to the 'model' input.no
max_cost_usdAbort the run once estimated spend reaches this many USD (requires a known model price; pair with max_total_tokens for unpriced models). Partial work lands as a draft for review. Unset = no cap.no
max_total_tokensAbort the run once cumulative billed tokens (input + output, re-counted each model call as context grows — set generously) reach this many. Partial work lands as a draft for review. Unset = no cap.no
max_runtime_minutesAbort the agent once it has run this many minutes; partial work lands as a draft for review (like a budget stop). Unset = no cap. (A job-level timeout-minutes still applies but kills the run without landing anything.)no
recursion_limitMax LangGraph super-steps per run. Raise for very long multi-step tasks that abort with a recursion-limit error.no150
execution_modeReserved. Only 'in_runner' is implemented in v1; 'bridge' (hosted Open SWE) is planned (P1).noin_runner
langgraph_urlReserved for bridge mode (P1).no
assistant_idReserved for bridge mode (P1).no
namedescription
statusRun outcome: success | skipped | refused | failed | interrupted.
pr_urlURL of the opened pull request, if any.
branchBranch the agent pushed to, if any.
budget_stopped'true' when the run was stopped early by a cost/token budget cap (partial work opened for review).
timed_out'true' when the run was stopped early by max_runtime_minutes (partial work opened for review).
interrupted'true' when deepagents paused before a configured tool requiring approval.
result_jsonMachine-readable run record (plan, tool calls, files changed, outcome).