feat(config): per-agent models and task delegation #98
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/config/per-agent-models-task-delegation"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Что сделано
.opencode/opencode.jsonсекцияagent: добавленmodelшести агентам —ollama-cloud/deepseek-v4-flashу plan/explore/scout/memory-syncer,ollama-cloud/deepseek-v4-proу general/reviewer.generalиreviewerполучилиpermission.task = {"*": "deny", "explore": "allow", "scout": "allow"}(glob, последний матч побеждает);memory-syncerостался безpermission.task.tests/test_permissions.py: 4 новых теста — форматы моделей, точные значения, task-permissions, отсутствиеpermission.taskу memory-syncer (27 passed).configure-opencode/SKILL.mdсекция 6: задокументированpermission.task(glob-семантика, findLast,"*": "deny"первым).feature-spec/SKILL.mdиissue/SKILL.md: плановые issues создаёт main-chat оркестратор сам черезcreate-issue(согласовано с исключением в AGENTS.md); subagent-делегирование оставлено только для bug-discovery.Почему
Субагенты наследовали модель вызывающей сессии — нельзя было оптимизировать стоимость/качество (flash для лёгких задач, pro для кода и ревью). Плюс устранён конфликт правил: AGENTS.md предписывает оркестратору создавать плановые issues сам, а скиллы feature-spec/issue делегировали это subagent'у.
Watch out
agentс однимmodel(без tools/steps — их нет и не было).provider(обе встроены в opencode 1.18.18); baredeepseek-v4-flash(без:0731) — по контракту.Pending
—
Closes #97
Code Review Summary
PR добавляет per-agent модели (6 агентов) и
permission.taskдля делегирования task-сабагентов (general/reviewer → только explore/scout), обновляет issue/feature-spec skills под модель «оркестратор создаёт issues сам» и добавляет 4 теста. Конфиг корректен, семантика подтверждена, CI зелёный (27 passed).Positives
permission.taskсконфигурирован правильно:{"*": "deny", "explore": "allow", "scout": "allow"}— при glob + findLast-семантике (последнее совпавшее правило побеждает) explore/scout разрешены, всё остальное deny.check-permissions.pyне парситpermission.task— поломки нет.permission.taskзадокументирован.Suggestions (info, not blocking)
ollama-cloud/deepseek-v4-flashи-pro: в конфиге providerollama-cloudопределяет толькоdeepseek-v4-flash:0731,deepseek-v4-proв конфиге не определён. PR body утверждает, что модели «встроены в opencode 1.18.18» — из репо не проверяемо, принимаем по контракту. Если ID не разрешится, opencode молча упадёт на provider default (не краш, но цель PR не будет достигнута). Рекомендация: после мержа проверить фактическую модель сабагентов в логах сессий.scout— встроенный агент opencode 1.18.18 (docs упоминают); если отсутствует, task-спавн scout просто заденятся, explore остаётся доступным — не блокирует.Verdict: APPROVE
3a11e6aaa0460dbfc52f