"Check this email before I send it" reached a checklist instead of the render gate, and the install screen led with the price
Orbit's install screen opened on "Free lifecycle marketing in Claude — no licence key, no payment, every tool unlocked", and the router's own first sentence — the one Claude reads before anything else in a session — was "a unified lifecycle marketing operating system for advanced CRM, growth, and martech work", which no product could fail to be. Neither said the one thing a stranger can watch Orbit do in a minute: check an email in a real browser before it is sent. Every door now opens on that. The manifest description, the README, the router's opener and the homepage all lead with the deed and close on the price. Saying the sentence turned out to be the easy half. Typed into orbit_route_task on 0.39.1, "check this email before I send it" ranked pre-launch-review at 14 over email-render-qa at 9, and "build me a lifecycle brain" resolved to copy-framework at 6 with template-brain nowhere in the top three — the front door was promising work the router could not hear a request for. Both route first now. The router's Skill Index, which listed 53 of the 86 skills it ships, lists all of them, and its own description stops claiming 62 protocols and 84 tools. Underneath: orbit_lifecycle_diagram crashed on any spec that had lost its mermaid blob, and had since the first commit.
What shipped
•Behaviour change — the doors lead with the deed. manifest.json's description, README.md's first line and orbit.md's opener now all begin the same way: Orbit checks every email in a real browser before you send it — the first thing it ever caught was its own brand colour, too faint to read. The design system and lifecycle brain come second; free, no licence key, every tool unlocked closes. The README also states what the website account actually asks for — email, first name, a password and a security question, no card — and orbit.md's canonical pre-send sequence names orbit_render_gate ahead of orbit_qa_email: the browser measurement first, then the markup checks, which are a complement rather than a substitute.
•Fix — the router resolves the doors' own words. template-brain takes "lifecycle brain" as a synonym and triggers on "build me a lifecycle brain" and "turn the emails I already send into a design system"; email-render-qa claims "check this email before I send it" and "run the render gate", and its protocol now runs orbit_render_gate first — the email laid out at 640px and 390px in a real browser engine — then orbit_qa_email for alt text, heading order and dark-mode risk. Measured against 0.39.1: the render-gate sentence goes from third to first at 21, the brain sentence from absent to first at 23. A test now holds five door sentences at rank one, so a copy edit that reorders a promise fails in the suite rather than in someone's first chat.
•Fix — the Skill Index in orbit.md lists every skill. It carried 53 rows of 86. The 33 missing included the whole Braze platform group — canvas creator, canvas QA, canvas reader, instance audit, segment analysis and ten more — the Customer.io, Klaviyo, Mailchimp and Salesforce Marketing Cloud documentation experts, both Stripo skills, gmail-delivery-truth, ip-warming, sources and template-brain itself. Anything that picked a protocol from the index rather than through orbit_route_task could not reach them. The website's skill count now derives from the release as well — a counts.json sidecar published beside the manifest, since the MCPB schema will not carry the number — instead of a hand-kept list that had drifted to 79.
•Bug fix — orbit_lifecycle_diagram renders a spec that has lost its mermaid blob. The renderer wrote spec.mermaid to disk unguarded, and a spec a model retypes or hand-trims loses that multi-line field first, so the whole render threw — and had since the tool's first commit on 31 March. It now rebuilds the blob from the spec's own nodes and edges with the same function the build step uses. Rendered with and without the blob, the two .mmd files are 574 bytes each and byte-identical.
•Setup fix — orbit_check_stripo_auth tells a Claude Desktop user where the token goes. Both failure messages said to set ORBIT_STRIPO_REST_API_TOKEN, an environment variable a Desktop install cannot reach. They now name the Stripo REST API Token field under Settings → Extensions → Orbit and the step nobody guesses: fully quit and relaunch Claude Desktop (Cmd+Q on Mac; the system tray or Task Manager on Windows), because Desktop hands settings to the server only when it starts.
•Setup fix — the downloads page names the registry package that receives new versions: io.github.justinwilliames/orbit-lifecycle-mcp. It named io.github.justinwilliames/braze-lifecycle-mcp, which is deprecated and stopped at 0.31.0; the older orbit-for-claude entry points at pre-0.28 builds that still carry the removed licence gate. The getting-started page opens on a prompt that needs nothing from you — Claude writes a two-line test email with a too-faint brand colour and runs it through the render gate — and the skill named under each of the seven prompts is the one the router actually returns for it, which was true of two of the six before.
•The README's two hero images no longer render as white boxes on GitHub's dark theme. Both were flat RGB cards; they are RGBA with transparent padding now. icon-light.png, a byte-for-byte duplicate of icon.png, is retired, and the icon has a vector master in assets/icon.svg for the first time, traced from the shipped raster.