Skip to content

feat: serve the synthetic tutorial and report HALTED honestly - #40

Merged
abrichr merged 6 commits into
mainfrom
agent-halt-skill-2026-08-29
Aug 29, 2026
Merged

feat: serve the synthetic tutorial and report HALTED honestly#40
abrichr merged 6 commits into
mainfrom
agent-halt-skill-2026-08-29

Conversation

@abrichr

@abrichr abrichr commented Aug 29, 2026

Copy link
Copy Markdown
Member

Summary

OpenAdapt is a compiled program for repeating GUI writes that have no API, and this package is the local MCP and Agent Skill adapter that invokes that program.

Day-1 for a solutions engineer is now:

pip install openadapt
openadapt quickstart
openadapt-agent serve --allow-run

serve --allow-run with no --bundles generates the public MockMed tutorial at serve time and keeps the app up. --tutorial is still the read-only generator. Registry-launched installs still require --bundles and stay read-only until --allow-run.

A client calls run_local_quickstart. The public result is a receipt: status, requires_seal: true, frames_included: false. No screenshots leave the box. If execution_outcome is HALTED, the public message says the record did not change. Production-eligible VERIFIED without a Seal is unsigned success and fails.

A reviewer who will merge this can check:

  • serve --allow-run cannot be combined with --bundles, --url, or --config when it implies --tutorial.
  • The tutorial path still shells out to Flow's fail-closed run verb. It does not pass --approve-unverified-writes.
  • Write tools advertise requires_seal: true on MCP _meta. If the tool returns unsigned success, treat it as failure.
  • tests/test_partner_kit.py invokes python -m openadapt_flow tutorial --help and the MockMed optimistic oracle. Floor CI pins openadapt-flow==1.26.0, which has the tutorial verb serve --allow-run needs but not --break-it (that flag arrived in 1.29.0). Current Flow still asserts --break-it. The halt demo on this package is openadapt quickstart --break-it. The rest of the suite still stubs openadapt-flow run. Playwright VERIFIED stays in Flow's weekly tutorial e2e.

The halt demo in the README is openadapt quickstart --break-it. That independent system-of-record check rejects a fake success banner.

Opened by an agent session, not the founder.

Give assistants a three-line Claude Code / Cursor install that generates
the public MockMed bundle at serve time. Skill frontmatter, server.json,
and llms.txt share one identity sentence. A HALTED result means the
record did not change.
MCPB may ship skills/*/SKILL.md. The skill and README now say a local
unsigned replay may complete, and production success without a Seal is
failure. --break-it remains the halt demo.
MCP server.json description maxLength is 100. The shared identity
sentence now fits that bound and still names the program.
Write tools set MCP _meta.requires_seal. A production-eligible VERIFIED
report without a Seal is error. Local unsigned replay stays free.
The Day-1 partner kit is `openadapt-agent serve --allow-run` with no
--bundles. That generates the public synthetic tutorial, keeps MockMed
up, and returns a receipt with frames_included false. --tutorial remains
the read-only generator. One test invokes the installed Flow CLI.

Opened by an agent session, not the founder.
CI's 3.10 floor job pins openadapt-flow==1.26.0. That release has the
tutorial verb serve --allow-run needs; --break-it arrived in 1.29.0.
The halt demo on this package is `openadapt quickstart --break-it`.
Current Flow still asserts --break-it.

Opened by an agent session, not the founder.
@abrichr
abrichr merged commit 39a6d98 into main Aug 29, 2026
10 checks passed
@abrichr
abrichr deleted the agent-halt-skill-2026-08-29 branch August 29, 2026 19:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant