Story Multi-Perspective Review
zenstory-ai/oh-story-claudecode
Reviews Chinese web-novel text with several reviewer agents in parallel, falling back to a single-agent pass, and reports structure, character, prose and setting problems with fixes.
웹소설 에피소드 창작 오케스트레이터. An agent skill from MJbae/awesome-novel-studio.
$ npx skills add MJbae/awesome-novel-studio --skill create -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install MJbae/awesome-novel-studio create --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/MJbae/awesome-novel-studio.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/create .claude/skills/create && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "create" agent skill from https://github.com/MJbae/awesome-novel-studio/tree/main/skills/create into .claude/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/MJbae/awesome-novel-studio/tree/main/skills/createType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add MJbae/awesome-novel-studio --skill create -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install MJbae/awesome-novel-studio create --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MJbae/awesome-novel-studio.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/create .agents/skills/create && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "create" agent skill from https://github.com/MJbae/awesome-novel-studio/tree/main/skills/create into .agents/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add MJbae/awesome-novel-studio --skill create -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install MJbae/awesome-novel-studio create --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MJbae/awesome-novel-studio.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/create .cursor/skills/create && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "create" agent skill from https://github.com/MJbae/awesome-novel-studio/tree/main/skills/create into .cursor/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/MJbae/awesome-novel-studio.git --path skills/create--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add MJbae/awesome-novel-studio --skill create -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install MJbae/awesome-novel-studio create --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MJbae/awesome-novel-studio.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/create .gemini/skills/create && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "create" agent skill from https://github.com/MJbae/awesome-novel-studio/tree/main/skills/create into .gemini/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install MJbae/awesome-novel-studio createInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add MJbae/awesome-novel-studio --skill create -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/MJbae/awesome-novel-studio.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/create .github/skills/create && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "create" agent skill from https://github.com/MJbae/awesome-novel-studio/tree/main/skills/create into .github/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add MJbae/awesome-novel-studio --skill create -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install MJbae/awesome-novel-studio create --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MJbae/awesome-novel-studio.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/create .opencode/skills/create && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "create" agent skill from https://github.com/MJbae/awesome-novel-studio/tree/main/skills/create into .opencode/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
create웹소설 에피소드 창작 오케스트레이터. An agent skill from MJbae/awesome-novel-studio.
Create is an agent skill from MJbae/awesome-novel-studio. 웹소설 에피소드 창작 오케스트레이터. 설정문서(캐릭터시트·플롯가이드·부트스트랩)에 따라 에피소드를 순차 창작한다. '/create', '/create {프로젝트명}', '/create EP051', '/create {프로젝트명} EP001-EP010', '에피소드 창작', '에피소드 집필', '에피소드 작성', '새 에피소드', '본문 작성', '에피소드 쓰기' 으로 실행. novel-config.md의 설정문서 매핑과 가드레일을 적용하여 캐릭터 입체성, 수치 일관성, 훅 강도, 개연성을 보장한다.
Its SKILL.md is about 4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/creation-principles.md`).
It sits in Writing & Content, covering Creative writing and fiction. The repository describes itself as: AI Web Novel Creation Harness — A Claude Code Plugin. The licence is Apache-2.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit bb72065. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Create loads about 4k tokens when it runs, and up to ~6.1k if it reads all its reference files. Until then it costs about 72 tokens; SKILL.md has 1,831 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from MJbae/awesome-novel-studio at commit bb72065, republished under its Apache-2.0 licence (© MJbae). 1,831 words, ~3,970 tokens.
.claude/skills/create/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.설정문서(캐릭터시트·플롯가이드·부트스트랩)에 따라 에피소드를 순차 창작하는 4-에이전트 파이프라인.
Phase 1 (병렬) Phase 2 (순차) Phase 3 (순차)
┌──────────────────┐ ┌──────────────┐ ┌──────────────┐
│ episode-architect│──┐ │ episode- │ │ quality- │
│ (설계도 추출) │ ├──▶│ creator │──────▶│ verifier │
└──────────────────┘ │ │ (본문 집필) │ │ (7축 검증) │
┌──────────────────┐ │ └──────────────┘ └──────┬───────┘
│ continuity-bridge│──┘ ◀── REWRITE (max 2) ───┘
│ (연속성 수집) │ │
└──────────────────┘ PASS ───▶ 다음 EP실행 모드: 서브 에이전트 (파이프라인 패턴, lint/revise와 동일)
episode_dir in novel-config.md)novel-config.md가 없으면 에러를 출력하고 종료한다.
| 입력 형태 | 해석 |
|---|---|
/create | 현재 디렉토리에서 novel-config.md 탐색, 마지막 EP 다음부터 |
/create 36억평 | 36억평 프로젝트, 마지막 EP 다음부터 |
/create EP051 | 현재 프로젝트, EP051만 |
/create 36억평 EP051 | 36억평 프로젝트, EP051만 |
/create 36억평 EP051-EP060 | 36억평 프로젝트, EP051~EP060 범위 |
novel-config.md 필수 필드 검증 게이트: novel-config.md를 로드한 직후, 아래 필수 필드가 모두 존재하고 비어있지 않은지 검증한다. 하나라도 누락되면 에러를 출력하고 즉시 종료한다.
필수 필드 체크리스트:
- [ ] project.target_platform — 플랫폼명
- [ ] project.episode_dir — 에피소드 저장 디렉토리
- [ ] project.work_dir — 작업 디렉토리
- [ ] project.design_dir — 설계문서 디렉토리
- [ ] 설정문서 매핑.bootstrap — 부트스트랩 경로 (파일 존재 확인)
- [ ] 설정문서 매핑.character_core — 캐릭터 핵심 경로 (파일 존재 확인)
- [ ] 설정문서 매핑.character_detail — 캐릭터 상세 경로 (파일 존재 확인)
- [ ] EP 범위별 플롯 가이드 — 최소 1개 행 존재 (파일 존재 확인)검증 실패 시 출력:
❌ novel-config.md 필수 필드 누락:
- {누락 필드 목록}
create 스킬을 실행하려면 위 필드를 채워주세요.
템플릿: ${CLAUDE_PLUGIN_ROOT}/skills/polish/references/project-config-template.md0.5 target_platform 허용 집합 검증 게이트:
project.target_platform은 아래 canonical name 중 하나여야 한다:❌ 허용되지 않는 target_platform: {현재값}
허용 플랫폼:
- 문피아
- 네이버시리즈
- 카카오페이지
- 리디
- 조아라
- 노벨피아
novel-config.md의 project.target_platform을 허용 플랫폼명으로 수정한 뒤 다시 실행해주세요.novel-config.md를 파싱한다:
{CONFIG} ← novel-config.md 전체
{TARGET_PLATFORM} ← config.target_platform
{DESIGN_DIR} ← config.design_dir
{EPISODE_DIR} ← config.episode_dir
{WORK_DIR} ← config.work_dir
{GUARD_RAILS} ← config.guard_rails + config.create_guard_rails (있으면)
{CUSTOM_AXES} ← config.custom_axes (있으면)
{CREATE_CFG} ← config.create 설정 (있으면, 없으면 기본값)기본값 ([create] 섹션 없을 때):
draft_chars: 6000-10000 # Phase 2 초안 목표 (넉넉하게 작성)
final_chars: 5000-8000 # Step 2.5 트리밍 후 최종 목표
dialogue_ratio: 40-60%
max_scenes: 4
hook_targets:
opening_intensity: 4
ending_intensity: 5
continuity_lookback: 2분량 전략: "넘치게 쓰고 줄이기" episode-creator는
draft_chars(6000-10000자) 목표로 초안을 작성한다. Step 2.5에서 오케스트레이터가final_chars(5000-8000자)로 트리밍한다. 이유: 부족해서 살을 붙이면 품질이 낮아진다. 충분히 쓰고 불필요한 부분을 삭제해야 밀도가 높아진다.
EP 범위 결정:
{EPISODE_DIR}에서 마지막 EP 번호를 찾고, 다음 번호부터 시작EP 범위에 따른 설정문서 매핑:
ep_range_table에서 해당 EP가 속하는 act 확인{PLOT_DOC} = 세부 플롯 가이드{PLOT_DOC} = 큰 설계 플롯 가이드{CHAR_DETAIL_EP} = 세부 캐릭터 시트{CHAR_DETAIL_EP} = 공통 character_detail⚠️ EP{NNN}이 속하는 범위에 세부 플롯 가이드가 없습니다.
큰 설계 플롯 가이드만으로 EP별 비트를 추출하므로 설계도 품질이 저하될 수 있습니다.
작은 설계(design-small)를 먼저 실행하는 것을 권장합니다.
그래도 진행하시겠습니까?{WORK_DIR}/_workspace/ 디렉토리 확인 (없으면 생성)
{WORK_DIR}/create-plan.md 생성/갱신:
# 에피소드 창작 계획
## 대상: EP{start}-EP{end}
- [ ] EP{NNN} — 미착수
...두 에이전트를 병렬로 (한 메시지에 Agent 2회 호출) 실행한다. run_in_background: true로 배경 실행한다.
⚠️ Phase 1 대기 방법 — 절대 금지/필수 준수:
- 금지: TaskOutput 사용 (팀 네임스페이스 충돌으로 "No task found" 오류 발생)
- 금지: Bash sleep 폴링 (
sleep N && ls반복 금지 — 불필요한 대기 + 승인 요청 유발)- 필수: 배경 에이전트는 완료 시 시스템이 자동으로 알려준다. 두 에이전트 모두 완료 알림을 받은 후 Phase 2로 진행한다.
⚠️ 에이전트 공통 경로 제한 지시 (episode-architect, continuity-bridge 프롬프트에 반드시 포함): "아래 명시된 파일 경로만 읽어라. design/ 디렉토리를 Glob으로 탐색하거나, 명시되지 않은 파일을 스스로 찾아 읽으려 시도하지 마라. 필요한 모든 파일 경로는 이 프롬프트에 포함되어 있다."
Agent 1: episode-architect
general-purposerun_in_background: true{CONFIG.bootstrap} (novel-config.md의 bootstrap 경로){PLOT_DOC} (Step 0.4에서 ep_range_table로 결정된 경로){CONFIG.character_core} (novel-config.md의 character_core 경로){CHAR_DETAIL_EP} (ep_range_table 세부 캐릭터 시트 우선, 없으면 공통 character_detail)blueprint 헤더의 '목표 분량' 항목은 반드시 아래 값을 사용한다:
- 초안 목표(draft_chars): {CREATE_CFG.draft_chars}자
플랫폼 상식(문피아 3,000~4,000자 등) 기반의 자체 추론을 절대 사용하지 말 것.
novel-config.md의 [create] 섹션 값이 없을 경우 기본값 8,000~10,000자 사용.이 작업에서 Read할 수 있는 파일은 아래 목록이 전부다.
목록에 없는 파일은 어떤 이유로든 Read하지 마라:
0. ${CLAUDE_PLUGIN_ROOT}/agents/episode-architect.md (자신의 에이전트 정의)
1. {CONFIG.bootstrap}
2. {PLOT_DOC}
3. {CONFIG.character_core}
4. {CHAR_DETAIL_EP}
5. novel-config.md
위 6개 파일 외의 Read 시도는 경로 제한 위반이다.{WORK_DIR}/_workspace/01_episode-architect_blueprint_EP{NNN}.mdAgent 2: continuity-bridge
general-purposerun_in_background: true{EPISODE_DIR}/ep{N-2}.md, {EPISODE_DIR}/ep{N-1}.md{WORK_DIR}/alive-tracker.md (존재 시){DESIGN_DIR}/delta_tracker_*.md (존재 시){DESIGN_DIR}/verification_*.md (존재 시){WORK_DIR}/_workspace/02_continuity-bridge_report_EP{NNN}.mdPhase 1 완료 후 episode-creator를 실행한다.
Agent 3: episode-creator
general-purpose{WORK_DIR}/_workspace/01_episode-architect_blueprint_EP{NNN}.md{WORK_DIR}/_workspace/02_continuity-bridge_report_EP{NNN}.md{CREATE_CFG} 설정 (목표 글자수, 대화 비율 등){EPISODE_DIR}/ep{NNN}.mdreferences/creation-principles.md를 읽으라고 지시재작성 모드 (REWRITE 후 재실행 시):
{WORK_DIR}/_workspace/04_quality-verifier_verdict_EP{NNN}.md를 읽으라고 지시{EPISODE_DIR}/ep{NNN}.md를 읽으라고 지시Phase 2 완료 후, Phase 3 진입 전에 오케스트레이터가 초안을 트리밍한다.
전략: "넘치게 쓰고 줄이기" episode-creator는 6000-10000자 초안을 작성한다. 오케스트레이터가 5000-8000자로 트리밍한다. 부족해서 살을 붙이는 것보다 충분히 쓰고 줄이는 것이 품질이 높다.
측정 기준: wc -m으로 파일 전체 글자수를 측정한다 (마크다운 헤더·메타데이터 포함).
측정: Bash wc -m {EPISODE_DIR}/ep{NNN}.md → 글자수 확인
판정: 최종 목표 범위(기본 final_chars: 5000-8000) 대비 확인
상한 초과 (8000자 초과 — 일반적 케이스):
트리밍 모드:
- 현재 글자수: {N}자 (wc -m 기준, 헤더 포함)
- 목표 범위: {FINAL_MIN}~{FINAL_MAX}자
- 초과분: {N - FINAL_MAX}자
- 지시: 아래 삭제 우선순위에 따라 불필요한 부분을 제거하여 {FINAL_MAX}자 이내로 만들어라.
삭제 우선순위:
1순위: 서술자의 상황 정리/요약 문장 (메타서술)
2순위: 같은 감정을 다른 비유로 반복 표현한 문장
3순위: 플롯 비트에 기여하지 않는 배경 묘사
4순위: 이미 행동으로 보여준 감정을 내면 독백으로 재확인하는 문장
5순위: 과도한 감각 묘사 (핵심 장면이 아닌 전환 구간)
주의: 플롯 비트, 대사, 클리프행어, 핵심 감각 묘사는 보존. 엔딩은 대사/행동으로 유지.범위 내 (5000-8000자): Phase 3으로 진행
하한 미달 (5000자 미만 — 초안이 부족한 비정상 케이스):
글자수 부족 보정 모드:
- 현재 글자수: {N}자
- 목표 하한: {FINAL_MIN}자
- 지시: 기존 장면을 확장하거나 부족한 묘사/대화를 보강하여 {FINAL_MIN}자 이상으로 만들어라.
새로운 플롯 비트를 추가하지 말고, 기존 장면의 밀도를 높여라.Agent 4: quality-verifier (CREATE 모드)
general-purposeCREATE 모드 검증 8축 (구조적 정합성 중심 — polish의 문체·표현 레벨 교정과 구분):
1. PLOT_BEAT — 설계도의 플롯 비트가 에피소드에 모두 반영되었는가
2. TIMELINE — 시간 마커·날짜·나이가 설정문서 및 이전 에피소드와 일치하는가
3. NUMBER — 핵심 수치(면적·자금·수확량 등)가 설정문서와 일치하는가
4. GUARDRAIL — novel-config.md의 보존 가드레일을 위반하지 않았는가
5. CONTINUITY — continuity-bridge 보고서의 미해결 복선/관계 상태가 반영되었는가
6. HOOK — 오프닝/엔딩 훅 강도가 설정된 목표치 이상인가
7. CHAR_VOICE — 등장인물의 대사가 캐릭터 보이스표/대화 DNA와 일관되는가
8. CUSTOM — novel-config.md의 커스텀 축 위반이 없는가polish와의 관계: create의 quality-verifier는 구조적 정합성(플롯·수치·가드레일)을 검증한다. polish는 문장 품질(금지표현·침묵패턴·번역투·모바일 가독성·캐릭터 생동감)을 교정한다. 따라서 create PASS 에피소드도 polish를 거쳐야 최종 품질에 도달한다.
{EPISODE_DIR}/ep{NNN}.md (창작된 에피소드){WORK_DIR}/_workspace/01_episode-architect_blueprint_EP{NNN}.md{WORK_DIR}/_workspace/02_continuity-bridge_report_EP{NNN}.md{WORK_DIR}/_workspace/04_quality-verifier_verdict_EP{NNN}.mdverdict 파일을 읽어 판정을 확인한다.
PASS 판정 시 — 오케스트레이터 교차검증 (필수):
이중 안전장치: quality-verifier가 직접 Grep 카운트를 수행하더라도, 오케스트레이터는 독립적으로 재확인한다. 두 레이어가 동일 결과를 내야 PASS가 확정된다.
verdict가 PASS인 경우, 오케스트레이터가 핵심 가드레일을 직접 교차검증한다:
있었다 in {EPISODE_DIR}/ep{NNN}.md → 5회 이하 확인고 있었다 in {EPISODE_DIR}/ep{NNN}.md → 3회 이하 확인wc -m {EPISODE_DIR}/ep{NNN}.md → 목표 글자수 범위(기본 final_chars: 5000-8000) 확인3개 중 하나라도 위반 시, 위반 유형에 따라 분기한다:
경로 A — 오케스트레이터 직접 Edit (MINOR 위반): 다음 조건을 모두 충족하면 오케스트레이터가 직접 수정한다:
직접 Edit 절차:
경로 B — REWRITE 절차 (MAJOR 위반): 다음 중 하나라도 해당하면 기존 REWRITE 절차를 따른다:
REWRITE 절차:
교차검증 통과 시:
create-plan.md에서 해당 EP를 [x]로 갱신하고 요약 추가REWRITE:
rm -f {WORK_DIR}/_workspace/04_quality-verifier_verdict_EP{NNN}.mdverdict 파일이 남아있으면 quality-verifier가 재검증 없이 이전 결과를 재사용한다. 반드시 삭제한다.
[△](부분통과)로 표시, 다음 EP로 이동대상 범위의 모든 EP가 처리될 때까지 Step 1~4를 반복한다.
완료 시:
create-plan.md 최종 갱신.design-hashes 베이스라인 생성: {WORK_DIR}/.design-hashes 파일을 생성/갱신한다.
설정문서(부트스트랩, 캐릭터시트, 플롯가이드 등 {DESIGN_DIR}/ 내 모든 설정문서)의 SHA256 해시를 기록한다.
이 파일은 rewrite 스킬이 설정문서 변경을 감지하는 베이스라인으로 사용된다..design-hashes 형식:
{파일경로}\t{SHA256해시}\t{생성시각}목적: rewrite 최초 실행 시 "모든 설정문서가 변경됨"으로 오탐하는 것을 방지. create가 완료된 시점의 설정문서 상태가 베이스라인이 된다.
## 창작 완료 요약
- 총 에피소드: N화
- PASS: X화
- 부분통과(△): Y화
- REWRITE 발생: Z회
### 다음 단계
- 문장 품질 향상: `/polish` — 12축 진단으로 문체·훅·수치·캐릭터 생동감을 교정
- 설정 변경 반영: `/rewrite` — 설정문서 변경 시 영향받는 에피소드를 재작성
- ⚠️ 설정을 변경할 예정이라면 `/rewrite` → `/polish` 순서로 실행하세요| 에러 유형 | 전략 |
|---|---|
| 에이전트 실패 | 1회 재시도 → 실패 시 해당 EP를 [!]로 표시하고 다음으로 |
| 설정문서 누락 | 사용자에게 경고 후 가용한 문서로 진행. 플롯가이드 누락 시 종료 |
| 이전 EP 없음 (EP001) | continuity-bridge가 부트스트랩 초기 상태 요약 |
| novel-config.md 누락 | 에러 출력 후 종료 |
| 가드레일 충돌 | episode-creator가 [가드레일우회] 태그 → auditor가 해당 부분 별도 평가 |
| Phase 1 한쪽만 실패 | 성공한 보고서로 Phase 2 진행, 누락 명시 |
novel-config.md에 다음 섹션을 추가하면 창작 설정을 커스터마이즈할 수 있다. 없으면 기본값을 사용한다.
## create 설정
draft_chars: 6000-10000 # Phase 2 초안 목표 (넉넉하게 작성)
final_chars: 5000-8000 # Step 2.5 트리밍 후 최종 목표
dialogue_ratio: 40-60% # 대화 비율 (기본: 40-60%)
max_scenes: 4 # 최대 장면 수 (기본: 4)
hook_targets:
opening_intensity: 4 # 1-5, 오프닝 훅 강도 (기본: 4)
ending_intensity: 5 # 1-5, 엔딩 클리프행어 강도 (기본: 5)
continuity_lookback: 2 # 이전 참조 화수 (기본: 2)
point_scenes_per_ep: 2-3 # 포인트 장면 수 (기본: 2-3)
dead_zone_threshold: 3500 # 포인트 장면 없는 최대 허용 글자수 (기본: 3500)
## create 사전 예방 (shift-left)
# create는 lint와 달리 문제를 사후 검출이 아닌 사전 예방한다.
# 아래 항목을 episode-architect의 설계도에 사전 포함하여 episode-creator가 준수하게 한다:
timeline_lock: true # 에피소드별 절대 날짜/나이 사전 확정 (기본: true)
voice_quickref: true # 등장인물별 보이스 퀵레프 카드 사전 추출 (기본: true)
nonverbal_memory: true # 이전 2화 비언어 반복 메모리 수집 (기본: true)
echo_dialogue_filter: true # 메아리 대화 방지 규칙 적용 (기본: true)
cider_gogumo_balance: true # 사이다/고구마 밸런스 추적 (기본: true)
## create 가드레일
# lint 가드레일에 추가로 적용할 창작 전용 가드레일
# 예시:
# - 주인공이 1화에 전문 분야 외 지식을 시연하면 안 됨
# - 회귀 사실을 3막 이전에 타인에게 노출하면 안 됨/create 36억평 EP051 실행36억평/episodes/ep051.md[x] EP051, EP052로 이동/create 36억평 EP001 실행/create 36억평 EP051-EP055 실행© MJbae, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in skills/create of MJbae/awesome-novel-studio.
Open the folder on GitHubat commit bb72065
Create next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Create this skillMJbae/awesome-novel-studio | 155 | — | ~4k | Automated safety check: Pass | Apache-2.0 | |
| Story Multi-Perspective Reviewzenstory-ai/oh-story-claudecode | 7.3k | 3 repos | ~3k | Automated safety check: Pass | MIT | |
| Short Web Fiction Trend Scanzenstory-ai/oh-story-claudecode | 7.3k | 3 repos | ~1.2k | Automated safety check: Pass | MIT | |
| InkOS Creative HarnessNarcooo/inkos | 10k | 1 repos | ~1.1k | Automated safety check: Pass | AGPL-3.0 | |
| Novel Arteternityspring/shuohao-skills | 4.2k | — | ~1.1k | Automated safety check: Notes | Apache-2.0 | |
| Novel Import and Project Rebuildzenstory-ai/oh-story-claudecode | 7.3k | 2 repos | ~1.7k | Automated safety check: Pass | MIT |
zenstory-ai/oh-story-claudecode
Reviews Chinese web-novel text with several reviewer agents in parallel, falling back to a single-agent pass, and reports structure, character, prose and setting problems with fixes.
zenstory-ai/oh-story-claudecode
Scans popular short web-fiction rankings on Chinese platforms such as Dianzhong and Heiyan to surface trending emotional hooks, themes and topic candidates with an expiry warning.
Narcooo/inkos
Drives long-form fiction, scripts, storyboards, interactive films and long-document translation through InkOS, with every change made by a typed action.
eternityspring/shuohao-skills
给 AI 短剧出美术设定集(场景 + 叙事道具):场景的设计意图、一致性锚点、光照时段变体、 空景提示词;道具的戏剧功能、状态变体、尺度参照、白底无手提示词。
zenstory-ai/oh-story-claudecode
Reverse-imports an existing novel, half-finished or complete, into the standard project structure so story-long-write or story-short-write can continue it.
Nanako0129/sepia
Make AI-generated writing read as human-written, in fiction and in professional prose.
MJbae/awesome-novel-studio
웹소설의 통합 설계 라우터. An agent skill from MJbae/awesome-novel-studio.
MJbae/awesome-novel-studio
웹소설 윤문 스킬. An agent skill from MJbae/awesome-novel-studio.
MJbae/awesome-novel-studio
에피소드 재작성(rewrite) 스킬. An agent skill from MJbae/awesome-novel-studio.
MJbae/awesome-novel-studio
웹소설의 부트스트랩 문서를 단독으로 생성한다. An agent skill from MJbae/awesome-novel-studio.
MJbae/awesome-novel-studio
웹소설의 캐릭터 시트를 단독으로 생성한다. An agent skill from MJbae/awesome-novel-studio.
MJbae/awesome-novel-studio
웹소설의 큰 설계(전체 소설)를 수행하는 오케스트레이터. An agent skill from MJbae/awesome-novel-studio.
Categories
웹소설 에피소드 창작 오케스트레이터. An agent skill from MJbae/awesome-novel-studio. Create is an agent skill from MJbae/awesome-novel-studio. 웹소설 에피소드 창작 오케스트레이터.
Create fits situations like: tasks that involve Creative writing and fiction.
Run `npx skills add MJbae/awesome-novel-studio --skill create -a claude-code`. Or copy the skill folder (skills/create in MJbae/awesome-novel-studio) into .claude/skills/create in your project. Claude Code loads it when a task matches its description.
Run `npx skills add MJbae/awesome-novel-studio --skill create -a codex`. Or copy the skill folder (skills/create in MJbae/awesome-novel-studio) into .agents/skills/create in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add MJbae/awesome-novel-studio --skill create -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create, .gemini/skills/create, .github/skills/create and .opencode/skills/create in your project.
SKILL.md names no scripts, command-line tools or credentials: Create is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Create is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Create: Story Multi-Perspective Review (zenstory-ai/oh-story-claudecode, 7.3k stars), Short Web Fiction Trend Scan (zenstory-ai/oh-story-claudecode, 7.3k stars), InkOS Creative Harness (Narcooo/inkos, 10k stars) and Novel Art (eternityspring/shuohao-skills, 4.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
MJbae (a GitHub user) maintains it in MJbae/awesome-novel-studio, which has 155 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on April 14, 2026.
Source: MJbae/awesome-novel-studio on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.