← All skills
statechart
95 / 100 · Low risk
Fine to try.
By cursor/plugins (GitHub) · other · 15,816 stars · scanned at commit 6b03002
Check a TLA+ model of a system that moves between states, such as a product flow, a protocol, or a service, and draw it as a Mermaid statechart. The report gives the shortest path to each state that breaks a rule. Use for /statechart, or to show a bug as a path through states.
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
The author does not mention this.
Found in 33 places.
Show 17 more
- pstack/skills/statechart/scripts/test/cli.test.ts, line 2
import { spawn, spawnSync } from "node:child_process"; - pstack/skills/statechart/scripts/test/cli.test.ts, line 38
const r = spawnSync( - pstack/skills/statechart/scripts/test/cli.test.ts, line 109
const found = spawnSync("sh", ["-c", `command -v ${tool}`], { encoding: "utf8" }); - pstack/skills/statechart/scripts/test/cli.test.ts, line 401
const ps = spawnSync("ps", ["-o", "ppid=", "-p", read(pidFile)], { encoding: "utf8" }); - pstack/skills/statechart/scripts/test/cli.test.ts, line 486
import { spawn, spawnSync } from "node:child_process"; - pstack/skills/statechart/scripts/test/cli.test.ts, line 489
spawnSync("mkfifo", [dot]); - pstack/skills/statechart/scripts/test/cli.test.ts, line 490
const command = spawnSync("ps", ["-o", "ppid=", "-p", String(process.ppid)], { encoding: "utf8" }).stdout.trim(); - pstack/skills/statechart/scripts/test/cli.test.ts, line 684
`import childProcess from "node:child_process"; - pstack/skills/statechart/scripts/test/config-fuzz.test.ts, line 2
import { spawnSync } from "node:child_process"; - pstack/skills/statechart/scripts/test/config-fuzz.test.ts, line 159
const r = spawnSync( - pstack/skills/statechart/scripts/test/corpus.test.ts, line 2
import { spawnSync } from "node:child_process"; - pstack/skills/statechart/scripts/test/corpus.test.ts, line 23
const r = spawnSync( - pstack/skills/statechart/scripts/test/corpus.test.ts, line 63
const r = spawnSync( - pstack/skills/statechart/scripts/test/corpus.test.ts, line 82
const r = spawnSync( - pstack/skills/statechart/scripts/test/corpus.test.ts, line 121
const r = spawnSync( - pstack/skills/statechart/scripts/test/corpus.test.ts, line 204
const r = spawnSync( - pstack/skills/statechart/scripts/test/corpus.test.ts, line 241
const r = spawnSync(
and 13 more places
Other copies in this repository
cursor/plugins has 1 more folder with a skill named statechart. This page shows the lowest-scoring copy.
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'statechart' ] || [ -L ~/.agents/skills/'statechart' ]; then echo 'A skill folder named statechart already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/cursor/plugins' "$d" && git -C "$d" checkout --quiet '6b0300214a09fd6029cfb7077043125758cd1fd2' -- 'pstack/skills/statechart' && mkdir -p ~/.agents/skills && cp -R "$d"/'pstack/skills/statechart' ~/.agents/skills/'statechart' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'statechart' ~/.claude/skills/'statechart' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for cursor/plugins shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/cursor/plugins/)
Score history
| Date | Version | Score |
|---|
| 2026-11-09 | 6b03002 | 95 |