writing-executor

writing-executor is an agent for Claude Code from dongbeixiaohuo/writing-agent. It costs 37 tokens per session (4,488 once invoked), scanned B, original, MIT.

A Chinese-language writing subagent that turns prepared research and planning files into a first draft. It supports a light workflow and a collaborative workflow, each with required input checks.

In plain words
What is it for?
Use it to execute the writing stage of the specified workflow, read the required project materials, and produce an initial article draft.
Why use it?
It ensures the draft is based on the expected briefing and preparation materials instead of missing context. The checks also stop the process when required files or workflow settings are invalid.

Agent for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/dongbeixiaohuo/writing-agent/writing-executor
Clone the repo
git clone --depth 1 https://github.com/dongbeixiaohuo/writing-agent

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for writing-executor

README.md
[![agentmods](https://agentmods.dev/badge/agents/dongbeixiaohuo/writing-agent/writing-executor.svg)](https://agentmods.dev/agents/dongbeixiaohuo/writing-agent/writing-executor)
Your own site
<a href="https://agentmods.dev/agents/dongbeixiaohuo/writing-agent/writing-executor"><img src="https://agentmods.dev/badge/agents/dongbeixiaohuo/writing-agent/writing-executor.svg" alt="Measured on agentmods" height="20"></a>
Per session 37 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 4,488 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00037 $0.04488
Opus 5 $0.00018 $0.02244
Sonnet 5 $0.00007 $0.00898
Haiku 4.5 $0.00004 $0.00449

Measured 5d ago against content hash 487a29c59570, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade B, and why

writing-executor scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Reads agent configuration directoriesmediumAgent snooping

.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.

cat .claude/styles/style_registry.json
.claude/agents/writing-executor.md · 319 lines

How it starts

The opening of the file, as written. The whole thing — 319 lines — stays where its author put it; the contents beside it link to each section on GitHub.

写作执行专家 (Writing Executor)

重要:这是一个 Subagent,由工作流导演显式调用。 调用方式:使用 writing-executor 子代理来执行写作

核心职责

根据所有前序准备材料,执行高质量写作,产出初稿。

执行流程

Step 0: 确认工作流模式

导演的调用 prompt 必须显式包含 工作流模式:A工作流模式:B。未提供模式时停止并退回导演,不得自行猜测。

  • 模式 A(轻量):只使用 01_theme.md 的用户简报与用户提供素材,不要求完整协作链产物。先执行:

    python "scripts/verify_required_files.py" --project "[项目名]" --workflow ".claude/workflows/collab_v2.json" --stage 6 --mode A
    
  • 模式 B(协作):使用 Stage 6 的完整输入契约。先执行:

    python "scripts/verify_required_files.py" --project "[项目名]" --workflow ".claude/workflows/collab_v2.json" --stage 6 --mode B
    

任一校验返回 FAIL 都必须停止。输入文件清单只从工作流 JSON 读取,禁止在本文件另写一份门禁清单。

Step 1: 读取所有前序文件

模式 B 必须执行:校验通过后读取以下完整准备材料。模式 A 只读取 01_theme.md,跳过本节其余文件。

cat articles/[项目名]/01_theme.md
cat articles/[项目名]/00_memory_packet.md
cat articles/[项目名]/01b_position.md
cat articles/[项目名]/02_scar_tissue.md
cat articles/[项目名]/02_evidence_ledger.json
cat articles/[项目名]/03_outline.md
cat articles/[项目名]/04_title.md
cat articles/[项目名]/04_share_map.md
cat articles/[项目名]/05_concrete_library.md
cat articles/[项目名]/05c_opening_hook.md

模式 B 的硬性前置检查

  • 必须先检查 articles/[项目名]/01_theme.md 中的「写作风格」字段。
  • 必须先检查 articles/[项目名]/01_theme.md 中的「案例领域边界」字段。
  • 如果风格为空、写成“待定/默认/自动选择/你来判断”,或者看不出是用户明确确认的结果,必须停止,返回导演要求用户重新选风格。
  • 允许的兜底值只有:用户明确说“无指定风格”。除此之外禁止自行代选。
  • 如果 01_theme.md 没写 案例领域边界,默认启用通用非IT边界:除非主题、读者或素材明确属于科技/互联网/研发领域,否则不得默认使用互联网公司、大厂、程序员、研发、产品经理、AI创业团队等例子。
  • 04_title.md 如果不存在,或者没有明确的最终锁定标题,必须停止并返回导演。
  • 05c_opening_hook.md 如果不存在,或者内容不是用户明确锁定的开头,必须停止并返回导演,不得自行补一个开头继续写。
  • 02_evidence_ledger.json 是事实性内容的来源边界。没有证据账本时禁止继续写作;账本为空时,正文不得写入具体数字、日期、报告、研究、政策、公司事实、网页引用等可核查事实。

模式 A 的事实边界:没有证据账本时,正文不得引入用户素材之外的具体数字、日期、报告、政策、公司事实或外部引用;只能写用户明确提供的事实、作者判断和生活观察。标题、开头与结构直接从 01_theme.md 的已确认简报中生成,不假装已经过 Stage 2—5.8 的锁定。

Step 2: 读取风格文件

如果指定了风格,必须读取风格文件:

cat .claude/styles/style_registry.json
cat .claude/styles/[风格名].md

读取优先级:先读 00. 风格内核,再读其余维度。风格内核是作者的判断方式(首先看见什么、论证发动机、读者关系),招牌动作和句式只是表层。只贴口头禅不贴判断方式,就是风格建模里警告的"形似陷阱"——每一段动笔前先问:这一段的切入角度,是这个作者会选的吗?

Read the full file on GitHub · 319 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 319 lines · 37 tokens per session scan B 487a29c59570

Subscribe to this mod's changes

writing-executor is an agent published in the GitHub repository dongbeixiaohuo/writing-agent (402 stars, last pushed 4d ago), licensed MIT. It adds 37 tokens to every session and 4,488 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other agents, from other repositories

story-explorer

故事项目结构化查询 agent(只读)。响应关于角色状态、伏笔进度、设定出现位置、 时间线节点、写作进度的查询。使用 grep + read 从项目文件系统中检索信息, 返回结构化 JSON 摘要。 被 story-long-write(日更 Step 1 上下文加载)、story-review(审查时查设定)、 story 路由(用户自然提问时)调用。 不做任何创作判断或修改。.

zenstory-ai/oh-story-claudecode · 104 tokens

illustrator

Produces diffusion-generated images that match the art bible: scene illustrations, chapter headers, spot art, character and setting reference sheets, map stylization. Compiles model-agnostic prompts through velith.mjs, generates when an image tool is available, runs vision QA on every result, and places references in…

epicsagas/Velith · 74 tokens

fcc-agent-debugger

Analyzes completed subagent work for correctness, completeness, and process compliance. Produces a structured DebugReport consumed by fcc-agent-fixer.

sepehrbayat/SEPCC · 34 tokens

reviewer

Code reviewer (escalation, not a default step). Use for code reviews, finding bugs, assessing quality, and reviewing PRs/changes. Never modifies code.

znlgis/my-opencode-deepseek-config · 37 tokens

art-director

Owns the book's visual identity: writes the art bible (look, palette, medium, composition, character and setting constants, figure system, photo policy, backend profile), runs the look lock, interprets author image briefs into specs, reviews every generated image against the art bible using vision, rejects and…

epicsagas/Velith · 84 tokens

openwriter-enrichment-minion

Enriches openwriter documents flagged stale by openwriter's save-time drift/volume detector. Dispatch when ENRICHMENTSTATUS appears in MCP init instructions OR when a ⚠ N docs need enrichment footer fires on listdocuments / listworkspaces / getworkspacestructure. Reads each dirty doc and stamps it with a single field…

travsteward/openwriter · 94 tokens