Communitygithub.com

AmanVarshney01/tcut

Implementa tarefas de uma alteração no OpenSpec. Use quando o usuário quiser iniciar a implementação, continuar a implementação ou trabalhar nas tarefas.

O que é tcut?

Este skill permite que um agente AI implemente tarefas definidas em uma alteração (change) do OpenSpec, seguindo um fluxo de trabalho estruturado. Ele é útil para desenvolvedores que usam o OpenSpec para gerenciar propostas, especificações, design e tarefas de forma versionada. O skill suporta múltiplos armazenamentos (stores) e esquemas de workflow (schema-driven), adaptando-se automaticamente. O agente lê o contexto, exibe o progresso, executa tarefas em loop (marcando checkboxes em arquivos de tarefas), e pausa para esclarecimentos ou correções quando necessário. Integra-se com os comandos da CLI openspec para selecionar alterações, consultar status, obter instruções de apply e ler arquivos de contexto.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AmanVarshney01/tcut/tree/HEAD/.claude/skills/openspec-apply-change

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Implementa tarefas de uma alteração no OpenSpec.

Seleção de armazenamento: Se o usuário nomear um armazenamento (um armazenamento é um repositório OpenSpec independente registrado nesta máquina) ou o trabalho estiver em um, execute openspec store list --json para descobrir os IDs de armazenamento registrados e, em seguida, passe --store <id> nos comandos que leem ou escrevem especificações e alterações (new change, status, instructions, list, show, validate, archive, doctor, context). Outros comandos não aceitam a flag. As dicas impressas pelos comandos já contêm a flag; mantenha-a nos acompanhamentos. Sem um armazenamento, os comandos atuam na raiz openspec/ local mais próxima.

Entrada: Opcionalmente, especifique um nome de alteração. Se omitido, verifique se pode ser inferido do contexto da conversa. Se for vago ou ambíguo, você DEVE perguntar quais alterações estão disponíveis.

Passos

  1. Selecionar a alteração

    Se um nome for fornecido, use-o. Caso contrário:

    • Infira do contexto da conversa se o usuário mencionou uma alteração
    • Selecione automaticamente se existir apenas uma alteração ativa
    • Se ambíguo, execute openspec list --json para obter as alterações disponíveis e use a ferramenta AskUserQuestion para o usuário selecionar

    Sempre anuncie: "Usando alteração: " e como substituir (ex.: /opsx:apply <outro>).

  2. Verificar o status para entender o esquema

    openspec status --change "<nome>" --json
    

    Analise o JSON para entender:

    • schemaName: O workflow em uso (ex.: "spec-driven")
    • planningHome, changeRoot e actionContext: escopo de planejamento e restrições de edição
    • Qual artefato contém as tarefas (normalmente "tasks" para spec-driven, verifique o status para outros)
  3. Obter instruções de apply

    openspec instructions apply --change "<nome>" --json
    

    Isso retorna:

    • contextFiles: ID do artefato -> array de caminhos de arquivo concretos (varia por esquema – pode ser proposal/specs/design/tasks ou spec/tests/implementation/docs)
    • Progresso (total, concluído, restante)
    • Lista de tarefas com status
    • Instrução dinâmica baseada no estado atual

    Tratar estados:

    • Se state: "blocked" (artefatos ausentes): mostre a mensagem, sugira usar openspec-continue-change
    • Se state: "all_done": parabenize, sugira arquivar
    • Caso contrário: prossiga para a implementação
  4. Ler arquivos de contexto

    Leia todos os caminhos de arquivo listados em contextFiles da saída de instruções de apply. Os arquivos dependem do esquema sendo usado:

    • spec-driven: proposal, specs, design, tasks
    • Outros esquemas: siga os contextFiles da saída da CLI
  5. Mostrar progresso atual

    Exiba:

    • Esquema sendo usado
    • Progresso: "N/M tarefas concluídas"
    • Visão geral das tarefas restantes
    • Instrução dinâmica da CLI
  6. Implementar tarefas (loop até concluir ou bloquear)

    Para cada tarefa pendente:

    • Mostre em qual tarefa está trabalhando
    • Faça as alterações de código necessárias
    • Mantenha as alterações mínimas e focadas
    • Marque a tarefa como concluída no arquivo de tarefas: - [ ] → - [x]
    • Continue para a próxima tarefa

    Pausar se:

    • Tarefa pouco clara → peça esclarecimento
    • A implementação revela um problema de design → sugira atualizar artefatos
    • Erro ou bloqueador encontrado → relate e aguarde orientação
    • O usuário interromper
  7. Ao concluir ou pausar, mostrar status

    Exiba:

    • Tarefas concluídas nesta sessão
    • Progresso geral: "N/M tarefas concluídas"
    • Se tudo concluído: sugira arquivar
    • Se pausado: explique o motivo e aguarde orientação

