check
Skill367 starsChanged 58 days agoMITView on GitHub
Auto-fix lint and formatting, then report types and tests. Run before every commit.
- Reads credentials
80 other projects use a version of this.
Adopted by
Most recently taken up by
- ribato22/vibechecktheir own version, first seen Nov 8, 2026
- vvs1off/fabric-skillstheir own version, first seen Nov 8, 2026
- pche-broken-artist/forge-of-thoughttheir own version, first seen Nov 6, 2026
- cykedev/vereinsheimtheir own version, first seen Nov 3, 2026
- arunendapally/portfolio-copilottheir own version, first seen Nov 1, 2026
- therealtinhtute/mono-harnesstheir own version, first seen Nov 1, 2026
Used with
Projects with it also use daily-arxiv, exp-eval and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
LambenthanSkilldaily-arxiv
每日从 arXiv 拉取新论文,过滤相关性,auto-ingest 高优先级论文,检测 SOTA 更新
Also in 5 projects that use this
LambenthanSkillexp-eval
实验判决门:Review LLM 独立评判实验结果 → 4 种判决路径 → 自动更新 claims confidence、ideas status、graph edges
Also in 5 projects that use this
JuliusBrusseeSkillbackprop
Bug → spec protocol. When a bug is found or a test fails, trace the cause, decide whether a new §V invariant would catch recurrence, append to §B. This is the one non-obvious thing SDD does that plan-then-execute doesn't. Triggers on test failure, bug report, post-mortem, or explicit user ask.
Also in 4 projects that use this
skyllwtSkillexp-pilot-eval
Pilot result evaluation — read pilot results, apply success criteria, update idea page (pilot_result, failure_reason if failed), generate PILOT_VERDICT_REPORT. Called by /ideate Phase 5 after /exp-pilot-run.
Also in 4 projects that use this
skyllwtSkillexp-pilot-run
Pilot experiment execution — read Pilot Spec YAML, write pilot code, run experiment(Confirm with the user before operation and require the applicant to conduct manual inspection), return results. Called by /ideate Phase 5. Does NOT modify wiki pages or judge pass/fail.
Also in 4 projects that use this
- +6 more from Lambenthan
- +1 more from skyllwt
Other versions80 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 80
- tw93/claude-health★ 7.5ksame name
- tw93/Waza★ 7.5ksame name
- katanemo/archgw★ 7.1ksame name
- katanemo/plano★ 7.1ksame name
- tokio-rs/topcoat★ 6.4ksame name
- Giskard-AI/giskard-oss★ 5.9ksame name
- VibiumDev/vibium★ 3ksame name
- skyllwt/OmegaWiki★ 1.7ksame name
- DAIR-AutoResearch/AutoSci★ 1.7ksame name
- PKU-DAIR/AutoSci★ 1.7ksame name
70 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository21 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .github/copilot-instructions.mdCopilot instructions
- llms.txtllms.txt
- changelogSkill
- doc-reviewSkill
- gflow-cliSkill
- issue-assessmentSkill
- issue-resolveSkill
- known-issuesSkill
- live-verifySkill
- llm-councilSkill
- planSkill
- pr-council-reviewSkill
- predictSkill
- releaseSkill
- scenarioSkill
- sonarSkill
- spikeSkill
- statusSkill
- video-productionSkill
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 1 is distinctive, and 2 are very specific to this project.
0
Common
Most of the 69 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 10
Run in order. Stop and report if a step fails after the fix pass.
- Very specific: line 165
All pyright errors with file:line references
- Very specific: line 179
If the coverage run crashes the current MCP/sandbox session with Connection closed, re-run the same marker-filtered suite in smaller chunks …
“Common” is measured: kept by at least 6 in 10 of the 69 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
/gflow:check — Quality gates
Run in order. Stop and report if a step fails after the fix pass.
Steps
These steps mirror the CI test job in .github/workflows/ci.yml in the same order. Any command that CI runs as a verify (--check) is run here as a verify too — see step 4.
1. Repo hygiene + doc links + website-docs PII guard (read-only — CI runs every one of them; a broken doc link or a private identifier in the published website/docs/ mirror fails CI)
PYTHONUTF8=1 uv run python scripts/ci/check_repo_hygiene.py
PYTHONUTF8=1 uv run python scripts/ci/check_doc_links.py
PYTHONUTF8=1 uv run python scripts/ci/check_website_docs_pii.py
PYTHONUTF8=1 uv run python scripts/ci/generate_website_docs.py --check
PYTHONUTF8=1 uv run python scripts/ci/check_council_memory.py
PYTHONUTF8=1 uv run python scripts/ci/generate_plugin_skills.py --checkgenerate_website_docs.py --check fails on either half of the published-site contract:
DRIFT:— canonicaldocs/changed but thewebsite/docs/mirror was not regenerated. Fix withuv run python scripts/ci/generate_website_docs.pyand stagewebsite/docs/.NAV-ORPHAN:— a page is published but nonav:entry inwebsite/mkdocs.ymlpoints at it, so it is live but unreachable. Add the entry under the right nav section.
1b. Surface blast radius — MCP↔CLI parity and the other mirrors (read-only; MANDATORY whenever the change touches a CLI command, option, flag help text, exit code, or user-facing error string)
tests/mcp/test_cli_parity.py is a command-level gate only: it asserts every CLI leaf
has a mapped MCP tool or a stated exemption. It is green while a new --option goes
unmirrored, and green while an MCP docstring asserts a restriction the CLI no longer has.
That semantic drift is invisible to every automated gate in this file, so it is checked here
by hand — deliberately, because the alternative is shipping it.
PYTHONUTF8=1 uv run python -m pytest -q tests/mcp/test_cli_parity.py tests/mcp/test_server.pyThen enumerate the blast radius. For the CLI symbol(s) you changed (option name, model alias, exit code, capability), grep the whole repo and confirm every hit is either updated or still true:
# substitute the flag / alias / capability word you changed
grep -rn --exclude-dir=.git --exclude-dir=__pycache__ --exclude-dir=tmp "<your-symbol>" \
src/gflow_cli/mcp/ docs/ website/docs/ README.md KNOWN_ISSUES.md CHANGELOG.md skills/Six axes, in blast-radius order. Tick each or state why it does not apply — "I did not touch a CLI surface" is a valid answer for the whole step; silence is not.
A. Execution paths — a request is built in THREE places, not one.
| Hop | File | Fails as |
| CLI | cli_video.py / cli_image.py dataclass → request | option parsed but never passed |
| MCP direct | mcp/tools.py tool signature → payload dict | param accepted, dropped before the queue |
| MCP queued | mcp/tools.py payload keys → worker/codec.py decode → request | silent no-op — accepted, queued, never read |
The third hop is the dangerous one: the payload key the tool writes and the key the codec
reads are matched by string, so a mismatch type-checks, lints, and passes tests while doing
nothing. This has shipped before — a dead output param the queue never read survived until
a pre-release audit (#495). Verify the key names literally line up end to end:
grep -n "<param>" src/gflow_cli/mcp/tools.py src/gflow_cli/worker/codec.pyB. MCP surface truth — mcp/tools.py tool signature and every behavioural claim in
its docstring; docs/MCP.md parameter prose. tests/mcp/test_cli_parity.py's
CLI_TO_MCP / _MCP_EXEMPT only when adding a NEW leaf.
C. Agent-facing surfaces — read by Codex / Cursor / Aider, not just by us, and covered by
no test at all: skills/gflow-cli/SKILL.md, the AGENTS.md "Command surface" bullet,
README.md, docs/INDEX.md.
D. Error and exit-code surface — errors.py _default_remediation and the class
docstring, EXIT_CODE_MAP, and the exit-code table in docs/USAGE.md. When a raise site is
deleted, re-derive what the remaining sites are: a remediation string that still describes a
removed case actively misleads.
grep -rn "raise <ErrorClass>" src/gflow_cli/ # must match what the docs table claimsE. Declarative / template surfaces — defaults baked into files users copy:
cli_movie.py's manifest template, movie_manifest.py, chain_manifest.py,
.env.template for any env var, and the capability-reporting commands gflow models and
gflow doctor.
F. Docs + published mirror — docs/USAGE.md command section, website/docs/
(regenerate; step 1 catches staleness but never wrongness), KNOWN_ISSUES.md claims about
the surface, CHANGELOG.md under ### Changed whenever behaviour a script could branch on
moves.
Why this step exists. In #626 the CLI stopped rejecting omni-flash --end-frame while
mcp/tools.py and docs/MCP.md went on telling agents the combination was rejected. Lint,
types, the full 2065-test suite, and the parity gate were green throughout, because none of
them can see a docstring that lies. The AGENTS.md prose saying "keep them in sync" had been
there the whole time and did not fire — the project's own lesson, again: wire the rule, or it
is a wish.
2. Auto-fix lint and formatting (rewrites files in place)
uv run ruff check --fix src tests
uv run ruff format src testsReport which files were modified. If this rewrote anything, those files are part of the change — stage them. CI does not run the auto-fix; it runs the --check verify in step 4 against the committed tree, so an uncommitted reformat is a red CI build.
3. Repeat lint/format ONLY on the files you touched? No — always run repo-wide. The whole-tree src tests scope in step 2/4 is deliberate: a latent format failure in a file your change merely imports (e.g. a BDD step module) will fail CI even if your own edits are clean. Never narrow the scope to "just my files."
4. Verify — the EXACT CI gate (non-mutating; must be clean before you commit/push)
uv run ruff check src tests
uv run ruff format --check src testsThese are byte-for-byte what CI runs (ci.yml "Lint" + "Format check"). If --check exits non-zero here, step 2's rewrites are uncommitted — stage them and re-run. Never push while this is red: the test job dies at the format step before pytest, which also makes SonarCloud report new_coverage=0% (no coverage XML is produced). A green /gflow:check that skips this verify is how PR #269 shipped a format failure past an 8-agent council.
4c. Duplication proxy for the SonarCloud gate (report only — offline approximation)
SonarCloud's quality gate fails on new_duplicated_lines_density > 3%, and it only
runs in CI — a copy-pasted option stack or body block sails through ruff/pyright/pytest
and then reddens the branch analysis after merge (this killed the develop build in the
v0.48.0 cycle). Approximate the CPD locally, zero new dependencies:
uvx pylint --disable=all --enable=duplicate-code --min-similarity-lines=10 src/gflow_cliAny duplicate-code finding inside code you are adding or touching is a fix-now
signal (extract a shared helper/decorator before pushing). Findings in untouched files
are pre-existing — Sonar's gate measures new code only, so report them but do not
block on them. This is a proxy, not the gate: SonarCloud in CI remains authoritative.
5. Type check (report only — cannot auto-fix)
uv run pyright src6. Tests + coverage (report only)
uv run python -m pytest -q --cov=gflow_cli --cov-fail-under=80Output
- List files changed by the fix pass (empty = nothing needed fixing)
- Step 1b blast radius — the mirror table, each row ticked or explicitly marked N/A. "I did not touch a CLI surface" is a valid answer; silence is not.
- Step 4 verify result —
ruff check+ruff format --checkboth clean (this is the CI gate; a non-zero here is a blocking finding, not a warning) - All pyright errors with
file:linereferences - Pytest summary line and coverage percentage
- Final verdict: all gates pass / which gates failed
Pipeline Continuation (Next Step Handoff)
Upon successful completion of all quality gates:
- Local Feature Branch: Proactively announce: "Quality gates passed. Next step: Phase 5 Branch Council Review (
/gflow:branch-review)." - Open PR: Proactively announce: "Quality gates passed. Next step: Phase 5 PR Council Review (
/gflow:pr-council-review <N>) or Phase 8 Live Verification (/gflow:live-verify)."
Notes
Ruff fix and format may rewrite multiple files. Always git diff before staging.
Pyright errors and test failures require manual intervention — do not attempt silent workarounds.
If the coverage run crashes the current MCP/sandbox session with Connection closed, re-run the
same marker-filtered suite in smaller chunks without coverage and rely on CI for the coverage XML.
Project pytest defaults already exclude e2e and live; those markers are explicit,
credit-spending gates and must be requested with a separate -m e2e / -m live command.
Windows agent sessions: uv run pytest is unreliable — invoke
.venv/Scripts/python.exe -m pytest directly, and prefix Python invocations with
PYTHONUTF8=1 when output contains non-ASCII. The unscoped full-coverage sweep
(step 6) can OOM locally (exit 137 / SIGKILL): run the suites scoped to the dirs you
touched and trust CI for the full coverage gate — a green full-suite CI run on the
same tree (e.g. the just-merged PR) satisfies step 6 for release purposes.
The OOM allowance applies to step 6 (coverage) ONLY. Step 4 (ruff check + ruff
format --check src tests) is cheap, never OOMs, and must ALWAYS be run repo-wide
against the exact tree you are about to push — no scoping, no skipping.
Offline-green here is not done-done for a change touching a generation code path (t2i/i2i/
i2v/t2v/r2v) — see /gflow:live-verify Part 2 before claiming that kind of feature complete.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

