speedrift

star 11

Workgraph-first drift-control autopilot (driftdriver + coredrift + optional specdrift/datadrift/depsdrift/uxdrift/therapydrift/yagnidrift/redrift) with optional Amplifier runtime integration. Use for start/resume, dependency-aware execution, and keeping code/spec/intent synced without hard blocks.

dbmcco By dbmcco schedule Updated 5/27/2026

name: speedrift description: Workgraph-first drift-control autopilot (driftdriver + coredrift + optional specdrift/datadrift/depsdrift/uxdrift/therapydrift/yagnidrift/redrift) with optional Amplifier runtime integration. Use for start/resume, dependency-aware execution, and keeping code/spec/intent synced without hard blocks.

Speedrift (Workgraph Autopilot + Amplifier Runtime)

Speedrift is the operating model for agentic delivery:

  • Workgraph is the execution spine (tasks, dependencies, loops, workers).
  • driftdriver routes checks in policy order.
  • coredrift is the baseline lane and always runs.
  • Optional lanes activate per task fence blocks:
    • specdrift
    • datadrift
    • archdrift
    • depsdrift
    • uxdrift
    • therapydrift
    • fixdrift
    • yagnidrift
    • redrift

The default posture is advisory + redirect follow-ups, not hard-stop blocking.

Planning Handoff (Mandatory)

  • planforge is the standalone planning skill for speedrift repos.
  • If the user needs discovery, decomposition, debate, spec anchoring, or a seeded Workgraph graph, invoke planforge first.
  • Return to speedrift after planforge has written the spec anchor and seeded the graph; speedrift owns execution, drift checks, and runtime supervision from that point forward.
  • Do not reimplement the full PlanForge phase-gated planning flow inside speedrift.
  • PlanForge handoffs must include Agency usage and fallback, unit tests, integration tests, UX tests or explicit waivers, roborev/review obligations, bounded adversarial review, and small-model-ready per-task implementation detail.

Operating Invariants (Mandatory)

  • Workgraph is the only task/state source of truth.
  • Do not use Beads for task-state unless user explicitly asks for Beads.
  • Run drifts checks at task start and before task completion.
  • Driftdriver auto-refreshes existing managed repo guidance when a Speedrift check sees repo changes. Disable only for emergencies with DRIFTDRIVER_DISABLE_SPEEDRIFT_AUTO_UPDATE=1.
  • Convert uncertainty/risk into explicit follow-up tasks, not silent workaround code.

Execution Layer

Workgraph and Agency form the execution layer:

  • Workgraph (wg) is the task spine: dependencies, dispatch, readiness.
  • Agency (agency serve, port 8000) is the agent composition engine: who runs a task, with what role and capability primitives.

At dispatch time Agency composes an agent configuration. Planforge/speedrift wrap it with a protocol envelope (wg-contract block, drift check obligations, executor guidance). If Agency is unreachable, dispatch continues with generic prompts — Agency enriches but is never required.

Check Agency health: curl -s http://localhost:8000/health

Bootstrap Or Resume A Repo

Run from repo root:

# Install wrappers + drift policy + executor guidance (idempotent)
<workspace-root>/driftdriver/bin/driftdriver install --with-uxdrift --with-therapydrift --with-fixdrift --with-yagnidrift --with-redrift

# Ensure open/in-progress tasks have a wg-contract fence (idempotent)
./.workgraph/coredrift ensure-contracts --apply

# Run drift checks for current task (at start + before completion)
./.workgraph/drifts check --task <task_id> --write-log --create-followups

If packaging an app from <workspace-root>:

cd <workspace-root>/driftdriver
./scripts/package_app.sh --app /path/to/repo --seed-redrift-task

Optional Amplifier Integration (Recommended If Installed)

If amplifier is installed, use the Speedrift Amplifier bundle:

amplifier bundle add git+https://github.com/dbmcco/amplifier-bundle-speedrift@main
amplifier bundle use speedrift