Saída Durante a Implementação

## Implementando: <nome-alteração> (schema: <nome-esquema>)

Trabalhando na tarefa 3/7: <descrição da tarefa>
[...implementação acontecendo...]
✓ Tarefa concluída

Trabalhando na tarefa 4/7: <descrição da tarefa>
[...implementação acontecendo...]
✓ Tarefa concluída

Saída ao Concluir

## Implementação Concluída

**Alteração:** <nome-alteração>
**Schema:** <nome-esquema>
**Progresso:** 7/7 tarefas concluídas ✓

### Concluído Esta Sessão
- [x] Tarefa 1
- [x] Tarefa 2
...

Todas as tarefas concluídas! Pronto para arquivar esta alteração.

Saída ao Pausar (Problema Encontrado)

## Implementação Pausada

**Alteração:** <nome-alteração>
**Schema:** <nome-esquema>
**Progresso:** 4/7 tarefas concluídas

### Problema Encontrado
<descrição do problema>

**Opções:**
1. <opção 1>
2. <opção 2>
3. Outra abordagem

O que você gostaria de fazer?

Diretrizes

  • Continue executando as tarefas até concluir ou bloquear
  • Sempre leia os arquivos de contexto antes de começar (da saída das instruções de apply)
  • Se a tarefa for ambígua, pause e pergunte antes de implementar
  • Se a implementação revelar problemas, pause e sugira atualizações de artefatos
  • Mantenha as alterações de código mínimas e escopadas para cada tarefa
  • Atualize a caixa de seleção da tarefa imediatamente após concluir cada tarefa
  • Pause em erros, bloqueadores ou requisitos pouco claros – não adivinhe
  • Use o contextFiles da saída da CLI, não presuma nomes de arquivo específicos

Integração de Workflow Fluida

Este skill suporta o modelo "ações sobre uma alteração":

  • Pode ser invocado a qualquer momento: Antes de todos os artefatos estarem concluídos (se houver tarefas), após implementação parcial, intercalado com outras ações
  • Permite atualizações de artefatos: Se a implementação revelar problemas de design, sugira atualizar artefatos – não há bloqueio de fases, trabalhe de forma fluida

Individual skills in this repo

This repo contains 7 individual skills — each has its own dedicated page.

AmanVarshney01/tcut

Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.

AmanVarshney01/tcut

Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements. Use when the user wants to think through something before or during a change.

AmanVarshney01/tcut

Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.

AmanVarshney01/tcut

Sync delta specs from a change to main specs. Use when the user wants to update main specs with changes from a delta spec, without archiving the change.

AmanVarshney01/tcut

Update an OpenSpec change by revising its existing planning artifacts and keeping them coherent with one another. Use when the user wants to revise a change's plan, fold new decisions into it, or reconcile its artifacts after an edit. Never edits code.

AmanVarshney01/tcut

Combine tcut terminal recordings with Remotion to produce polished, motion-designed launch/promo videos (title cards, animated captions, layered terminal footage). Use when the user wants a product video, launch video, or social video that features terminal/CLI footage.

AmanVarshney01/tcut

Record reproducible terminal videos (MP4/GIF/SVG/HTML) from TypeScript scripts or live sessions with the tcut CLI. Use when the user wants a terminal demo, CLI screencast, TUI recording, or animated terminal GIF for a README, website, or social post.

Habilidades Relacionadas