Skip to content

Latest commit

 

History

History
134 lines (118 loc) · 11.3 KB

File metadata and controls

134 lines (118 loc) · 11.3 KB

Changelog

All notable changes to Cortex CLI will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.


Unreleased

Added

  • Hidden cortex mcp-server --verify stdio JSON-RPC server (cortex-verify) so CI and agents can audit TUI chrome, lock scenes, login product copy, and API error paths offline. Remains hide = true until Designer sign-off.

Changed

  • Code turns default to the Cloud runtime for the TUI and cortex exec (Designer Q9 / CLI_100_CHROME_LOCK_SIGNED). This PC and SSH are explicit opt-in in 0.1.x (CORTEX_COMPUTER or CORTEX_SSH_HOST) and refuse a fresh session with product copy instead of blocking every first turn.
  • README docs/media/intro.gif sits on a photographed green forest desktop (not teal blobs): Terminal chrome, a pointer that walks titlebar → composer → slash / model → Shell, and the signed lock TUI. Local CLI only — no Cortex Cloud handoff in the banner story.

0.1.9

Changed

  • Focus accents use green #1F4945 with contrast backing for legible focused controls; primary copy remains white and success/error diagnostics keep their semantic colors.

  • README docs/media/intro.gif is an offline-rendered macOS desktop animation of the current TUI, with no live coding-service requests.

  • /model shows Effort radios Low | Medium | High; Tab cycles them. /effort opens that same picker (no A★ / standalone effort list).

  • The TUI enters the alternate screen by default (alternate_screen always). Interactive launch takes the full viewport. Opt out with cortex --no-alternate-screen or [tui] alternate_screen = false to stay inline.

  • Empty-session splash is Welcome to Cortex, the coding agent CLI plus v{package version} · / commands · @ files · ! shell · & cloud. After the first user turn the splash is dropped (composer + footer only). No mascot, no painted > cortex shell lines.

  • Composer lock: empty is > + white block at input col 0 + dim Plan, search, build anything after that cell (never a white rect after the placeholder). Blink-off (~530ms) hides the block so the placeholder starts at col 0. Typed copy is #F5F5F5 with the block at the caret.

  • Focused composer > uses the green focus palette with contrast backing; past user > stays white. Interrupt × Stopped, quota title, failed MCP x, and sandbox deny paint error red #F87171. Primary copy is #F5F5F5. MCP connect/drop and sandbox deny are live, not painted-only.

  • The composer is the Devin-style bar in every session, working and queue state: a full-width thin gray hairline above the > prompt and another below it, dim placeholder, white block cursor; it follows the transcript until the transcript fills the screen

  • Past user turns sit on a full-width, slightly lighter gray bar behind > prompt text

  • Login, trust, /mode, /permissions, permission prompts, plan / clear / delete confirms and questions are numbered pickers: > 1 … with green focus styling on the selected row, · 2 … white on the others, dim descriptions under the titles, ↑↓ select · ↵ confirm · esc … hints; the sign-in screen reads Welcome to Cortex CLI! / How would you like to log in?

  • /model, /resume, /skills and the settings hub frame their / Type to search field with two hairlines; no pricing bar

  • The footer is model left, shortcut hint right, all gray: Cortex Mini 1 · Agent · 92% contextshift+tab to cycle modes (the palette shows its own keys there); the first-run tips sit on a filled charcoal panel

  • All 50 lock states recaptured at 40×12 and 120×40 on the gray chrome (raw, plus window-only macOS Terminal composites)

  • Replies auto-format through the real MarkdownRenderer in the session view: markdown tables render as the gray plus-ASCII grid (+---+, |, never Unicode box drawing), fenced code sits between two hairlines with its language tag, a dim line-number gutter and monochrome bold-keyword highlighting (tree-sitter where a grammar is registered, a lexical pass otherwise), nested bullets indent ( / ), task items render as / . Edit tiles render unified diffs with a dim old/new gutter, white context, red -, green +, a +N -N stat and word-level colour on a changed line. Six new lock scenes prove it: md_table, md_fence, md_list, md_mixed, diff_hunk, diff_word; mcp_call lists its issues as a real table

  • The plus-ASCII grid is the only table layout: the frameless Header | Header / ---+--- renderer (render_table_simple) is removed, a table still open when a streamed reply is cut off closes through the same +---+ grid, and the table, renderer and md_table lock tests ban every Unicode box-drawing glyph and require an outer frame on every row; the md_table scene is a real assistant message rendered by MarkdownRenderer, pinned row-for-row against the renderer's output

  • Models show as English product names everywhere in the TUI — Cortex Mini 1, Cortex 1, Cortex Max 1 — in the footer, /model, /settings, /config, session lists and the splash; served ids stay hyphenated internally

  • Every 40×12 and 120×40 lock fixture carries whole copy: bodies wrap at word boundaries instead of stopping at a fragment, code spans keep a trailing space (estimateTokens(prompt) counts, rateLimit() checks), code excerpts keep their indentation, list rows keep their column gaps and end in an ellipsis when shortened

  • Live session chrome stays complete in the empty, loading, error and no-match states (version, keystroke hints, composer, cwd + model footer); a live run says Working · 0s · esc to interrupt and the composer invites Add a follow-up ↵ to queue; the settings panel shows a real empty state; The coding service is temporarily unavailable is followed by what to do next

  • Zero rounded frames: the wide slash popup, inline forms and overlay widgets drop their ╭╮ / rounded borders; the TUI bleeds to the terminal edges

  • Sign-in docs point at api.cortex.foundation device login

  • Stream timeouts use the product-facing coding-service error

Added

  • Lock boards for typing, /model (compact + full), /mode, /permissions, working, and Read (states 02, 04–09) with captures at 40×12 and 120×40
  • Code session turns against POST /v1/code/sessions/{id}/turns (streaming tokens, tool rows, Plan/Spec harness locks)
  • Device login against POST /v1/auth/device on api.cortex.foundation (no silent guest substitution)
  • This PC / Cloud / SSH computer label on the welcome card
  • Workspace Code session id cache (~/.cortex/code-sessions.json)
  • Guest session as an explicit TUI login choice

Fixed

  • Terminal lifecycle cleanup restores terminal modes and screen state when interactive screens exit or fail.
  • Windows install.ps1 detects CPU architecture without reading RuntimeInformation.OSArchitecture under StrictMode, which threw PropertyNotFoundStrict on Windows PowerShell 5.1
  • Cancel aborts the local SSE stream and best-effort POSTs cancel (API route is still 404)
  • Task without a live ModelClient reports failure instead of a fake success
  • Remote tool rows keep their label instead of dropping arguments

0.0.5

Added

  • Added interactive /agents command for agent management with full TUI support
  • Added interactive /mcp panel for centralized MCP server management
  • Added multi-step wizard for adding MCP servers with guided configuration
  • Added --debug flag to write all trace logs to ./debug.txt for troubleshooting
  • Added async loading panels for /billing and /account commands
  • Added artifact system for large tool outputs to prevent payload errors
  • Added real-time todos display for subagents during task execution
  • Added mouse hover and click support for interactive mode
  • Added scrollbar click-drag scrolling and hover interaction in TUI
  • Added scrollbar support to dropdown menus
  • Added TUI capture and snapshot testing framework for debugging
  • Added TUI backtracking, file mentions, and external editor support (Ctrl+G)
  • Added custom slash commands and agents system
  • Added Plan Mode & Spec Mode system for structured task execution
  • Added session favorites, tags, sharing, and search functionality
  • Added multi-agent collaboration system with orchestrator support
  • Added mandatory planning phase and final summary for orchestrator subagents
  • Added hooks system with async events and LLM prompts
  • Added advanced network proxy SSRF protection and sandbox modes
  • Added session filtering and date filtering options
  • Added styled output with theme-aware colors
  • Added colorful styled help output with categorized options
  • Added support for agent.md format (.agents/, .agent/) for agents and skills
  • Added fault tolerance and robust defaults for corrupted config files

Fixed

  • Fixed agent creation to be fully automated when using --generate flag
  • Fixed subagent max iterations increased from 10 to 500 for complex tasks
  • Fixed subagent silent errors with improved logging
  • Fixed subagent crash error messages now properly propagated
  • Fixed false 'task crashed' errors due to race condition
  • Fixed subagent fallback response when no text output is produced
  • Fixed subagent display format with proper timer tracking
  • Fixed 'Starting...' status changed to 'Processing request...' for clarity
  • Fixed HTTP 413 payload errors by displaying todos separately
  • Fixed frame capture rate limited to max 1 frame per second
  • Fixed paste functionality in MCP server configuration modal
  • Fixed MCP panel navigation to return after adding server
  • Fixed MCP servers enabled by default after creation
  • Fixed content ordering and streaming cursor display
  • Fixed tool handler names aligned with registry expectations
  • Fixed false session expiration during the last hour
  • Fixed auth token reload into provider_manager after login
  • Fixed expired token removal to prevent 'Already Logged In' dialog
  • Fixed auto-redirect to login on session expiration
  • Fixed scrollbar position to reflect viewport, not selection
  • Fixed missing slash commands registration (init, commands, agents, share)
  • Fixed full Unicode symbols preservation in TUI frame capture
  • Fixed Windows Credential Manager 2560-byte BLOB size limit
  • Fixed logout to clear all storage locations including fallback
  • Fixed Windows keyring issues with fallback storage
  • Fixed stale credentials cleared before saving new auth tokens
  • Fixed context window configuration options exposed in default config
  • Fixed model alias resolution in ACP server command
  • Fixed dark green colors replaced with standard theme colors
  • Fixed bold text color changed from blue to green in markdown
  • Fixed AccessibilityHelp dialog no longer interferes with typing '?'
  • Fixed terminal stream closure handling and memory leak prevention
  • Fixed terminal duration metadata handling with defensive utilities

Changed

  • Changed MCP management from modal popup to inline card UI
  • Changed CLI output to remove emojis for cleaner terminal display
  • Changed error messages and logs to remove emojis
  • Changed agents TUI with improved navigation
  • Changed subagent display to Factory-style todos format
  • Changed tool handlers to remove deprecated handlers and fix naming
  • Changed 'droid' renamed to 'agent' throughout codebase
  • Changed settings to persist in ~/.cortex on Linux/macOS
  • Changed MCP server configurations to persist to local data directory