Skip to main content

Collaborative Agent Reasoning Ecosystem — Textual TUI demo

Project description

CARE — Collaborative Agent Reasoning Ecosystem

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.0.1.tar.gz (1.3 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.0.1-py3-none-any.whl (788.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: maestro_care-0.0.1.tar.gz
  • Upload date:
  • Size: 1.3 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.0.1.tar.gz
Algorithm Hash digest
SHA256 ef641b57265f0785e723776759d11f7f58be1f476128b7516f3deabe086e0b42
MD5 5cf5221a23805d1161e5595803c719d2
BLAKE2b-256 37326bf69a7d5b6f4bfaf3c0fa46641fc10a81d9053564a6a87236a10db53c2a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: maestro_care-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 788.6 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.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3e0c2193f66e7dbc5da3c0f0d02a167bb2c47b9ebb580b4ac0f3ff36b97be7b1
MD5 bbcb83fe7bd17eec024f5c17006c9efa
BLAKE2b-256 c2527c43ddbb451efd7527d95b6ea746227c8ba11f971433b1619a65a689d84e

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