writing-tla-plus-specs SKILL.md skillA

writing-tla-plus-specs from outlinedriven/odin-claude-plugin is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add outlinedriven/odin-claude-plugin/writing-tla-plus-specs@git:20260905.f02db66

Pins git:20260905.f02db66 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
outlinedriven/odin-claude-plugin
Path
plugins/odin-formal/skills/writing-tla-plus-specs/SKILL.md
Versions recorded
1
Latest version
git:20260905.f02db66, committed Sep 5, 2026
Size
8,307 bytes
Repository stars
40
License
Apache-2.0

Use when a protocol, concurrent algorithm, or design needs a model-checked TLA+ or Alloy spec, or a TLC or Apalache trace needs reading. Not for choosing when to model: use validation-first-driven.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# Writing TLA+ specs

## Contract

| Field | Bound contract |
|---|---|
| Trigger | A distributed protocol, concurrent algorithm, or system design needs an explicit-state or symbolic model check of its safety and liveness properties, or an existing TLC, Apalache, Quint, or Alloy run needs its counterexample read and acted on. |
| Authority | Reversible local: writes `.tla`, `.cfg`, `.qnt`, and `.als` files and the tool output directories they produce; rollback is deleting those files. No remote mutation. |
| Side effect | Spec and configuration files on disk, plus TLC's `states` directory and Apalache's `_apalache-out` directory. |
| Done | Every named invariant and temporal property either passes under a recorded bound and configuration, or has a counterexample trace mapped to a named design defect. |

## Inputs
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add outlinedriven/odin-claude-plugin/writing-tla-plus-specs@sha256:a6f75803be300532

The line at the top of this page pins the label git:20260905.f02db66, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_zyl6rmt6rmdmcwcn.svg)](https://markdownregistry.com/a/art_zyl6rmt6rmdmcwcn)

3 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 1 version of this file, committed on Sep 5, 2026.

versioncommittedcommitsizeaudit
git:20260905.f02db66 latest2026-09-05 f02db66 8,307 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (8307 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

outlinedriven/odin-claude-plugin · 40 stars · license Apache-2.0 · pushed 2026-09-29 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_zyl6rmt6rmdmcwcn
GET https://markdownregistry.com/api/v1/resolve?ref=outlinedriven/odin-claude-plugin/writing-tla-plus-specs
GET https://markdownregistry.com/api/v1/blob/a6f75803be3005324a5642cdf1eec0b4b5e41c9e4542221defbd94f0b2d17851

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from outlinedriven/odin-claude-plugin

AGENTS.md AGENTS.md file
outlinedriven/odin-claude-plugin · AGENTS.md
git:20260925.8ce0e87 · audit A · 40 stars
CLAUDE.md CLAUDE.md file
outlinedriven/odin-claude-plugin · CLAUDE.md
git:20260509.7995591 · audit B · 40 stars
agent-environment-retrospective SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/agent-environment-retrospective/SKILL.md · Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from…
git:20260904.2014e73 · audit A · 40 stars
agents-md SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/agents-md/SKILL.md · Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or…
git:20260905.4d9e207 · audit A · 40 stars
check-agent-compatibility SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/check-agent-compatibility/SKILL.md · Use when a human explicitly asks for a full repository agent-compatibility pass returning a scored report with…
git:20260912.6e06ed3 · audit A · 40 stars
claude-settings-audit SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/claude-settings-audit/SKILL.md · Use when setting up a project, auditing agent command permissions, or asking which read-only bash commands and domains…
git:20260912.6e06ed3 · audit A · 40 stars
cli-for-agents SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/cli-for-agents/SKILL.md · Use when asked to build or review a CLI intended for coding agents and return flag-driven, pipeline-safe, idempotent…
git:20260903.c54504d · audit A · 40 stars
harness-port-guide SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/harness-port-guide/SKILL.md · Use when the user asks to make the skills framework work in a new harness, IDE, or CLI. Not for remote, credential…
git:20260912.6e06ed3 · audit A · 40 stars
inits SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/inits/SKILL.md · Use when onboarding to a repository, capturing costly conventions, constraints, or rationale, or improving AGENTS.md…
git:20260904.2014e73 · audit A · 40 stars
mcp-builder SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/mcp-builder/SKILL.md · Use when asked to create an MCP server to integrate an API or service in Python or TypeScript. Not for remote…
git:20260912.6e06ed3 · audit A · 40 stars
multi-agent-tournament-scorecard SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/multi-agent-tournament-scorecard/SKILL.md · Use when agent strategies need a reproducible finite tournament under a frozen evaluation protocol. Not for open-ended…
git:20260912.6e06ed3 · audit A · 40 stars
prohibit-bad-habits SKILL.md skill
outlinedriven/odin-claude-plugin · plugins/odin-agent/skills/prohibit-bad-habits/SKILL.md · Use when a user wants to define patterns the agent should not do. Don''t use for remote, credential, publish, deploy…
git:20260912.6e06ed3 · audit A · 40 stars

Every file in outlinedriven/odin-claude-plugin

Browse by kind, by grade A, or by owner.