Skip to content

Wayfinder integration: MCP tools to read + dispatch Matt Pocock decision maps #14

Description

@RyanSeanPhillips

Why

Matt Pocock's skills (~20k stars) define a multi-session planning workflow — wayfinder — whose outer loop is exactly what cldctrl automates: launch a session, have it claim one ticket, resolve it, repeat. His tracker conventions are fully machine-readable, so cldctrl can become the mission-control layer for that workflow with no NLP and no coupling to his skill text:

  • Map = one issue labeled wayfinder:map, fixed body sections (## Destination, ## Notes, ## Decisions so far, ## Not yet specified, ## Out of scope)
  • Tickets = issues labeled wayfinder:<type> (research / prototype / grilling / task)
  • Blocking = GitHub's native issue dependencies → frontier = open + unblocked + unassigned (pure API query)
  • Claim = assign; resolve = comment + close + append a line to the map's decision index

Adoption angle: a lot of Claude Code users run this workflow; "cldctrl works your wayfinder maps" is a differentiator nobody else has.

Design

Layered so we're not coupled to one influencer's v1.x conventions:

Slice 1 — read_decision_map (MCP tool)

Input: project. Finds the wayfinder:map issue, parses sections, classifies child tickets into frontier / blocked / claimed (assigned+open) / decided (closed) with types. Returns structured JSON. Standalone value: any agent (and cc control) can see the map; cockpit can render it.

Slice 2 — dispatch_map_ticket (MCP tool)

Input: project, optional ticket number + agent (claude/codex/agy). Claims the ticket (assigns it), then reuses launch_session's web-first routing to open a cockpit tile with a prefilled prompt: "Claim and resolve ticket #N per /wayfinder…". Refuses blocked/claimed tickets. This is a concrete instance of #10 (driver reads → dispatches → verifies).

Slice 3 — nudges

computeNudges gains an idle-frontier nudge: map has ≥1 frontier ticket and no active session in that project.

Slice 4 — dashboard polish

Issues tab groups wayfinder tickets (map pinned, frontier highlighted); "work the map" button on the project.

Sequencing / gate

Build slice 1 first (useful alone, small: gh api + parser + MCP registration). Gate slices 2–4 on actually working one real map (planned: the cc control design itself) to validate the conventions in practice. Pin the adapter against mattpocock-skills v1.2.0 and re-check on plugin updates — his repo renames/deprecates skills over time.

Risks

  • Convention drift upstream → mitigated by adapter layering + tolerant parsing
  • Native issue dependencies need GraphQL (blockedBy); plain gh issue view doesn't expose them — verify API shape during slice 1
  • Name collisions: his /handoff, /code-review overlap cldctrl vocabulary — docs should disambiguate

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions