Skip to main content

Collaborative Agent Reasoning Ecosystem — Textual TUI demo

Project description

MAESTRO CARE — Collaborative Agent Reasoning Ecosystem

PyPI

A Textual TUI + CLI for generating, running, and evolving CARL agent chains. CARE is the user-facing consumer on top of a four-module stack — MAGE for chain generation, CARL for execution, GigaEvo Memory for persistence, and GigaEvo Platform for evolution.

Run

uv sync
uv run care init       # one-shot: write a minimal .env with MAGE creds
uv run care            # launch the TUI
uv run care --help     # list CLI subcommands

care init walks the minimum MAGE credentials (base URL, API key, model) and writes a ./.env so a fresh checkout can boot. Use --non-interactive with explicit flags for CI / scripted setup: care init --non-interactive --api-key sk-... --base-url ... --model ....

The TUI opens directly into the chat surface — a Claude-Code-style transcript with a prompt at the bottom and a mode toggle above it. Type a task in natural language to generate + run an agent chain; type a slash command (/help, /mode, /library, /dataset, /evolution, /tour, …) for the non-chat affordances. First-time users see a one-line offer to type /tour for a 5-step walkthrough.

Chat modes

The toggle above the prompt picks one of two modes; /mode switches the same setting via the keyboard. Default is Ad-Hoc — configurable per-deployment with CARE_CHAT__DEFAULT_MODE.

Mode What happens on every prompt
Ad-Hoc MAGE generates a chain, CARL runs it on the spot, the answer prints inline. The agent may loop (ReAct) until it decides the task is done. Nothing is saved.
Production MAGE generates a reproducible chain, CARE saves it to Memory under a stable chain_id, runs one baseline to seed a dataset entry, and (when Platform is wired) kicks off an evolution run. Use /dataset list <chain_id> / /dataset run <chain_id> / /evolution watch <run_id> to follow up.

Production requires CARE_MEMORY__BASE_URL (and CARE_MEMORY__API_KEY when the deployment enforces auth). Without Memory configured, selecting Production auto-falls back to Ad-Hoc with a warning line — the toggle's tooltip explains why.

First boot (no ~/.config/care/config.toml on disk) lands on the Settings screen so you can configure Memory / Platform base URLs + the MAGE LLM credentials before doing anything else. Returning users land on the chat surface; /library opens the saved-agents table (last-run time, favourite status, fitness scores, row-action keys below).

Canonical user flow

Generate Agent A → save it → generate B and C → return to A from the library → re-run from the same task + context files → optionally evolve A and accept the best individual back into the stable channel.

Screens

CARE ships 18+ screens covering the full lifecycle:

Screen Purpose
WelcomeScreen Boot splash + recents sidebar
LibraryScreen Saved-agent table, row actions, search
QueryScreen + New agent — task description + context files
GenerationScreen Live MAGE progress
InspectionScreen Saved-chain detail + run history
EditAgentScreen Inline edit + Save / Promote-to-stable
ExecutionScreen Live CARL run + token streaming
EvolutionScreen GA + Pareto picker + accept-winner
ReplayScreen Step through a saved ReasoningResult
CatalogScreen Browse installed capabilities (skills/MCP/tools)
MarketplaceScreen Search shared agent_skill listings on Memory
HelpScreen Tutorial + key cheat-sheet
SettingsScreen Edit MAGE / Memory / Platform / theme
TaskListDrawer In-flight tasks panel
CommandPaletteModal Fuzzy palette over commands + saved entities
DiffModal Side-by-side compare two chains
LineageModal Walk a chain's ancestry DAG
ConflictModal Resolve a name collision on save

Global keys

  • Ctrl+P — Command palette (search commands + chains + skills)
  • Ctrl+B — Task list drawer
  • Ctrl+K — Capability catalog
  • Ctrl+S — Save current artifact
  • Ctrl+R — Re-run current chain
  • ? — Help (tutorial + every binding)
  • Esc — Back / cancel
  • Ctrl+Q — Quit

Each screen layers its own bindings — see ? (Help) for the full set filtered by the active screen.

A single-page reference table covering every screen + modal lives at docs/screens/README.md. It maps each surface to its slash command + status (M0/M1) + primary purpose so a new contributor can locate the right module from one click.

Demo

A short asciicast walks the three CLI surfaces against a hermetic seed directory. Reproduce or re-record with:

scripts/record_demo.sh

See examples/asciicast/recording_script.md for the per-act keystroke list. The output lands at docs/asciicasts/care-tour.cast and can be embedded in this README once recorded (asciinema upload for a hosted player or a local relative link for offline reading).

Architecture

CARE is the consumer at the top of a four-module stack — see docs/ARCHITECTURE.md for the layer-by-layer walk-through (generation / execution / persistence / evolution) with cross-links to the upstream modules and CARE's internal module boundaries.

Configuration

CARE reads its configuration from three sources, in increasing precedence:

  1. Defaults baked into care.config.CareConfig.
  2. ~/.config/care/config.toml (user-global TOML).
  3. ./care.toml in the current working directory (per-project overrides).
  4. CARE_* environment variables.

Nested fields use double-underscores in env-var form, mirroring how the TOML sections nest. For example, [mage] mode = "fast" in TOML is CARE_MAGE__MODE=fast in the environment.

See .env.example for the complete list of supported variables with descriptions and defaults. Copy it to .env (or export the vars in your shell) and override only what you need.

Quick reference

Section Env-var prefix Purpose
mage CARE_MAGE__* MAGE generator (provider, API key, …)
memory CARE_MEMORY__* GigaEvo Memory connection
platform CARE_PLATFORM__* GigaEvo Platform connection
sandbox CARE_SANDBOX__* AgentSkill sandbox backend + limits
tools CARE_TOOLS__* @carl_tool registry + bundled builtins (web_search, …) + on-the-fly synthesis
telemetry CARE_TELEMETRY__* Opt-in event-stream sink (Langfuse, …)
defaults CARE_DEFAULTS__* UI defaults (language, history size)

CLI

care (no subcommand) launches the TUI. The headless subcommands share the CareConfig and data layers the TUI uses — every screen's primary affordance has a terminal twin.

Setup

  • care init [--non-interactive] [--api-key X] [--base-url Y] [--model Z] [--mode ad_hoc|production] [--force] — one-shot quick-start: writes a minimal .env with the four MAGE + chat keys a fresh checkout needs. Refuses to overwrite an existing .env without --force.

Discovery & validation

  • care catalog [--json] [--kind ...] — list installed AgentSkills, MCP servers, tools, capability memory cards.
  • care validate <chain.json> — parse + preflight a CARL chain.
  • care import <pattern>... [--apply] — batch-validate (dry-run default) or import chain JSON files.

Generate / run / replay

  • care generate "<task>" [--mode fast|deep] [--save NAME] [--output PATH] — one-shot MAGE generation.
  • care run <chain_id> [--execute] [--task TEXT] [--input KEY=VAL] [--save-result NAME] — fetch a saved chain, preflight, and optionally execute via CARL.
  • care replay <run.json> — step through a saved ReasoningResult / RunRecord JSON.

Memory browse

  • care memory ls [--entity-type ...] [--tag ...] [--q ...] — list saved entities.
  • care memory show <entity_id> [--content-only] — drill down on a single entity.
  • care memory history <chain_id> — list recorded runs for a chain.
  • care search "<query>" [--search-type bm25|vector|hybrid] — BM25 / vector / hybrid search across saved entities.
  • care diff <left_id> <right_id> — side-by-side chain compare.
  • care lineage <chain_id> — walk the ancestry DAG.
  • care favourite <entity_id> [--off] — star / unstar a library entity.

Capabilities & evolution

  • care marketplace "<query>" — search shared agent_skill listings.
  • care evolve <chain_id> [--wait] [--accept] — submit + watch + accept an evolution run.

UX

  • care help [--markdown] — render the tutorial + cheat-sheet.

Run care <subcommand> --help for the full flag set on each.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

maestro_care-0.1.3.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

maestro_care-0.1.3-py3-none-any.whl (912.5 kB view details)

Uploaded Python 3

File details

Details for the file maestro_care-0.1.3.tar.gz.

File metadata

  • Download URL: maestro_care-0.1.3.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maestro_care-0.1.3.tar.gz
Algorithm Hash digest
SHA256 9d1fa923f7524f2217aa9b4c034f43f0012e5f84f257211e21fd01a4b1ff2ef0
MD5 84bed59d15b2ceec5a0a4d8a840e49ee
BLAKE2b-256 dac25863789054a6b0d45f36fbbd5a3c6f539b37109c05dc1ef6f6b3337b34da

See more details on using hashes here.

File details

Details for the file maestro_care-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: maestro_care-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 912.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for maestro_care-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 4a92a0a8143da485d2c892cc5d8d58659bdfba782d00b46c5c25deebde09e442
MD5 7a792b019f1f21ad6a056fa8702f250a
BLAKE2b-256 637cb9603347cd89e46b16a1f10a9023e3508f058725bb1b505a74bade34289a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page