# Core Concepts

URL: /milo-cli/docs/about/concepts/
Section: concepts
Description: The main ideas shared by Milo CLIs and interactive apps.

---

> For a complete page index, fetch /milo-cli/llms.txt.

Milo has two related building blocks:

- `CLI`turns typed functions into commands, schemas, MCP tools, and llms.txt.

- `App`runs 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

Return Values

How command return values become CLI output and MCP content.

(/milo-cli/docs/about/concepts/return-values/)

App Lifecycle

How a Milo terminal app starts, dispatches actions, renders, and exits.

(/milo-cli/docs/about/concepts/app-lifecycle/)

Configuration

Configuration system with TOML/YAML/JSON loading, deep merge, profiles, and origin tracking.

(/milo-cli/docs/about/concepts/configuration/)

## In This Section

App Lifecycle (/milo-cli/docs/about/concepts/app-lifecycle/)

How a Milo terminal app starts, dispatches actions, renders, and exits.

Configuration (/milo-cli/docs/about/concepts/configuration/)

system with TOML/YAML/JSON loading, deep merge, profiles, and origin tracking.

Return Values (/milo-cli/docs/about/concepts/return-values/)

How command return values become CLI output and MCP content.

Related Pages

About (/milo-cli/docs/about/)

Philosophy, architecture, concepts, thread safety, and ecosystem.

Related

Architecture (/milo-cli/docs/about/architecture/)

How Milo's Elm Architecture maps to terminal applications.

Related

When to Use Milo (/milo-cli/docs/about/when-to-use/)

Choose Milo for typed CLIs, MCP tools, and reducer-driven terminal apps.

Related

about (/milo-cli/tags/about/)

concepts (/milo-cli/tags/concepts/)
