Skip to content

Latest commit

 

History

History
53 lines (47 loc) · 7.75 KB

action-inputs.md

File metadata and controls

53 lines (47 loc) · 7.75 KB

Action inputs and outputs

The inputs and outputs of the FiltersAgent GitHub Action, as action.yml declares them. How to connect the action and adapt it to a repository is in the GitHub Action guide.

Inputs

anthropic-messages uses adaptive thinking and targets Claude models that support it (Claude 5.x).

Input Required Description
repository No Repository slug (owner/repo) the run identifies itself with; defaults to the runner's GITHUB_REPOSITORY.
issueNumber No Number of the issue to analyze; selecting it runs the single-issue mode.
backlog No 'true' analyzes the repository's open-issue backlog instead of a single issue.
limit No Maximum number of backlog issues analyzed per run; unset means up to 50 issues in one job, each a paid LLM run; the loop also stops at its wall-clock budget (default 5h 30m, overridable by an input) so one job stays under GitHub's 6-hour cap.
excludedLabels No Comma-separated issue labels the action never processes, for example NSFW. An issue carrying one is skipped before its page is opened, in the single-issue and the backlog mode alike, and a report stays unposted when such a label is added during the run. Labels compare case-insensitively; unset excludes none.
inProgressLabels No Comma-separated labels a maintainer applies when they pick an issue up, for example A: In progress. An issue carrying one counts as a maintainer already on it: the run is skipped, and a report stays unposted when such a label is added during the run, unless the run is forced. Labels compare case-insensitively; unset names none.
reportBots No Comma-separated GitHub logins of bots that file issues or post reports for a reporting tool, for example adguard-bot. Their comments are kept out of the model's input and never count as a maintainer on the issue, even when GitHub stamps them MEMBER. Accounts GitHub marks as bots need no listing; unset names none.
trustedRoles No Comma-separated GitHub author associations trusted to change a backlog issue's revision, and whose comment on an issue means a maintainer is already on it; defaults to OWNER,MEMBER,COLLABORATOR.
maxRevisionsPerWindow No Maximum revision-marked reports one backlog issue may receive inside the rolling revisionWindowMs window; defaults to the queue's revision budget.
revisionWindowMs No Length of the rolling window the revision budget counts against, in milliseconds; defaults to the queue's revision window (24 hours).
backlogWallClockBudgetMs No Wall-clock budget for the whole backlog loop, in milliseconds; defaults to 5h 30m so one job stays under GitHub's 6-hour cap. The loop stops taking new issues once the remaining time can no longer fit one more issue's own investigation budget.
executors No Comma-separated executor names the analysis session may use: browser_extension, the executor of a module blockerModules plugs in, or several; empty means browser_extension alone.
blockerModules No Blocker module manifests to plug in, one per line or comma-separated, relative to the workspace. See Plug in another blocker.
instructionPath No Path of the run instruction file, relative to the checkout; when unset, the checkout's default instruction at .github/filters-agent/AGENTS.md is loaded when present.
artifactsDir No Directory the run writes its artifacts to; defaults to filters-agent-artifacts/artifacts under the checkout.
model No Reasoning-model slug overriding the configured model; vision follows it when llmVisionModel is unset.
noComment No 'true' skips posting the report as an issue comment; the report is still written to the artifacts directory.
force No 'true' for a run a maintainer triggered, by label or by a manual dispatch: a maintainer's comment, an assignee or an in-progress label on the issue no longer skips the run or keeps the report silent. A closed issue, a fix referenced, an excluded label and a report already posted for the issue's current text still do. A forced run that cannot investigate the issue, or fails during intake or investigation, posts a one-line notice, that the page could not be accessed or the report could not be processed, with the link to the run, instead of no comment; the notice is not the report, so rerunning the workflow investigates again. The backlog mode ignores it.
screenshotsBranch No Branch the before and after screenshots of a verified rule are committed to, so the report comment can show them; defaults to filters-agent-screenshots. Needs the contents: write permission; without it the report posts without screenshots.
lintCommand No Your repository's own lint command line, for example npx aglint. Each candidate rule is linted with it in the checkout; a failure adds a note to the report and never stops the rule. Unset runs no lint. See Lint with your repository's linter.
checkoutPath No Path of the analyzed checkout; defaults to the runner's GITHUB_WORKSPACE.
githubToken No GitHub API token the run reads issues with; in practice mandatory in every run, since the action only serves GitHub-read modes — a missing token fails the job named, even together with noComment.
llmBaseUrl Yes OpenAI chat-completions or Anthropic Messages API base URL; for Anthropic use https://api.anthropic.com without /v1.
llmApi No LLM API for both model roles: openai-completions or anthropic-messages; defaults to openai-completions.
llmApiKey Yes API key of the LLM provider; pass it from a repository secret.
llmModel Yes Default reasoning-model slug for the run's LLM sessions.
llmVisionModel No Model slug used for screenshot steps; defaults to the effective reasoning model, including the model override. When unset, that model must also accept images.
llmContextWindowTokens Yes Context window of the reasoning model, in tokens, as your provider states it.
llmMaxOutputTokens Yes Completion cap sent with the reasoning model's requests, in tokens: the model's own limit at your provider.
llmVisionMaxOutputTokens When llmVisionModel differs from llmModel Completion cap sent with the vision model's requests, in tokens. When llmVisionModel is unset or both inputs name one model, it is llmMaxOutputTokens.
llmReasoningEffort No Reasoning effort of the investigation's requests: off, minimal, low, medium or high; defaults to high. On Anthropic, off omits thinking; a model that thinks by default keeps thinking.
llmSingleShotReasoningEffort No Reasoning effort of the one-question calls (reading the issue, describing a screenshot), same values; defaults to low. On Anthropic with loop effort on, off sends disabled thinking on reasoning-enabled entries: Claude Opus 5.5 and Sonnet 5.5 reject it with HTTP 400, while Haiku 5.5 accepts it.
llmRequestMaxAttempts No Total attempts per LLM request when the provider fails transiently (a 5xx, a timeout, a response cut off mid-stream), 1 to 3; defaults to 2. After an HTTP 429 rate limit, an agent-loop retry waits 60 seconds and a second one 120; a vision or intake call first spends its quick transport retries, then waits the same way. Raise it to 3 for a gateway that drops responses more than once in a row.

Outputs

Output Description
artifacts-dir Directory the run wrote its artifacts to, relative to the checkout; feed it to actions/upload-artifact.
status How the run sealed: success, partial_failure (backlog runs with per-issue failures), or failed.