Skip to main content
Glama

Reelier

Let your agents write. Keep the receipts.

Your agents worked all night. Here's exactly what changed.

Reelier records the run that worked, freezes it as a replayable skill, and replays it deterministically — every run comes back as a receipt: proof of what the agent did and what changed because of it. Agents make claims. Reelier writes receipts.

npm version CI tests license Discord stars

Website · Docs · SPEC.md

▶ watch with sound (27s)


Receipts on your agent PRs — install and done

Agent-authored PRs (Dependabot, Claude, Codex, Cursor, …) get a receipt comment in seconds: author, files changed, declared scope vs. what actually changed, sensitive paths flagged. No workflow file, no CLI, no config.

→ Install the Reelier receipts GitHub App — free on public repos, forever.

Reelier receipt — agent PR Author: dependabot[bot] · Files changed: 2 (+119 −41) Declared scope: none (add .reelier/scope.yml to enable unexpected-write detection) Sensitive paths touched: ⚠ 1 — package-lock.json Proves scope and change, not correctness

A real receipt from Reelier's own repos — see one live. Declare scope per agent in .reelier/scope.yml (or a reelier-scope block in the PR body) and the receipt reports unexpected writes. The receipt proves scope and change, never correctness or safety.


Related MCP server: @humanaccepted/mcp

Why

AI agents are non-deterministic — the same prompt, a different result every run — and they'll claim they did the work whether they did or not. Reelier records the run that worked, replays it deterministically, and writes a signed receipt that proves it. Point it at your existing CI in one workflow — it adds a verifiable receipt, it doesn't replace your stack.

Measured on a real head-to-head benchmark, same task, same data (full method):

  • 1,000 / 1,000 replays byte-identical

  • Every replay ships a signed receipt — proof of what ran and what changed, never a claim

  • 0 LLM calls at replay — deterministic re-execution, not re-reasoning

Deterministic replay is also ~50× cheaper and ~59× faster than re-running the agent, on the same benchmark.

Install

npm i -g reelier && reelier init
# No Node install needed — same commands via Docker:
docker run --rm ghcr.io/seldonframe/reelier --help

reelier init [--dry-run] performs one checkpointed local inspection across all three Reelier paths: Path A observation coverage, Path B replay/freeze candidates, and Path C boundable/outcome-capable/shadow-only/unsupported connections and candidates. It does not deploy, gate, dispatch, upload, copy credentials, or rewrite host configuration. --dry-run writes nothing; the normal command writes only sanitized artifacts below .reelier/init/.

As an agent plugin

Teach your coding agent when to reach for Reelier. Same two commands, either host:

claude plugin marketplace add seldonframe/reelier
claude plugin install reelier@seldonframe
codex plugin marketplace add seldonframe/reelier
codex plugin add reelier@seldonframe

This installs two Agent Skills and nothing else. reelier-replay teaches your agent to freeze a repeatable tool-call job and replay it at 0 tokens. reelier-write-safety covers bounding an agent's writes before you grant them: what the recorder sees, what a policy refuses, and what a receipt does and does not prove. It ships no MCP servers, so it does not wrap, observe, or gate any tool call on its own; the reelier CLI does that, and the skills drive it via npx. Packaged in both the Agent Plugins v1.0.0 format (plugin/agent-plugins/) and the Claude Code format (plugin/claude/), generated from one source by scripts/build-plugin-packages.mjs.

Verified end to end on codex-cli 0.147.0-alpha.1.2: both formats install, enable, and the skill reaches the model. Other hosts are untested, and per-host status is tracked in docs/specs/agent-plugins-coverage-v1.md §4 rather than claimed here.

How to use it

