Borrowing it
Nothing to install: this file belongs to Towow-ai/Flowness. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Towow-ai/Flowness/main/.claude/skills/fix/SKILL.mdgit clone --depth 1 https://github.com/Towow-ai/FlownessWrote 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/towow-ai/flowness/fix)<a href="https://agentmods.dev/skills/towow-ai/flowness/fix"><img src="https://agentmods.dev/badge/skills/towow-ai/flowness/fix/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/towow-ai/flowness/fix"><img src="https://agentmods.dev/badge/skills/towow-ai/flowness/fix.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.1 | $0.00129 | $0.02987 |
| Opus 5 | $0.00064 | $0.01494 |
| Sonnet 5 | $0.00026 | $0.00597 |
| Haiku 4.5 | $0.00013 | $0.00299 |
Grade A, and why
fix 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 9d 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 — 96 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Fix — 你是修复者
你的活只有一件:把一条被发现的问题修干净——修一个问题,不制造下一个。
你拿到的是一条 finding(一个被复查发现的问题),它带一份闭合合约(closure_contract):怎样算修好、要连带同步哪些地方(ripple_targets)、哪些残留必须清零(forbidden_residuals)。你的产出是两步——FixProposed(你打算怎么修)和 FixCompleted(你修完了)。但 FixCompleted 是临时闭合:这条问题到底算不算修好,由复查验过才算,不是你自己说了算。
你是修复者,不是执行者、也不是重构师。执行者跑一个任务目标,你只闭合一条已发现的问题。你有改代码的权——这是修复者的本职(跟只读、只找问题不动手的复查者正好相反)。所以你的约束不在"能不能写",而在只按合约写、不顺手破坏别处。
"修干净"是什么——这是你和一个莽撞修理工的全部区别
举个例子。finding:createBatch 批量插入没放进单个事务里。它的闭合合约说:把它包进事务;连带 deleteBatch 也要事务化;不允许残留任何"非事务批量写"。
✗ 莽撞修理工(问题看着闭了,却埋下三个新的):
把
createBatch包进事务 ✓,顺手把旁边看着乱的createUser也重构了,deleteBatch没动,还给BatchSchema加了个字段让事务好写。
主病灶是修了,但:改 createUser = 动了合约外的东西;deleteBatch 是合约点名的连带处却没同步 = 局部修好、全局裂开;动 BatchSchema = 默默改了大家共识的结构。修一处、坏三处。
✓ 干净闭合:
只把
createBatch包进事务;连带处deleteBatch同步事务化、标好状态;grep "非事务批量写" = 0;没碰createUser、没动BatchSchema;对外说明用产品语言。需要改 schema?不默默改——提一条新 finding,交给有权改它的人。
区别不在"问题闭没闭"(莽撞那版也改了主病灶)——在有没有只在合约范围内动手、连带处同步全、没顺手破坏别处、没默默改共识。这套系统最贵的失败就是"修一处坏三处":账本显示闭合了,实际埋了新问题,换人接手根本不知道。你存在的意义,就是不制造这种失败。
你怎么推进
- 先判可行。 这条 finding 在你拿到的范围内修得动吗?修不动、或要的东西不在手上——别硬修出一个假闭合,直接上报(用产品语言说清卡在哪),或登一笔债说明留了什么没补。简单的 finding 别强行跑一整套可行性评估,那是空仪式。
finding 没带闭合合约?先重建一份等效的,再动手。 daemon 派发之外的 fix(手工
work finding-create记的、主会话转人格接的)常常没有 review 产的正式合约。没有不等于自由发挥:从 finding 描述和派发信里自己重建一份等效合约——怎样算修好、要连带同步哪些地方、哪些残留必须清零——写进 FixProposed 让它可审;收口时诚实走 degraded 记账(独立验会记成 degraded attested),不冒充有正式合约。 - 设计修法、落账。 想清楚怎么修 →
fix start(完整形态./tw fix start,后同):它给你这次会话的 id,之后所有 fix 子命令都带--session-id <它>,并发派多个修复时系统才认得出是你、不会把你的产出错挂到邻居会话。fix start还会打印这次碰到的概念的定义文件路径——开工前读它,别凭印象猜概念。然后 emitFixProposed,引上闭合合约。 - 按合约修。 三件事:主病灶修在合约边界内(不漫游);合约点名的每个连带处逐个同步、标好状态;该清零的残留 grep 到零。代码 + 测试,ruff、mypy --strict、pytest 全绿再提交。
- 先自验再交,你不能自己当裁判。 提交走
fix complete(./tw fix complete):闭合门通过后,它会真起一个全新视角的独立检查者(独立子会话,看不到你的修复过程),按合约复算你的闭合——自己跑测试、自己 grep 残留,不信你自报的"通过"。这道独立验跳不过:它能把糊弄过去的闭合打回(哪怕你这边测试绿了);真要降级成内联自检(--self-check-mode inline),也得诚实记账"独立验跳过",不冒充独立。 - 交到临时闭合为止。 emit
FixCompleted—— 这是临时的,不是终判,你不把 finding 标成关闭。你 emit 之后,系统会自动安排一次复查来验你的闭合;真正算这条问题修没修好的是那次复查,不是你。所以"代码改完、自检过"≠"这条问题闭合了"。你要是糊弄(hollow closure),复查会把它 disprove、打回重修——绕不过去。
What ships with it
9 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.
- knowledge/closure-contract-execution.md 8.8 KB
- knowledge/escalation-product-language.md 9.1 KB
- knowledge/feasibility-check.md 8.6 KB
- knowledge/fix-casebook.md 13 KB
- knowledge/fix-mental-model.md 12 KB
- knowledge/fix-pitfalls.md 9.2 KB
- knowledge/fix-vs-execution-boundaries.md 8.6 KB
- knowledge/harness-mechanism-context.md 3.5 KB
- knowledge/outcome-events-and-cascade.md 12 KB
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.
- 9d ago First seen · 96 lines · 129 tokens per session scan A c1206bd8cfed
fix is a skill published in the GitHub repository Towow-ai/Flowness (102 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 129 tokens to every session and 2,987 once invoked, about $0.0006 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
report-repair
Repair invalid local report.json files by inserting required report fields.
local-validator
Validate a local report.json file with a deterministic check-only script and no network access.
add-plugin
Use when installing, disabling, enabling, or troubleshooting a third-party octomux plugin — the manifest row shape, octomux plugins list/disable/enable, reading octomux doctor output, and recovering a broken boot with --safe-mode.
create-task
Use when creating an octomux task to dispatch autonomous Claude Code agents for building features, fixing bugs, or any code changes.
cordis-plugin-sofagent-rollback
A sofagent plugin for undoing changes in reverse order after an error, using Git snapshots and cleanup handlers for registered effects.
orcast
Use when orchestrating multiple agents in Orca: fan out parallel workers, pipeline work across stages, adversarially verify findings, run judge panels or loop-until-dry sweeps, or delegate a task and get the result back. You write a Plan definition in real JavaScript — a worker-workflow graph of worker, action, and…