For AI agents: the complete documentation index is available at https://flow.jig.md/llms.txt, the full documentation bundle is available at https://flow.jig.md/llms-full.txt, and this page is available as Markdown at https://flow.jig.md/guide/concepts.md.
DocumentationGuidePrerelease

#Concepts and questions

View Markdown

FLOW's core idea is capability compounding: useful methods become a starting point for further capability. These definitions introduce its boundaries; the linked specifications define exact requirements.

TermMeaningExact or explanatory source
FLOWIndependent package and invocation standardWhy FLOW exists
FlowPackage containing one reusable methodPackage/0
FLOW.<ext>The package's single implementation; FLOW.md selects MarkdownPackage/0
FLOW.meta.jsonOptional readable metadata and dependency declarationsPackage/0
HostConsumer that supplies invocation and local execution policyRun/0
RuntimeProgram or library advancing a method's internal executionThe boundary
Run/0Protocol for one finite process exchangeRun/0
OutcomeMethod-declared result meaning, paired with output dataRun/0
SchemaA declared shape used to validate a portable valueSchema/0
Invocation contractOptional input/result contract, optionally named for independently maintained collaboratorsInvocation Contract/0
Channel contractExact declared meaning for live messagesChannel Contract/0

#Is FLOW tied to Jig?

No. Jig is one host. FLOW does not require Jig's admission, containment, provider, or persistence model. Another host can implement the public boundary and choose its own local policy.

#Is every Flow executable?

Every package contains an implementation, but it needs a compatible host to execute. A Markdown implementation requires an interpreter; other languages likewise require runtime support.

#Can every Skill run unchanged?

No. Many prose and text-resource methods fit Markdown/0, but its current profile has no general native tools or script execution and rejects unsupported tool declarations. Skill compatibility lists the differences; the Markdown tutorial shows its input, calls and results.

#Why do flow/run and flow/call both exist?

flow/run enters a selected component with its host-supplied execution context. flow/call asks the host to invoke a declared dependency with supplied input. The host resolves that dependency and prepares its context; every launched component receives flow/run, including a child. Authors use handle() and context.call() through the same SDK in either case. The host integration guide demonstrates the complete exchange.

#Does portability mean every host runs every package?

No. A host must support the implementation and the required public interfaces. SDK availability and host support are separate. Missing support must stay visible rather than silently substituting a different method.

#Must a method use an Agent or graph library?

No. Ordinary code can implement a Flow. Agents, Skills, tools, libraries, and graphs are choices inside the method, not mandatory categories in the standard.

#Must I define an invocation contract?

No. Formal contracts earn their place when independently maintained consumers need an exact interface. A sophisticated procedure does not automatically need every optional mechanism. Start from the authoring path.

#Do methods bring their own permissions?

A method can describe the interfaces it needs. The receiving host supplies local authority; a declaration does not grant credentials, access, or provider selection rights.

#Does reuse guarantee improvement?

No. Evaluation establishes whether reuse, adaptation, or combination adds usable capability. A portable method can still be wrong or unsuitable for a new setting. Compounding is the ambition, not an automatic property of copying.

#How does FLOW relate to the Agent Client Protocol (ACP)?

ACP and FLOW address orthogonal, complementary roles: ACP connects clients (such as IDEs and editors) with interactive coding agents. FLOW connects hosts with discrete, callable executable packages. An agent can host Flows internally, or an ACP client can orchestrate Flows and route slots to ACP agents. See Host and platform integration.