reelier init --dry-run              # inspect Path A/B/C locally; write nothing
reelier init                        # persist resumable sanitized inspection artifacts
reelier run  <name>.skill.md        # replay deterministically — 0 tokens (read-only by default)
reelier diff <name>                 # SAME or DRIFTED, per step — exit 1 on drift
reelier push <name>.skill.md        # sync receipts to your ledger (opt-in)
reelier ci                          # write a workflow: drift-CI + PR receipts, one command
  1. Inspect, then record or freeze. reelier init reveals observed coverage and local candidates without changing routes. reelier mcp --wrap "<mcp server>" proxies live tools; reelier scan/from-session freezes supported history.

  2. Compile. reelier compile turns a trace into a SKILL.md — 0 LLM calls, minimal assertions, honest gaps printed as Open questions.

  3. Replay. reelier run replays it at Level 0 — no LLM, byte-identical, read-only by default (writes need --allow-writes).

  4. Diff. reelier diff reports SAME or DRIFTED per step, with the failing assertion as the why — exit 1 on drift.

  5. Log in. reelier login connects this machine to Reelier Cloud with a device code in your browser — or set REELIER_CLOUD_URL/REELIER_CLOUD_KEY for CI and self-hosting.

  6. Push. Every run is a receipt; reelier push optionally syncs it to a ledger for a permalink and an embeddable verified-replay badge.

Already have an Agent Skill? Convert it — your skill, minus the model:

reelier compile trace.jsonl --from-skill ./my-skill/SKILL.md

Three tests, one skill

Test

Command

Answers

Determinism

reelier run <skill.md>

Does this still do what it did?

Recovery

reelier run <skill.md> --fail N

If this broke, would the skill notice and heal?

Drift

reelier run <skill.md> --wrap "<your mcp server>"

Has the world moved out from under this skill?

Taxonomy due to Mads Hansen's review of the launch post. Full semantics for each test, including recovery injection and manifest guardrails: docs/REFERENCE.md.

Gate Dependabot / Renovate bump PRs

Dependabot and Renovate open the PR and run your test suite — but neither knows what your agent actually does at runtime, so a dependency bump that silently changes a tool call's shape (a renamed field, a new default, a different error) sails through with green unit tests. This is the check they don't run.

Copy .github/workflows/reelier-bump-check.yml into your repo, point skill: at your own recorded .skill.md file(s), and it will: gate to PRs from dependabot[bot]/renovate[bot] (or a dependencies label), install the bumped dependency, replay your recorded skill live against it at --max-level 0 (0 tokens), and fail the check on the exact step that drifted.

This tests dependency and MCP-tool-call behavior — it does not test model upgrades; --max-level 0 never calls an LLM. Full listing copy and setup: docs/marketplace-listing.md.

Prove it

A pushed receipt carries a ladder of independently-verifiable claims — not one blanket "verified." Depending on what you turn on, it can be signed, timestamped, CI-attested, and carry cross-checkable provider request-ids. reelier verify recomputes every claim offline, and a claim you haven't enabled just renders as an honest gap, never a shamed one.

See a real one: reelier.com/r/HWBdmGob9KeHRqXi-OEaRD0z.

Full 8-rung ladder, what each rung does and doesn't prove: docs/REFERENCE.md.

If your skills are employees

Employee lifecycle

Reelier equivalent

Skillify a session

reelier from-session

Performance review

reelier run + reelier diff

Fleet maintenance

scheduled replays + drift alerts

The record

signed receipts

"Verified" describes the record, never the agent — a receipt proves what ran and what changed, not that the agent was good at its job.

An employment contract doesn't make an employee good — it makes what they did visible and bounded. Same here: receipts prove scope and change, never correctness.

Who it's for

  • Solo dev / OSS maintainer — a real regression test again; drift can't pass silently.

  • Team shipping agent changes — "it ran clean" becomes a checkable PR artifact, not a claim.

  • Agency running agents for clients — signed, timestamped proof-of-delivery a client can verify.

  • Marketplace buyer or seller — corroborated receipts are reviews that can't be astroturfed.

  • Audit-facing ops — a signed, CI-attested trail of every write, idempotency key included.


MIT, free forever (versions ≤0.16.0 remain AGPL-3.0). Your data — skills, traces, runs — is specified in SPEC.md, so leaving is copying a folder.

