| name | issue-triage |
| description | Classify one or all open issues, apply labels, request missing info |
| disable-model-invocation | true |
| user-invocable | true |
| argument-hint | [<issue-number> | all] |
| allowed-tools | ["Bash(gh issue *)","Bash(gh label *)","Read","Grep"] |
Run from inside oikos/. $1 is a specific issue number or the literal all (default: all → every open issue without labels).
- Load — for a single issue:
gh issue view $1 --repo ulsklyc/oikos --comments. For all: gh issue list --repo ulsklyc/oikos --state open --label '' --json number,title,body,author,createdAt.
- Classify — for each issue, pick ONE primary class and apply labels via
gh issue edit <n> --repo ulsklyc/oikos --add-label "<labels>":
bug — reproduction + expected vs. actual behaviour present and plausible against current code
enhancement — new feature or UX improvement, no existing regression
question — user needs help using Oikos, not a code change
invalid — spam, duplicate, or out of scope (self-hosted family planner)
Add area labels where obvious: calendar, tasks, shopping, meals, budget, notes, contacts, reminders, i18n, pwa, security, docs.
- Request missing info — if reproduction steps, expected behaviour, Oikos version, or browser are missing on a
bug, post a single comment asking for exactly what's missing. Apply label needs-info.
- Close spam/duplicates —
gh issue close <n> --repo ulsklyc/oikos --reason "not planned" --comment "<english explanation>". Always leave a reason.
Guardrails
- Never assign issues to other humans.
- Never post more than one triage comment per issue per run.
- All comments in English.
- If unsure between two classes, default to
question and ask for clarification — don't guess.