Skip to content
Back to skills

Child Session

ASecurity

Discipline a worker session loads at dispatch time — verify the brief's premises before implementing, work only on its own branch, and report in the fixed completion format. Use when a session has been dispatched as a worker (child) with a brief from a parent control session.

  • 4 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 21, 2026
ai-agentsgit

Works with

  • claude code

Security analysis

A100/100

Scanned September 21, 2026

npx -y skills add This-HW/claude-code-kit --skill child-session --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Child Session?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Child Session
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/this-hw-child-session/badge)](https://www.skillsdirectory.com/skills/this-hw-child-session)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: child-session
description: Discipline a worker session loads at dispatch time — verify the brief's premises before implementing, work only on its own branch, and report in the fixed completion format. Use when a session has been dispatched as a worker (child) with a brief from a parent control session.
model: sonnet
effort: medium
---

# Child Session 스킬

`control-loop`을 쓰는 부모 세션이 워커를 디스패치할 때 함께 로드하는 스킬이다. 부모와
워커는 행위자·세션·권한이 다르므로 별도 스킬로 둔다 — 부모 쪽 규율은
`control-loop`가 소유하고, 이 스킬은 워커 자신에게 로드되는 규율만 소유한다.

브리프에 적힌 금지사항을 워커가 어긴 사고가 실제로 있었다 — 원칙을 부모 쪽 문서에만
적어 두는 것만으로는 부족했다. 규율이 **워커 자신의 세션에** 로드돼야 지켜진다.

---

## 0. 인자 4개 확인 — 가장 먼저

디스패치 시 다음 4개와 함께 로드된다:

1. 부모 세션 이름/식별자
2. 역할 + 워크트리 경로
3. 4블록 브리프(전제 / 범위·계약 / 금지사항 / 보고형식 — 스키마 SSOT는
   `rules/delegation-contract.md`)
4. 금지사항 기본값(push 금지, 통합 브랜치 쓰기 금지, 파괴적 git 명령 금지, 공유
   원장 쓰기 금지 등)

**하나라도 빠지면 추측하지 않는다.** 부모에게 물어라 — 호스트가 제공하는 수단으로.
이 확인이 구현보다 먼저다.

## 1. 한 줄 확인 보고

인자 4개를 확보했으면, 작업을 시작하기 전에 무엇을 맡았고 어디서 작업하는지 부모에게
한 줄로 확인한다. 이것이 착수 신호다.

## 2. 마커 기록

로드 시 마커를 쓴다. 위치는 **`$(git rev-parse --git-dir)/cck/child.json`**.

- 이 경로는 워크트리마다 분리되고 구조적으로 untracked다 — 워킹트리를 더럽히지 않고
  `git ls-files`에도 잡히지 않으므로 `.gitignore` 등재를 따로 검사할 필요가 없다.
- 내용: **`rules/child-marker.md` 의 스키마를 그대로 따른다** — 키 이름이 고정돼 있다
  (`schema`·`parent`·`role`·`base_commit`·`written_at`). 키를 임의로 정하면 훅이 읽지 못해
  **"자식 아님"으로 오판**한다(실측: 두 세션이 `base_commit`·`baseline_commit` 으로 갈렸다).
  부모 없이 스스로 로드했으면 `parent` 는 `"self"` 다.
- **치환으로 쓴다(추가가 아니라)** — 새 브리프를 받을 때마다 마커를 덮어쓴다. 같은
  워크트리를 다음 작업이 이어받는 경우, 이전 브리프의 부모 이름·기준 커밋이 낡은 채
  남아 있는 것을 막는다.
- **예외 — 주 체크아웃에는 쓰지 않는다.** `git rev-parse --git-common-dir`과
  `--git-dir`이 같은 경로로 나오면 주 체크아웃이다. 이 스킬이 거기서 로드되더라도
  마커를 쓰지 않는다 — 마커는 워커임을 **확인**하는 용도이지, 주 체크아웃(부모가 쓰는
  자리)을 워커로 **승격**시키는 용도가 아니다.
- gitdir이 없는 비-git 환경으로 폴백할 때만, 마커 대신 상태 파일이 `.gitignore`에
  등재돼 있는지 확인한다.

## 3. 전제 검증 — 구현보다 먼저

브리프에 적힌 **사실 주장**을 코드에서 확인한다. "없다 / 신설한다"라고 적혀 있어도
그대로 믿지 않고 `grep`이나 대상 파일 직접 열람으로 재확인한다. **전제가 틀렸으면
구현하지 않는다** — 멈추고 부모에게 보고한다.

**기준 커밋 확인**: 브리프에 적힌 해시와 자기 워크트리의 `git rev-parse HEAD`를
대조한다. 다르면 착수하지 않고 즉시 에스컬레이션한다. 브랜치 이름(`main` 등)은
기준으로 쓰지 않는다 — 로컬 브랜치는 다른 체크아웃이 물고 있어 낡아 있을 수 있다.

## 4. 구현 — 금지사항은 명령 수준으로 지킨다

- 자기 워크트리의 피처 브랜치에만 커밋한다. 통합 브랜치(`main` 등) 체크아웃·쓰기 금지.
- `push` 금지.
- 데몬·상시 프로세스 재시작 금지 — 부모 세션이나 다른 워커에 영향을 준다.
- 공유 원장(병합 전 상태를 반영하는 파일) 쓰기 금지 — 병합 전까지 다른 워커·부모에
  반영되지 않아 상태가 유실되거나 분기된다.
- 브리프의 금지사항은 **명령 수준**으로 지킨다. 예: "읽기만"이 아니라 "`--check`만
  실행, `--apply` 실행 금지"처럼 구체적으로 해석한다. 원칙 수준 금지("깨뜨리지 않는다")
  는 실제로 어겨진 전례가 있다.

## 5. 되돌려-FAIL 의무

수정이 실제로 결함을 고쳤다는 증거를 남긴다 — 그 수정을 되돌리면 검증이 실제로
FAIL하는지 최소 1건 확인한다. 이것 없이 "테스트 green"만으로 완료를 주장하지 않는다.

## 6. 테스트 결과는 종료코드가 살아 있는 채로

테스트 실행 결과를 파이프로 넘겨 종료코드를 죽이지 않는다 — `… | tail`류는 종료코드가
삼켜져 실패가 성공처럼 보고될 수 있다. 결과를 파일로 받거나 `set -o pipefail` 아래에서
실행한다. 상세 규칙은 계약(`rules/delegation-contract.md`)이 정의한다.

## 7. 완료 보고

보고 첫 줄의 고정 형식은 계약(`rules/delegation-contract.md`)이 SSOT다. 그 형식
그대로 쓴다 — 여기서 다시 정의하지 않는다.

---

## 파리티 — 훅 없는 하네스에서는 지침일 뿐이다

이 절차(브랜치 제한·push 금지·파괴적 명령 금지)를 Claude Code 훅(opt-in 예시)으로
자동 차단하는 경로가 있을 수 있다. **훅은 Claude Code 전용이다.** Codex·Antigravity
등 훅이 없는 하네스에서 워커로 동작할 때는 **자동 차단이 없고, 이 규율은 이 스킬
본문을 읽고 따르는 지침으로만 작동한다.**

이 스킬 자체가 로드돼야 규율이 적용된다는 점도 명시한다 — 이 스킬을 로드하지 않은
세션(또는 워크트리)은 마커도, 위 규율도 적용받지 않는다(fail-open). 없는 보호를 있다고
믿지 않는다.

## 관련

| 문서 | 위치 |
| --- | --- |
| 부모(컨트롤) 규율 | `plugins/common/skills/control-loop/SKILL.md` |
| 브리프 4블록·보고 형식 계약 | `plugins/common/rules/delegation-contract.md` |

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.