Contributing: issues and PRs welcome — SPEC.md is the source of truth for formats; fix the code, not the spec. npm test before a PR.

If Reelier saved you a re-run, star it ⭐ — it's how other builders find it.

Available Tools

5 tools
reelier_diffA

Compare two runs of the same skill and report SAME or DRIFTED — the drift-detector for a recorded baseline replayed on a schedule. Compares per-step outcomes, structure, and heal-level from .reelier/runs/.jsonl (defaults to the last two runs); data values that legitimately change run-to-run are NOT drift. Drifted steps carry why (the failing assertion). To check a MODEL upgrade: re-record the workflow with the new model, then diff against your frozen baseline — replaying a pinned skill can't reveal model changes (replay never calls a model). Honest when there aren't two runs yet.

ParametersJSON Schema
NameRequiredDescriptionDefault
cwdNoWorking directory where .reelier/ lives (default: process cwd).
skillYesSkill name (the .reelier/runs/<skill>.jsonl stem) whose runs to compare.
baselineIndexNo0-based index of the baseline run (default: second-to-last).
candidateIndexNo0-based index of the candidate run (default: the last run).

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses behavior: it reads from .reelier/runs/<skill>.jsonl, compares per-step outcomes, reports SAME or DRIFTED with reasons, and does not mutate state. It also explains limitations (replay cannot reveal model changes). This is comprehensive for a read-only comparison tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-organized paragraph. The first sentence captures the core purpose, followed by details on comparison criteria, usage example, and edge case. Every sentence serves a purpose without redundancy, making it highly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description explains the return values (SAME or DRIFTED with reasons). It covers file paths, default behavior, legitimate change handling, and when the tool cannot be used (fewer than two runs). For a tool with 4 parameters and no annotations, this is remarkably complete and leaves no critical gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers all 4 parameters with descriptions (100% coverage), so baseline is 3. The description adds value by explaining defaults (baselineIndex and candidateIndex default to last two runs) and the file path pattern. It also gives contextual usage examples, raising the score above baseline but not to 5 since schema already does most work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with a clear verb ('Compare two runs') and specific resource ('same skill'), immediately distinguishes from siblings by calling itself a 'drift-detector'. It outlines output ('SAME or DRIFTED') and mentions comparison dimensions (per-step outcomes, structure, heal-level), making purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use guidance (e.g., 'To check a MODEL upgrade'), explains defaults ('defaults to the last two runs'), and warns when not to use ('Honest when there aren't two runs yet'). It also clarifies what constitutes drift vs. legitimate changes, leaving no ambiguity about proper invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reelier_from_sessionA

Compile a SKILL.md from a session transcript. USE WHEN: the work ALREADY happened (this session or by hand) — recording can't be retroactive. NOT for work that hasn't happened yet (record that live via the reelier mcp proxy). Get the transcriptPath from reelier_scan first. Returns the written skill's path, stats, and open questions — or, honestly, that nothing in the transcript was replayable. If the workflow used a relative time window ("this week"), bind it to a date variable (e.g. {{today-7d}}) so later replays pull the CURRENT window, not a frozen one — the openQuestions output flags this.

ParametersJSON Schema
NameRequiredDescriptionDefault
outNoOutput path for the compiled SKILL.md (default: <cwd>/<name>.skill.md).
nameNoSkill name (also the default output filename stem).
forceNoOverwrite an existing file at the output path.
transcriptPathYesPath to a session transcript (.jsonl) to compile.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses return values (skill path, stats, open questions, or indication of nothing replayable), the behavior with relative time windows (binding to date variable), and that openQuestions flags this. It also notes the 'force' parameter for overwriting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and usage. Each sentence adds value, though slightly verbose. Could be tightened slightly, but overall well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but description explains all return values. Covers required parameter source, common pitfalls (time window binding), and provides complete context for a tool with 4 parameters and no annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. Description adds significant value: explains transcriptPath should come from reelier_scan, default output path, force overwrite, name as filename stem, and the openQuestions tip about relative time windows. This goes well beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool compiles a SKILL.md from a session transcript, using a specific verb ('Compile') and resource ('SKILL.md'). It distinguishes from sibling tools like reelier_scan and reelier_replay by specifying it's for work that already happened, not for live recording.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use ('work ALREADY happened') and when not to use ('NOT for work that hasn't happened yet'). Advises to get transcriptPath from reelier_scan first, providing clear context and exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reelier_pushA

