lego/Jira → Claude → Copilot Triage

Fetches label-routed backlog tickets from a Jira project, runs a fresh read-only Claude session per ticket to judge whether each has enough detail to hand to an autonomous coding agent, then either starts GitHub Copilot cloud-agent task(s) (which open PRs) or bounces the ticket back with a Teams alert. Keeps a human out of the loop until a PR is ready for review.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
jira-projectJira project key that scopes the fetch (e.g. PMO).yes
jira-repo-labelJira label a human applies to route a ticket to THIS repo. The label is the intent gate — only tagged tickets are fetched. Accepts a single value or a comma-separated list (e.g. "octan" or "octan, octan-urgent").yes
jira-emailJira account email (Basic-auth username).yes
jira-api-tokenJira API token (Basic-auth password). Pass from a secret.yes
copilot-tokenOAuth user-to-server token from a Copilot-licensed account. The cloud-agent API rejects PATs (404) and GITHUB_TOKEN (401).yes
anthropic-base-urlBase URL for the Anthropic-compatible model endpoint the CLI calls.yes
anthropic-auth-tokenBearer token for the model endpoint. Pass from a secret.yes
modelModel name/id passed to the Claude CLI --model flag (e.g. your proxy's model identifier).yes
teams-webhook-urlPower Automate / Teams incoming webhook. If empty, thin tickets are logged but not posted.no""
max-ticketsPer-run ceiling on tickets fetched. Pagination stops here; any overflow is picked up on a later run (oldest first).no100
triaged-labelLabel applied (and excluded next run) when a ticket is handed to the agent.nogh-triaged
needs-detail-labelLabel applied (and excluded next run) when a ticket lacks detail.nogh-needs-detail
base-refBranch the Copilot agent opens its pull requests against. Defaults to the repository's default branch when left empty.no""
max-turnsPer-ticket triage session turn cap.no15
policy-filePath (in the consumer checkout) to an optional L2 repo-specific policy file appended to the invariant triage prompt.no""
dry-runWhen "true", triage + upload artifact only — no agent tasks, labels, or Teams.nofalse
node-versionNode.js version used to run the triage scripts.no24

no outputs