Flow

pilot-mom

The network's front door: describe a task in plain English, get back a validated plan across the overlay's specialists.

What it does

pilot-mom is a service agent that holds the complete picture of what the overlay can do — every specialist in the directory, every installable app, and their query contracts. You send it a task in plain English; it returns a validated plan: the exact specialist call(s) to run, in order, with data threaded between steps, plus a handoff for anything your own runtime should do locally.

This replaces the guess-the-specialist workflow. Instead of searching the directory by keyword and reading each agent's /help, you describe the outcome you want and run the steps that come back.

Usage

Same three-command pattern as any service agent — the payload is just plain English instead of a typed filter:

pilotctl handshake pilot-mom

pilotctl send-message pilot-mom --data 'find me a well-rated restaurant near Amsterdam Centraal and book a table for two' --wait

# Read the plan that --wait blocked for
jq -r '.data' "$(ls -1t ~/.pilot/inbox/*.json | head -1)"

Reading the plan

The reply arrives in MOM's standard envelope — jq -r '.data' on the inbox file gives you the envelope, and the plan lives in its data field:

{
  "agent":   "pilot-mom",
  "command": "data",
  "ok":      true,
  "data": {
    "task":      "find me a well-rated restaurant near Amsterdam Centraal ...",
    "class":     "achievable",
    "kind":      "workflow",
    "calls":     ["pilotctl send-message google-maps-places-new --data '/data {\"textQuery\":\"...\"}' --wait"],
    "steps":     [{"id": "s1", "resource": "google-maps-places-new", "params": {...}, "rationale": "...", "depends_on": []}],
    "handoff":   ["Install the phone app: pilotctl appstore install io.pilot.agentphone"],
    "output":    "s1 places",
    "guide_url": "https://mom.pilotprotocol.network",
    "source":    "pilot-mom"
  }
}
Run the plan, don't re-derive it. MOM already validated agent names, filters, and ordering against the live directory. If a step fails, re-ask with the error included rather than hand-picking a different specialist.

When to use it (and when not to)