ワンクリックで
characterize
Characterization test 모드로 전환/복귀한다. 기존 레거시 코드의 현재 동작을 테스트로 포착하기 위한 모드. 구현 변경 없음 (`{source_root}` 수정 금지). 리팩터는 별도 사이클.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Characterization test 모드로 전환/복귀한다. 기존 레거시 코드의 현재 동작을 테스트로 포착하기 위한 모드. 구현 변경 없음 (`{source_root}` 수정 금지). 리팩터는 별도 사이클.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | characterize |
| description | Characterization test 모드로 전환/복귀한다. 기존 레거시 코드의 현재 동작을 테스트로 포착하기 위한 모드. 구현 변경 없음 (`{source_root}` 수정 금지). 리팩터는 별도 사이클. |
레거시 코드의 현재 동작을 포착 하는 characterization 테스트를 추가하는 모드로 전환한다. 구현 변경 없이 테스트만 추가하여, 이후 리팩터를 안전하게 진행할 발판을 만든다.
상세 절차: characterize.md.
대상: $ARGUMENTS (off / 없음 — mode 복귀)
preamble.md 의 P1 수행.
{PROJECT} 획득. 실패 시 messages.md 의 workspace_missing / no_active_project 출력 후 종료.$ARGUMENTS 를 분기:
$ARGUMENTS | 동작 |
|---|---|
(빈 문자열) 또는 on | .agent-state.yml 에 mode: characterize 설정 |
off | .agent-state.yml 의 mode 를 null (또는 키 제거) 로 설정 |
workspace/projects/{PROJECT}/.agent-state.yml 을 Read.
파일이 없거나 schema 가 v1.1 미만이면 에러 출력 후 종료: "프로젝트 상태 파일 누락 또는 구버전. /pilot:doctor --fix 실행 후 재시도."
모드 전환:
mode: characterize 라인을 추가 (기존에 mode: 키가 있으면 값 교체)mode: 라인을 제거하거나 mode: null 로 설정결과 확인 후 사용자에게 안내:
characterize 모드 {ON|OFF}.
- mode: {characterize | null}
- tdd: {true | false}
이후 @pilot-planner / @pilot-generator / @pilot-evaluator 호출 시 {characterize.md | rgr.md | 표준} 절차가 적용됩니다.
상세: {CLAUDE_PLUGIN_ROOT}/skills/context/modes/characterize.md
tdd: true 와 mode: characterize 가 동시 설정 된 경우 characterize 가 우선 적용된다 (Red 계약 대신 Characterization Contract).{source_root} 수정은 scope-guard.sh 훅이 Edit/Write 시점에 차단하고, Evaluator 가 git diff 로 재검증한다. 리팩터가 필요하면 먼저 /pilot:characterize off 로 복귀.characterize.md. 본 스킬은 상태 전환 명령 일 뿐 절차 정의가 아니다.프로젝트 진행 중 작성된 코드를 PR 이전에 품질 관점에서 리뷰한다. 변경분(git diff)을 대상으로 pilot-code-review 에이전트를 호출하며, 결함마다 severity 와 재진입 라우팅(feature/planner/generator)을 제시한다. evaluator 의 요구사항·게이트 판정과는 별개 축이다.
사용자가 "PR 올려줘", "풀 리퀘스트 생성" 등 현재 브랜치를 GitHub Pull Request 로 올리길 요청할 때 사용한다. base branch 는 state·config· 공통 config 순으로 자동 결정하며 사용자 명시 입력 시 state 에 저장한다. 제목·본문 컨벤션은 `skills/context/shared/pr.md` 를 따른다.
이미 저장된 docs/ 기획서를 features/ 기능 명세로 분할·구조화할 때 사용한다. PM 작성 표 중심 기획서를 기능 단위 문서로 변환하고 project.md 의 목표 섹션 과 prompts/ 파일(planner·generator·evaluator)을 자동 갱신한다. 기획서 fetch 는 `/pilot:confl`, 프롬프트 기반 단일 기능 추가는 `/pilot:create-feature` 를 사용한다.
사용자가 "커밋해줘", "변경 묶어서 커밋" 등 git 커밋 작성을 요청할 때 사용한다. 변경 파일을 확인하고 `skills/context/shared/commit.md` 규칙(scope 표기, 한국어 본문, 50자 이내 요약)에 맞춰 메시지를 작성해 커밋한다. unstaged 파일이 있으면 포함 여부를 사용자에게 확인한다.
Confluence 기획서를 프로젝트 docs/ 폴더에 fetch 하거나 저장된 docs/ 를 search·all·search+action 모드로 조회할 때 사용한다. 저장된 docs/ 를 features/ 로 가공하는 작업은 `/pilot:analyze` 가 담당한다.
활성 프로젝트에 사용자 프롬프트 한 줄로 단일 feature 명세를 추가할 때 사용한다. features/NN-{slug}.md 를 prompt-origin 템플릿으로 생성하고 `/pilot:analyze` 와 동일하게 project.md (목표·관련 파일) 와 prompts/* (planner·generator·evaluator) 를 함께 동기화한다. 기획서(docs/) 기반 다건 분할은 `/pilot:analyze` 를 사용한다. 실행은 @pilot-planner 호출로 시작 — 자동 파이프라인 아님.