Communitygithub.com

AmanVarshney01/tcut

Arquivar uma alteração concluída no fluxo de trabalho experimental. Use quando o usuário quiser finalizar e arquivar uma alteração após a conclusão da implementação.

O que é tcut?

Esta skill automatiza o processo de arquivamento de alterações concluídas no fluxo de trabalho experimental do OpenSpec. Ela é útil para desenvolvedores que utilizam ferramentas como Claude Code, Cursor ou Codex e que precisam finalizar e registrar mudanças de forma organizada. A skill suporta múltiplos armazenamentos (stores) registrados na máquina e gerencia a seleção do armazenamento adequado, seja por nome fornecido pelo usuário ou inferido do contexto da conversa. Seu funcionamento baseia-se em comandos `openspec` para listar, verificar status e arquivar alterações. O processo inclui validação da completude dos artefatos e tarefas, sincronização opcional de especificações delta com as especificações principais, e criação de um diretório de arquivo com carimbo de data. Ao final, um resumo é exibido com informações como nome da alteração, schema utilizado, local do arquivo e estado da sincronização de specs.

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

Perguntar na sua IA favorita

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

Documentação

Arquive uma alteração concluída no fluxo de trabalho experimental.

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á carregam a flag; mantenha-a nas ações de acompanhamento. Sem um armazenamento, os comandos agem na raiz local openspec/ mais próxima.

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

Passos

  1. Se nenhum nome de alteração for fornecido, solicite a seleção

    Execute openspec list --json para obter as alterações disponíveis. Use a ferramenta AskUserQuestion para deixar o usuário selecionar.

    Mostre apenas alterações ativas (ainda não arquivadas). Inclua o schema usado para cada alteração, se disponível.

    IMPORTANTE: Não adivinhe ou selecione automaticamente uma alteração. Sempre deixe o usuário escolher.

  2. Verificar status de conclusão dos artefatos

    Execute openspec status --change "<nome>" --json para verificar a conclusão dos artefatos.

    Analise o JSON para entender:

    • schemaName: O fluxo de trabalho sendo usado
    • planningHome, changeRoot, artifactPaths e actionContext: contexto de caminho e escopo
    • artifacts: Lista de artefatos com seu status (done ou outro)

    Se algum artefato não estiver done:

    • Exiba um aviso listando os artefatos incompletos
    • Use a ferramenta AskUserQuestion para confirmar se o usuário deseja prosseguir
    • Prossiga se o usuário confirmar
  3. Verificar status de conclusão das tarefas

    Leia o arquivo de tarefas (tipicamente tasks.md) para verificar tarefas incompletas.

    Conte tarefas marcadas com - [ ] (incompletas) vs - [x] (completas).

    Se houver tarefas incompletas:

    • Exiba um aviso mostrando a contagem de tarefas incompletas
    • Use a ferramenta AskUserQuestion para confirmar se o usuário deseja prosseguir
    • Prossiga se o usuário confirmar

    Se nenhum arquivo de tarefas existir: Prossiga sem aviso relacionado a tarefas.

  4. Avaliar estado de sincronização de especificações delta

    Use artifactPaths.specs.existingOutputPaths do JSON de status para verificar especificações delta. Se nenhuma existir, prossiga sem solicitação de sincronização.

    Se especificações delta existirem:

    • Compare cada especificação delta com sua especificação principal correspondente em openspec/specs/<capacidade>/spec.md
    • Determine quais alterações seriam aplicadas (adições, modificações, remoções, renomeações)
    • Mostre um resumo combinado antes de solicitar

    Opções de solicitação:

    • Se alterações necessárias: "Sincronizar agora (recomendado)", "Arquivar sem sincronizar"
    • Se já sincronizado: "Arquivar agora", "Sincronizar mesmo assim", "Cancelar"

    Se o usuário escolher sincronizar, use a ferramenta Task (subagent_type: "general-purpose", prompt: "Use a ferramenta Skill para invocar openspec-sync-specs para a alteração ''. Análise de especificações delta: <inclua o resumo da análise das especificações delta>"). Prossiga para arquivar independentemente da escolha.

  5. Realizar o arquivamento

    Crie um diretório archive sob planningHome.changesDir se ele não existir:

    mkdir -p "<planningHome.changesDir>/archive"
    

    Gere o nome de destino usando a data atual: YYYY-MM-DD-<nome-da-alteracao>

    Verifique se o destino já existe:

    • Se sim: Falhe com erro, sugira renomear o arquivo existente ou usar uma data diferente
    • Se não: Mova changeRoot para o diretório de arquivo
    mv "<changeRoot>" "<planningHome.changesDir>/archive/YYYY-MM-DD-<nome>"
    
  6. Exibir resumo

    Mostre o resumo de conclusão do arquivamento incluindo:

    • Nome da alteração
    • Schema que foi usado
    • Local do arquivo
    • Se as especificações foram sincronizadas (se aplicável)
    • Nota sobre quaisquer avisos (artefatos/tarefas incompletas)

Saída em caso de sucesso

## Arquivamento Concluído

**Alteração:** <nome-da-alteracao>
**Schema:** <nome-do-schema>
**Arquivado em:** o caminho de arquivo derivado de `planningHome.changesDir`/YYYY-MM-DD-<nome>/
**Especificações:** ✓ Sincronizado com as especificações principais (ou "Nenhuma especificação delta" ou "Sincronização ignorada")

Todos os artefatos completos. Todas as tarefas completas.

Diretrizes

  • Sempre solicite a seleção da alteração se ela não for fornecida
  • Use o grafo de artefatos (openspec status --json) para verificação de conclusão
  • Não bloqueie o arquivamento com avisos – apenas informe e confirme
  • Preserve o arquivo .openspec.yaml ao mover para o arquivo (ele se move com o diretório)
  • Mostre um resumo claro do que aconteceu
  • Se a sincronização for solicitada, use a abordagem openspec-sync-specs (orientada por agente)
  • Se especificações delta existirem, sempre execute a avaliação de sincronização e mostre o resumo combinado antes de solicitar

Individual skills in this repo

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

AmanVarshney01/tcut

Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.

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