Skip to content

Ecosystem

FleetSpark ships the execution layer — parallel missions, multi-agent coordination, git-based state, and auto-merge. The ecosystem extends it with governance, tooling, and integrations.

@drsti/dev-flow — A governance layer for AI-assisted development. Adds maturity levels, workstream tracking, review gates, and pre-proposal coordination checks to any project.

What it adds:

CapabilityDescription
Maturity levels (L1–L4)Right-size the process to the risk — from a single-line fix to full spec/plan/code review gates
Workstream stateDurable state in JSON files that survives session compaction and agent handoffs
Pre-proposal coordinationChecks for file-level scope conflicts before new work starts
Level 4 review gatesStructured spec → plan → code pipeline with self-review and peer-review at each step
Two-loop guardrailHard gate: the same root-cause recurring after two fix cycles requires a foundation spec, not another patch

Who it’s for:

  • Solo developers who want structured AI-assisted workflows without overhead
  • Teams running regulated or quality-critical work (auth, billing, data migrations)
  • Projects where context must survive across multiple AI sessions

Three ways to use drsti-dev-flow with FleetSpark:

ModeHowWhen to use
Standalone templatefleet command --template drsti-dev-flowMulti-machine fleet, multiple ships
Single-machine runfleet run --template drsti-dev-flowOne machine, sequential execution
Plugin enforcementfleet plugin install @fleetspark/plugin-drsti-dev-flowAdd gate checks to any fleet run

Get started (single machine):

Terminal window
# Install the governance plugin
fleet plugin install @fleetspark/plugin-drsti-dev-flow
# Run the drsti-dev-flow template with gate enforcement
fleet run --template drsti-dev-flow

fleet run runs each mission in sequence on your local machine — no extra ships or machines needed. With the plugin installed, it checks the spec gate before implementation starts and the merge gate before moving to the next mission. If a gate fails, it prompts you to update workstreams.json and retries.

Get started (multi-machine):

Terminal window
# Copy the adapter template to your project
cp drsti-dev-flow/templates/adapter.yml .drsti/adapter.yml
# Use the Fleet mission template across multiple ships
fleet command --template drsti-dev-flow

@fleetspark/plugin-drsti-dev-flow — how it works

Section titled “@fleetspark/plugin-drsti-dev-flow — how it works”

The drsti-dev-flow mission template gives agents instructions — write a spec, self-review, update the workstream file. The @fleetspark/plugin-drsti-dev-flow plugin makes those instructions enforceable by hooking into FleetSpark’s execution pipeline.

The difference: instructions vs. enforcement

Section titled “The difference: instructions vs. enforcement”
v1.1 templatev1.5 plugin
Spec exists before impl startsAgent is asked to checkFleet blocks M2 if spec artifact is missing
Review gate before mergeAgent is asked to update stateFleet blocks PR if merge_gate ≠ "ready"
File conflict with other workstreamAgent is asked to checkFleet blocks mission start if overlap detected
L4 peer review requiredAgent is asked to get reviewFleet refuses to merge until all gate fields are populated

FleetSpark v1.5 exposes a plugin interface that npm packages implement:

interface FleetPlugin {
name: string;
version: string;
// Runs before an agent starts a mission — return block: true to prevent start
onBeforeMissionStart?(
mission: Mission,
context: FleetContext
): Promise<{ block: boolean; reason?: string }>;
// Runs before Fleet creates a merge PR — return block: true to prevent merge
onBeforeMerge?(
mission: Mission,
context: FleetContext
): Promise<{ block: boolean; reason?: string }>;
// Extend the CLI with new subcommands
registerCLISubcommands?(): CLISubcommand[];
// Extend the FLEET.md manifest with custom fields
registerManifestExtensions?(): ManifestExtension[];
}

Install the plugin once, and it applies to every fleet run in that project:

Terminal window
fleet plugin install @fleetspark/plugin-drsti-dev-flow

Before M2 (implement) starts — onBeforeMissionStart:

  1. Reads workstreams.json → finds the workstream for this mission
  2. Checks review_gate.spec.artifact is set (spec was committed)
  3. Checks review_gate.spec.self_review is set (agent self-reviewed)
  4. For L4 workstreams: also checks review_gate.spec.peer_review is set
  5. Runs the pre-proposal coordination check — scans all active workstreams for claim_files overlap
  6. Blocks the mission if any check fails, with a specific reason message

Before any branch merges — onBeforeMerge:

  1. Finds the workstream associated with this mission’s branch
  2. Checks merge_gate === "ready"
  3. For L4: verifies all three phases (spec/plan/code) each have artifact + self_review + peer_review
  4. Blocks the PR until the workstream state file is updated

ConflictDetector escalation:

FleetSpark’s existing ConflictDetector warns when two branches touch the same files. The plugin escalates severity based on maturity level:

L1–L2 + file overlap → warning in PR body (proceed)
L3 + file overlap → prominent warning (proceed)
L4 + file overlap → hard blocker (PR blocked until resolved)

New CLI subcommands:

Terminal window
fleet drsti status # all workstreams + gate completion at a glance
fleet drsti gate --ws ws-id # which gates are open/closed for a workstream
fleet drsti claim --ws ws-id --files src/auth.ts # register file ownership
fleet command --template drsti-dev-flow
├── Fleet creates M1 (spec), M2 (impl), M3 (review) branches
Ship starts M1 — agent writes spec, updates workstreams.json, self-reviews
M1 branch ready → onBeforeMerge hook
└── Plugin: spec.artifact ✓ merge_gate = "ready" ✓ → PR created → merged
Plugin unblocks M2 → onBeforeMissionStart hook
└── Plugin: spec gate complete ✓ no file conflicts ✓ → agent starts
Ship works on M2 — agent implements, self-reviews, sets merge_gate = "ready"
M2 branch ready → onBeforeMerge hook
└── Plugin: code.artifact ✓ merge_gate = "ready" ✓ → PR created → merged
Plugin unblocks M3 → peer-review mission runs

FleetSpark exposes the plugin loader API and the hook surface. It does not implement any governance logic. The plugin is entirely owned and maintained by the drsti-dev-flow project — FleetSpark is the runtime, not the opinion.

  • FleetSpark answers “how do we run multiple agents in parallel?”
  • drsti-dev-flow answers “how do we ensure quality before and after each mission?”

A solo developer with one machine is a valid drsti-dev-flow user without FleetSpark. A team running Fleet missions can layer the plugin on top for enforcement.


If you’re building a plugin and want to be involved in the API design — hook surface, manifest extensions, event subscriptions — open an issue on the FleetSpark repository tagged plugin-api.

@fleetspark/plugin-drsti-dev-flow is the reference implementation: its hook surface (onBeforeMissionStart, onBeforeMerge) defines the baseline API that is now open to the community.


FleetSpark ships 8 built-in coding agent adapters. See Adapters for the full list and how to write your own.