Skip to content

The substrate

One CLI for the
whole dev lifecycle.

The dev loop for any language, JSON by default: scaffold, run, review, and ship without the bash spaghetti. fledge lanes run verify is the single CI gate across Rust, Swift, TypeScript, Kotlin, Python, and Go.

One CLI, six pillars

The whole core, in one binary.

Every CorvidLabs project, in every language, runs the same handful of commands. That is the entire core. Anything else is a plugin.

Scaffold

templates

fledge templates init my-app --template rust-cli from a built-in template, or --template user/repo from any GitHub repo. Built-ins cover rust-cli, ts-bun, python-cli, go-cli, ts-node, static-site, kotlin-kmp, and kotlin-ktor-api.

Run

run, lanes, watch

fledge run test auto-detects your stack and runs the right command. fledge lanes run verify composes tasks into one gate. fledge watch test reruns on file changes.

Spec

spec

fledge spec check runs spec-sync: modules declare their contract in *.spec.md, and the AI commands use it as context. Drift becomes a CI failure, not a review nag.

AI

ai, ask, review

fledge review runs an AI code review against the default branch. fledge ask answers questions about your codebase. Pick providers with fledge ai use: Anthropic, any OpenAI-compatible endpoint, or Ollama.

Ship

work, release, changelog

fledge work drives the branch and PR flow with AI-drafted bodies. fledge release minor --push bumps the version, writes the changelog, tags, and pushes.

Extend

plugins, config, doctor, introspect, completions

fledge plugins install --defaults adds the curated set. fledge doctor checks toolchain health. fledge introspect --json dumps the whole command tree for agents.

The dev loop

One gate. Every language.

A lane composes named tasks into an ordered pipeline. fledge lanes run verify is the one gate every repo shares, whether the underlying stack is Rust, Swift, TypeScript, Kotlin, Python, or Go. CI runs exactly what you run locally.

fledge.toml

[tasks]
fmt-check = "cargo fmt --check"
lint = "cargo clippy -- -D warnings"
test = "cargo test"

[lanes]
verify = ["fmt-check", "lint", "test", "spec-check"]

In CI and on your machine

$ fledge lanes run verify
→ verify (4 steps)
✓ fmt-check 120ms
✓ lint 3.4s
✓ test 18.1s
✓ spec-check 240ms
→ verify passed in 21.9s

# Plan only, no execution
$ fledge lanes run verify --dry-run

fledge run test

Auto-detects the stack and runs your language's test command. No config required.

fledge watch test

Re-runs a task or lane on file changes, with a debounce and optional extension filter.

fledge run test --json

Every command emits structured JSON, so agents and tooling parse results directly.

Key concepts

The vocabulary; everything else composes from these.

task
A named shell command in [tasks] of fledge.toml. fledge run executes it.
lane
An ordered list of task names. verify = ["fmt-check", "lint", "test", "spec-check"].
plugin
A command installed via fledge plugins install . Native or WASM.
template
A fledge templates init --template scaffold, built-in or from GitHub.
lifecycle hook
Plugins register pre-lane / post-lane / pre-task / post-task steps.
provider
An AI backend chosen with fledge ai use: Anthropic, OpenAI-compatible, or Ollama.

The plugin protocol

Extend the CLI without trusting a binary.

Plugins add commands by name. Native plugins run as regular executables. WASM plugins ship too: they run in a fuel-metered Wasmtime sandbox over WASI, with no host access until you grant it. Ideal for pure-computation tasks like linting, formatting, and analysis where you want strong isolation.

Install and scaffold

# Curated default set: github, deps, metrics
$ fledge plugins install --defaults

# Any GitHub repo, pinned to a ref
$ fledge plugins install CorvidLabs/fledge-plugin-github

# Scaffold a sandboxed WASM plugin
$ fledge plugins create my-lint --wasm

# Inspect what is installed
$ fledge plugins audit

The WASM sandbox

  • Sandboxed by default. No filesystem, no network. The plugin sees nothing it was not granted.
  • Opt-in capabilities. Any access is prompted at install time and recorded in the plugin manifest.
  • Fuel-bounded. Wasmtime meters execution by fuel, so a runaway plugin cannot loop forever.
  • 256 MB memory cap. A hard ceiling on the linear memory each plugin instance can allocate.
  • Single .wasm binary. wasm32-wasip1 output runs cross-platform with no per-OS build matrix.
  • Audit on demand. `fledge plugins audit` lists every installed plugin's trust tier, capabilities, and hooks.

The registry

46 official plugins

Live from the CorvidLabs org. Search by name or description, filter by tier and language, then copy the install command. Every plugin composes on the same fledge-v1 protocol.

Where it's used

Every CorvidLabs project runs fledge lanes run verify as its single CI gate.

  • → corvid-chat 23 specs, fmt-check + clippy + test + spec-check lane
  • → Merlin built on top of the fledge plugin protocol
  • → spec-sync the spec-check lane consumer
  • Every Swift and Rust repo in the CorvidLabs org

v1.5.1 is live

v1.5.1 shipped 4 days ago (Jun 11, 2026).

SemVer additive guarantees within v1. Plugin authors: your code keeps working.