> ## Documentation Index
> Fetch the complete documentation index at: https://docs.soloent.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# SoloEnt.md

> 집필 프로젝트를 올바른 방향으로 유지하는 살아있는 메모리 시스템

`SOLOENT.md`는 SoloEnt 집필 프로젝트의 **중앙 제어판**입니다. AI의 장기 기억으로서 이야기의 DNA를 기록하고, 진행 상황을 추적하며, 수만 단어에 걸쳐 일관성을 유지하는 살아있는 문서입니다.

**선택 사항**이며, 중장편 집필을 위해 설계되었습니다. 짧은 작업에는 필요하지 않을 수 있습니다 — 프로젝트에 필요할 때 활성화하세요.

<Note>
  코딩 프로젝트의 `CLAUDE.md`처럼, `SOLOENT.md`는 AI를 위한 사용 설명서입니다. AI에게 이 프로젝트가 무엇인지, 어떻게 써야 하는지, 여정에서 어디에 있는지 알려줍니다.
</Note>

## SOLOENT.md를 사용해야 할 때

**적합한 경우:**

* 중장편 집필 (소설, 시리즈, 다중 챕터 이야기)
* 일관성이 필요한 여러 집필 세션에 걸친 프로젝트
* 복잡한 세계관, 다중 캐릭터, 또는 세심하게 심어둔 복선이 있는 이야기

**필요하지 않은 경우:**

* 단편 소설이나 한 세션에 완성되는 작업
* 세션 간 컨텍스트 추적이 필요 없는 가벼운 창작

***

장편 집필은 **컨텍스트 표류**라는 독특한 도전에 직면합니다. AI는 다음을 잊을 수 있습니다:

* 1장에서 설정한 마법 시스템 규칙
* 세 챕터 전의 캐릭터 동기
* 신중하게 심어둔 복선
* 구축해 온 어조와 스타일

`SOLOENT.md`는 전체 프로젝트의 **단일 출처** 역할을 함으로써 이 문제를 해결합니다.

## 8개의 핵심 섹션

모든 `SOLOENT.md`는 8개 섹션으로 구성되며, 각각 특정한 목적과 수명 주기를 가집니다.

### 1. 프로젝트 DNA (기반)

<Accordion title="수명 주기: 정적 (한 번 초기화)">
  이 섹션은 초기화 후 거의 변경되지 않습니다. 프로젝트의 영혼을 정의합니다.
</Accordion>

프로젝트의 핵심 정체성을 정의합니다:

* **장르**: SF, 로맨스, 미스터리 등
* **핵심 테마**: 이야기가 정말로 담고 있는 것 (예: "구원", "권력 타락")
* **대상 독자**: 누가 이것을 읽을 것인가?
* **감정적 약속**: 독자가 가져가야 할 느낌은?
* **단어 수 / 마일스톤 계획**: 범위와 구조

**예시:**

```markdown theme={null}
## 1. 프로젝트 DNA (기반)
- **장르**: 심리 호러 / 초자연
- **핵심 테마**: 편집증, 가스라이팅, 고립, 불안정한 기억
- **대상 독자**: 성인 호러 독자 (18+)
- **감정적 약속**: 광기로의 숨 막히는 하강
- **단어 수 / 마일스톤 계획**: ~20,000단어, 8-10 챕터
```

### 2. 세계 시스템 (규칙 및 인덱스)

<Accordion title="수명 주기: 반정적 (세계가 확장됨에 따라 업데이트)">
  세계가 성장함에 따라 새로운 장소, 규칙, 시스템을 추가하세요. 핵심 규칙은 안정적으로 유지되어야 합니다.
</Accordion>

논리적 충돌을 방지하기 위해 가상 세계의 규칙을 기록합니다:

* **핵심 세계 규칙**: 마법 시스템, 기술 수준, 사회 구조
* **세계 인덱스**: 상세한 세계관 문서에 대한 링크

**예시:**

