#FLOW specifications
FLOW v0 · public alpha. These formats and protocols are provisional. Their
/0identifiers name this candidate; a future FLOW v1 will mark an explicit compatibility commitment.
FLOW lets you build applications from reusable methods that combine Agent instructions and executable code. Package useful work as a Flow, call it from code, and combine it with other Flows to accomplish more.
An executable Flow gives a method a defined input and result, so a program can invoke it without an Agent first interpreting its instructions. The method can use ordinary code, Agent judgment, or both. The specifications below define the small package and process boundaries that make those pieces work together.
Every package has one FLOW.<ext> implementation, including Markdown as
FLOW.md. Metadata and invocation contracts are optional. The Run SDK helps
implement the exchange. FLOW defines these portable boundaries, while each host
decides which implementations it supports.
New to FLOW? Start building a method or read why this boundary exists before exploring the exact contracts.
#Author a Flow
Both SDKs implement the same portable Run SDK/0 contract:
A host's language support is separate from FLOW's SDK availability. For an interpreted method, follow the Markdown guide and Skill compatibility notes.
#Specifications
- JSON/0 defines bounded portable values.
- Schema/0 defines bounded invocation, channel and implementation-settings validation.
- Package/0 defines the portable package.
- Run/0 defines one finite process exchange.
- Run SDK/0 defines TypeScript and Python SDK behavior.
- Invocation Contract/0 defines one optional descriptor for local validation or an exact named invocation agreement.
- Markdown/0 defines bounded prose interpretation
and exact SDK recipes in
FLOW.md. - Channel Contract/0 defines optional direct communication ports and named message meaning.
The exact machine-readable FLOW files are published under
/schemas/. The Run/0 conformance
corpus remains in the
source repository.
FLOW does not specify project admission, permissions, sandboxing, persistence, agent policy, or semantic routing. Those are host responsibilities. The Jig site documents one FLOW host.
#Status and stewardship
These prerelease specifications are published directly from the source repository. FLOW is openly implementable; its decision process is described in the governance document.