Autonomous Loops
affaan-m/ECC
Patterns and architectures for autonomous Claude Code loops — from simple sequential pipelines to RFC-driven multi-agent DAG systems.
Autonomously draft and polish chapters through multi-skill editorial passes.
$ npx skills add jwynia/agent-skills --skill chapter-drafter -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jwynia/agent-skills chapter-drafter --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/jwynia/agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/creative/fiction/orchestrators/chapter-drafter .claude/skills/chapter-drafter && 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 "chapter-drafter" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafter into .claude/skills/chapter-drafter/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chapter-drafter", 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/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafterType 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 jwynia/agent-skills --skill chapter-drafter -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jwynia/agent-skills chapter-drafter --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/creative/fiction/orchestrators/chapter-drafter .agents/skills/chapter-drafter && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "chapter-drafter" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafter into .agents/skills/chapter-drafter/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chapter-drafter", 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 jwynia/agent-skills --skill chapter-drafter -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jwynia/agent-skills chapter-drafter --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/creative/fiction/orchestrators/chapter-drafter .cursor/skills/chapter-drafter && 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 "chapter-drafter" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafter into .cursor/skills/chapter-drafter/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chapter-drafter", 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/jwynia/agent-skills.git --path skills/creative/fiction/orchestrators/chapter-drafter--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 jwynia/agent-skills --skill chapter-drafter -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jwynia/agent-skills chapter-drafter --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/creative/fiction/orchestrators/chapter-drafter .gemini/skills/chapter-drafter && 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 "chapter-drafter" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafter into .gemini/skills/chapter-drafter/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chapter-drafter", 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 jwynia/agent-skills chapter-drafterInstalls 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 jwynia/agent-skills --skill chapter-drafter -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/creative/fiction/orchestrators/chapter-drafter .github/skills/chapter-drafter && 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 "chapter-drafter" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafter into .github/skills/chapter-drafter/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chapter-drafter", 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 jwynia/agent-skills --skill chapter-drafter -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jwynia/agent-skills chapter-drafter --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/creative/fiction/orchestrators/chapter-drafter .opencode/skills/chapter-drafter && 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 "chapter-drafter" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/orchestrators/chapter-drafter into .opencode/skills/chapter-drafter/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chapter-drafter", 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.
chapter-drafterAutonomously draft and polish chapters through multi-skill editorial passes.
Chapter Drafter is an agent skill from jwynia/agent-skills. Autonomously draft and polish chapters through multi-skill editorial passes. Use when you have a complete outline and want to produce a polished first draft with iterative refinement.
Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts (for example `scripts/score-scene.ts`, `templates/pass-criteria.md` and `templates/progress-tracker.md`).
The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit e02ec7e. 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.
Ships 1 file in scripts/ (TypeScript), which the agent can run.
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.
Chapter Drafter loads about 3k tokens when it runs. Until then it costs about 50 tokens; SKILL.md has 1,106 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); the scripts in this folder are not scanned.
The full file from jwynia/agent-skills at commit e02ec7e, republished under its MIT licence (© jwynia). 1,106 words, ~2,968 tokens.
.claude/skills/chapter-drafter/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.You autonomously draft and polish chapter scenes through iterative editorial passes. Given an outline, you produce polished first-draft prose by drafting each scene, evaluating it against editorial criteria, and revising until quality thresholds are met.
Orchestration is iteration with hierarchy. Fix structure before character, character before originality, originality before dialogue, dialogue before prose. Don't polish what might be cut; don't revise dialogue in a scene that needs structural rework.
Before invoking this skill, ensure:
Do NOT use this skill if:
FOR each scene in chapter outline:
1. BUILD CONTEXT
- Load character voices from previous scenes
- Load open plot threads
- Load cliche avoidances
- Extract scene purpose from outline
2. DRAFT SCENE
- Generate initial prose from outline beat
- Apply character voices
- Maintain plot thread continuity
3. EVALUATION LOOP (max 5 cycles)
│
├─► Pass 1: scene-sequencing (35%)
│ └─► If FAIL: REWRITE scene
├─► Pass 2: character-arc (25%)
├─► Pass 3: cliche-transcendence (15%)
├─► Pass 4: dialogue (15%)
└─► Pass 5: prose-style (10%)
│
Calculate composite score
│
├─► >= 80: ACCEPT
├─► 60-79: TARGETED FIX → re-evaluate
├─► 40-59: REWRITE → return to draft
└─► <40: REJECT → full re-draft from outline
4. POST-ACCEPT
- Extract character voice patterns → update context
- Track plot thread changes → update registry
- Record cliche transcendences → update avoidances
- Write scene to output
- Update progress tracker
END FOREvaluates Goal-Conflict-Disaster structure and pacing.
| Criterion | PASS | WARN | FAIL |
|---|---|---|---|
| Goal clarity | POV goal clear in opening beats | Goal exists but buried | No discernible goal |
| Conflict escalation | Opposition intensifies | Conflict static but present | No real opposition |
| Disaster quality | "Yes, but..." or "No, and..." | Simple "No" | Clean "Yes" or no resolution |
| Sequel presence | Reaction-dilemma-decision present | Abbreviated sequel | Missing after high-tension |
| Scene-sequel ratio | Matches intended pacing | Slight mismatch | Severely mismatched |
Critical: If scene-sequencing FAILS, do NOT proceed to other passes. Structural problems invalidate downstream evaluation.
Evaluates transformation consistency and arc progress.
| Criterion | PASS | WARN | FAIL |
|---|---|---|---|
| Lie visibility | False belief evident in choices | Lie present but unstated | No lie operative |
| Want/Need gap | Clear tension between stated/actual | Gap exists but unclear | Want = Need (no tension) |
| Arc progress | Scene advances or challenges arc | Arc static but consistent | Character contradicts arc |
| Transformation markers | Choices reflect arc position | Position unclear | Acts against personality |
Evaluates originality via orthogonality test.
| Criterion | PASS | WARN | FAIL |
|---|---|---|---|
| Form axis | Non-default form | Slight variation | Exactly genre default |
| Knowledge axis | Own concerns, accidental intersection | Some plot awareness | Fully story-serving |
| Goal axis | Own agenda that collides | Goal connected to plot | Purely protagonist-serving |
| Role axis | Own story that intersects | Somewhat independent | Exists only for hero |
| Orthogonality test | 2+ axes orthogonal | 1 axis orthogonal | All axes match default |
Evaluates voice distinctiveness, subtext, and function.
| Criterion | PASS | WARN | FAIL |
|---|---|---|---|
| Voice distinctiveness | Characters distinguishable without tags | Some overlap | Identical voices (D1) |
| Subtext presence | Gap between said and meant | Occasional direct statements | Everything on-the-nose (D4) |
| Double-duty test | 3+ functions per exchange | 2 functions | Single function only (D5) |
| Naturalness | Contractions, interruptions, rhythm | Slightly formal | Wooden/stilted (D2) |
| Exposition handling | Information through conflict | Minor "as you know" | Exposition dump (D3) |
Evaluates sentence-level craft.
| Criterion | PASS | WARN | FAIL |
|---|---|---|---|
| Sentence variety | Length and structure vary | Some variation | Monotonous (P4) |
| Clarity | Concrete, clear antecedents | Occasional abstraction | Unclear writing (P2) |
| Voice consistency | Diction level consistent | Minor shifts | Random shifts (P6) |
| Economy | Words earn place | Minor redundancy | Overwrought (P3) |
| Active voice | Passive intentional | Some default passive | Passive overuse (P5) |
Each pass produces a score from 0-100:
Composite = SUM(pass_score × pass_weight)
| Composite | Outcome | Action |
|---|---|---|
| >= 80 | ACCEPT | Scene complete, proceed to next |
| 60-79 | REVISE | Fix lowest-scoring pass, re-evaluate |
| 40-59 | REWRITE | Regenerate with failure constraints |
| < 40 | REJECT | Full re-draft from outline |
| Level | Limit | On Exceed |
|---|---|---|
| Per-pass | 3 | Escalate to rewrite |
| Per-scene | 12 | Accept at threshold 50, flag for review |
| Per-chapter | 50 | Stop, report remaining issues |
Diminishing returns detection: If improvement < 10% between iterations, accept current state or escalate.
Maintain across scenes:
After each scene, extract and store:
Use as constraint for subsequent scenes: "Character X speaks like [markers]"
Track:
Each scene checks:
After cliche-transcendence pass, record:
Use as constraint: "Already transcended [X], maintain freshness"
Use the progress tracker template to persist state:
## Chapter Progress: [Title]
Started: [timestamp]
Current: Scene [N], Pass [M], Iteration [K]
### Scenes
| Scene | Status | Pass | Iterations | Score | Issues |
|-------|--------|------|------------|-------|--------|
### Context
- Character Voices: [accumulated]
- Plot Threads: [open/closed]
- Cliche Avoidances: [list]
### Change Log
- [timestamp] [change]When fixing one pass breaks another:
Escalation: If conflict persists after 2 attempts, flag scene for human review.
Pattern: Keeps iterating because one criterion is at WARN. Fix: WARN is acceptable. Accept at threshold after iteration limit.
Pattern: Jumps to prose-style when scene-sequencing failed. Fix: Hard gate on structural passes. FAIL blocks progression.
Pattern: Each scene drafted in isolation, losing voice and threads. Fix: Explicit context loading before each scene draft.
Pattern: Fixes dialogue, doesn't check if prose-style regressed. Fix: Always re-evaluate current pass + downstream after any fix.
Pattern: Hits iteration limit, proceeds without documentation. Fix: Log all limit exits with categorized remaining issues.
context/chapter-drafter/[chapter]-progress.mddrafts/[story]/[chapter]/scene-[N].mdcontext/chapter-drafter/[chapter]-context.md| Skill | What it provides |
|---|---|
| outline-collaborator | Scene beats with goal-conflict-disaster |
| character-arc | Lie/want/need for each character |
| worldbuilding | Setting details for scene work |
| story-sense | Confirmation structure is solid |
| Output | Next step |
|---|---|
| Draft chapter | revision (for full manuscript revision) |
| Flagged scenes | Human review |
| Context state | Next chapter drafting |
Input: Chapter outline with 5 scene beats
Process:
Output:
drafts/[story]/[chapter]/© jwynia, MIT. 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 3 other files (scripts) in skills/creative/fiction/orchestrators/chapter-drafter of jwynia/agent-skills.
Open the folder on GitHubat commit e02ec7e
Chapter Drafter 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 |
|---|---|---|---|---|---|---|
| Chapter Drafter this skilljwynia/agent-skills | 169 | — | ~3k | Automated safety check: Pass | MIT | |
| Autonomous Loopsaffaan-m/ECC | 276k | 4 repos | ~5.8k | Automated safety check: Pass | MIT | |
| Autonomous Agent Harnessaffaan-m/ECC | 276k | 2 repos | ~2.9k | Automated safety check: Pass | MIT | |
| Autonomous Loopsaffaan-m/ECC | 276k | 2 repos | ~3.8k | Automated safety check: Pass | MIT | |
| Autonomous Loopsaffaan-m/ECC | 276k | — | ~545 | Automated safety check: Pass | MIT | |
| Autonomous Agentsdavila7/claude-code-templates | 32k | 2 repos | ~553 | Automated safety check: Pass | MIT |
affaan-m/ECC
Patterns and architectures for autonomous Claude Code loops — from simple sequential pipelines to RFC-driven multi-agent DAG systems.
affaan-m/ECC
Transform Claude Code into a fully autonomous agent system with persistent memory, scheduled operations, computer use, and task queuing.
affaan-m/ECC
自主Claude代码循环的模式与架构——从简单的顺序管道到基于RFC的多智能体有向无环图系统. An agent skill from affaan-m/ECC.
affaan-m/ECC
自動Claude Codeループのパターンとアーキテクチャ — シンプルな順序パイプラインからRFC駆動マルチエージェントDAGシステムまで。
davila7/claude-code-templates
Autonomous agents are AI systems that can independently decompose goals, plan actions, execute tools, and self-correct without constant human guidance.
affaan-m/ECC
Claude Codeを永続的なメモリ、スケジュール済み操作、コンピュータ使用、タスクキューイングを備えた完全自動エージェントシステムに変換します。スタンドアロンエージェントフレームワーク(Hermes、AutoGPT)を、Claude Codeのネイティブcrons、dispatch、MCPツール、メモリを活用して置き換えます。ユーザーが継続的な自動操作、スケジュール済みタスク、または自己指令…
jwynia/agent-skills
Diagnose devcontainer configuration problems and guide development environment setup.
jwynia/agent-skills
Create distinctive, production-grade frontend interfaces with high design quality.
jwynia/agent-skills
Orchestrate agile development workflows for Gitea repositories using the tea CLI.
jwynia/agent-skills
Generate game assets using AI image generation APIs (DALL-E, Replicate, fal.ai) and prepare them for Godot.
jwynia/agent-skills
Develop AI agents, tools, and workflows with Mastra v1 Beta and Hono servers.
jwynia/agent-skills
Create and manipulate PowerPoint PPTX files programmatically.
Autonomously draft and polish chapters through multi-skill editorial passes. Chapter Drafter is an agent skill from jwynia/agent-skills. Autonomously draft and polish chapters through multi-skill editorial passes.
Chapter Drafter fits situations like: you have a complete outline and want to produce a polished first draft with iterative refinement.
Run `npx skills add jwynia/agent-skills --skill chapter-drafter -a claude-code`. Or copy the skill folder (skills/creative/fiction/orchestrators/chapter-drafter in jwynia/agent-skills) into .claude/skills/chapter-drafter in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jwynia/agent-skills --skill chapter-drafter -a codex`. Or copy the skill folder (skills/creative/fiction/orchestrators/chapter-drafter in jwynia/agent-skills) into .agents/skills/chapter-drafter 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 jwynia/agent-skills --skill chapter-drafter -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/chapter-drafter, .gemini/skills/chapter-drafter, .github/skills/chapter-drafter and .opencode/skills/chapter-drafter in your project.
Going by SKILL.md and its folder, Chapter Drafter needs TypeScript for the scripts in its folder. Our summary lists: Node.js.
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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Chapter Drafter is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Chapter Drafter: Autonomous Loops (affaan-m/ECC, 276k stars), Autonomous Agent Harness (affaan-m/ECC, 276k stars), Autonomous Loops (affaan-m/ECC, 276k stars) and Autonomous Loops (affaan-m/ECC, 276k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jwynia (a GitHub user) maintains it in jwynia/agent-skills, which has 169 GitHub stars. The repository holds 111 skills in this directory. The repository was last updated on February 24, 2026.
Source: jwynia/agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.