```markdown theme={null}
## 2. 세계 시스템 (규칙 및 인덱스)

### 2.1 핵심 세계 규칙 (요약)
> 건물 내에서 현실은 불안정합니다. 작은 변화가 축적됩니다.
> 기억은 믿을 수 없습니다. 물리적 증거가 사라지거나 변형됩니다.

### 2.2 세계 인덱스 (포인터)
- [건물] -> `world/the-building.md`
- [마법 시스템] -> `world/magic-system.md`
```

<Tip>
  복잡한 설정에는 인덱스 포인터를 사용하세요. 상세한 세계관은 별도 파일에 저장하여 `SOLOENT.md`를 간결하게 유지하세요.
</Tip>

### 3. 캐릭터 (인덱스 및 관계)

<Accordion title="수명 주기: 반정적 (캐릭터 추가 시 업데이트)">
  캐릭터가 등장하면 추가하세요. 역학이 크게 변할 때 관계를 업데이트하세요.
</Accordion>

단순히 이름뿐만 아니라 캐릭터의 동적 상태와 관계를 추적합니다:

* **캐릭터 인덱스**: 상세 프로필 링크가 있는 주연 및 조연
* **관계 네트워크**: 시각적 또는 텍스트 기반 관계 지도

**예시:**

```markdown theme={null}
## 3. 캐릭터 (인덱스 및 관계)

### 3.1 캐릭터 인덱스 (간결)
- **메이 첸** (32, 번역가, 주인공) -> `characters/mei-chen.md`
- **집주인** (나이 불명, 건물 관리인)

### 3.2 관계 네트워크 (요약)
- 메이 첸 → 집주인: 정중한 거리, 커지는 불안
- 메이 첸 → 이전 세입자: 기생적 연결, 정체성 침투
```

### 4. 플롯 및 구조 (인덱스)

<Accordion title="수명 주기: 반정적 (아웃라인 변경 시 업데이트)">
  전체 구조는 안정적이지만, 집필하면서 챕터 분석을 조정할 수 있습니다.
</Accordion>

이야기 흐름의 거시적 수준 제어를 제공합니다:

* **이야기 구조**: 3막, 영웅의 여정, 또는 맞춤 구조
* **아웃라인 인덱스**: 상세 챕터 아웃라인에 대한 링크

**예시:**

```markdown theme={null}
## 4. 플롯 및 구조 (인덱스)

### 4.1 이야기 구조
- **1막 (챕터 1-3)**: 확립 - 메이가 이사, 작은 이상함 시작
- **2막 (챕터 4-6)**: 고조 - 현실 균열
- **3막 (챕터 7-8)**: 절정 - 끔찍한 진실 드러남

### 4.2 아웃라인 인덱스 (포인터)
- [마스터 아웃라인] -> `outline/master-outline.md`
- [챕터 분석 01] -> `outline/chapter-breakdown-01.md`
```

### 5. 문체 가이드라인 (심층 분석)

<Accordion title="수명 주기: 정적 (스타일 변화하지 않는 한)">
  한 번 설정하고 AI의 집필 스타일을 수정해야 할 때만 조정하세요.
</Accordion>

AI 집필 스타일 조정을 위한 **가장 강력한 섹션**:

* **기본 톤**: 전반적인 분위기 (예: "답답한, 억압적인")
* **언어 및 수사**: 문장 구조, 단어 선택, 문학적 기법
* **대화 스타일**: 캐릭터가 말하는 방식
* **페이싱 규칙**: 챕터 리듬과 긴장 관리

**예시:**

```markdown theme={null}
## 5. 문체 가이드라인 (심층 분석)

- **기본 톤**: 답답한, 억압적인, 조용히 미쳐가는
- **언어 및 수사**: 깨끗하고 절제된 산문, 주인공의 마음과 함께
  균열됨. 공포 중 짧은 문장.
- **대화 스타일**: 희소. 대화가 약간 어색함—사람들이 거의
  의미하는 것을 말함.
- **페이싱 규칙**: 서서히 타오르다 갑작스러운 공포의 찌름. 각 챕터는
  훅으로 끝남.
```

<Warning>
  이 섹션에서 구체적으로 작성하세요. "아름답게 써"는 모호합니다. "15단어 이하의 짧고 강렬한 문장 사용"은 실행 가능합니다.
</Warning>

### 6. 핵심 노트 및 소프트 제약