Start/resume with Amplifier:

amplifier run "execute speedrift-start.yaml"

Execute one task loop pass:

amplifier run "execute speedrift-task-loop.yaml"

Brownfield v2 lane:

amplifier run "execute speedrift-redrift.yaml with root_task_id='<task_id>'"

Fallback rule:

  • If Amplifier recipe execution fails or is unavailable, run the direct ./.workgraph/* commands from this skill.

Kickoff Contexts (Mandatory Behavior)

When user intent is "speedrift/redrift this app to a new version", support both entry contexts.

Context A: started inside the v1 app repo

Assume current directory is the source app.

<workspace-root>/driftdriver/scripts/package_app.sh --app "$PWD" --seed-redrift-task --skip-contracts
./.workgraph/redrift wg execute --task redrift-$(basename "$PWD")-v2 --v2-repo --write-log

Context B: started one level above (or elsewhere)

Resolve source app path explicitly, then run against that path.

<workspace-root>/driftdriver/scripts/package_app.sh --app /path/to/app-v1 --seed-redrift-task --skip-contracts
<workspace-root>/redrift/bin/redrift --dir /path/to/app-v1 wg execute --task redrift-app-v1-v2 --v2-repo /path/to/app-v2 --write-log

Rules:

  • Prefer net-new v2 repo lanes for redrift (--v2-repo).
  • After lane creation, switch working directory to v2 repo and continue from wg ready.
  • Keep source repo for reference and parity checks; do not rewrite source in place unless explicitly requested.
  • For phase completion in v2, checkpoint with:
    • ./.workgraph/redrift wg commit --task <phase_task_id> --phase <phase>

Start Continuous Execution

# Workgraph worker loop
wg service start

# Optional pit-wall drift telemetry loop
./.workgraph/drifts orchestrate --write-log --create-followups

Planning Protocol (After PlanForge)

When planforge has already seeded the graph, continue in speedrift by:

  1. Claiming or selecting the ready task from Workgraph.
  2. Running drifts checks before edits.
  3. Executing the scoped task while honoring its wg-contract and fence blocks.
  4. Converting new uncertainty or scope growth into explicit follow-up tasks.
  5. Running drifts checks again before marking the task done.

Per-Task Protocol (Mandatory)

Run this twice per task:

  • Once before edits.
  • Once before marking done.
./.workgraph/drifts check --task <task_id> --write-log --create-followups

Exit codes:

  • 0 clean
  • 3 findings exist (advisory; handle with follow-ups/contract updates)

Drift Response Rules

  • If scope changed, update the contract touch set. Do not silently expand.
  • If hardening appears in a core task, split into harden: follow-up tasks.
  • Prefer follow-up tasks over in-place patch-on-patch fixes.
  • Keep contracts small and explicit so multiple agents stay aligned.

Standalone Module Runs (When Needed)

Use these when you only need one lane:

coredrift --dir . check --task <id> --write-log --create-followups
specdrift --dir . wg check --task <id> --write-log --create-followups
datadrift --dir . wg check --task <id> --write-log --create-followups
archdrift --dir . wg check --task <id> --write-log --create-followups
depsdrift --dir . wg check --task <id> --write-log --create-followups
uxdrift wg --dir . check --task <id> --write-log --create-followups
# POV-guided UX reasoning
uxdrift wg --dir . check --task <id> --llm --pov doet-norman-v1 --write-log --create-followups
therapydrift --dir . wg check --task <id> --write-log --create-followups
fixdrift --dir . wg check --task <id> --write-log --create-followups
yagnidrift --dir . wg check --task <id> --write-log --create-followups
redrift --dir . wg check --task <id> --write-log --create-followups
Install via CLI
npx skills add https://github.com/dbmcco/claude-agent-toolkit --skill speedrift
Repository Details
star Stars 11
call_split Forks 2
navigation Branch main
article Path SKILL.md
More from Creator