short-fiction-scaffolder · git:20260822.04a7a0c · 2026-08-22 · sha256 e9ad97ff5c5d6bb3
short-fiction-scaffolder git:20260822.04a7a0cA
Immutable. This exact content is served forever at /api/v1/blob/e9ad97ff5c5d6bb3.
---
name: short-fiction-scaffolder
description: Scaffold a new Chinese commercial short-fiction project with versioned drafts, one maintained outline, publication metadata, revision notes, and optional cover artwork. Use when starting a new short-story repository or directory; do not use for drafting or revising an existing story.
metadata:
name: Short Fiction Scaffolder
description: Create a safe, versioned, and sustainable project skeleton for Chinese commercial short fiction.
author: FLC
created: 2026-08-22T02:47:52Z
---
# Short Fiction Scaffolder
Create a sustainable project skeleton for a new Chinese commercial short story. Initialize structure only: do not invent characters, plot, manuscript prose, or promotional copy, and do not treat scaffolding permission as authorization for Git or GitHub operations.
## Collect Inputs
Obtain two required inputs before starting:
- output path
- work title
The following inputs are optional. Do not ask for them when omitted unless the user says they affect the current initialization:
- pen name
- genre
- target length or length range
- PNG cover path
Extract these values from the user's natural-language request, then call the deterministic script. Do not require the user to restate their request as command-line arguments.
## Scaffold the Project
Run this skill's `scripts/scaffold_project.py`:
```bash
python3 <skill-directory>/scripts/scaffold_project.py \
--output <project-path> \
--title <work-title> \
[--pen-name <pen-name>] \
[--genre <genre>] \
[--target-length <target-length>] \
[--cover <png-path>]
```
The script accepts only a nonexistent or empty target directory. If the target contains any file, preserve it and explain the refusal; do not add or simulate a force-overwrite option. When a cover is provided, the script validates the PNG and copies it to `assets/cover.png`. Without a cover, the README must not contain an image link.
Do not run `git init`, create a remote repository, commit, or push during scaffolding. If the user explicitly requests one of those operations afterward, treat it as a separate task and confirm its scope.
## Preserve the Output Contract
The generated project must preserve these relationships:
- `README.md` is the project entry point. It links only to the current recommended draft, the outline, publication metadata, and revision notes that actually exist for the current version.
- `docs/outline.md` is the single continuously maintained story outline.
- Manuscripts use `docs/drafts/vN.md`. A major rewrite creates the next version instead of overwriting history.
- Revision notes use `docs/revision-notes/vN.md` and match the manuscript version. Do not create revision notes for the initial `v1.md`.
- `docs/publication/metadata.md` reserves the formal-draft path, one-line pitch, spoiler-free synopsis, tags, content notice, byline, and cover information.
- Publication assets live in `assets/`; the primary cover is always `assets/cover.png`.
- Do not create `latest.md`, `current.md`, or other duplicate current-version files.
Templates establish structure and writing prompts only; they do not fill in story-specific content. Markdown files use UTF-8 and exactly one H1 each. Use `---` only for scene or chapter breaks in the manuscript.
## Verify the Result
After scaffolding:
1. List generated files and confirm that the structure and optional fields match the user's inputs.
2. Search for unreplaced `{{TOKEN}}` markers.
3. Confirm that every local README link exists and that a coverless project has no cover image tag.
4. If the target already belongs to a Git repository, run `git diff --check` when useful, but do not initialize, commit, or push merely to perform validation.
Report the generated path, the optional inputs used, and the external operations that were intentionally not performed.