Core Concepts

The main ideas shared by Milo CLIs and interactive apps.

1 min read 124 words

Milo has two related building blocks:

  • CLIturns typed functions into commands, schemas, MCP tools, and llms.txt.
  • Appruns a reducer-driven terminal interface with templates and input.

The shared concepts are:

Concept Role
Command handler Typed Python function exposed to humans and agents
Schema JSON Schema derived from annotations and docstrings
Context Injected runtime object for output, global options, and app bridges
State Serializable model for interactive apps
Reducer Pure function that turns actions into new state
Saga / Cmd Explicit side-effect boundary
Template Kida view rendered from state

In This Section

App Lifecycle How a Milo terminal app starts, dispatches actions, renders, and exits.
Configuration system with TOML/YAML/JSON loading, deep merge, profiles, and origin tracking.
Return Values How command return values become CLI output and MCP content.
Related Pages