Check PR
paperclipai/paperclip
Check a GitHub, GitLab, or Perforce PR/MR/CL for review comments, failing checks, and PR-body gaps.
Formal methods, theorem proving, and model checking for CS research
$ npx skills add wentorai/research-plugins --skill formal-verification-guide -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install wentorai/research-plugins formal-verification-guide --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/domains/cs/formal-verification-guide .claude/skills/formal-verification-guide && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "formal-verification-guide" agent skill from https://github.com/wentorai/research-plugins/tree/main/skills/domains/cs/formal-verification-guide into .claude/skills/formal-verification-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "formal-verification-guide", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/wentorai/research-plugins/tree/main/skills/domains/cs/formal-verification-guideType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add wentorai/research-plugins --skill formal-verification-guide -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install wentorai/research-plugins formal-verification-guide --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/domains/cs/formal-verification-guide .agents/skills/formal-verification-guide && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "formal-verification-guide" agent skill from https://github.com/wentorai/research-plugins/tree/main/skills/domains/cs/formal-verification-guide into .agents/skills/formal-verification-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "formal-verification-guide", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wentorai/research-plugins --skill formal-verification-guide -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install wentorai/research-plugins formal-verification-guide --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/domains/cs/formal-verification-guide .cursor/skills/formal-verification-guide && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "formal-verification-guide" agent skill from https://github.com/wentorai/research-plugins/tree/main/skills/domains/cs/formal-verification-guide into .cursor/skills/formal-verification-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "formal-verification-guide", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/wentorai/research-plugins.git --path skills/domains/cs/formal-verification-guide--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add wentorai/research-plugins --skill formal-verification-guide -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install wentorai/research-plugins formal-verification-guide --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/domains/cs/formal-verification-guide .gemini/skills/formal-verification-guide && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "formal-verification-guide" agent skill from https://github.com/wentorai/research-plugins/tree/main/skills/domains/cs/formal-verification-guide into .gemini/skills/formal-verification-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "formal-verification-guide", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install wentorai/research-plugins formal-verification-guideInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add wentorai/research-plugins --skill formal-verification-guide -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/domains/cs/formal-verification-guide .github/skills/formal-verification-guide && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "formal-verification-guide" agent skill from https://github.com/wentorai/research-plugins/tree/main/skills/domains/cs/formal-verification-guide into .github/skills/formal-verification-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "formal-verification-guide", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wentorai/research-plugins --skill formal-verification-guide -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install wentorai/research-plugins formal-verification-guide --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/domains/cs/formal-verification-guide .opencode/skills/formal-verification-guide && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "formal-verification-guide" agent skill from https://github.com/wentorai/research-plugins/tree/main/skills/domains/cs/formal-verification-guide into .opencode/skills/formal-verification-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "formal-verification-guide", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
formal-verification-guideFormal methods, theorem proving, and model checking for CS research
Formal Verification Guide is an agent skill from wentorai/research-plugins. Formal methods, theorem proving, and model checking for CS research
Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: 350+ academic research skills, MCP configs, and plugins for Research-Claw and AI agents. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit bf44b3c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
javaFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Formal Verification Guide loads about 2.1k tokens when it runs. Until then it costs about 23 tokens; SKILL.md has 296 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from wentorai/research-plugins at commit bf44b3c, republished under its MIT licence (© wentorai). 296 words, ~2,131 tokens.
.claude/skills/formal-verification-guide/SKILL.md (or your agent's skills folder).A skill for applying formal methods to verify software and hardware correctness. Covers model checking, interactive theorem proving, specification languages, and practical verification workflows used in systems and programming language research.
| Approach | Technique | Strengths | Limitations |
|---|---|---|---|
| Model checking | Exhaustive state exploration | Fully automatic, produces counterexamples | State space explosion |
| Theorem proving | Interactive proof construction | Handles infinite state | Requires expert effort |
| Abstract interpretation | Sound static analysis | Automatic, scales well | May report false positives |
| SMT solving | Constraint satisfiability | Powerful automation | Limited to decidable theories |
| Runtime verification | Execution monitoring | Low barrier, practical | Only checks observed runs |
TLA+ is the standard specification language for distributed systems:
--------------------------- MODULE TwoPhaseCommit -------------------------
EXTENDS Integers, Sequences, FiniteSets
CONSTANTS RM \* Set of resource managers
VARIABLES
rmState, \* rmState[r] is the state of resource manager r
tmState, \* State of the transaction manager
tmPrepared, \* Set of RMs that have sent "Prepared"
msgs \* Set of messages sent
vars == <<rmState, tmState, tmPrepared, msgs>>
Init ==
/\ rmState = [r \in RM |-> "working"]
/\ tmState = "init"
/\ tmPrepared = {}
/\ msgs = {}
\* RM r prepares to commit
RMPrepare(r) ==
/\ rmState[r] = "working"
/\ rmState' = [rmState EXCEPT ![r] = "prepared"]
/\ msgs' = msgs \union {[type |-> "Prepared", rm |-> r]}
/\ UNCHANGED <<tmState, tmPrepared>>
\* TM receives a Prepared message from RM r
TMRcvPrepared(r) ==
/\ tmState = "init"
/\ [type |-> "Prepared", rm |-> r] \in msgs
/\ tmPrepared' = tmPrepared \union {r}
/\ UNCHANGED <<rmState, tmState, msgs>>
\* TM commits (all RMs have prepared)
TMCommit ==
/\ tmState = "init"
/\ tmPrepared = RM
/\ tmState' = "committed"
/\ msgs' = msgs \union {[type |-> "Commit"]}
/\ UNCHANGED <<rmState, tmPrepared>>
\* Safety property: No RM commits unless TM has committed
Consistency ==
\A r \in RM : rmState[r] = "committed" => tmState = "committed"
========================================================================# Install TLA+ Toolbox or use command-line TLC
# Define model with specific constants
# RM = {"rm1", "rm2", "rm3"}
java -jar tla2tools.jar -config TwoPhaseCommit.cfg TwoPhaseCommit.tla
# TLC will explore all reachable states and verify:
# - No deadlocks (unless specified)
# - Safety properties (invariants)
# - Liveness properties (temporal formulas)(* Example: Proving properties of a simple functional program *)
(* Define natural number addition *)
Fixpoint add (n m : nat) : nat :=
match n with
| O => m
| S n' => S (add n' m)
end.
(* Prove: 0 + n = n (left identity) *)
Theorem add_0_l : forall n : nat, add 0 n = n.
Proof.
intro n.
simpl. (* simplification reduces add 0 n to n *)
reflexivity.
Qed.
(* Prove: n + 0 = n (right identity, requires induction) *)
Theorem add_0_r : forall n : nat, add n 0 = n.
Proof.
intro n.
induction n as [| n' IHn'].
- (* Base case: n = 0 *)
simpl. reflexivity.
- (* Inductive step: n = S n' *)
simpl. (* add (S n') 0 = S (add n' 0) *)
rewrite IHn'. (* apply induction hypothesis *)
reflexivity.
Qed.
(* Prove associativity of addition *)
Theorem add_assoc : forall a b c : nat,
add a (add b c) = add (add a b) c.
Proof.
intros a b c.
induction a as [| a' IHa'].
- simpl. reflexivity.
- simpl. rewrite IHa'. reflexivity.
Qed.theory SimpleVerification
imports Main
begin
(* Define a recursive function *)
fun fib :: "nat => nat" where
"fib 0 = 0"
| "fib (Suc 0) = 1"
| "fib (Suc (Suc n)) = fib (Suc n) + fib n"
(* Prove a property *)
lemma fib_positive: "0 < fib (Suc n)"
by (induction n rule: fib.induct) auto
(* Verify a sorting algorithm *)
fun insert :: "nat => nat list => nat list" where
"insert x [] = [x]"
| "insert x (y # ys) = (if x <= y then x # y # ys else y # insert x ys)"
fun isort :: "nat list => nat list" where
"isort [] = []"
| "isort (x # xs) = insert x (isort xs)"
(* Prove the output is sorted *)
lemma sorted_insert: "sorted (insert x xs) = sorted xs"
sorry (* full proof requires additional lemmas *)
endfrom z3 import Solver, Int, Bool, And, Or, Not, Implies, ForAll, sat, unsat
def verify_array_bounds():
"""
Verify that an array access is always within bounds.
Model a loop: for i = 0 to n-1, access a[i].
"""
s = Solver()
n = Int("n")
i = Int("i")
# Precondition: n > 0
s.add(n > 0)
# Loop invariant: 0 <= i < n at each access
s.add(i >= 0)
s.add(i < n)
# Verify: the access a[i] is within bounds [0, n)
s.add(Not(And(i >= 0, i < n))) # try to find a violation
result = s.check()
if result == unsat:
return "VERIFIED: array access is always within bounds"
else:
return f"COUNTEREXAMPLE: {s.model()}"
def verify_integer_overflow():
"""
Check if integer addition can overflow for given constraints.
"""
from z3 import BitVec, BitVecVal
s = Solver()
# 32-bit signed integers
x = BitVec("x", 32)
y = BitVec("y", 32)
# Preconditions: both positive
s.add(x > 0)
s.add(y > 0)
# Check: can x + y wrap around to negative?
s.add(x + y < 0)
if s.check() == sat:
m = s.model()
return {
"overflow_possible": True,
"x": m[x].as_long(),
"y": m[y].as_long(),
}
return {"overflow_possible": False}/* Mutual exclusion with Peterson's algorithm */
bool flag[2] = false;
byte turn = 0;
byte critical = 0; /* count of processes in critical section */
active [2] proctype process() {
byte me = _pid;
byte other = 1 - _pid;
do
:: /* Entry protocol */
flag[me] = true;
turn = other;
(flag[other] == false || turn == me);
/* Critical section */
critical++;
assert(critical == 1); /* mutual exclusion */
critical--;
/* Exit protocol */
flag[me] = false;
od
}
/* LTL property: mutual exclusion always holds */
ltl mutex { [] (critical <= 1) }| Property Type | Example | Specification Pattern |
|---|---|---|
| Safety | "No two processes in critical section" | [] (count <= 1) |
| Liveness | "Every request is eventually served" | [] (request -> <> response) |
| Deadlock freedom | "System always has an enabled transition" | [] <> enabled |
| Termination | "Program always halts" | Well-founded ordering |
© wentorai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/domains/cs/formal-verification-guide of wentorai/research-plugins.
Open the folder on GitHubat commit bf44b3c
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in wentorai/research-plugins, which our catalogue first saw on October 7, 2026.
Formal Verification Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Formal Verification Guide this skillwentorai/research-plugins | 298 | 1 repos | ~2.1k | Automated safety check: Pass | MIT | |
| Check PRpaperclipai/paperclip | 99k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Lean4 Theorem Provingbenchflow-ai/skillsbench | 1.8k | — | ~2.2k | Automated safety check: Pass | Apache-2.0 | |
| Checkdavepoon/buildwithclaude | 3.6k | — | ~680 | Automated safety check: Pass | MIT | |
| Fact Check X Unifiedsickn33/agentic-awesome-skills | 47k | 1 repos | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Fact Check X Completesickn33/agentic-awesome-skills | 47k | 1 repos | ~2.3k | Automated safety check: Pass | Apache-2.0 |
paperclipai/paperclip
Check a GitHub, GitLab, or Perforce PR/MR/CL for review comments, failing checks, and PR-body gaps.
benchflow-ai/skillsbench
A skill your agent uses when working with Lean 4 (.lean files), writing mathematical proofs, seeing "failed to synthesize instance" errors, managing sorry/axiom elimination, or searching mathlib for…
davepoon/buildwithclaude
Run CIAgent regression checks after changing an AI agent's code, prompts, or knowledge base in a repo that has agentcispec.yaml, and interpret the results.
sickn33/agentic-awesome-skills
Fact-Check-X 流程编排能力,依次组织各方答案汇总、各方答案聚合(未核验)、权威核验后的最终答案和各方答案测评,生成可打开、可审计、可迁移的阶段产物与完整报告包。
sickn33/agentic-awesome-skills
Compare claims from one or more AI answers, verify their citations against public primary sources, and produce an evidence-linked fact-check report without installing a bundled browser runtime.
VibiumDev/vibium
Independently check application acceptance criteria in a live browser or saved recording with the Vibium CLI.
wentorai/research-plugins
Craft structured research abstracts that maximize clarity and journal acceptance
wentorai/research-plugins
Manage academic citations across BibTeX, APA, MLA, and Chicago formats
wentorai/research-plugins
Summarize academic papers with structured extraction of key elements
wentorai/research-plugins
Evidence-based study techniques for academic learning and retention
wentorai/research-plugins
Adjust writing tone and register for academic audiences and venues
wentorai/research-plugins
Academic translation, post-editing, and Chinglish correction guide
Formal methods, theorem proving, and model checking for CS research. Formal Verification Guide is an agent skill from wentorai/research-plugins.
Run `npx skills add wentorai/research-plugins --skill formal-verification-guide -a claude-code`. Or copy the skill folder (skills/domains/cs/formal-verification-guide in wentorai/research-plugins) into .claude/skills/formal-verification-guide in your project. Claude Code loads it when a task matches its description.
Run `npx skills add wentorai/research-plugins --skill formal-verification-guide -a codex`. Or copy the skill folder (skills/domains/cs/formal-verification-guide in wentorai/research-plugins) into .agents/skills/formal-verification-guide in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add wentorai/research-plugins --skill formal-verification-guide -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/formal-verification-guide, .gemini/skills/formal-verification-guide, .github/skills/formal-verification-guide and .opencode/skills/formal-verification-guide in your project.
Going by SKILL.md and its folder, Formal Verification Guide needs the command-line tools its instructions call (java). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Formal Verification Guide is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Formal Verification Guide: Check PR (paperclipai/paperclip, 99k stars), Lean4 Theorem Proving (benchflow-ai/skillsbench, 1.8k stars), Check (davepoon/buildwithclaude, 3.6k stars) and Fact Check X Unified (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
wentorai (a GitHub user) maintains it in wentorai/research-plugins, which has 298 GitHub stars. The repository holds 405 skills in this directory. The repository was last updated on June 19, 2026.
Source: wentorai/research-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.