Community코딩 & 개발github.com

SirEdvin/agent-skills

완료, 인계, 워크스페이스 정리 등으로 작업 공간이 사라질 수 있는 경우에 사용합니다. 전환 전에 증거를 보존하고, 남은 디렉터리에서 전환 후 정확한 상태를 확인합니다.

agent-skills란 무엇인가요?

이 스킬은 AI 에이전트가 작업 완료, 코드 리뷰 인계, 워크스페이스 정리 등으로 인해 현재 작업 디렉터리가 삭제되거나 변경될 때 발생하는 문제를 해결합니다. 에이전트가 작업 디렉터리가 사라진 후에도 파일, 기록, 인공물을 안정적으로 보존하고 검증할 수 있도록 단계별 지침을 제공합니다. 주로 커맨드라인 도구, Git 작업 트리, 지속적인 아티팩트 메커니즘을 사용하는 플랫폼(예: Claude Code, Cursor, Codex)에서 유용합니다. 이 스킬은 전환 전에 정체성 확인, 증거 보존, 사전 영수증 작성, 전환 후에는 안정적인 디렉터리에서 읽기 전용 검증 수행, Git 작업 트리 등록 해제 확인 등을 강조합니다. 또한, 실제 사용자 작업 공간에 영향을 주지 않고 이러한 동작을 테스트할 수 있는 폐기 가능한 회귀 테스트 픽스처를 포함하고 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SirEdvin/agent-skills/tree/HEAD/skills/lifecycle-safe-verification

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

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

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

문서

생명주기 안전한 검증

트리거 및 경계

작업 완료, 리뷰 인계, 워크스페이스 정리 또는 현재 작업 디렉터리를 삭제하거나 이동할 수 있는 기타 승인된 전환 전에 사용하세요. 이 스킬은 정리, 생명주기 전환, 상태 변경, 프로세스 종료 또는 재시도를 승인하지 않습니다. 플랫폼의 실제 생명주기 계약을 따르세요. 모든 전환이 작업 트리를 제거하는 것은 아니며, 성공적인 전환이 작업자 프로세스를 중단시킬 필요도 없습니다.

전환 전

  1. 정확한 정체성을 확립합니다: 작업/레코드 ID, 보드 또는 네임스페이스, 프로필/계정, 리포지토리 및 예상 상태입니다. 디렉터리를 변경한 후에는 도구의 암시적 현재 작업에 의존하지 마세요. 플랫폼에서 지원하는 명시적 선택자를 사용하세요.
  2. 정리 의미를 검사하고 작업 소유 위치와 영구 위치를 식별합니다. 전환이 제거할 수 있는 모든 워크스페이스 외부의 기존 안정적인 디렉터리를 선택하세요. 상위 경로는 정리에서도 살아남는 경우에만 안전합니다. 일회용 워크스페이스로의 심볼릭 링크는 내구성 있는 위치가 아닙니다. 실제 경로를 확인합니다.
  3. 먼저 수락 검사를 완료합니다. 필요한 보고서, 체크섬, 커밋 및 첨부 파일을 플랫폼이 지원하는 내구성 있는 아티팩트 메커니즘 또는 사용자가 승인한 다른 영구 위치를 통해 보존합니다. 정확한 아티팩트 정체성과 내용을 다시 읽습니다. 주석의 경로 문자열은 해당 경로가 가리키는 파일을 보존하지 않습니다.
  4. 일회용 디렉터리 외부에 간결한 전환 전 영수증을 기록합니다: 정확한 정체성, 예상 전환, 증거 위치, 검증 명령 및 해결되지 않은 제한 사항. 증거를 보존하기 위해 미완료 수락을 완료된 것으로 표시하지 마세요. 대신 적절한 승인된 체크포인트/인계 상태를 사용하세요.
  5. 이전 체크아웃, 가상 환경, 상대 파일, 환경 종속 보드 검색 또는 헬퍼 스크립트가 필요하지 않도록 전환 후 검증을 계획합니다. 전환 전에 필요한 실행 파일과 내구성 있는 경로를 확인합니다.

전환 및 정확한 재읽기

  1. 이미 승인된 전환을 한 번 수행합니다. 성공을 원하는 내구성 있는 상태의 증거로 취급하지 않고 영수증을 캡처합니다.
  2. 실행 도구의 명시적 안정적인 작업 디렉터리 매개변수로 재읽기를 시작합니다. 명령 내부의 cd는 도구가 삭제된 cwd를 입력하는 동안 실패하면 실행되지 않을 수 있습니다. 도구에 작업 디렉터리 재정의가 없는 경우, 생존 위치에 루트를 둔 독립적인 세션을 사용하세요. 실패한 재읽기를 수정하기 위해 생명주기 변경을 반복하지 마세요.
  3. 지원되는 읽기 전용 인터페이스를 사용하여 정확한 작업/레코드 및 전환 이벤트를 읽습니다. 예상 상태, 관련 실행/이벤트 ID 및 내구성 있는 아티팩트 내용을 확인합니다. 제거 자체가 요청된 경우, 파일 시스템 부재 및 Git 작업 트리 등록 해제를 별도로 확인합니다. 디렉터리 부재가 브랜치 또는 첨부 파일이 제거되었음을 의미한다고 가정하지 마세요.
  4. 플랫폼이 요청된 상태를 변환한 경우(예: 검토를 위해 라우팅), 실제 상태를 보고합니다. 작업자가 계속 활성 상태인 경우, 이를 별도로 보고합니다. 승인 없이 중단하지 마세요.
  5. 오류 발생 시, stderr와 어느 단계에서 실패했는지 검사합니다. cd: ... No such file or directory와 함께 126을 반환하는 래퍼는 대상 실행 파일에 chmod가 필요하다는 증거가 아닙니다. 안정적인 디렉터리에서 읽기 전용 검증만 재시도합니다. 레코드를 읽을 수 없는 경우, 전환 승인되었지만 검증 불완전하다고 보고합니다.

폐기 가능한 회귀 픽스처

픽스처는 자체 임시 Git 리포지토리와 연결된 작업 트리를 만들고, 형제 내구성 디렉터리에 합성 영수증을 보존하고, 해당 픽스처 작업 트리만 제거한 다음, 제거된 cwd에서의 실행은 실패하고 내구성 디렉터리에서의 실행은 성공함을 증명합니다. 또한 Git의 작업 트리 목록과 영수증 내용을 확인합니다. 실제 작업, 원격, 사용자 워크스페이스 또는 플랫폼 API를 전혀 건드리지 않습니다.

설치된 패키지 디렉터리에서 실행:

python -m unittest discover -s scripts -p 'test_*.py' -v

이것은 파일시스템/서브프로세스/Git 동작을 테스트하며, 보편적인 플랫폼 정리 약속이 아닙니다. 실제 완료 의미와 원격 아티팩트 재읽기는 여전히 플랫폼별 검증이 필요합니다. 데모 목적으로 사용자 워크스페이스에 대해 제거 명령을 실행하지 마세요.

출처 및 입증

반복적인 제거된 cwd 검증 실패로부터 독립적으로 작성되었습니다. 개인 로그, 경로 또는 작업 식별자는 포함되지 않습니다. Python의 서브프로세스 문서는 cwd, 반환 코드 및 자식 시작 실패를 설명합니다. Git 작업 트리 매뉴얼은 연결된 작업 트리 생성, 제거 및 나열을 설명합니다. 이러한 기본 요소는 특정 작업 스케줄러의 구현에 대한 추론이 아닌 픽스처를 지원합니다.

관련 스킬