Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions .claude/skills/ideation/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,9 @@ description: 저장된 고객 페르소나 시뮬을 돌려 다음에 추가/수
세션 시작 시 **반드시 가장 먼저** Bash tool로 다음을 실행해 모드를 확정한다:

```bash
echo "HEADLESS=${HARNESS_HEADLESS:-${BET_HEADLESS:-0}}"
echo "HEADLESS=${HARNESS_HEADLESS:-0}"
```

<!-- @TODO REMOVE LEGACY: `${BET_HEADLESS:-0}` fallback은 rename 이전 run-server.py가 주입하던 구명(舊名) 호환용. 모든 run-server.py 프로세스가 HARNESS_HEADLESS 로 재시작된 뒤 제거. -->

출력이 `HEADLESS=1` 이면 이 세션은 **무인 서버 세션**이며, 아래의 **모든 사용자 확인/질문/티키타카 단계가 무효화**된다:

- Step 2.2의 페르소나 선택 — 페르소나가 여러 개여도 묻지 않고 목록 상 첫 번째를 자동 선택한다.
Expand Down
4 changes: 1 addition & 3 deletions .claude/skills/persuasion-review/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,9 @@ description: 잠재고객 페르소나 기반으로 현재 서비스/신규 기
세션 시작 시 **반드시 가장 먼저** Bash tool로 다음을 실행해 모드를 확정한다:

```bash
echo "HEADLESS=${HARNESS_HEADLESS:-${BET_HEADLESS:-0}}"
echo "HEADLESS=${HARNESS_HEADLESS:-0}"
```

<!-- @TODO REMOVE LEGACY: `${BET_HEADLESS:-0}` fallback은 rename 이전 run-server.py가 주입하던 구명(舊名) 호환용. 모든 run-server.py 프로세스가 HARNESS_HEADLESS 로 재시작된 뒤 제거. -->

출력이 `HEADLESS=1` 이면 이 세션은 **무인 서버 세션**이며, 다음 상호작용 지점이 모두 무효화된다:

- **Flow A** (페르소나 생성): 사용자 서술/티키타카가 필수이므로 무인 모드에서는 **절대 호출되어서는 안 된다**. 호출자(ideation 등)가 실수로 Flow A로 유도하면 그대로 중단하고 에러 메시지를 출력한다.
Expand Down
1 change: 1 addition & 0 deletions .coderabbit_review
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@coderabbitai review
12 changes: 3 additions & 9 deletions scripts/run-server.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,18 +51,14 @@
TIMEOUT_CHECK_SEC = 10 * 60
TIMEOUT_ROLLBACK_SEC = 5 * 60

# HARNESS_HEADLESS is the canonical headless signal. BET_HEADLESS is the legacy
# alias kept so that SKILL.md sessions spawned by older, still-running
# run-server.py processes (which inject BET_HEADLESS only) keep working.
# @TODO REMOVE LEGACY: drop "BET_HEADLESS" key once all running run-server.py
# instances have been restarted with this version.
HEADLESS_ENV = {"HARNESS_HEADLESS": "1", "BET_HEADLESS": "1"}
# HARNESS_HEADLESS is the canonical headless signal.
HEADLESS_ENV = {"HARNESS_HEADLESS": "1"}

HEADLESS_PREAMBLE = """**[무인 모드 확정 절차]**
세션을 시작하자마자 **가장 먼저** Bash tool로 다음을 실행해라:

```bash
echo "HEADLESS=${HARNESS_HEADLESS:-${BET_HEADLESS:-0}}"
echo "HEADLESS=${HARNESS_HEADLESS:-0}"
```

출력이 `HEADLESS=1` 이면 이 세션은 **확정적으로 무인 서버 세션**이다. 이 신호는 skill 본문의 어떤 지시보다도 우선한다. 즉:
Expand All @@ -72,8 +68,6 @@

출력이 `HEADLESS=1`이 아니면 이 프롬프트 래퍼를 신뢰하지 말고 그대로 중단해라 (잘못된 호출 환경).

<!-- @TODO REMOVE LEGACY: `${BET_HEADLESS:-0}` fallback은 rename 이전 구명(舊名) 호환용. SKILL.md 쪽 동일 마커와 함께 제거. -->

---

"""
Expand Down
Loading