Maestro Verify logo

Maestro Verify

Community
ReinaMacCredy
maestro-verify

Verify and close - cross-check coverage, run the VERIFY table, deliver the verdict, harvest durable lessons into decisions, close the bundle, and never claim remote state from local evidence.

Overview

PublisherReinaMacCredy
Repositorymaestro
Skill namemaestro-verify
Stars
232
Forks
23
Bundled files
3
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 3 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by ReinaMacCredy on GitHub. Read the source before you install it.

Installation

Install the Maestro Verify AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/ReinaMacCredy/maestro.git /tmp/maestro
mkdir -p .claude/skills
cp -r /tmp/maestro/src/plugins/skills/maestro-verify .claude/skills/maestro-verify
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Maestro Verify in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Maestro Verify on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Maestro Verify is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

maestro-verify

Use for verification and close. Read WORKFLOW.md for testing, recovery, authorization, and completion rules. Delivery actions such as commit, install, push, or release remain separate gates.

Precondition: an open bundle with a drafted VERIFY.md. Without a bundle, verify inline and close a tracked item with maestro work done; an untracked quickfix needs no record. This skill's table pass is for Full work. The evidence-layer vocabulary below still applies to any claim at any tier.

Evidence layers

Proof follows five links. Claim only as far as the last proven link.

  • source - source-level tests, lint, type checks, or direct inspection.
  • artifact - the built or packaged output is present and has been read back.
  • installed - the installed stamp, version, or files match the intended artifact.
  • live - the running process, pid, or active runtime matches the installed layer.
  • journey - the real user path reaches the observable outcome end to end.

"Tests pass" is a source claim. A claim that touches install or runtime must include a readback at that layer. A suite that is green only on this machine is not a source claim about the repo: before any commit, release, or handback gate, re-run the touched suite with the developer environment removed (HOME=$(mktemp -d), env -u HERDR_ENV). A test that reads the installed copy, the room, or a home config passes for you and fails in CI. Every proof and VERIFY result lists untested links explicitly as NOT TESTED, never by omission:

text
proof: "suite 135 pass @ a52bd4a7 (source); runtime stamp readback a52bd4a7 (installed); live: NOT TESTED"
Assumptions not verified: None
Residual risks: None

Verify

  • Cross-check the evidence plan against acceptance and relevant risks. Map existing tests, necessary new checks, readbacks, or baselines to VERIFY.md. A missing behavior check is a gap; the absence of a newly written test is not.
  • Run every VERIFY.md scenario against its work item's acceptance/claims and fill the Result column; run each anti-goal check (grep, diff, readback). Stamp the pass with its date and commit. Results hold this run only: a re-run replaces prior results wholesale, and a failed pass leaves its one-line failed: note on the work item, never accumulated rounds in VERIFY.md. Apply Recovery and verification when a scenario cannot run as written: document and execute an equivalent check without changing acceptance, or report the gap if equivalence is unknown.
  • Run the repo's checks for the touched surface (tests, lint, types, build), then freeze and review the task-owned diff: every changed line traces to the SPEC's scope or a linked work item; nothing unrelated is staged.
  • For a concrete assertion-strength concern, inspect whether the existing check distinguishes the approved outcome from the suspected wrong behavior. A focused mutation can establish that; restore it before continuing. Do not expand verification into an unrelated edge-case or coverage campaign.
  • Re-read the user's exact delivery authority and target before any gate.
  • Select one legal next gate at a time: final verification, independent QA or witness, scoped commit, local install, external delivery, or stop. Do not bundle gates whose authority differs.
  • Read back the actual result: test output, commit hash, installed version. A started or interrupted command is not delivery evidence.

For substantial diffs, verify in a fresh context: dispatch a subagent that reads only the bundle and the diff - the implementer verifying their own work invites confirmation bias. The subagent never fixes anything: mutants it flips are reverted before reporting, and on FAIL it records the verdict and stops; routing back to implementation belongs to the parent turn that holds the user's ask. A subagent that fails to start or report is a dispatch failure, not evidence: run the checklist in this session instead of polling for it.

On FAIL, leave maestro work note <id> "failed: <one line>" and return the evidence to the implementation owner. Use the shared recovery rule to choose the next action from the cause, not a failure count. Read prior failed notes so a new session does not repeat the same uninformative attempt.

Read-only review method: references/audit.md. When the failure location is unclear, follow references/triage.md.

Red flags

The thoughtThe reality
"It obviously passes - running it is a formality"Scenarios exist because "obviously" has been wrong before. Run every one and record the output.
"The scenario command is stale, so I can skip the check"Repair it or demonstrate an equivalent measurement; preserve acceptance and record the change.
"The mutant survived, but the code is clearly fine"If the mutant violates acceptance, the check is weak; report the gap rather than filling PASS.
"I wrote this diff - I know it works"That is the confirmation bias the fresh-context rule exists for.
"I'll just fix this small failure while I'm verifying"Verify delivers a verdict, never fixes. A FAIL routes back to maestro-work.

Learn, then close

Before closing, harvest what outlives the bundle (references/learning.md): a verified correction or durable constraint becomes a locked decision or a work note - never only chat.

Use Completion and delivery to decide whether the accepted scope is complete or an authorized transfer is ready. Close procedure:

  1. Run maestro handoff <bundle-id> one last time, then add a dated close-out line citing verification evidence and the candidate (base commit plus task-owned diff if uncommitted), or the explicit handoff/cancellation. Record pending delivery actions and retained authority in the handoff.
  2. Harvest: any mid-flight choice that is hard to reverse, surprising without context, and a real trade-off is a locked decision with its rejected alternative; a new domain term is maestro term add.
  3. maestro bundle close <id>: snapshots the trio into the store and archives the directory.

The snapshot is the durable memory; after close the directory is disposable and maestro search still recalls the text.

If acceptance includes delivery not yet authorized or proven, leave the work open with that exact next action and blocker. Otherwise a verified implementation may close without a commit. Do not mark failed acceptance complete; an explicit transfer or cancellation records the unresolved failure rather than calling it PASS. Never stage or commit bundle contents.

Use the shared review routing. A code change after the verdict reruns the affected VERIFY.md scenarios before close; the old verdict does not cover the new diff.

Definition of done

Acceptance met, changed surface verified, available test/lint/type/build checks pass, claims name their falsifier, risky changes carry rollback notes. Never claim push, release, or publish from local state; those gates are the user's.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Maestro Verify AI skill do?

Verify and close - cross-check coverage, run the VERIFY table, deliver the verdict, harvest durable lessons into decisions, close the bundle, and never claim remote state from local evidence.

Why use Maestro Verify on TypingMind?

Because you install it once and use it with any model. Maestro Verify is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Maestro Verify in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/ReinaMacCredy/maestro/tree/main/src/plugins/skills/maestro-verify. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Maestro Verify?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Maestro Verify?

As many as you like. As long as a model supports skills, you can use Maestro Verify with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Maestro Verify AI skill free?

Yes. It is published on GitHub by ReinaMacCredy under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