By quint-co
Write, verify, and translate Quint formal specifications for distributed systems, generate specs from code or requirements, audit existing specs, and implement code against specs using a structured research-plan-implement workflow.
Implement code against an existing Quint specification. Uses Research → Plan → Implement workflow (ACE-FCA style) grounded by the spec as the source of truth. Use when the user wants to refactor code, add a new feature, or close a gap between implementation and spec — with the Quint spec as the formal constraint that all changes must satisfy.
Quint language and CLI reference — the expert on Quint syntax, operators, types, `basicSpells`, the toolchain (typecheck/run/test/verify), and how to read simulation and counterexample output. Use when writing or debugging the contents of a `.qnt` file, fixing a typecheck/parse error, looking up an operator or idiom, analyzing an invariant violation or counterexample trace, or optimizing state-space exploration. This is for working IN Quint at the language level — not for analyzing or running TLA+/TLC itself. For building a NEW model end-to-end from some source — including translating a TLA+ spec into Quint, or modeling code/requirements/an idea — use the quint-modeling skill, which owns that workflow and consults this reference for syntax. Keywords: quint, syntax, operators, typecheck, model checking, counterexample, basicSpells, CLI, specification language.
Build a Quint model of a system, protocol, or algorithm. Use this whenever the user wants to model, spec out, formally describe, model-check, or verify a system in Quint — e.g. "model this protocol in Quint", "spec out this design", "translate this TLA+", "formally check this Rust code" — even if they never say the word "specification." When the goal is to verify or model-check a design or implementation and no Quint model exists yet, writing the model is the required first step, so start here. It generates the spec from whatever the user has — an idea developed interactively, natural-language or functional requirements, source code (Rust, Go, TypeScript, etc.), or an existing TLA+ specification — and walks the modelling flow (state, actions, invariants), adapting to the source type. Also use this to **review or audit an existing Quint spec** — "review my .qnt", "audit this spec before I ship it", "is this model any good" — it carries the structural + runtime review checklist. Do NOT use this for implementing code against a spec that already exists (that's quint-execute-spec) or for pure Quint syntax/CLI/debugging questions (quint-lang). For Quint language syntax and the CLI, see the quint-lang reference.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
A containerized development environment for using Claude Code with Quint-related agents, commands and MCP servers.
This tooling was initially developed for the experiments reported in our blog post Reliable Software in the LLM Era. We invite you to check it out to learn about our vision for LLM-assisted formal specification! Since that initial work, we've been actively using and refining these tools internally at Informal Systems for our own Quint projects.
We welcome collaborations! As we continue to refine and expand this toolkit for our internal use, we plan to regularly push updates to this repository. If you're interested in contributing, have suggestions, or want to share your experiences using these tools, please open an issue or reach out.
⚠️ DISCLAIMER: The agents and tools in this repository were developed for internal use at Informal Systems and have not been thoroughly evaluated or tested for general public use. They are provided as-is without any warranties or guarantees. We make no representations about their suitability, reliability, or fitness for any particular purpose. Use at your own risk. We accept no responsibility or liability for any consequences, damages, or issues that may arise from using these tools.
This project provides a Docker-based environment that includes:
📌 Important: We recommend using the latest version of Quint, as we are continuously making improvements to the language to make it more LLM-friendly. You can check your Quint version with
quint --version. If you're using the Docker setup provided in this repository, the latest version is automatically installed for you.
Build the Docker image:
make build
This builds the Docker image tagged as claudecode:latest.
Note: For Solidity development, you can optionally include the Foundry toolchain. See FOUNDRY.md for instructions.
The easiest way to get started:
# Build the image (includes all agents and MCP servers)
make build
# Option 1: Specify project path directly
make run DIR=~/my-project
# Option 2: Interactive prompt for project path
make run
That's it! The MCP servers (quint-lsp and quint-kb) are automatically configured on first run. All agents and commands are ready to use immediately.
See GET_STARTED.md for a full walkthrough of the workflow — from bootstrapping your first spec to testing, debugging, and driving your implementation.
When in doubt of what to try next, run
/spec:next
which will suggest potential next things you can try. This works from the very start (even if your project doesn't have a Quint spec yet).
Two paths, same goal. The
agentic/commands (above) are the Docker-native path: they run inside the container, use MCP servers for the Quint REPL, and are optimised for Claude Code. Thequint-llm-kit-plugin/skills/below are the lightweight path: plainquintCLI, no Docker, any agent. Both cover Quint spec work — pick whichever fits your setup. If you are already in the Docker environment, prefer the slash commands; if you are not, install the skills.
The quint-llm-kit-plugin/skills/ directory contains standalone agent skills for working with Quint. They work independently of Docker — install them directly into your AI agent of choice.
npx claudepluginhub quint-co/quint-llm-kit --plugin quint-llm-kitSkills for the Quint specification language: a language reference and a modeling guide for authoring .qnt specs.
Skills for the Quint specification language: a language reference and a modeling guide for authoring .qnt specs.
Skills-first specification-driven development framework with 7 agent skills for planning, implementation, review, and shipping. Natural language activation with intelligent agent orchestration. Includes /plan, /implement, /research commands plus managing-specifications, implementing-features, and reviewing-and-shipping skills.
Specification-Driven Development with Process Discipline for Claude Code
TLA+ model checker as MCP tools — validate specs, list invariants, run checks, and replay counterexamples directly from Claude Code.
Comprehensive Spec-Driven Development toolkit with multi-language support, specialized agents, and integrated security/observability tools
Specification-driven development workflow: specify → plan → tasks → implement