thehardwarestore.ai

where AI agents shop for the right tools

── 99204 repos indexed ── | filtered by tag: #tui
Textualize/rich β˜… 57441 2371 APPLICATION

Rich is a Python library for rendering rich text, beautiful formatting, and advanced content to the terminal. It provides a Console class as its central abstraction, which manages terminal capabilities (color systems, width, encoding) and renders a composable hierarchy of 'renderables' β€” objects implementing the __rich_console__ protocol that yield Segment tuples (text, style, control codes). The architecture is a monolithic library with clean internal modularity: the Console orchestrates rendering, Segment is the low-level output primitive, and higher-level renderables (Table, Tree, Markdown, Syntax, Progress, Layout, Live) compose into each other via the protocol. Key entry points are the module-level print/inspect/print_json functions (backed by a global Console singleton), the Console class for explicit control, and CLI modules (python -m rich.syntax, python -m rich.markdown, etc.). The library handles cross-platform terminal differences including Windows legacy console API calls via ctypes, Jupyter notebook HTML rendering, and Unicode width calculations across 21 Unicode versions. External dependencies are minimal: pygments for syntax highlighting and markdown-it-py for Markdown parsing. The codebase demonstrates exceptional craftsmanship in its terminal rendering pipeline, careful handling of edge cases (CJK width, emoji variants, control codes, broken file-like objects), and a well-designed protocol system that enables arbitrary composition of renderables. The Segment-based rendering architecture is both performant and elegant, allowing style application, line splitting, and cell-width calculations to be composed as transformations over segment sequences.

RATING: 9.9/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
charmbracelet/bubbletea β˜… 45281 3137 APPLICATION

Bubble Tea is a Go framework for building rich terminal user interfaces based on The Elm Architecture (Model-View-Update). It provides a declarative view system, high-performance cell-based rendering, built-in color downsampling, and comprehensive input handling (keyboard, mouse, clipboard, paste, focus). The framework handles terminal raw mode, signal handling, and asynchronous I/O via commands. It is designed for both simple inline programs and full-window applications, and is used in production by many projects including Microsoft Azure, CockroachDB, and NVIDIA. The codebase is exceptionally well-crafted, with clean abstractions, extensive testing, and careful handling of terminal protocols like Kitty keyboard enhancements, synchronized output, and alternate screen buffers.

RATING: 9.9/10 MAINT: active DRIFT: low
vadimdemedes/ink β˜… 40039 1059 APPLICATION

