mecatui

command
v0.0.35 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 11, 2026 License: Apache-2.0 Imports: 59 Imported by: 0

Documentation

Overview

login.go implements the separate ToolHive LLM and remote OIDC login routes.

Command mecatui is a flashy, themeable terminal UI for the mecatl headless agentic coding harness. It is a gRPC CLIENT of a mecated server: it creates a session, opens the bidi Converse stream, renders the streamed Events (glamour markdown for assistant text, themed lipgloss for user/tool blocks), and resolves permission asks inline by sending ResumeApproval back on the same stream.

The server it talks to may be EXTERNAL (a separately-run mecated, via `mecatui connect ADDRESS`) or, by default, one this process HOSTS in-process over a UNIX socket (see cmd/mecatui/embed) — so a single `mecatui` binary "just works" with no daemon to start and no TCP port. The bare invocation ALWAYS embeds (it never probes loopback); `connect ADDRESS` always dials.

Architectural boundary: the render packages (ui, theme) and the client package import no engine/... or internal/... package and no proto directly — they render purely from proto Events. Hosting the embedded server makes the cmd/mecatui MAIN (and its embed subpackage) a second composition root, alongside cmd/mecated; that import of internal/app + the server adapter is confined HERE and to cmd/mecatui/embed.

Directories

Path Synopsis
Package client is the gRPC-facing layer of mecatui: it dials mecated, creates sessions, opens the bidi Converse stream, and translates proto Events into the plain Go tea.Msg structs the ui consumes.
Package client is the gRPC-facing layer of mecatui: it dials mecated, creates sessions, opens the bidi Converse stream, and translates proto Events into the plain Go tea.Msg structs the ui consumes.
Package embed lets mecatui host its OWN mecated server in-process when no external one is running, so a single `mecatui` binary "just works" with no separately-spawned daemon and no TCP port.
Package embed lets mecatui host its OWN mecated server in-process when no external one is running, so a single `mecatui` binary "just works" with no separately-spawned daemon and no TCP port.
Package keymap validates rebindable-key overrides for mecatui.
Package keymap validates rebindable-key overrides for mecatui.
Package schedparse is a small client-side natural-language → trigger compiler for the mecatui /schedule overlay's Create form.
Package schedparse is a small client-side natural-language → trigger compiler for the mecatui /schedule overlay's Create form.
Package statusline defines the display-only, dependency-leaf protocol shared by mecatui composition and UI status-line renderers.
Package statusline defines the display-only, dependency-leaf protocol shared by mecatui composition and UI status-line renderers.
Package theme is the pure styling layer for mecatui.
Package theme is the pure styling layer for mecatui.
ui
Package ui is the Bubble Tea (Elm) layer of mecatui: the root Model state machine, its Update reducer, the View assembly, and the conversation/block renderers.
Package ui is the Bubble Tea (Elm) layer of mecatui: the root Model state machine, its Update reducer, the View assembly, and the conversation/block renderers.
platform
Package platform reports host-platform facts the TUI adapts its presentation to.
Package platform reports host-platform facts the TUI adapts its presentation to.
prompttextarea
Package prompttextarea owns the upstream textarea behind Mecatl's prompt-editor policy.
Package prompttextarea owns the upstream textarea behind Mecatl's prompt-editor policy.
welcome
Package welcome renders the first-run splash for the mecatui zero-state: a faithful mascot (half-block on any truecolor terminal, a zero-dependency kitty Unicode-placeholder high-res path on capable terminals), a gradient "mecatl" wordmark, and an info block.
Package welcome renders the first-run splash for the mecatui zero-state: a faithful mascot (half-block on any truecolor terminal, a zero-dependency kitty Unicode-placeholder high-res path on capable terminals), a gradient "mecatl" wordmark, and an info block.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL