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 rules/jiawei686/wechat-dev-mcp/cursorrulesgit clone --depth 1 https://github.com/jiawei686/wechat-dev-mcpWhat 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.00280 | $0.00280 |
| Opus 5 | $0.00140 | $0.00140 |
| Sonnet 5 | $0.00056 | $0.00056 |
| Haiku 4.5 | $0.00028 | $0.00028 |
Grade A, and why
cursorrules 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 2d 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.
What it actually says
Cursor / Windsurf Rules — wechat-dev-mcp
You are working inside the wechat-dev-mcp project, an MCP server that drives
WeChat DevTools for both mini-programs and mini-games.
Project conventions
- ESM (
"type": "module"). Useimport/export, file extensions required. - Entry:
index.js→src/server.js→src/tools/*. - Never write to
stdoutexcept via the MCP SDK. All logs go tostderr. - Tool definitions live in
src/tools/{common,program,game}.js; registry insrc/tools/registry.js. Keep handlers small and return{ content: [...] }or{ isError: true, content: [...] }. - Mini-program-only tools must be guarded with
ensureProgram()and taggedmodes: ["program"]soListToolsauto-hides them for mini-games. - Mini-game-only tools are tagged
modes: ["game"].
Before changing behavior
- Run
node --checkon edited files (no real WeChat DevTools in CI). - Keep both project types working — do not break mini-program features.
- Document new tools in
README.mdanddocs/MINIGAME_GUIDE.md.
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.
- 2d ago First seen · 21 lines · 280 tokens per session scan A 7bf705a112ee
cursorrules is a cursor rule published in the GitHub repository jiawei686/wechat-dev-mcp (17 stars, last pushed 1mo ago), licensed MIT. It adds 280 tokens to every session, about $0.0014 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 cursor rules, from other repositories
control-plane-descriptors
Control plane descriptor and instance implementation patterns.
prefer-assertions-over-defensive-checks
Prefer assertions over defensive checks when data is guaranteed to be valid.
as-contract-cast-smell
// ❌ WRONG — bypasses the family ContractSerializer seam const contract = JSON.parse(raw) as Contract; const contract = JSON.parse(raw) as Contract .
config-validation-and-normalization
Config validation and normalization responsibilities (defineConfig normalizes, loader validates into section diagnostics).
directory-layout
Directory layout rules for SQL family vs concrete targets.
moving-packages
Guidelines for moving packages and updating relative paths.