{
  "markdown": "# MAIAS — Mobile App Information Architecture Schema\n\nAn open standard for describing an app's **information architecture** — screens, navigation, flows, UI elements, states, and data dependencies — in one YAML (or JSON) document that is equally readable by humans and operable by agents.\n\n```yaml\nmaias: \"0.3\"\napp:\n  name: Todo List\n  navigation:\n    primary:\n      screens: [home, settings]     # ← the tab bar, derived, not drawn\n  flows:\n    - name: main\n      entry_screen: home\n      screens: [home, task_detail, task_new]\nscreens:\n  - id: home\n    title: My Tasks\n    type: list\n    path: /tasks\n    description: All tasks, newest first.\n    elements:\n      - label: Buy milk\n        type: list_item\n        target: task_detail          # ← references are validated, renames cascade\n```\n\n**Why:** a common language for human–agent collaboration on app development. An agent can *build* the described app from the document ([implementation guide](docs/implementation-guide.md)), *create and edit* documents as safe machine operations (CLI, MCP), and a human can read and review the same file.\n\n## What's in this repo\n\n| | |\n|---|---|\n| **The spec** | [docs/spec/](docs/spec/README.md) — 11 chapters · [llms.txt](docs/spec/llms.txt) (one-context-window agent reference) · [schema/maias.schema.json](schema/maias.schema.json) |\n| **`@maias/core`** | [packages/core](packages/core/README.md) — parse → typed model → serialise with round-trip fidelity (comments survive edits), graph utilities, safe edits (cascading renames, element batches), canonical formatter, Hermes-safe validation |\n| **`maias` CLI** | [packages/cli](packages/cli/README.md) — `maias validate` (schema + semantic lint, `--json`), `maias fmt`, `maias rename` |\n| **MCP server** | [packages/mcp](packages/mcp/README.md) — `validate` / `query` / `edit` / `edit_elements` tools for any MCP-capable agent |\n| **MAIAS Browser** | [MAIAS_browser](MAIAS_browser/README.md) — Expo app that opens any MAIAS document at runtime and renders it: dynamic tab bar, pluggable design-system adapters (wireframe · shadcn-style · blueprint), in-app validation errors |\n| **Examples** | [examples/](examples/README.md) — calculator · todo_list · social_network · ecommerce — collectively covering every core element and screen type |\n| **Claude skills** | [.claude/skills/](.claude/skills/README.md) — `maias-create`, `maias-edit`, `maias-review`, `maias-wireframe` · installable anywhere as the [maias plugin](https://github.com/MAIAS-project/maias-plugin) |\n\n## Quick start\n\nRequires [Node.js](https://nodejs.org) 20.19.4+ / 22.13+ / 24.3+ (CI runs 22). No clone or install needed — the packages are on npm:\n\n```sh\n# validate a document — schema + semantic lint (dangling targets, orphans,\n# path collisions), with line numbers; add --json for machine-readable output\nnpx -y @maias/cli validate my-app.maias.yaml\n\n# canonical formatting (idempotent; agent edits diff cleanly)\nnpx -y @maias/cli fmt my-app.maias.yaml --write\n\n# rename a screen — cascades to flows, navigation, every target\nnpx -y @maias/cli rename my-app.maias.yaml old_screen new_screen\n```\n\nPrefer a plain `maias` command? `npm i -g @maias/cli`.\n\n**In Claude Code**, one install delivers the three skills plus the MCP server:\n\n```\n/plugin marketplace add MAIAS-project/maias-plugin\n/plugin install maias@maias\n```\n\n**In any MCP client**, add the server with `claude mcp add maias -- npx -y @maias/mcp` (or the JSON equivalent — see [packages/mcp](packages/mcp/README.md)); it is also listed in the official MCP registry as `io.github.MAIAS-project/maias`.\n\n**The MAIAS Browser** (render any document as a working app, web/iOS/Android) runs from a clone:\n\n```sh\ngit clone https://github.com/MAIAS-project/maias.git && cd maias\nnpm install && npm run build\nnpx maias validate examples/todo_list/maias.yaml\nnpm run web --workspace maias-browser\n```\n\nWorking from a clone, `npm run link-tools` symlinks the workspace CLI (and the\n`maias-mcp` server) onto your PATH, tracking your local build; undo with\n`npm rm -g @maias/cli @maias/mcp`.\n\nTo author a document, start from [docs/spec/llms.txt](docs/spec/llms.txt) — it is sufficient on its own — or, in Claude Code, just ask: *\"create an IA for a recipe app\"* (the `maias-create` skill takes it from there).\n\n## Project documentation\n\nProject architecture: [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) · the browser as built: [MAIAS_browser/ARCHITECTURE.md](MAIAS_browser/ARCHITECTURE.md) · local agent setup (MCP, offline validation): [docs/ARCHITECTURE_LOCAL_SETUP.md](docs/ARCHITECTURE_LOCAL_SETUP.md) · building an app from a document: [docs/implementation-guide.md](docs/implementation-guide.md) · design-system adapters: [docs/adapters.md](docs/adapters.md).\n\n## Status\n\n**Pre-release.** MAIAS is pre-1.0: the format and tooling may change in breaking ways between 0.x versions. Spec **v0.3** (0.2 + the capabilities/deep_links renames and the elements-first link rule); all six project deliverables implemented (spec + schema, validator/linter, browser, examples, skills, agent-interop toolkit). Tests: `npx vitest run` (core round-trip/lint/fmt, CLI, MCP).\n",
  "bytes": 5136,
  "sha": "90031821952e09cc9b5be4576ab248320dbf6ba2a300c2e48e865db34cfac4fe",
  "repo_slug": "maias-project/maias",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_maias_project_maias_f5206739/readme"
}