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.
npx agentmods add skills/imraywang/wewrite/wewrite-writenpx skills add imraywang/wewrite --skill wewrite-writegit clone --depth 1 https://github.com/imraywang/wewriteWrote 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.
[](https://agentmods.dev/skills/imraywang/wewrite/wewrite-write)<a href="https://agentmods.dev/skills/imraywang/wewrite/wewrite-write"><img src="https://agentmods.dev/badge/skills/imraywang/wewrite/wewrite-write.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00062 | $0.01395 |
| Opus 5 | $0.00031 | $0.00698 |
| Sonnet 5 | $0.00012 | $0.00279 |
| Haiku 4.5 | $0.00006 | $0.00139 |
Grade A, and why
wewrite-write scanned grade A with 0 findings 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 4d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 106 lines — stays where its author put it; the contents beside it link to each section on GitHub.
wewrite-write — 任务书、证据与初稿
前置
运行 wewrite run show 读取当前任务。没有任务但用户给了选题时,以 draft 模式创建;没有
选题则转 wewrite-topic。本模块只写 artifacts.brief、artifacts.claims 和
artifacts.draft;artifacts.article 由审稿模块在通过后生成。
读取 {home}/style.yaml;不存在则先执行 wewrite-style。按优先级读取自定义人格
{home}/personas/<name>.yaml、内置 personas/<name>.yaml,最后回退 midnight-friend。
人格只控制表达偏好,不能覆盖事实、个人材料和文章任务书。
进入时运行 wewrite run step write in_progress。
3. 文章任务与素材
完整读取:
读取: {skill_dir}/references/article-brief.md
读取: {skill_dir}/references/editorial-quality.md
读取: {skill_dir}/references/frameworks-quick.md
读取: {skill_dir}/references/content-enhance.md
3.1 先定义文章
明确目标读者、阅读情境、真正问题、读后收获、核心判断、新增价值、适用边界和最强反方。
从痛点、故事、清单、对比、热点解读、观点、复盘中选最适合的一种。把结果写入
artifacts.brief,不得直接跳到正文。
同时记录本次个人材料:只有用户在当前任务明确提供的经历、观察或原话才算可用。
personal_materials.available=false 时,可以写第一人称判断,禁止编造亲历、朋友同事、采访、
对话、时间地点、动作和感官场景。人格要求故事或私人开场时,改用观察、问题或判断开场。
3.2 建立主张与证据
围绕文章真正需要证明的 3-6 个主张搜索。每条进入文章的具体数据、引述、案例或时效性事实, 都要在原页面核对并立即记录:
wewrite sources add --url "{原始页面}" --title "{标题}" --publisher "{发布方}" \
--published-at "{日期}" --claim "{该页面支持的具体主张}" --status verified
优先原始报告、官方文档和当事方信息。用户材料标为 user_provided;不得把搜索摘要、模型
记忆或范文标为 verified;尤其不得把模型记忆标为 verified。把事实、推断、意见和用户经历写入 artifacts.claims,引用
sources.yaml 的来源编号。unsupported 的主张不得进入初稿。
搜索不可用时,只写不依赖最新数据的分析和有边界的判断;删除无法核实的数字、引述和 “研究显示”,并在任务中记录降级。
3.3 安全增强
按 content-enhance.md 为当前框架补足新增角度、行动条件、真实细节或决策标准。增强内容也
必须进入主张和来源清单。材料不足就缩小主张或换框架,不得强行反转、补故事或制造“内幕”。
4. 写初稿
先运行 wewrite learn-edits --summarize --json 获取仍在有效期内的规则,不直接相信旧
playbook.md 的缓存分数。只使用与当前 content_type/framework/persona 匹配的规则:
hard=true 才是硬约束,其余仅作参考;全局结构或语气规则若只是单次修改,不得强制执行。
范文库最多读取 2 篇相关范文:
- 标明
ownership=user且为用户本人创作/修改的范文,可帮助校准声音和结构。 - 第三方或缺少元数据的旧范文一律按第三方处理,只能参考节奏与结构。
- 任何范文都不能提供可复用的个人经历、人物、对话、具体细节、观点或句子。
写作要求:
- 标题准确、有明确对象和利益点;正文通常 1200-2500 字,可按任务书调整。
- 开头尽快进入读者问题或核心判断;每一节服务
brief.sections和对应 claim。 - 清楚区分事实、推断和个人意见;写出反方和适用边界,不用共识或套话凑字数。
- 账号声音来自 style、persona 和经过筛选的学习结果,但内容与证据永远优先。
- 禁止编造亲历、身份、采访、数字、评价、引用和来源中不存在的细节。
What ships with it
11 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- personas/cold-analyst.yaml 2.3 KB
- personas/humor-storyteller.yaml 2.6 KB
- personas/industry-observer.yaml 2.2 KB
- personas/midnight-friend.yaml 2.5 KB
- personas/sharp-journalist.yaml 1.9 KB
- personas/tech-coder.yaml 2.6 KB
- personas/warm-editor.yaml 2.3 KB
- references/article-brief.md 2.3 KB
- references/content-enhance.md 2.1 KB
- references/editorial-quality.md 1.7 KB
- references/frameworks-quick.md 782 B
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.
- 4d ago First seen · 106 lines · 62 tokens per session scan A bba2561dfe3c
wewrite-write is a skill published in the GitHub repository imraywang/wewrite (3,230 stars, last pushed 3d ago), licensed MIT. It adds 62 tokens to every session and 1,395 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.
chat-perf
Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…