ci / lint (push) Skipped
ci / lint (pull_request) Successful in 11s
- publish.sh: resolve_prs matches ai/issue-N AND ai/issue-N-<slug> split branches
(exact-only silently stalled DELEGATE:@qa and autopilot MERGE_PR on slugged
work); qa hand-off lists all open PRs; autopilot refuses to merge multi-PR
issues (drops the label, hands to the human) — merging one of several open
PRs is half a change deployed. Retro's state=all resolve matches slugs too.
- fetch-thread.sh: paginate and keep the NEWEST 100 comments — a bare limit=100
kept the OLDEST page and dropped recent decisions on long threads.
- route.sh: word-boundary mention matching ("@internal" no longer routes to
@intern); a comment with no real agent mention now SKIPS gracefully
(mode=skip outputs + step guards in agent.yml) instead of a red run.
- run-agent.sh: LEARNINGS.md cap is line-aware and keeps the NEWEST entries
(retros append at the bottom; the old head -c cut the latest lessons first).
- agents.json/README: @pm gemma4 -> minimax-m3 — the retro rule demands an
investigating PM, and gemma4 posted 0 tool calls on every run; minimax is the
model @qa demonstrably uses tools with.
- agent.yml: document the PR-thread concurrency-group caveat.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
62 lines
2.3 KiB
JSON
62 lines
2.3 KiB
JSON
{
|
|
"pm": {
|
|
"model": "ollama-cloud/minimax-m3:cloud",
|
|
"vision": true,
|
|
"mode": "comment",
|
|
"skills": [
|
|
"gitea-api"
|
|
],
|
|
"desc": "Product manager & orchestrator — plans and picks the dev, hands each finished PR to @qa for review, and reports back to the issue creator (in autopilot it merges approved PRs itself). Works from the issue thread only — comments only, never edits files, never reads the PR diff."
|
|
},
|
|
"junior": {
|
|
"model": "ollama-cloud/kimi-k2.7-code:cloud",
|
|
"vision": false,
|
|
"mode": "pr",
|
|
"skills": [],
|
|
"desc": "Junior dev — small, low-risk changes (mostly YAML/compose/config). Text-only, cannot read images. Defers complex or image tasks to @senior or @lead."
|
|
},
|
|
"senior": {
|
|
"model": "ollama-cloud/glm-5.2:cloud",
|
|
"vision": false,
|
|
"mode": "pr",
|
|
"skills": [
|
|
"gitea-api"
|
|
],
|
|
"desc": "Senior dev — complex, multi-file implementation (GLM-5.2 via Ollama Cloud, text-only)."
|
|
},
|
|
"lead": {
|
|
"model": "anthropic/claude-opus-4-8",
|
|
"vision": true,
|
|
"mode": "pr",
|
|
"skills": [
|
|
"gitea-api"
|
|
],
|
|
"desc": "Tech lead — the hardest problems, architecture, and final calls."
|
|
},
|
|
"qa": {
|
|
"model": "ollama-cloud/minimax-m3:cloud",
|
|
"vision": true,
|
|
"mode": "comment",
|
|
"skills": [
|
|
"gitea-api"
|
|
],
|
|
"desc": "QA / reviewer — reviews PRs: reads the diff, drives a headless browser (Playwright) to verify behavior, posts specific recommendations on the PR and the pass/fail verdict on the issue. Never edits code, never merges."
|
|
},
|
|
"ops": {
|
|
"model": "anthropic/claude-opus-4-8",
|
|
"vision": false,
|
|
"mode": "comment",
|
|
"skills": [
|
|
"gitea-admin"
|
|
],
|
|
"desc": "Gitea operator — administers the Gitea instance itself: create orgs/users/repos, manage labels and secrets, mint scoped per-user tokens, bootstrap new repos with the agent caller. Comments only; never edits code. ALWAYS confirms before any destructive action (delete user/repo/org)."
|
|
},
|
|
"intern": {
|
|
"model": "ollama/ornith:35b",
|
|
"vision": false,
|
|
"mode": "pr",
|
|
"skills": [],
|
|
"desc": "Intern — very basic tasks only, routed to the local Ollama model (ornith:35b). Text-only, cannot read images. Escalates anything non-trivial to @junior, @senior or @lead."
|
|
}
|
|
}
|