Push a skill's local run records (and, on first push, the skill file) to your receipt ledger, where each receipt gets a shareable permalink + verified-replay badge. Requires an apiKey — from reelier login (or REELIER_CLOUD_KEY in env) — reports skipped-no-key honestly when absent; the cloud URL always resolves on its own. USE WHEN: a run's receipt should be durable or shareable.

ParametersJSON Schema
NameRequiredDescriptionDefault
allNoIgnore/reset the cursor — reconsider every record from the start.
cwdNoWorking directory to resolve .reelier/ state under (default: process cwd).
dryRunNoReport what would push; make no network calls, touch no state.
skillPathYesPath to a .skill.md file whose run records should be pushed.
withSkillNoUpload the skill file even if it was already uploaded before.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses several behavioral traits: requires an apiKey, reports skipped-no-key when absent, always resolves cloud URL, and on first push also uploads the skill file. It does not cover all side effects (e.g., cursor behavior, state changes) but is fairly transparent for a push operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, fitting key points into a single paragraph with a clear 'USE WHEN' signal. It avoids redundancy but could be slightly more streamlined by merging the apiKey note into a single sentence. Overall, it is well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 5 parameters and no output schema, the description covers the main purpose and usage context but lacks details on parameter-specific behavior (e.g., how 'all' resets cursor, dryRun impact) and output format. It is adequate but not fully complete for a complex tool with multiple options.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add meaningful information about parameters beyond the schema; it mentions the apiKey requirement but not how parameters like 'all', 'dryRun', or 'withSkill' affect behavior. Thus, it adds minimal value over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Push a skill's local run records... to your receipt ledger') and the result ('shareable permalink + verified-replay badge'), with a specific verb and resource. It distinguishes from sibling tools by focusing on run record pushing, while siblings like scan, replay, from_session, and diff serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a 'USE WHEN' clause ('a run's receipt should be durable or shareable') that provides clear context for when to invoke the tool. It also notes the apiKey requirement, but does not explicitly compare to sibling tools or state when not to use it, slightly reducing the score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reelier_replayA

Run a skill file at Level 0 (deterministic replay, zero LLM calls) and return the real run record: per-step outcomes, timing, totals, and — when a step drifted — why (the failing assertion). Never fabricates a pass. Reproduces the recorded TOOL CALLS (MCP/HTTP) only — no LLM reasoning or prose step re-runs. It does NOT schedule itself: pair with cron/CI for recurring runs. Pass vars to fill {{templated}} inputs (e.g. a computed date window) so a replay pulls current data. READ-ONLY by default: 'idempotent-write' steps are held back (reported as a refused/failed step) unless you pass allowWrites — so replaying never re-fires a write.

ParametersJSON Schema
NameRequiredDescriptionDefault
cwdNoWorking directory the run record is written under (default: process cwd).
varsNoTemplate variable bindings ({{name}} -> value) — e.g. a computed date window so a relative-date skill replays against the current period, not a frozen one.
wrapNoDownstream MCP server command line(s) to connect for MCP-tool steps (same shape as the CLI's --wrap).
skillPathYesPath to a .skill.md file to run.
allowWritesNoAllow 'idempotent-write' steps to execute. Default false — replay is READ-ONLY, so re-running never re-fires writes.
allowDestructiveNoAllow steps whose effect is 'destructive' to run.

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It thoroughly explains Level 0 replay, zero LLM calls, reproduction of tool calls only, read-only default, and handling of idempotent-write steps. It also discloses that it never fabricates a pass and reports drift reasons.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is generally concise and front-loaded with the main action. It uses multiple sentences but avoids excessive verbosity. Could be slightly tighter, but still efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but description clearly states what the return value includes: per-step outcomes, timing, totals, and failure reasons. It covers key aspects like templating, read-only safety, and idempotent-write handling. Minor omission of error scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so schema descriptions exist for all parameters. The description adds context for vars (templating), allowWrites (read-only default), and wrap (MCP server connections), but these are already clear from schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool runs a skill file at Level 0 deterministic replay, returning the run record. It specifies the verb 'run' and resource 'skill file'. It distinguishes from siblings by noting it does not schedule itself and is read-only by default, but does not explicitly compare to reelier_scan or reelier_push.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides guidance on when to use: for deterministic replay with zero LLM calls, and mentions pairing with cron/CI for recurring runs. It explains how to pass templated vars and the read-only nature with allowWrites option. However, does not explicitly differentiate from sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reelier_scanA

Discover replayable workflows in an agent's session history (defaults to ~/.claude/projects). Returns each session's transcript path — feed one to reelier_from_session. Only MCP/HTTP tool-call sequences are replayable; native file/shell actions are reported as skipped, never fabricated into a fake result. USE WHEN: deciding which past work is worth compiling into a replayable skill.

ParametersJSON Schema
NameRequiredDescriptionDefault
dirNoDirectory to scan for agent session transcripts (default: ~/.claude/projects).

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses that native file/shell actions are reported as skipped and never fabricated, which is a key behavioral trait. Additional details like side effects or auth needs are absent but acceptable for a scan tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences plus a 'USE WHEN' clause, all front-loaded and free of fluff. Every sentence contributes essential information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has one parameter, no output schema, and is a straightforward scanner, the description fully covers purpose, behavior, and usage guidance. It explains return values (transcript paths) and even suggests the next step (feed to reelier_from_session).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter 'dir'. The description adds value by noting the default value (~/.claude/projects) and clarifying the context of scanning agent session transcripts, going beyond the schema's basic description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool discovers replayable workflows in session history and returns transcript paths. It specifies the default directory and explicitly names a sibling tool (reelier_from_session) for follow-up, distinguishing its purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes an explicit 'USE WHEN' statement: deciding which past work to compile into a replayable skill. It also clarifies that only MCP/HTTP tool-call sequences are replayable, guiding proper use, though it does not explicitly state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: scan discovers workflows, from_session compiles them into skills, replay executes skills, push shares receipts, and diff compares runs. No overlap or confusion.

Naming Consistency5/5

All tools share the 'reelier_' prefix followed by a clear verb or action (scan, replay, push, from_session, diff). The pattern is consistent and intuitive.

Tool Count5/5

Five tools is a well-scoped set for the domain of replayable skill management. Each tool serves a core function without redundancy or excess.

Completeness4/5

The tool surface covers scanning, compiling, replaying, sharing, and comparing skills. However, there is a notable gap: live recording of workflows is mentioned but not provided as a tool, which limits the server's ability to create new skills from scratch.

Maintenance

ActivityActive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    MCP server that auto-emits tamper-evident receipts for every tool call, enabling EU AI Act Article 12 compliance with signed, chain-linked receipts.
    1
  • F
    license
    Not graded
    quality
    B
    maintenance
    Records all MCP tool interactions in a centralized ledger, enabling developers to trace, replay, inspect, and audit AI agent workflows.
  • A
    license
    Not graded
    quality
    B
    maintenance
    Local-first MCP and coding-agent reliability harness that captures bounded, sanitized failure evidence and generates deterministic executable regression tests. Capture is opt-in; no API key or hosted service is required.
    2
    Apache 2.0

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/seldonframe/reelier'

If you have feedback or need assistance with the MCP directory API, please join our Discord server