DOCUMENTATION
Getting started with Fishplate
This guide covers the CLI and MCP workflow: install the server, create a digital twin, plan EARS-compliant migrations, and verify with automated probes and evidence bundles. For philosophy and context, see The Railway Manifest.
LAPIS
LAPIS (Lightweight API Specification for Intelligent Systems) is a compact, LLM-oriented API description format—spec, examples, and OpenAPI converters live in the cr0hn/LAPIS repository. Fishplate emits a system contract as system.lapis, extending that token-minimal idea to infra bindings, schema shape, and policy hooks alongside any OpenAPI source of truth you keep for tooling.
1. Installation
Install the Fishplate CLI and MCP server with the hosted installer (review the script before piping to bash in production environments).
curl -fsSL https://fishplate.dev/install.sh | bash2. Initialize the joint (`fishplate init`)
Run this at the root of your project. Fishplate scans wrangler.jsonc, package.json, and Drizzle schemas to create your first digital twin and the token-efficient One True Schema contract.
fishplate initWhat happens: creates a .fishplate/ directory, writes state.json (current reality) and system.lapis (the LAPIS contract).
3. Planning a migration (`fishplate plan`)
When you want to add a feature or change infrastructure, use plan with a compliance tag when needed.
fishplate plan "Add EU-based user profiles" --compliance GDPR.Art.17What happens: generates a new migration under .fishplate/migrations/ using EARS syntax and proposed implementation tasks for your agent.
4. Verification and audit (`fishplate verify`)
After implementation, verify that rails stay aligned and collect evidence.
fishplate verifyWhat happens: runs probes against local or staging environments, checks for drift (for example unintended egress or misconfigured storage), and produces a signed OSCAL JSON bundle for compliance evidence.