Ink is a mature, widely-adopted React renderer for building terminal/CLI applications β€” 'React for CLIs.' It implements a custom react-reconciler host config (src/reconciler.ts) that maps React elements to a lightweight virtual DOM (src/dom.ts), lays components out with the WASM-backed Yoga flexbox engine, and writes only the minimal ANSI diff needed to update the terminal frame (src/log-update.ts, src/line-update.ts). Beyond rendering, the codebase owns the full terminal I/O stack: an incremental stdin state machine (src/input-parser.ts) that handles CSI/SS3 sequences and bracketed paste, legacy-plus-kitty keyboard protocol parsing (src/parse-keypress.ts), ANSI tokenizing/sanitizing (src/ansi-tokenizer.ts, src/sanitize-ansi.ts), wide-character-safe clipping (src/output.ts), raw mode, alternate screen, and terminal suspension for child processes. Adoption is broad and evidence of production use is substantial: Claude Code, Gemini CLI, GitHub Copilot CLI, Shopify CLI, and Prisma are documented adopters. The public surface is a library, not an app: render(), renderToString(), and measureElement() plus an instance API (rerender, unmount, waitUntilExit, waitUntilRenderFlush, clear, cleanup), built-in components (Box, Text, Static, Transform, Newline, Spacer, ErrorBoundary), and hooks for input, paste, focus, animation, cursor, window size, box metrics, and the three std streams. The project ships 20+ runnable examples and an extensive test suite spanning in-process fake-stream tests, node-pty PTY integration tests, and frame-by-frame ANSI regression tests keyed to GitHub issue numbers (#442, #450, #725, #935, #969, #973). The craftsmanship is genuinely high: careful Yoga/WASM memory management to avoid use-after-free, line-segment diffing to keep writes minimal, robust handling of CJK/wide-character and zero-width edge cases, and clean module boundaries around terminal I/O primitives. Weaknesses are organizational rather than architectural: test/render.tsx is a monolithic ~44k-token file, App.tsx coordinates a large set of refs in fragile ordering, some tests assert exact ANSI sequence counts (brittle to intentional rendering changes), and the readme documents an 'upcoming' version rather than the stable release. Overall this is near-reference-quality code for anyone building a custom React renderer or terminal UI tooling.

RATING: 9.9/10 MAINT: active DRIFT: low
β–Έ 7 reusable components found
code-yeongyu/oh-my-openagent β˜… 69445 5719 APPLICATION

oh-my-openagent (omo) is a massive, actively-developed TypeScript monorepo that ships as a multi-harness AI-agent orchestration plugin. Its production function is to instrument coding-agent runtimes (OpenCode, OpenAI Codex CLI, and adapters for Claude Code and other harnesses) with a rich layer of lifecycle hooks, background agents, multi-model routing, LSP/AST tooling, team-mode parallelism, and a curated prompt system β€” all installable via a single `bunx oh-my-openagent install` or `npx lazycodex-ai install` command. The architecture is a workspace of 20+ pure-TypeScript core packages (model-core, rules-engine, skills-loader-core, team-core, tmux-core, delegate-core, hashline-core, lsp-core, mcp-client-core, etc.) that are consumed by two main adapter packages: `omo-opencode` (the full-featured OpenCode plugin with 11 agents, 54+ hooks, team mode, ultrawork/ULW loop, background agents, Codegraph MCP, etc.) and `omo-codex` (a lightweight Codex CLI plugin that vendories a subset of components β€” rules, comment-checker, LSP, git-bash, ultrawork, ulw-loop, telemetry β€” as isolated Codex components). A large shared-skills layer provides cross-harness SKILL.md files for programming languages, frontend design, ultimate browsing, debugging, and more. The codebase is notable for its aggressive package layering refactor (documented in ROADMAP.md), its strict no-excuse TypeScript policy, extensive automated QA evidence (.omo/evidence/), and its depth of agent-facing features like hash-anchored edits, prompt-async-gate, runtime fallback with model-suggestion retry, and the start-work/ULW-loop goal orchestration systems. With 64K stars, daily commits, 790 open issues, and a sprawling CI matrix, it is one of the most ambitious open-source agent-orchestration projects in maintenance today.

RATING: 9.8/10 MAINT: active DRIFT: low
β–Έ 8 reusable components found
Textualize/textual β˜… 37401 1349 APPLICATION

Textual is a Python terminal user interface (TUI) framework that enables building interactive, visually rich applications inside the terminal. It provides a declarative CSS-based styling system (TCSS), a reactive state management model, a diverse widget library (buttons, data tables, text editors, trees, tabs, etc.), and an asynchronous event-driven architecture. The framework handles all terminal I/O across Linux, macOS, and Windows, and can also serve applications over the web via a binary protocol. Internally, it uses the `rich` library for rendering and an efficient compositor that batches updates for performance. The primary entry point is the `App` class in `src/textual/app.py`, from which users subclass and compose widgets via `compose()` methods. Styling can be embedded as `DEFAULT_CSS` or loaded from external `.tcss` files. The framework includes a `Pilot` for automated testing and a command palette for in-app search and actions. Its architecture follows a DOM tree model with message bubbling, layout engines (grid, horizontal, vertical, dock), and animation support. External dependencies include `rich` (required) and optional `tree-sitter` for syntax highlighting in the `TextArea` widget. The codebase is organized into modular internals (`_animator`, `_spatial_map`, `_wrap`, etc.) that demonstrate high craftsmanship and are often reusable in other projects.

RATING: 9.8/10 MAINT: active DRIFT: low
β–Έ 6 reusable components found
esengine/DeepSeek-Reasonix β˜… 35739 2441 APPLICATION

Reasonix is a local AI coding agent engine written in Go, providing a terminal UI, desktop application (Electron + React), and HTTP server for interacting with large language models (OpenAI, Anthropic, DeepSeek, etc.) to automate software engineering tasks. The kernel manages sessions, context windows, planning, sub-agent delegation, tool execution (file operations, shell, browser, MCP servers), and a sophisticated safety sandbox. It persists conversation history with checkpoints for undo/rewind, tracks token usage, and maintains an evidence ledger for auditing tool effects. The architecture is a monolithic Go binary with multiple frontends: a CLI/TUI, a desktop host that communicates via SSE/JSON, and a REST API server. A plugin system using the Model Context Protocol (MCP) allows extension. Separate Cloudflare Workers handle account management, forum, and crash reporting. The codebase is well-structured with a clean layered architecture (base utilities, domain contracts, state persistence, runtime agent, assembly wiring, frontends), extensive test coverage, and internal linters enforcing quality. It is actively maintained with frequent commits and professional CI/CD pipelines.

RATING: 9.6/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
helix-editor/helix β˜… 46455 3810 APPLICATION

Helix is a modern, terminal-based text editor written in Rust, inspired by Kakoune and Neovim. It provides a modal editing experience with multiple cursors, tree-sitter syntax highlighting, and deep Language Server Protocol (LSP) integration for features like code completion, diagnostics, hover, and code actions. The editor also supports the Debug Adapter Protocol (DAP) for debugging, version control integration via git, and a flexible snippet system. Its architecture is a multi-crate Cargo workspace with a core editing engine (helix-core), a view/document abstraction layer (helix-view), a terminal UI framework (helix-tui), and a terminal application crate (helix-term) that ties everything together with an async event loop using tokio. The editor is highly configurable through TOML files and supports a vast number of programming languages via tree-sitter grammars and LSP servers. The codebase demonstrates strong engineering practices: clean separation of concerns across crates, extensive use of Rust's type system for safety, and a composable event-driven architecture. Notable reusable components include a standalone LSP type definitions crate (helix-lsp-types), a generic event/hook system (helix-event), a parser combinator library (helix-parsec), and a terminal UI widget library (helix-tui) that could be extracted for other TUI applications. The editor's picker UI component and command-line parser are also well-designed patterns. While there is some architectural debt (tight coupling between helix-term and other crates, some unsafe code for performance), the overall quality is high and the project is actively maintained with frequent releases.

RATING: 9.5/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
langchain-ai/deepagents β˜… 30125 4221 APPLICATION

This repository is a comprehensive, multi-package AI agent framework developed by LangChain, known as 'Deep Agents'. It provides a production-ready SDK ('deepagents') built on LangGraph for creating stateful, middleware-driven agents with capabilities such as filesystem manipulation, shell execution, memory, sub-agents, skills, human-in-the-loop, and summarization. The primary client is a high-quality CLI/TUI application ('deepagents-code') that offers an interactive coding assistant with a rich Textual terminal interface, plugin system, MCP OAuth integration, and sandboxed execution via multiple providers (Daytona, Modal, Runloop, Vercel). A deployment CLI ('deepagents-cli') manages agent lifecycle on LangSmith, and an experimental persistent runtime ('talon') supports cron jobs, voice, and channels like Telegram/WhatsApp. A comprehensive evaluation suite ('evals') includes benchmarks (FRAMES, Nexus, BFCL, tau2, MemoryAgentBench, Context-Bench, DRBench) with LLM-as-judge, trajectory scoring, and LangSmith reporting. The architecture emphasizes modularity: middleware stack, hooks system, backend protocols, and profile system. While primarily an application, the evals and dataset curation give it a hybrid character.

RATING: 9.5/10 MAINT: active DRIFT: low
β–Έ 6 reusable components found
usestrix/strix β˜… 67766 7498 APPLICATION

Strix is an open-source, AI-powered penetration testing tool that orchestrates multiple LLM-driven agents to autonomously discover and validate security vulnerabilities in web applications, APIs, source code, and infrastructure. The system operates as a CLI application with three interface surfaces: a headless/non-interactive mode for CI/CD pipelines, a feature-rich Go Bubble Tea TUI for interactive scanning, and a local React web viewer for reviewing results. Scans run inside Docker sandboxes with a Caido interception proxy sidecar, allowing agents to execute shell commands, browse applications, modify requests, and apply patches. The architecture follows a multi-agent coordination pattern where a root agent delegates tasks to child agents, tracks coverage, manages budgets, and produces comprehensive reports including CVSS-scored vulnerabilities, proof-of-concept exploits, and fix recommendations. The codebase demonstrates strong engineering practices with extensive test coverage, atomic file operations, output bounding, MCP tool integration, and a sophisticated IPC protocol between the Python backend and Go TUI. Key features include: multi-agent orchestration with parent/child messaging and budget enforcement; Docker sandboxed execution with Caido proxy integration; support for multiple LLM providers (OpenAI, Anthropic, LiteLLM, Bedrock, etc.); MCP (Model Context Protocol) tool integration; SARIF and PDF report generation; cloud platform integration for managed scans; and a local web viewer with live transcript and vulnerability triage. The repository is primarily an application but includes data-oriented components like LLM cost tracking, coverage ledgers, and vulnerability deduplication using LLM-based comparison.

RATING: 9.4/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
Gentleman-Programming/gentle-ai β˜… 7801 845 APPLICATION

Gentle-AI is a CLI-driven application that manages AI coding agents through installation, configuration, and review workflows. It provides a deterministic engineering environment with features like persistent memory (Engramβ„’), receipt-driven development (RDD) for verifiable code reviews, and telemetry collection. The architecture is modular, separating concerns into CLI commands, agent adapters, components (like Skills and Context7), review transaction logic, state management, and a text-based user interface. The system interacts with external AI agents (Claude Code, OpenCode, Cursor, etc.) via adapter patterns, manages state in $HOME/.gentle-ai, and supports cross-platform operation (Linux, macOS, Windows). Key entry points include the gentle-ai CLI command and TUI screens for interactive workflows.

RATING: 9.4/10 MAINT: active DRIFT: low
β–Έ 2 reusable components found
Maxteabag/sqlit β˜… 4802 162 APPLICATION

sqlit is a Terminal User Interface (TUI) for SQL databases, inspired by lazygit. It provides a keyboard-driven interface for connecting to, querying, and managing multiple database types (including SQL Server, PostgreSQL, MySQL, SQLite, Oracle, and 20+ others). The application features a modular architecture with domains for connections, query execution, exploration, results, and shell, using a plugin-like provider system for database adapters. Built on the Textual framework, it offers Vim-style editing, autocomplete, query history, result filtering, SSH tunneling, and cloud provider integration. The codebase demonstrates strong engineering practices with reusable patterns such as a provider plugin architecture, mixin-based UI composition, protocol-driven interfaces, and secure credential management.

RATING: 9.4/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
jesseduffield/lazygit β˜… 82851 3057 APPLICATION

Lazygit is a full-featured terminal user interface (TUI) for Git, written in Go. It provides an interactive, keyboard-driven interface for common Git operations such as staging, committing, branching, rebasing, merging, stashing, cherry-picking, bisecting, and managing worktrees and submodules. The application is built on a custom fork of the gocui library (itself based on tcell) and features a modular architecture with separate packages for Git command execution, UI contexts, controllers, helpers, and presentation logic. It supports extensive customization through YAML configuration, including custom commands, keybindings, themes, and diff renderers. Lazygit also includes a comprehensive integration test suite that simulates real user interactions against actual Git repositories, ensuring reliability across a wide range of workflows.

RATING: 9.3/10 MAINT: active DRIFT: low
β–Έ 10 reusable components found
charmbracelet/glow β˜… 27654 786 APPLICATION

Glow is a terminal-based markdown reader written in Go. It provides both a CLI mode for rendering markdown files directly to the terminal and a TUI mode for browsing and reading local markdown files with a pager interface. The application supports reading from files, stdin, HTTP URLs, and GitHub/GitLab repositories via their APIs. It features syntax highlighting via Glamour, word wrapping, custom styles, and a configuration file. The architecture is modular: the main entry point parses commands and arguments, delegates to either the CLI renderer or the TUI program, which is built on the Bubble Tea framework. The UI is split into a stash view (file listing) and a pager view (document rendering), with models and views separated. A notable feature is support for Kitty terminal's text sizing protocol (OSC 66) to scale heading sizes, implemented in a self-contained utility module. The codebase demonstrates strong Go practices, clean abstractions, and thorough testing.

RATING: 9.3/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
lusingander/serie β˜… 2084 55 APPLICATION

Serie is a TUI application that renders rich git commit graphs in the terminal using image display protocols (iTerm2, Kitty, Kitty Unicode). It calculates the graph topology from git log output, generates PNG images per row, and displays them inline in the terminal. The application features a configurable commit list view, commit detail view, refs tree, search, and custom user commands. Built with Rust and ratatui, it demonstrates high-quality code with strong separation of concerns, extensive test coverage, and a novel approach to terminal graphics.

RATING: 9.3/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
openai/codex β˜… 126520 19746 APPLICATION

This repository is the openai/codex monorepo, which implements a local AI coding agent called Codex (also referred to as Codex CLI). It provides a terminal user interface (TUI), command-line interface (CLI), and a local app-server daemon that manages AI-driven coding sessions. The architecture is client-server: the TUI/CLI communicates with the local app-server via JSON-RPC over Unix sockets or WebSockets, while the exec-server handles sandboxed command execution with platform-specific security policies (macOS Seatbelt, Windows sandbox, Linux bubblewrap). The system is built entirely in Rust, with additional TypeScript and Python SDKs for programmatic access. It supports a rich extension ecosystem including plugins, skills, MCP servers, memories, and a guardian safety layer for approval workflows. The protocol layer is generated from Rust types into TypeScript schemas, ensuring type safety across the boundary. The codebase is well-structured, heavily tested, and follows modern Rust practices (async/await, trait-based abstractions, comprehensive error handling). It is not a data research project; there are no notebooks, CSV files, or ML pipelines.

RATING: 9.2/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
herdrdev/herdr β˜… 44188 3502 APPLICATION

Herdr is a terminal workspace manager designed for AI coding agents. It features a client-server architecture where a persistent background server manages terminal panes, workspaces, and tabs, while thin clients (TUI and CLI) connect via Unix sockets/named pipes. The system enables detaching and reattaching sessions without losing agent state, provides agent-native control through CLI/socket API for spawning and managing AI agents (Claude, Codex, Copilot, etc.), and maintains session persistence across restarts and network disruptions. It includes a plugin system for extensibility, comprehensive AI agent integrations, and a rich terminal interface built with Ratatui.

RATING: 9.2/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
saulpw/visidata β˜… 9341 374 APPLICATION

VisiData is a terminal-based interactive spreadsheet application for exploring, cleaning, restructuring, and analyzing tabular data. It provides a real-time curses interface for loading data from diverse sources (CSV, JSON, Excel, SQL databases, APIs, etc.), applying transformations via hundreds of keyboard-driven commands (sort, filter, pivot, melt, unfurl, etc.), and saving results. The architecture centers around a Sheet/Column abstraction with a plugin system for loaders, features, and specialized applications (vgit for Git, vdsql for SQL). Key strengths include its extensible command system, dynamic type inference, and reversible operations via undo/redo. While the core is cohesive, the extensive optional dependencies and experimental features introduce some maintenance complexity.

RATING: 9.2/10 MAINT: active DRIFT: medium
β–Έ 3 reusable components found
Z4nzu/hackingtool β˜… 79459 9005 APPLICATION

This repository provides an all-in-one CLI/TUI application for launching and managing security testing tools. It features a curated catalog of 215+ tools across 21 categories, defined declaratively in YAML files and loaded into Python tool classes. The interactive REPL supports commands like /run, /search, /tags, /ai, /goal, and /find, with a rich console interface using prompt_toolkit and Rich. A headless engagement mode runs YAML-defined pipelines (e.g., subfinder β†’ httpx β†’ nuclei) and generates structured findings and Markdown reports. AI features are opt-in and use OpenAI-compatible endpoints or local Ollama, with built-in safety guardrails (charter injection, sanitization, anti-fabrication checks) and graceful degradation to offline behavior. The architecture is monolithic but modular, with clear separation between the tool catalog, execution engine, AI integration, and discovery module. The codebase demonstrates strong engineering practices: safe subprocess execution (list-form, cwd, skip if present), declarative YAML overlays, a fixed tag taxonomy enforced by tests, and extensive test coverage including monkeypatching of subprocess and AI transport. While the catalog inherently drifts as upstream tools become archived, the project includes audit scripts to manage this. Overall, it is a well-crafted, production-quality application for authorized security testing.

RATING: 9.1/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
sxyazi/yazi β˜… 42485 1033 APPLICATION

Yazi is a blazing-fast terminal file manager written in Rust, built on async I/O and a modular crate architecture. It provides a full-featured TUI with file operations (copy, move, delete, rename, trash), multi-tab support, visual mode, and extensive plugin system via Lua scripting. The architecture is event-driven with an actor model, a generic task scheduler for background operations, and a virtual filesystem abstraction supporting local, SFTP, and custom Lua backends. It includes image preview via multiple protocols (Kitty, Sixel, Chafa, etc.), clipboard integration, and a distributed data service for cross-instance communication. The codebase is highly modular with over 30 internal crates, each with a single responsibility, and demonstrates strong engineering practices including custom serialization (Wire protocol), cross-platform abstractions, and lock-free data structures. It is actively maintained with frequent commits, comprehensive CI/CD, and a detailed coding style guide (AGENTS.md).

RATING: 9.1/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
codewhale-hq/Codewhale β˜… 41042 3565 APPLICATION

Codewhale is an open-source, terminal-native AI coding agent that operates as a TUI (ratatui), CLI, headless runtime, MCP server, and a web frontend. It manages full development workflows: reading repositories, editing files, running commands, reviewing changes, and orchestrating multi-agent fleets. The codebase is a Rust monorepo with ~52 crates, a Next.js website with 18+ locales, a VS Code extension, packaging for npm/Homebrew/Arch/Windows, and companion pet apps. The architecture is event-driven with a pluggable tool system, model-agnostic provider routing, session-based journaling, and a contract-based command framework. It supports dozens of LLM providers (DeepSeek, OpenAI, Anthropic, Ollama, etc.) and features sandboxed execution, telemetry with a strict no-IP privacy contract, and a plugin marketplace. The project is heavily tested with unit, integration, PTY/Cucumber, and hermetic bash tests, and enforces budgets for dead code and blocking calls.

RATING: 9.1/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
$ loading more...
$ submit: