Skip to main content
/pm:detour handles mid-build interruptions without losing the thread. Pass it a description of what came up — PM classifies it, either logs a quick fix or pushes the current epic onto the detour stack, and sets up the new work in its own lane. The classification step is mandatory: do not start fixing before you know which path you’re on.

Usage

Minimal detour (fast path)

A minimal detour is small, self-contained, has no design ambiguity, fits before the next compaction, and doesn’t reshape the current proposal. If it passes all those tests, fix it immediately — no stack entry, no new epic. The flow is: fix the issue → test → commit → record the detour so it leaves a trail:
This appends a timestamped line plus the current commit SHA to .conductor/detours.log. Then resume the paused work as normal. If you invoke /pm:detour --minimal "<what>", PM takes exactly this path and stops — no classification prompt, no push.

Substantial detour (full flow)

A detour is substantial when it needs its own design, changes shared behavior, or is multi-step. It becomes its own epic in the appropriate lane and is worked through that lane’s full workflow. When a detour is substantial, follow these steps before building anything:
  1. Make the current epic’s tasks.md reflect reality and commit so nothing is left uncommitted.
  2. Set the current epic’s status to paused in .conductor/state.json.
  3. Push a stack frame with pausedEpic, pausedAt, reason, spawnedDetour, and reconcileOnResume: true (default true whenever the detour will touch code the paused epic depends on).
  4. Create the detour as a new epic with role: detour at P0 by default, in the appropriate lane.
  5. Record cross-links: the detour gets a resolves-blocker-for link pointing to the parent; the parent gets a may-invalidate link pointing to the detour.
  6. Set the detour epic as active, then create its OpenSpec proposal and build through the normal propose → review → apply → review → commit → archive loop.
Example: You’re mid-build on api-gateway (openspec, P1) when you discover webhook HMAC verification is broken in production. That’s substantial — it needs its own spec, and its fix will change the shared request-validation path the api-gateway work depends on. PM pauses api-gateway, pushes a stack frame, and creates webhook-hmac-fix (P0, role: detour), then opens a fresh proposal for it.

Honcho memory

After a substantial detour push, preserve the context pivot for Honcho so it survives across repos and compactions:
This prints a formatted paused <parent> for <reason> memory line and appends a timestamped copy to .conductor/honcho-memories.log. Paste the printed line into your Honcho MCP memory tool. The engine only formats and logs the string — it never calls Honcho itself.

After the detour

When the detour epic is archived and its work is committed, run /pm:resume to pop the stack frame and run the mandatory reconcile gate. Do not skip the gate — it is the structured re-entry that checks whether the detour’s changes affect the paused plan.
When in doubt, treat it as substantial. A needless stack entry is cheaper than re-deriving a lost context after compaction.