Skip to content

Tera Pilot 2.4.0 — agent profiles, fleets & convenient keys

Latest

Choose a tag to compare

@ilyaosovskoi ilyaosovskoi released this 05 Sep 06:54

Tera Pilot 2.4.0 — agent profiles, fleets & convenient keys

The v2.4.0 release is the “pick your agent for today” release:

  1. Agent profiles — every agent has a named profile with its own system
    prompt (persona) and security level. /agent opens a picker, /agent <id> activates a profile (persisted across restarts), and you create or
    tune profiles with /agent new, /agent edit and /agent delete.
    Built-in presets: code (default), video (video production),
    reviewer (read-only) and apex (top-tier general assistant persona).
    Security levels (controlled / balanced / free) map onto autonomy +
    Guardian and are applied to the live runtime, including the
    system-prompt fragment, which previously was stored but never injected.
  2. Fleet modetera-pilot fleet start --agent code:~/code --agent video:~/videos runs several profiles at once as headless workers, each
    in its own workspace; tera-pilot fleet task <agent> "<prompt>" queues
    work, and tera-pilot fleet watch is the “main terminal” that shows a
    live summary of every agent. fleet stop (or Ctrl+C) shuts the workers
    down after their current task. In a fleet, controlled agents fail
    closed on side-effecting tools (effectively read-only), balanced
    auto-approves headless, and free runs un-gated.
  3. Convenient API-key setuptera-pilot key (interactive picker +
    hidden input, list / set / remove, masked output) and /key in the
    TUI (pick a provider, paste the key on the input line). Keys are stored
    atomically in ~/.tera_pilot/config.json and never echoed.
  4. Remote task mode is now reachable from the CLItera-pilot-daemon serve --inbound telegram reads ~/.tera_pilot/inbound.json (Telegram bot token
    • mandatory allow-list of chat IDs) and wires the inbound messenger
      listener to the task queue: any allowed message becomes a task, the task
      runs on the daemon, and the result is reported back to the same chat
      (pair with --notify telegram for completion notifications). Replying
      STOP cancels the running task. Previously the listener existed only as
      a library module with no way to start it — “set a task and walk away”
      was not actually possible.
  5. Rust acceleration is one commandmake native builds and installs
    tera_pilot_native (sandbox checks, circuit breaker, compaction,
    interjection buffer, cancel tokens) and verifies it loaded. The wheel
    build was already reproducible and the extension is picked up
    automatically by tera_pilot.agent.native; this just removes the manual
    two-step dance from the docs.
  6. TUI approval modals got a visual refresh — the Approve/Deny and
    Guardian (Approve/Use Fix/Reject) dialogs now have clearer titles with
    icons, the proposed action sits in its own bordered mono block, buttons
    carry explicit borders and focus states, and both dark and light themes
    were updated in lockstep.
  7. TUI slash commands, grouped — the command palette and /help now
    organize every slash command into six categories (Security & Control,
    Agent & Persona, Provider & Model, Session & Workspace, Info & Stats,
    Actions & UI) with group headers and counts, /help <group> filters a
    category, and picking a palette command runs its no-arg form instead of
    erroring with "needs a parameter".
  8. TUI header refresh & fleet polish — the top header is now
    theme-aware (brand, version, active provider/model and workspace render
    as chips that switch palettes with the theme instead of hard-coded dark
    colors), the status line animates a braille spinner while a turn runs,
    the composer border breathes with a working/pulse state, and the
    welcome screen was refreshed with the key shortcuts. fleet start
    accepts --provider / --model / --api-base overrides applied to
    every worker (the stored API key is preserved), and fleet watch marks
    stale/dead workers and exits on its own once every agent has finished.