quality-gate
Skill1 starsChanged 24 days agoMITView on GitHub
The format, lint, test, and eval commands to run before declaring any msmcp task complete, and the conventions they enforce.
42 other projects use a version of this.
Adopted by
Most recently taken up by
- jodyjdc/ultimate-best-seller-studiotheir own version, first seen Nov 8, 2026
- unlockers-ai/unlockers-skills-librarytheir own version, first seen Nov 8, 2026
- TerryFYL/ai-research-armytheir own version, first seen Nov 8, 2026
- Romandredan/1c-quality-gatetheir own version, first seen Nov 4, 2026
- shimo4228/zenn-contenttheir own version, first seen Nov 2, 2026
- matheuskotayko/skillstheir own version, first seen Nov 1, 2026
Used with
Projects with it also use deploy.
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.
VercelSkilldeploy
Deploy applications to Vercel. Use when the user says "deploy", "deploy to Vercel", "push to production", "deploy my app", or "go live".
Also in 3 projects that use this
Other versions42 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 42
- RapierCraftStudios/ForgeDock★ 119same name
- microsoft/webui★ 100same name
- impecablemee/gtm-mcp★ 66same name
- microsoft/devsquad-copilot★ 50same name
- Romandredan/1c-quality-gate★ 49same name
- TerryFYL/ai-research-army★ 9same name
- Felpix-Studios/social-science-research★ 8same name
- BerryKuipers/claude-code-toolkit★ 7same name
- freskhu/genesis★ 5same name
- unlockers-ai/unlockers-skills-library★ 4same name
32 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 repository6 other files it gives its agents.
- AGENTS.mdAGENTS.md
- add-mcp-toolSkill
- data-referencesSkill
- instrument-class-defaultsSkill
- ms-data-ingestionSkill
- security-boundarySkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 3 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 34 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 10
Run this before declaring any task complete.
- Distinctive: line 62
Prefer typed interfaces; every public callable is annotated.
- Distinctive: line 64
Add tests for behavioural changes.
- Distinctive: line 65
Keep changes focused; do not fix unrelated failures.
“Common” is measured: kept by at least 6 in 10 of the 34 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
Quality gate
Run this before declaring any task complete. All Python targets go through
uv; the project declares Python 3.13 in pyproject.toml.
Commands
| Purpose | Command |
| Sync deps | make install (uv sync --extra dev) |
| Auto-format | make format (ruff format . then ruff check --fix .) |
| Full static gate | make lint |
| Unit tests | make test |
| Notebook eval | make eval |
| Scientific validation (opt-in) | make validate-similarity (needs an external dataset + matchms) |
| Everything | make all |
make lint runs, in order: ruff format --check ., ruff check ., uv run
mypy, uv run basedpyright. Run it exactly as CI does rather than invoking
the tools individually, so a green local run means a green CI run.
What the gate enforces
- ruff: line length 88, target
py313, rulesE4, E7, E9, F, I, UP, B, SIM, RUF. Auto-fixable findings are handled bymake format. - mypy (
srcandtests,mypy_path = ["src"]) and basedpyright (typeCheckingMode = "standard"). The project holds zero warnings as debt:src/,tests/, and the eval notebook all check clean. Do not silence a finding to get green; fix the cause. - pytest:
testpaths = ["tests"], with-m 'not eval'somake teststays a fast unit run. Theevalmarker is the notebook suite.
Test surface
- Tool tests exercise raw callables captured by the
FakeMCPfixtures intests/conftest.py. tests/test_tool_schemas.pyasserts the wire contract fromtools/list.tests/test_smoke_stdio.pylaunches the real server as a subprocess and drives a JSON-RPC session; it is the guard for the "never write to stdout" rule and for the exact registered tool set.tests/test_eval_notebook.pyrunsnotebooks/eval_msmcp.ipynbunder theevalmarker.tests/test_spearman.pyguards the tie-aware correlation reported by the similarity validation (it runs in the fast suite; no optional dependency).tests/test_validation_harness.pycovers the shipped validation harness's protocol — the query/database split, the leakage guard, and the absent-versus-invalid dataset behaviour — with neithermatchmsnor the dataset.validation/holds the opt-in scientific-validation harness. It is not collected by pytest and not part of the gate;matchmsis supplied only formake validate-similarityand is never a runtime dependency.
Conventions the gate assumes
- Prefer typed interfaces; every public callable is annotated.
- Preserve public APIs unless the task explicitly changes them.
- Add tests for behavioural changes.
- Keep changes focused; do not fix unrelated failures.
drafts/is gitignored scratch and excluded from lint and type checking; nothing shipped may live there.validation/is shipped and type-checked (it is inmypy'sfiles); it must import cleanly withoutmatchms, so the fast gate passes on a machine that never installs the optional validation dependency.
Checklist
make testpasses (or the specific new test does).make lintpasses with no new suppressions.- Behavioural changes have tests.
- If the notebook changed,
make evalpasses.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
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.

