Repository navigation
v2.0.0 — Universal core, cross-harness gating, Cowork toggle
v2.0.0 — Universal core, cross-harness gating, Cowork toggle
v1 gated skills for Claude Code only, by hiding descriptions behind domain
gate files. v2 keeps that mechanism but rebuilds it as a harness-neutral
CLI + MCP server (mo), so the same registry and gates can drive Claude
Code, Antigravity (AGY/Gemini), Cursor, Windsurf, or any MCP-capable agent —
not just one client.
Universal core
- New
bin/mo.tsCLI and MCP stdio server backed by a shared registry,
independent of any one harness's plugin format. claude-setupwrites a self-contained, plug-and-play Claude Code plugin
(gate skills + aSessionStarthook driven bymo).agy-setupgenerates the equivalent gate skills for Antigravity
(master-of-design,master-of-dev, …), with cross-harness skill access
so a skill installed for one harness is still listed for the other.- Gate files now render per source (
gates/<source>/<gate>.txt), so each
harness only ever sees skills it can actually run.
Real dormancy, not just hidden descriptions
mo park/mo unpark/mo unparkedmove raw skills between
~/.claude/skills/and askills-library/, so an always-on skill can
actually become dormant instead of just having its description tucked
behind a gate.mo doctorcatches dead MCP binaries, disabled plugins backing a gated
skill, and other install-time breakage — with a one-line fix suggestion
each.mo cowork [list|on|off] [domain](this release) toggles the ~17
account-synced Cowork skill packs (figma,design,data,marketing,
engineering,product-management,productivity,pdf-viewer,
cowork-plugin-management, plus a few document skills) that Claude Code
accounts with Cowork mirror onto disk. These have no marketplace entry
and physically moving/deleting them doesn't work — the account sync
re-creates them mid-session — butclaude plugin enable/disable <domain>@synceddoes, and that's what this command drives. Cowork's own
sync and collaboration features are untouched; only whether Claude Code
loads the pack into its system prompt is toggled.
Reporting & classification
mo full/mo status/check-skills-allgive a token-safe compact
inventory by default, with a--rawguardrail for the full text dump.mo classifytakes--desc,--cluster,--domainfor filing
unclassified components straight from the scanner's guess.check-skill(brief) andcheck-skill-all(full) give AGY sessions the
same proactive token-waste diagnosis Claude Code gets.- Token-savings math is now scoped to each report's own source, so a
Claude-only session isn't diluted by Gemini-only components in the
denominator.
Net effect
On the maintainer's own machine, going from a fresh v1 baseline to this
release's mo cowork off state: 87% token reduction (37,598 → 4,951 tok
per session), matching v1-era savings despite covering roughly 5x more
components (625 vs. 129) across more harnesses.
See the README for install steps and the full command list.