<Accordion title="수명 주기: 자동 업데이트 + 사용자 업데이트 (하이브리드)">
  **자동 업데이트**: Agent가 피드백과 수정 요청에서 학습하여 선호도와 제약을 자동으로 추출합니다.

  **사용자 업데이트**: 언제든지 수동으로 제약을 추가하여 AI를 조종할 수 있습니다.
</Accordion>

AI에 대한 직접 지시사항:

* **서사적 금기**: 쓰지 말아야 할 것 (예: "로맨스 서브플롯 없음")
* **사용자 제약**: 당신이 신경 쓰는 특정 요구사항

<Tip>
  이 섹션을 사용하여 반복되는 문제를 해결하세요. AI가 원치 않을 때 계속 로맨스를 추가한다면, 서사적 금기에 "로맨틱 서브플롯 없음"을 추가하세요.
</Tip>

**예시:**

```markdown theme={null}
## 6. 핵심 노트 및 소프트 제약

### 서사적 금기
- 주요 공포 장치로 점프 스케어 없음
- 과도한 고어 없음 (심리 호러가 초점)
- 너무 많이 설명하지 않기—모호함이 무기
- AI 스타일 문구 피하기 (예: "심장이 빠르게 뜀")

### 사용자 제약
- 심리 호러 초점: 편집증, 가스라이팅, 마음 게임
- 독자가 주인공과 함께 무엇이 진짜인지 의문을 가져야 함
```

<Warning>
  **지능형 학습 시스템**

  이 섹션에는 특별한 능력이 있습니다: **피드백에서 자동으로 학습합니다**.

  Agent에게 무언가를 수정하도록 요청할 때:

  * "대화를 덜 격식 있게 만들어" → 제약 추가: "대화를 캐주얼하고 자연스럽게 유지"
  * "과도한 설명 제거해" → 금기 추가: "화려한 산문이나 과도한 설명 없음"
  * "페이싱이 너무 느려" → 가이드라인 추가: "페이싱 조이기, 불필요한 장면 자르기"

  시간이 지나면서 `SOLOENT.md`는 당신의 독특한 집필 선호도를 담은 개인화된 스타일 가이드가 됩니다.
</Warning>

### 7. 활성 집필 상태 (동적 컨텍스트)

<Accordion title="수명 주기: 자동 업데이트 (모든 집필 세션 후)">
  Agent가 집필할 때마다 이 섹션을 자동으로 업데이트합니다. 수동으로 건드릴 필요가 거의 없습니다.
</Accordion>

**가장 동적인 섹션**, Agent가 매 집필 세션 후 업데이트:

* **현재 상태**: 이야기에서 어디에 있는가?
* **캐릭터 스냅샷**: 캐릭터의 현재 신체적/정신적 상태
* **최근 플롯 흐름**: 방금 무슨 일이 일어났는지 요약
* **보류 중인 스레드**: 기억해야 할 열린 플롯 훅과 복선
* **실행 검토**: 최신 챕터 품질 확인

**예시:**

```markdown theme={null}
## 7. 활성 집필 상태 (동적 컨텍스트)

### 7.1 현재 상태
- **현재 챕터**: 챕터 2 - "이사" (완료)
- **이야기 시간**: 11월 1일, 오전 3:17 (아파트 첫날 밤)
- **현재 위치**: 아파트 4C, 침실
- **즉각적 분위기**: 공포, 불면, 제정신 의심

### 7.2 캐릭터 스냅샷
- **메이 첸**: 공포에 질림, 수면 부족, 자신의 필체로 된 메모 발견,
  할머니의 정신 질환을 물려받은 것 두려워함

### 7.3 최근 플롯 흐름
- **챕터 1**: 메이가 4C를 보고, 카디르 씨를 만나고, 임대 계약 서명
- **챕터 2**: 이사 날—엘리베이터 고장, 시간 상실, 컵이 복제됨

### 7.4 보류 중인 스레드
- **긴급 훅**: 꿈에서 온 메모, 복제된 컵
- **활성 복선**: 닫히지 않는 옷장 문
- **다음 챕터 목표**: 메모가 계속되고 심화됨
```

<Check>
  이 섹션이 `SOLOENT.md`가 작동하는 이유입니다. AI에게 중단한 지점의 완벽한 기억을 제공합니다.
</Check>

### 8. 프로젝트 로드맵 및 마일스톤

<Accordion title="수명 주기: 자동 업데이트 (작업 완료 시)">
  Agent가 진행함에 따라 작업을 체크하고 마일스톤을 기록합니다. 언제든지 수동으로 새 작업을 추가할 수 있습니다.
</Accordion>

프로젝트의 진행 상황과 다음 단계를 추적:

* **현재 초점**: 즉각적인 작업은 무엇인가?
* **할 일 목록**: 예정된 챕터 또는 작업 체크리스트
* **마일스톤 로그**: 완료된 주요 목표의 역사

**예시:**

```markdown theme={null}
## 8. 프로젝트 로드맵 및 마일스톤

### 8.1 현재 초점 및 다음 단계
- **단계**: 초고 스프린트
- **핵심 작업**: 챕터 3 - "메모들" 집필
- **할 일 목록**:
  - [x] SOLOENT.md 초기화
  - [x] 챕터 1 작성
  - [x] 챕터 2 작성
  - [ ] 챕터 3 작성
  - [ ] 챕터 4-9 작성

### 8.2 마일스톤 로그
- [완료] 심리 호러 초점으로 프로젝트 초기화
- [완료] 챕터 1 완료 - 불안한 분위기 확립
- [완료] 챕터 2 완료 - 첫 번째 주요 호러 비트 전달
```

## SOLOENT.md 생성 방법

### 수동 초기화 (/init)

`SOLOENT.md`는 **자동으로 생성되지 않습니다**. `/init` 명령어를 사용하여 프로젝트의 어느 단계에서든 생성할 수 있습니다:

<Steps>
  <Step title="채팅에 /init 입력">
    프로젝트 단계에 관계없이 집필 세션 중 언제든지 `/init` 명령어를 보내세요.
  </Step>

  <Step title="Agent가 프로젝트 정보 수집">
    Agent가 기존 콘텐츠를 바탕으로 또는 질문을 통해 장르, 테마, 캐릭터, 플롯 정보를 정리합니다.
  </Step>

  <Step title="SOLOENT.md 생성">
    현재 프로젝트 상태를 기반으로 8개 섹션이 모두 포함된 `SOLOENT.md`가 생성되어 프로젝트 루트에 저장됩니다.
  </Step>
</Steps>

<Tip>
  프로젝트 시작 시 바로 만들 필요는 없습니다. 컨텍스트 추적이 필요하다고 느낄 때 `/init`을 실행해도 됩니다.
</Tip>

### 자동 업데이트

`SOLOENT.md`가 생성되면 Agent가 집필 중 자동으로 유지 관리합니다:

| 트리거          | 업데이트되는 내용                           |
| ------------ | ----------------------------------- |
| **챕터 완료**    | 섹션 7 (활성 집필 상태) - 최근 플롯 흐름, 캐릭터 스냅샷 |
| **작업 완료**    | 섹션 8 (프로젝트 로드맵) - 할 일 목록, 마일스톤 로그   |
| **새 캐릭터 추가** | 섹션 3 (캐릭터) - 캐릭터 인덱스                |
| **새 규칙 확립**  | 섹션 2 (세계 시스템) - 핵심 세계 규칙            |
| **수정 요청**    | 섹션 6 (핵심 노트 및 제약) - 선호도를 학습하고 제약 추가 |

<Info>
  Agent가 백그라운드에서 조용히 `SOLOENT.md`를 업데이트합니다. 파일이 존재하면 업데이트를 요청할 필요가 없습니다 — 자동으로 발생합니다.
</Info>

## SOLOENT.md 유지 관리 방법

### Agent 유지 관리 (자동)

Agent가 일상적인 업데이트를 처리합니다:

* 완료된 챕터 요약
* 보류 중인 플롯 스레드 추적
* 캐릭터 상태 업데이트
* 완료된 작업 체크

### 사용자 유지 관리 (수동)

창작 방향은 당신이 통제합니다:

<CardGroup cols={2}>
  <Card title="스타일 세분화" icon="palette">
    AI의 집필이 어색하면 **섹션 5**를 편집하여 톤, 페이싱, 대화 스타일 조정.
  </Card>

  <Card title="경계 설정" icon="shield">
    이야기가 표류할 때 **섹션 6**을 업데이트하여 서사적 금기나 제약 추가.
  </Card>

  <Card title="방향 조종" icon="compass">
    특정 플롯 라인을 우선시하려면 **섹션 7.4 (보류 중인 스레드)** 수정.
  </Card>

  <Card title="새 아이디어 추가" icon="lightbulb">
    영감이 떠오르면 새 캐릭터, 장소, 규칙을 **섹션 2-3**에 삽입.
  </Card>
</CardGroup>

## 모범 사례

### 1. 최신 상태 유지

<Warning>
  오래된 `SOLOENT.md`는 AI 성능 저하로 이어집니다. 섹션 7 (활성 집필 상태)이 오래되면, AI는 실제로 챕터 8에 있을 때 챕터 2에 있는 것처럼 씁니다.
</Warning>

**최신 상태 유지 방법:**

* 각 챕터 후 Agent가 업데이트하게 하기
* 각 집필 세션 시작 시 섹션 7 검토
* 챕터를 건너뛰거나 섹션을 다시 쓰면 수동으로 동기화

### 2. 원하지 않는 것을 명시하기

AI는 기꺼이 만족시키려 하므로, 때때로 요청하지 않은 것을 추가할 수 있습니다.

**섹션 6 (서사적 금기)를 사용하여 명확한 경계 설정:**

```markdown theme={null}
### 서사적 금기
- 주인공에게 갑작스러운 초능력 없음
- 기계신(deus ex machina) 구출 없음
- 로맨틱 서브플롯 없음
- 과도한 설명 덤프 없음
```

### 3. 복잡한 설정에는 인덱스 사용

`SOLOENT.md`를 마법 시스템 세부 사항 10페이지로 부풀리지 마세요.

**대신 포인터 사용:**

```markdown theme={null}
### 2.2 세계 인덱스 (포인터)
- [마법 시스템] -> `world/magic-system.md`
- [정치 구조] -> `world/politics.md`
- [지리] -> `world/map.md`
```

Agent는 필요할 때 이 파일을 읽을 수 있어, 메인 제어판을 깔끔하게 유지합니다.

### 4. 세션 시작 시 컨텍스트 로드

<Tip>
  각 집필 세션 시작 시, 프롬프트에서 `SOLOENT.md`를 언급하세요 (예: "계속 집필하자. 컨텍스트를 위해 SOLOENT.md 확인해."). 이렇게 하면 AI가 최신 상태를 로드합니다.
</Tip>

### 5. 주요 결정 전 검토

절정 챕터를 쓰거나 주요 플롯 결정을 내리기 전에:

1. 직접 `SOLOENT.md`를 읽어보세요
2. 섹션 7.4의 보류 중인 스레드를 해결해야 하는지 확인
3. 섹션 7.2의 캐릭터 상태가 의도와 일치하는지 확인

## 유지 관리 워크플로우

<Steps>
  <Step title="챕터 작성">
    Agent와 함께 챕터 초고 작성.
  </Step>

  <Step title="Agent 자동 업데이트">
    완료 후 Agent가 섹션 7 (활성 집필 상태)과 섹션 8 (로드맵) 업데이트.
  </Step>

  <Step title="업데이트 검토">
    정확성을 확인하기 위해 업데이트를 빠르게 스캔.
  </Step>

  <Step title="수동 조정 (선택사항)">
    다음 챕터를 다르게 조종하려면 섹션 7.4 (보류 중인 스레드) 또는 섹션 6 (제약) 편집.
  </Step>

  <Step title="다음 세션 시작">
    컨텍스트를 위해 `SOLOENT.md`를 참조하여 다음 집필 세션 시작.
  </Step>
</Steps>

## 섹션별 업데이트 빈도

