mirror of
https://github.com/fsolla/teqo.git
synced 2026-11-13 06:43:06 +00:00
Mapa fixo commitado em scripts/lib/worktree.mjs (cheap=cheapestinference/deepseek-v4-flash, pro=opencode-go/qwen3.7-max, zen=opencode-go/ox-alpha-free, go=opencode-go/mimo-v2.5, alibaba=alibaba-token-plan/qwen3.7-max) com WORKTREE_VARIANT=max sempre; resolveWorktreeModel fail-high em múltiplas flags; opencodeLaunchDirective passa a emitir --model <map|preset> --variant max --auto; scripts/worktree.mjs valida at-most-one antes do claim e repassa modelo nos 3 propósitos (next/plan/new) com help/docblock atualizados; .agents/shell/worktree.sh, .opencode/commands/worktree.md, .agents/skills/worktree-next-issue/SKILL.md e local-database skill com contrato remapeado (--go deixa de ser no-op); tests/unit/worktree.unit.spec.ts pina as 5 flags, variant e guardrail. Closes #859
2.9 KiB
2.9 KiB
| description |
|---|
| Claima a próxima Issue (next [--issue N] [--stay] [--cheap|--pro|--zen|--go|--alibaba]), cria o worktree dela e provisiona o ambiente; também cria worktree de planejamento (plan [bag] [--stay] [--cheap|--pro|--zen|--go|--alibaba]), worktree neutro (new [bag] [--stay] [--cheap|--pro|--zen|--go|--alibaba]) ou destrói o atual (kill [--force]) |
Rode o script determinístico abaixo (não improvise a lógica) e reporte o resultado de forma concisa.
next [--issue N] [--stay] [--cheap|--pro|--zen|--go|--alibaba]: claima a próxima Issue claimável da fila (mesma fila/ordem e lock otimista depnpm agent:claim) e cria (ou reutiliza) o worktree dela. Claim falhou → reporte o motivo — não há worktree.--issue Nclaima a Issue direcionada (ready) ou reabre uma já claimada (in-progress, sem re-claim). A saída avisa "já claimada — NÃO rodarpnpm agent:claim". Por padrão o script imprimecd <dir>na última linha — aplique-o na sessão de shell atual (cd <dir>) e reporte o novo diretório.--staysuprime ocd(não troque de diretório) mas o claim ainda acontece.--cheap/--pro/--zen/--go/--alibabaescolhe o modelo por invocação no mapa fixoWORKTREE_MODEL_MAP(cheap=cheapestinference/deepseek-v4-flash, pro=opencode-go/qwen3.7-max, zen=opencode-go/ox-alpha-free, go=opencode-go/mimo-v2.5, alibaba=alibaba-token-plan/qwen3.7-max) com--variant maxsempre; at-most-one (múltiplas → erro).plan [bag] [--stay] [--cheap|--pro|--zen|--go|--alibaba]: cria um worktree de planejamento diferente a cada invocação (branchplans/plan-issue-<bag>, ouplans/plan-issue-<n>sequencial sem bag; sufixo-2/-3em colisão) para rodar/plan-issuesem ocupar o main; nunca conflita comnext. Não claima nada. Mesmo contrato decddonext: aplique a última linhacd <dir>por padrão;--staysuprime; flag de modelo como nonext.new [bag] [--stay] [--cheap|--pro|--zen|--go|--alibaba]: cria um worktree neutro (sem função pré-definida — explorar ideia, conversar, planejar sem registrar nada) diferente a cada invocação (branchwork/<bag>, ouwork/<n>sequencial sem bag; sufixo-2/-3em colisão); o prefixo minúsculowork/…nunca conflita comnextnemplan. Não claima nada. Mesmo contrato decddoplan: aplique a última linhacd <dir>por padrão;--staysuprime; flag de modelo como nonext.kill [--force]: destrói o worktree em que você está e remove seus bancos. O script imprimecd <main>na última linha — aplique-o (cd <main>) para a sessão sair do diretório destruído.
Este comando roda SEM o marcador
TEQO_WORKTREE_TERMINAL, então nunca recebe a diretivalaunch— só ocd. O launch do opencode (OPS26/OPS33+OPS93, com--variant max) acontece apenas na funçãoworktree()de.agents/shell/worktree.sh(terminal interativo); nunca abra um TUI aninhado a partir daqui.
!node scripts/worktree.mjs $ARGUMENTS