Communitygithub.com

AmanVarshney01/tcut

실험적 워크플로우에서 완료된 변경 사항을 보관합니다. 사용자가 구현 완료 후 변경 사항을 최종 확정하고 보관하려 할 때 사용하세요.

tcut란 무엇인가요?

이 스킬은 OpenSpec 실험 워크플로우에서 완료된 변경 사항을 체계적으로 보관하는 프로세스를 자동화합니다. 사용자가 변경 이름을 제공하거나 대화 컨텍스트에서 유추할 수 없는 경우, `openspec list --json`을 사용하여 활성 변경 목록을 보여주고 사용자가 직접 선택하도록 안내합니다. 보관 전에 `openspec status --json`으로 아티팩트 완료 상태를 확인하고, `tasks.md`에서 미완료 작업을 검사하며, 델타 스펙이 존재하면 메인 스펙과 동기화 여부를 평가한 후 요약 정보를 제공합니다. 최종적으로 변경 디렉토리를 날짜 기반 이름으로 아카이브 디렉토리로 이동시키고, 동기화 상태와 완료 여부를 포함한 보관 완료 요약을 출력합니다. 이 스킬은 Claude Code와 같은 AI 에이전트 환경에서 사용되며, 명령 실행, 파일 분석, 사용자 확인 프롬프트를 통해 안전하고 체계적인 변경 보관을 보장합니다.

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

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

실험적 워크플로우에서 완료된 변경 사항을 보관합니다.

저장소 선택: 사용자가 저장소(이 시스템에 등록된 독립형 OpenSpec 저장소) 이름을 지정하거나 작업이 특정 저장소에 속하는 경우, openspec store list --json을 실행하여 등록된 저장소 ID를 확인한 후, 스펙과 변경 사항을 읽거나 쓰는 명령(new change, status, instructions, list, show, validate, archive, doctor, context)에 --store <id> 플래그를 전달하세요. 다른 명령은 이 플래그를 사용하지 않습니다. 명령의 출력 힌트에는 이미 플래그가 포함되어 있으므로 후속 작업에서도 유지하세요. 저장소가 지정되지 않은 경우, 명령은 가장 가까운 로컬 openspec/ 루트에서 동작합니다.

입력: 선택적으로 변경 이름을 지정합니다. 생략된 경우 대화 컨텍스트에서 유추할 수 있는지 확인합니다. 모호하거나 명확하지 않은 경우 사용 가능한 변경 사항을 반드시 프롬프트로 물어봐야 합니다.

단계

  1. 변경 이름이 제공되지 않은 경우, 선택을 위해 프롬프트

    openspec list --json을 실행하여 사용 가능한 변경 사항을 가져옵니다. AskUserQuestion 도구를 사용하여 사용자가 선택하도록 합니다.

    이미 보관된 변경 사항이 아닌 활성 변경 사항만 표시합니다. 가능한 경우 각 변경에 사용된 스키마를 포함합니다.

    중요: 변경 사항을 추측하거나 자동 선택하지 마세요. 항상 사용자가 직접 선택하도록 하세요.

  2. 아티팩트 완료 상태 확인

    openspec status --change "<name>" --json을 실행하여 아티팩트 완료 상태를 확인합니다.

    JSON을 파싱하여 다음을 확인합니다:

    • schemaName: 사용 중인 워크플로우
    • planningHome, changeRoot, artifactPaths, actionContext: 경로 및 범위 컨텍스트
    • artifacts: 각 아티팩트의 상태(done 또는 기타) 목록

    완료되지 않은 아티팩트가 있는 경우:

    • 미완료 아티팩트 목록과 함께 경고 표시
    • AskUserQuestion 도구를 사용하여 사용자에게 계속 진행할지 확인
    • 사용자가 확인하면 진행
  3. 작업 완료 상태 확인

    작업 파일(일반적으로 tasks.md)을 읽어 미완료 작업이 있는지 확인합니다.

    - [ ](미완료)로 표시된 작업과 - [x](완료)로 표시된 작업의 개수를 셉니다.

    미완료 작업이 있는 경우:

    • 미완료 작업 개수를 표시하는 경고 표시
    • AskUserQuestion 도구를 사용하여 사용자에게 계속 진행할지 확인
    • 사용자가 확인하면 진행

    작업 파일이 없는 경우: 작업 관련 경고 없이 진행합니다.

  4. 델타 스펙 동기화 상태 평가

    상태 JSON의 artifactPaths.specs.existingOutputPaths를 사용하여 델타 스펙이 있는지 확인합니다. 델타 스펙이 없으면 동기화 프롬프트 없이 진행합니다.

    델타 스펙이 있는 경우:

    • 각 델타 스펙을 openspec/specs/<capability>/spec.md에 있는 해당 메인 스펙과 비교
    • 적용될 변경 사항(추가, 수정, 삭제, 이름 변경)을 파악
    • 프롬프트 전에 통합 요약 표시

    프롬프트 옵션:

    • 변경이 필요한 경우: "지금 동기화 (권장)", "동기화 없이 보관"
    • 이미 동기화된 경우: "지금 보관", "그래도 동기화", "취소"

    사용자가 동기화를 선택하면 Task 도구(subagent_type: "general-purpose", prompt: "Use Skill tool to invoke openspec-sync-specs for change ''. Delta spec analysis: <포함할 델타 스펙 분석 요약>")를 사용합니다. 선택과 관계없이 보관을 진행합니다.

  5. 보관 수행

    planningHome.changesDir 아래에 archive 디렉토리가 없으면 생성합니다:

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

    현재 날짜를 사용하여 대상 이름 생성: YYYY-MM-DD-<change-name>

    대상이 이미 존재하는지 확인:

    • 존재하는 경우: 오류와 함께 실패, 기존 보관 파일 이름 변경 또는 다른 날짜 사용 제안
    • 존재하지 않는 경우: changeRoot를 보관 디렉토리로 이동
    mv "<changeRoot>" "<planningHome.changesDir>/archive/YYYY-MM-DD-<name>"
    
  6. 요약 표시

    보관 완료 요약 표시:

    • 변경 이름
    • 사용된 스키마
    • 보관 위치
    • 스펙 동기화 여부 (해당되는 경우)
    • 경고 사항 참고 (미완료 아티팩트/작업)

성공 시 출력

## 보관 완료

**변경:** <change-name>
**스키마:** <schema-name>
**보관 위치:** `planningHome.changesDir`/YYYY-MM-DD-<name>/ 경로
**스펙:** ✓ 메인 스펙에 동기화됨 (또는 "델타 스펙 없음" 또는 "동기화 건너뜀")

모든 아티팩트 완료. 모든 작업 완료.

가드레일

  • 제공되지 않은 경우 항상 변경 선택을 위해 프롬프트
  • 완료 확인을 위해 아티팩트 그래프 사용 (openspec status --json)
  • 경고가 있어도 보관을 차단하지 않음 - 정보 제공 후 확인만 받음
  • 보관 시 .openspec.yaml 유지 (디렉토리와 함께 이동)
  • 발생한 작업의 명확한 요약 표시
  • 동기화 요청 시 openspec-sync-specs 접근 방식 사용 (에이전트 주도)
  • 델타 스펙이 존재하는 경우 항상 동기화 평가를 실행하고 프롬프트 전에 통합 요약 표시

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.

관련 스킬