| 섹션                | 업데이트 빈도     | 업데이트 주체                    |
| ----------------- | ----------- | -------------------------- |
| **1. 프로젝트 DNA**   | 초기화 시 한 번   | 사용자 (거의 변경 안 됨)            |
| **2. 세계 시스템**     | 세계 확장 시     | Agent + 사용자                |
| **3. 캐릭터**        | 캐릭터 추가 시    | Agent + 사용자                |
| **4. 플롯 및 구조**    | 아웃라인 변경 시   | 사용자                        |
| **5. 문체 가이드라인**   | 스타일 수정 필요 시 | 사용자                        |
| **6. 핵심 노트 및 제약** | 수정 후 + 언제든  | **Agent (피드백에서 학습) + 사용자** |
| **7. 활성 집필 상태**   | 모든 챕터 후     | Agent (자동)                 |
| **8. 프로젝트 로드맵**   | 작업 완료 시     | Agent (자동)                 |

## 일반적인 함정

<AccordionGroup>
  <Accordion title="섹션 7이 오래되도록 내버려 두기">
    **문제**: 활성 집필 상태를 업데이트하지 않고 3개 챕터 작성.

    **결과**: AI가 최근 플롯 전개를 잊고 일관성 없이 작성.

    **해결**: 각 챕터 후 Agent가 업데이트하게 하거나, 새 세션 시작 전 수동으로 동기화.
  </Accordion>

  <Accordion title="모호한 스타일 가이드라인">
    **문제**: 섹션 5에 "아름답게 써" 또는 "흥미진진하게 만들어"라고 되어 있음.

    **결과**: AI가 의미를 모르고 일반적인 산문으로 기본 설정.

    **해결**: 구체적으로 작성. "15단어 이하의 문장 사용. 촉각적 감각 세부사항에 집중. 부사 피하기."
  </Accordion>

  <Accordion title="인덱스 사용 잊기">
    **문제**: 세계관 20페이지를 직접 `SOLOENT.md`에 붙여넣음.

    **결과**: 파일이 부풀어 오르고 탐색하기 어려워짐.

    **해결**: `SOLOENT.md`에는 요약 유지, 세부사항은 연결된 파일에 저장.
  </Accordion>

  <Accordion title="서사적 금기를 설정하지 않음">
    **문제**: 원하지 않는 것을 명시적으로 말하지 않음.

    **결과**: AI가 싫어하는 로맨스 서브플롯을 추가하거나, 긴장을 너무 빨리 해결.

    **해결**: 섹션 6을 사용하여 "로맨스 없음", "쉬운 해결 없음" 등을 명확히 표시.
  </Accordion>
</AccordionGroup>

## 고급 팁

### 다중 POV 이야기의 경우

섹션 7.2에 각 POV의 캐릭터 스냅샷을 만드세요:

```markdown theme={null}
### 7.2 캐릭터 스냅샷
- **주인공 A** (POV 1): 현재 성에 있음, 배신을 모르고 있음
- **주인공 B** (POV 2): 방금 진실을 발견함, 복수 계획 중
```

### 비선형 서사의 경우

섹션 7.1에서 이야기 시간과 서사 시간을 추적하세요:

```markdown theme={null}
### 7.1 현재 상태
- **현재 챕터**: 챕터 5 (플래시백)
- **이야기 시간**: 1995년 (메인 타임라인 20년 전)
- **서사 시간**: 주인공이 물을 두려워하는 이유 드러내기
```

### 시리즈 또는 속편의 경우

이전 책의 `SOLOENT.md` 파일에 링크하세요:

```markdown theme={null}
## 1. 프로젝트 DNA (기반)
- **시리즈**: "어둠의 3부작" 2권
- **이전 책**: [1권 SOLOENT.md] -> `../book-1/SOLOENT.md`
```

## 더 많은 고급 팁

<CardGroup cols={2}>
  <Card title="Plan Mode" icon="map" href="./plan-mode">
    집필 전에 이야기 구조를 설계하기 위해 Plan Mode 사용하기
  </Card>

  <Card title="명령어" icon="terminal" href="./commands">
    슬래시 명령어로 손끝에서 펼쳐지는 강력한 워크플로우
  </Card>
</CardGroup>
