multica-ops
Mops, your Executive Advisor for Multica — build and run an autonomous company of AI agents: interview, bootstrap, conveyor, console.
Open source Open in the app JSON README (API)
About
Mops, your Executive Advisor for Multica — build and run an autonomous company of AI agents: interview, bootstrap, conveyor, console.
Details
- Kind
- Plugins
- Topic
- No topic detected
- Publisher
- jamillazarev
- Origin
- gemini
- Category
- ferramentas
- Version
- 0.4.15
- Stars
- 10
- Last push
- 2026-09-05T15:34:05Z
- Repository state
- ativo
- Language
- Shell
- License
- Apache-2.0
- Added
- 2026-08-30 14:13:39
- Updated
- 2026-09-05 23:00:32
- Origin id
jamillazarev/multica-ops
README
<p align="center"> <img src="assets/mops-docs.png" alt="Mops — your Executive Advisor" width="240"> </p> <h1 align="center">multica-ops</h1> <p align="center"> Meet <b>Mops</b> 🐶 — your Executive Advisor for <a href="https://multica.ai">Multica</a>.<br> Say what you need; it shapes the work <b>before</b> staffing it, runs the company, and stays your console.<br> Built on the platform's own primitives, not beside them — gates that name what enforces them, evidence on every claim. </p> <p align="center"> <a href="https://ai.jamillazarev.com/skills/multica-ops/overview"><img alt="docs" src="https://img.shields.io/badge/docs-ai.jamillazarev.com-black"></a> <a href="https://github.com/jamillazarev/multica-ops/releases/latest"><img alt="release" src="https://img.shields.io/github/v/release/jamillazarev/multica-ops?label=release&color=black"></a> <a href="LICENSE"><img alt="license" src="https://img.shields.io/github/license/jamillazarev/multica-ops?label=license&color=black"></a> <a href="https://github.com/jamillazarev/multica-ops/actions/workflows/preflight.yml?query=branch%3Amain"><img alt="preflight" src="https://github.com/jamillazarev/multica-ops/actions/workflows/preflight.yml/badge.svg?branch=main"></a> <a href="https://ai.jamillazarev.com/skills/multica-ops/coverage"><img alt="coverage map" src="https://img.shields.io/badge/coverage-map-black"></a> </p> --- Most "agent team" tooling is a prompt and a hope. This is **an operations department in markdown, sitting on a real platform** — Multica owns the issues, agents, squads, stage barriers and runs; this skill owns the method that uses them. Sixteen trigger-loaded files you can read, diff and delete, **including the parts it admits nothing enforces**. --- ## One minute in ```sh claude plugin marketplace add jamillazarev/multica-ops claude plugin install multica-ops@multica-ops ``` Then say what you need — no command required, any language. Mops runs day zero itself (installed · signed in · a workspace · daemon up · runtimes), reports the whole ladder at once with the fixes, and takes the right entrance: | What you have | Where it goes | |---|---| | nothing yet | the work is shaped first, then staffed — `/multica-ops:init` | | a Multica workspace already | an audit, then fixes in batches you approve — `/multica-ops:join` | | a backlog in Linear or Jira | a mapping shown before anything is written — `/multica-ops:import` | | a list of tasks and no tracker | executors and gates, no PM layer — `/multica-ops:mops crew` | | one job, no team | three questions and none of the machinery — `/multica-ops:quick` | | a question | an answer, and nothing is created — `/multica-ops:consult` | **Two questions are never skipped** — how much you want to be in the loop, and what you are actually expert in. Everything else has a default good enough to leave alone, and **"defaults"** takes all of them at once. Every other install route — skills.sh for any harness, Gemini CLI, Codex, Antigravity, and importing the skill into a Multica workspace — is in **[INSTALL.md](INSTALL.md)**, each measured end to end rather than assumed. --- ## Different, by design - **A catch does not become a rule the day it is caught** — a dated line immediately, a task on the second occurrence, and a week before it enters the guide. Repairs never wait; the ladder governs lessons. **Measured at 0 of 3**, and named as prose that needs a form. - **Two runs that disagree stop the work** at the second disagreement, not the third — the count is flips, not attempts, and what escalates is *the question is unstable*. **Measured at 3 of 3.** - **A new standing commitment says what it replaces** — a library, a supplier, a subscription. Does it need to exist · is it already here · native to the platform · one line: every rung but the last is judgement, and whether the answer was written down is not. - **Native-first, not a parallel universe.** Squads, stage barriers, @mention handoffs, permissions and branch protection are Multica's real primitives; where the platform already does a thing, the skill uses it instead of growing a copy that drifts. - **The work is shaped before it is staffed** — a team proposed for work nobody scoped is how you get twelve agents and no product. - **Gates say what actually holds them** — a request a human answers, a validator that refuses, branch protection, the platform itself, **or `prose-only`, which means nothing does** — and the prose-only rules are listed by name. A gate believed in but not enforced is worse than a stated rule. - **Every claim carries how it is known** — measured · cited · recalled · a judgement call, or `unknown` — and the rung travels with the claim, so nobody promotes another's guess into a fact by quoting it. - **Every decision runs one loop** — frame it, **search rather than recall**, compare, choose and say why, then check it survives being wrong. Prioritisation, tool choice, the role-builder and process discovery are all that same loop. - **It finds the right *process*, not just the right tool.** Asked to design an app it researches how the craft works — architecture, flows, low-fi, **your approval of the structure**, then screens composed from a real component library — and the design gate *rejects* instead of rubber-stamping. Mops never signs off design; you do. - **"Remember this" lands in a file, never in the chat's memory** — a guide line, a decision, a register — and the home is named back to you. - **A persona is not a hire.** Synthetic rounds give **direction, never magnitude**, said before anything is spent; 🎭 entities are excluded from headcount and billed to their own line. - **Cost is sliced so waste is a number, not a feeling** — per agent, per feature, and *spent on work that produced nothing*, all from `issue usage` and `runtime usage` at list prices. - **A run that dies resumes** — what was committed, applied and remains is read back from the record, and **applied work is never redone**. - **Autonomy is earned and can go down**, and no history buys the four gated kinds — spending, outward acts, destruction, reshaping the team. - **It knows when the tree is not its own.** `_ops/` is a door shared with the sibling project `opsinist`, deliberately — a successor finds the predecessor's record where it would have put its own. So ownership is read from a marker before anything is written, and a tree operated by another system is **named and handed back, untouched**. - **It works outside software** — *ship* is an episode published, a batch sent, a letter mailed; a bakery has no deploys. - **It maintains itself through its own machinery** — proposed, never self-merged, with validators in CI refusing what prose cannot. The full inventory lives in **[the docs](https://ai.jamillazarev.com/skills/multica-ops/overview)**: start at [the skill](https://ai.jamillazarev.com/skills/multica-ops/the-skill), then [use cases](https://ai.jamillazarev.com/skills/multica-ops/use-cases) and [commands](https://ai.jamillazarev.com/skills/multica-ops/commands). --- ## Honest about the ceiling Stated rather than wished away — every number carries where it came from: | Limit | What it means | How it is known | |---|---|---| | **6 tasks per agent · 20 per daemon** | the tighter one wins; fan-out past it just queues | measured | | **a `local_directory` serialises** | one task at a time, forever, however wide you decompose | cited (REFERENCE §object model) | | **`workspace delete` is not in the CLI** | Mops cannot remove a workspace it created, and says so | measured, CLI v0.4.26 (2026-08-15) | | **autopilot failures are silent** | no auto-retry, no inbox post — run them in `create_issue` mode and subscribe the owner | measured | | **start dates are enforced by the team** | nothing on the platform stops an agent beginning early | cited | | **some rules are `prose-only`** | nothing enforces them; they are listed by name rather than believed in | measured | **30 stratified eval scenarios** — from a job too small to deserve a company to an import carrying a hidden instruction — judge the **end state, not the route**, with a player that never saw the rubric and a judge that did not write the transcript. Each release records its run in `evals/runs/<version>.md` with `not run` listed rather than omitted, and **a minor or major is not tagged without one**. The pass-rate is deliberately **not** treated as success: it detects regression, it is not evidence the behaviour was ever good. --- ## How you would know it is working **Success here shows up as an absence.** Nothing decided twice. Nothing rebuilt that was already built. No bill nobody saw coming. Nobody asking *"who chose this, and why?"* and getting silence. The tests worth being judged on: - **Can a stranger continue?** Hand over the repo and the workspace, give them a task. If they can start without asking what was meant, the record is real. - **Did the dead run resume** without redoing work that was already applied? - **Is the waste share falling?** - **How often do you go behind it** — re-reading the diff because you don't believe "done"? Each time is a failure even with every gate green, because **a console you audit is not a console.** --- ## Two seats, one advisor Mops is one advisor with one name, in two places. **In the CLI** — full machine reach (shell, git, the `multica` CLI, deploy), instant chat, its own quota. **In Multica** — an optional resident agent carrying this same skill, present while you are away: async, sharing the team's session limit, best for status and `@Mops` advice on an issue. They share no live chat memory, so **the bridge is written state**. The test that keeps it honest: the project must rebuild from repo + workspace alone. ## Works beyond Claude Code Plain **SKILL.md + markdown** — the Agent Skills convention. [skills.sh](https://skills.sh) installs it into Claude Code, Cursor, Codex, Windsurf, Gemini CLI, Copilot and the rest; **[AGENTS.md](AGENTS.md)** routes any agent that lands in the repo, **[GEMINI.md](GEMINI.md)** does the same for Gemini CLI, and **[CLAUDE.md](CLAUDE.md)** carries the session loop for anyone *developing* the skill rather than using it. Slash commands are a Claude Code plugin bonus (namespaced `/multica-ops:…`); everywhere else plain language reaches the same flows. > **Layout note:** the corpus is at **`skills/mops/SKILL.md`**, one folder per verb beside it — > the plugin layout where **the folder name becomes the command** (`skills/init/` → > `/multica-ops:init`). A single `SKILL.md` at the repository root is the *one-skill* form and > silently suppresses every other command, which is the defect this layout fixes (measured > 2026-07-31). ## Why a skill, not another CLI agent The value is the **operating doctrine** — the decision loop, the gates, verify-first — not the agent loop underneath it, and that loop is commoditising: as a skill, Mops inherits every harness improvement for free and bills through the harness you **already pay for**. The two-seats design needs Mops to be a guest *inside* Multica, which hosts instructions and skills, not third-party binaries. And a skill is **auditable text** with no dependency tree of its own — the trust it does ask for is named in **[SECURITY.md](SECURITY.md)**. --- ## What's inside | File | Purpose | |---|---| | [SKILL.md](skills/mops/SKILL.md) | **the always-loaded core** — interview → stand up → conveyor → console | | [INSTALL.md](INSTALL.md) | every install route, day zero, first run, updating | | [SECURITY.md](SECURITY.md) | what this reaches, what is gated, what is `prose-only` | | [COMMANDS.md](COMMANDS.md) | every command, its aliases, and the surface it runs best on | | [USE-CASES.md](USE-CASES.md) | situation → what to say → which command | | [EXAMPLES.md](EXAMPLES.md) | the same issue, handoff, review or ledger done weakly and done well | | [GLOSSARY.md](GLOSSARY.md) | one word, one meaning — and the pairs that look alike and are not | | [PATTERNS.md](PATTERNS.md) | the recurring forms, named once | | [FLOWS.md](FLOWS.md) | the full procedures — init, join, health, upgrade, switch | | [BOOTSTRAP.md](BOOTSTRAP.md) | zero-to-team CLI recipes, capacity levers, real-hours traps | | [ROLES.md](ROLES.md) | role catalog with curated skill packs + the generic role-builder | | [PLAYBOOKS.md](PLAYBOOKS.md) | daily operations, copy-paste ready | | [STACKS.md](STACKS.md) | services, libraries, testing, security, evidence and reference shelves | | [MODULES.md](MODULES.md) | opt-in: design work · design system · brand · persona theatre · tracker bridge · HQ | | [REFERENCE.md](REFERENCE.md) | object model, anti-patterns, **CLI surface (§10)**, **frameworks (§11)** | | [WORKFLOW.md](WORKFLOW.md) | Mermaid diagrams of the whole process | | [CHANGELOG.md](CHANGELOG.md) | versioned history — the migration map `/multica-ops:upgrade` reads | | [evals/](evals/) | the 30 scenarios, plus `runs/` — the recorded verdicts per release | | [templates/](templates/) · [scripts/](scripts/) | guide · roadmap · brand · component docs · decisions · architecture · tooling · team · **a docs guard for the companies Mops builds** · ops helpers · resumable backlog import | Everything but `skills/mops/SKILL.md` loads **only when its trigger fires**. **Contributing?** Run **`bash scripts/preflight.sh --install`** once — the pre-commit hook holds the invariants this repo has actually broken before, and **[AGENTS.md](AGENTS.md)** is the contract. What no hook can check is whether a claim is still *true*; that is `verify.py`, run against the world rather than the text: ```sh python3 scripts/verify.py --live ``` `--live` executes reads only — never a create, update, assign or delete — so it is safe against a real workspace. ## Roadmap Forward-only: what shipped lives in the body of this file and in the [CHANGELOG](CHANGELOG.md), never as a checked box here. --- Works against **Multica cloud or a self-hosted server** — execution is local either way, so only backups and upgrades change hands. Verified with `multica` CLI v0.4.12; the surface claims were re-checked against v0.4.26 on 2026-08-15 (REFERENCE §10 carries the pin and the caveat). Code is **[Apache-2.0](LICENSE)**; the names "Mops" / "multica-ops" and the avatar are reserved — see **[TRADEMARKS.md](TRADEMARKS.md)**.