{"slug": "show-hn-kana-a-terminal-agent-where-the-human-stays-in-the-loop", "title": "Show HN: Kana – A terminal agent where the human stays in the loop", "summary": "Developer longyijdos released Kana, an open-source, single-binary terminal AI agent that runs with zero telemetry and keeps all configs, sessions, memory, artifacts and logs on the user's machine with 0600/0700 permissions. Kana ships prebuilt for macOS and Linux on arm64 and x64 with no Node.js or Python runtime dependency, requires no account registration, and limits normal execution network access to the user's configured model providers and MCP servers. The agent adds a two-tier local memory architecture (workspace and global), streamed reasoning traces with syntax-highlighted diffs, and reusable :prompt templates plus Markdown Subagent role cards.", "body_md": "**A lightweight, untracked, and deeply personal terminal AI companion.**\n\n  Instant single binary, zero telemetry. Transparent pairing ends black-box waiting, durable memory stops the amnesia loop, and reusable templates and subagents evolve alongside your workflow.\n\n  English · [简体中文](https://github.com/longyijdos/kana/blob/main/README.zh-CN.md)\n\nKana is an open-source, single-binary, terminal-native AI agent built for coding, system workflows, and tool-driven productivity. From a focused interactive TUI that keeps reasoning, diffs, and execution in flow, to headless `kana exec` powering scripts and CI pipelines, it delivers a razor-sharp runtime with instant cold starts.\n\nUnlike rigid black-box runners, Kana is a companion that **evolves alongside you**:\n\n- **Transparent pairing & shared growth** : Break away from opaque spinners and passive waiting. With streamed reasoning, syntax-highlighted diffs, and visible traces, Kana doesn't just divide parallel work with you—it demystifies complex problems, helping you master system nuances and grow as you build together;\n- **Durable memory, built-in intuition** : Put an end to the frustrating amnesia loop where every new session starts from scratch. Powered by a two-tier local memory architecture, Kana distills your architectural rules, habits, and past edge cases—turning every past correction into lasting intuition;\n- **Self-evolving capability** : It doesn't just execute instructions—Kana can turn recurring workflows into reusable`:prompt` templates and author dedicated**Subagent role cards** as your needs evolve. The more you use it, the more it shapes itself into your personal toolkit.\n\n**Sovereign, private, and untracked.** Kana sends no telemetry. During normal agent execution, network access is strictly limited to your configured model providers and MCP servers; explicit features such as updates, authentication, or installs access only their respective services. Your configs, sessions, memory, artifacts, and logs stay strictly on your machine.\n\nSingle binary with zero runtime dependencies—no Node.js or Python required. Prebuilt for macOS and Linux on arm64 and x64:\n\n```\ncurl -fsSL https://raw.githubusercontent.com/longyijdos/kana/main/scripts/install.sh | bash\n```\n\nNo account registration needed. Just export your API key and launch Kana inside any project directory:\n\n```\nexport DEEPSEEK_API_KEY=\"sk-...\"\ncd your-project\nkana\n```\n\nAuthenticate seamlessly through your browser:\n\n```\nkana auth login openai-codex\n```\n\nSet it in `~/.kana/config.toml`, or switch directly inside the TUI anytime using `/model`:\n\n```\n[agent.model]\nprovider = \"openai-codex\"\nname = \"gpt-5.6-sol\"\n```\n\nOnce inside, switch providers, models, or reasoning efforts on the fly with `/model`. For local endpoints (Ollama, vLLM) or hosted gateways, connect via the [Custom OpenAI-compatible provider](https://github.com/longyijdos/kana/blob/main/docs/custom-provider.md).\n\n|  | Capability | What Makes It Different | \n|---|---|---|\n| 🧠 | **Durable Memory & Intuition** | **End the amnesia loop** . Two-tier persistent memory (workspace & global) automatically consolidates your architectural habits, conventions, and past edge cases—turning corrections into lasting intuition across sessions. | \n| 🤝 | **Transparent Synergy & Delegation** | **No more black-box waiting** . Streamed reasoning traces and syntax-highlighted diffs keep execution transparent. Bidirectional delegation lets agent and human tackle complex tasks in parallel. | \n| 🧬 | **Self-Evolving Capability** | **Grows around your workflow** . Turns recurring workflows into reusable`:prompt` templates and authors specialized Markdown Subagent role cards as your needs evolve—shaping itself around your craft. | \n| 🛡️ | **Zero Telemetry & Local Sovereignty** | **Pure single binary, instant launch** . Zero telemetry, with normal execution strictly limited to your chosen models and MCP servers; sessions, memory, and artifacts are strictly isolated on your disk with`0600` /`0700` permissions. | \n| ⌨️ | **Terminal-Native Craftsmanship** | **Tailored for terminal purists** . Native streaming rendering for Mermaid charts and LaTeX formulas, full syntax diffs, background activity preview strips, input queueing, and pure Readline keyboard flow. | \n| 🔌 | **Open Ecosystem & Model Freedom** | **No platform lock-in** . Out-of-the-box support for DeepSeek, OpenAI Codex browser OAuth, and local Ollama/vLLM endpoints; extensible via`AGENTS.md` , reusable Skills, and MCP servers. | \n| ⚙️ | **Deterministic Automation & Issue Solving** | **From interactive terminal to headless workflows** .`kana exec` delivers versioned JSONL event streams and Goal-driven autonomous execution—powering custom automation and resolving repository issues end-to-end. | \n\nOnce your model is ready, launch Kana inside any project directory:\n\n```\nkana                          # Start an empty pairing session\nkana \"diagnose failing tests\" # Launch directly with an initial task\nkana resume                   # Interactively resume or prune saved sessions\nkana --clean                  # Launch an ephemeral, unsaved session\n```\n\nInside the TUI, everything flows naturally through pure keyboard shortcuts and visible cues:\n\n- Type `/` to open the**command palette** (`/model` to switch models,`/memory` to inspect memory,`/tools` for call history,`/goal` for bounded objectives);\n- Type `:` to open the**reusable prompt template palette** to expand distilled workflows instantly;\n- Type `@` to open the**Skill palette** and inject specialized guidance on demand;\n- Type `!<command>` to run local shell commands directly outside the agent loop;\n- **Non-blocking parallelism** : Active subagents and background jobs stream in the`Background · N` strip, while tasks delegated back to you appear in`Your tasks` , keeping your main flow uninterrupted.\n\nSee [TUI interaction](https://github.com/longyijdos/kana/blob/main/docs/tui.md) for shortcuts, queued inputs, and complete controls.\n\nKana shapes itself around your habits as you work:\n\n- **Two-tier durable memory** : When correcting conventions or defining constraints, Kana records durable facts (inspect or consolidate anytime via`/memory` ), retaining them across sessions separated by workspace and global scopes;\n- **Reusable prompt templates** : Crystallize recurring routines into`~/.kana/prompts/<name>.md` , then trigger them instantly in the editor with`:<name>` ;\n- **Dedicated subagents** : Define focused role cards under`~/.kana/agents/<role>.md` with restricted tools or alternative models. The main agent spawns them asynchronously for deep audits or migrations while keeping the parent run responsive—auditable anytime via`/agents` .\n\nSee [Subagents](https://github.com/longyijdos/kana/blob/main/docs/subagents.md) and [Sessions and memory](https://github.com/longyijdos/kana/blob/main/docs/sessions-and-memory.md) for details.\n\n`kana exec` exposes the exact same runtime to scripts and automated pipelines:\n\n```\nkana exec \"fix failing tests and verify\"\nprintf 'summarize this codebase' | kana exec\nkana exec resume <session-id> \"continue this task\"\nkana exec --goal \"resolve issue #42 end-to-end\"\nkana exec --timeout 30m \"refactor this module\"\nkana exec --json \"profile bottlenecks\"\n```\n\nEmits the final answer to stdout and progress to stderr by default; `--json` produces versioned JSONL event streams. Power custom automation, or resolve issues into Pull Requests end-to-end using the [Kana Agent reusable workflow](https://github.com/longyijdos/kana/blob/main/docs/kana-agent-workflow.md). See [Headless execution](https://github.com/longyijdos/kana/blob/main/docs/headless.md).\n\nInstall curated skills or sync them across other agent environments:\n\n```\nkana skills install\nkana skills sync codex                               # Sync to Codex\nkana skills sync --target-dir ~/.other-agent/skills  # Sync to any third-party agent\n```\n\nKana auto-discovers project skills from `.kana/skills` and `.agents/skills`, reads project instructions from `AGENTS.md`, and connects to stdio or remote MCP servers. See [Configuration and installation](https://github.com/longyijdos/kana/blob/main/docs/configuration.md).\n\nInstalled release binaries can update themselves directly:\n\n```\nkana update --check\nkana update\n```\n\nBuilding from source requires [Bun](https://bun.sh) and Git:\n\n```\ngit clone https://github.com/longyijdos/kana.git\ncd kana\nbun install --frozen-lockfile\n./scripts/install.sh\n```\n\nKana respects your local environment while keeping its boundaries transparent:\n\n- **Approvals are not a sandbox** : Built-in tools and`bash` execute directly in your host environment. File tools can inspect paths outside the workspace, and shell commands run with your user privileges; never skip approvals in untrusted codebases.\n- **Pre-execution MCP trust** : Stdio MCP servers spawn as local subprocesses before individual tool approvals; configure only trusted server binaries.\n- **Local sensitive data** : Configurations, credentials, logs, and sessions live under`~/.kana/` (configurable via`KANA_HOME` ) with restricted permissions. Sessions contain full execution history and should be treated as private data.\n\nSee [Configuration and installation](https://github.com/longyijdos/kana/blob/main/docs/configuration.md) for the complete security model.\n\nSee the [Documentation index](https://github.com/longyijdos/kana/blob/main/docs/README.md) for architectural contracts, document sets, and routing guidance.\n\n- **Architecture & Setup** :[Architecture](https://github.com/longyijdos/kana/blob/main/docs/architecture.md) ·[Configuration and installation](https://github.com/longyijdos/kana/blob/main/docs/configuration.md) ·[Release process](https://github.com/longyijdos/kana/blob/main/docs/releasing.md)\n- **Core Runtime** :[Conversation runtime](https://github.com/longyijdos/kana/blob/main/docs/conversation-runtime.md) ·[Agent runtime](https://github.com/longyijdos/kana/blob/main/docs/agent-runtime.md) ·[Tools and execution](https://github.com/longyijdos/kana/blob/main/docs/tools.md) ·[Sessions and memory](https://github.com/longyijdos/kana/blob/main/docs/sessions-and-memory.md)\n- **Models & Extensions** :[Providers](https://github.com/longyijdos/kana/blob/main/docs/providers.md) ·[DeepSeek](https://github.com/longyijdos/kana/blob/main/docs/deepseek-provider.md) ·[OpenAI Codex](https://github.com/longyijdos/kana/blob/main/docs/openai-codex-provider.md) ·[Custom provider](https://github.com/longyijdos/kana/blob/main/docs/custom-provider.md) ·[OAuth](https://github.com/longyijdos/kana/blob/main/docs/oauth.md) ·[MCP](https://github.com/longyijdos/kana/blob/main/docs/mcp.md) ·[Skills & system prompt](https://github.com/longyijdos/kana/blob/main/docs/skills-and-prompt.md) ·[Subagents](https://github.com/longyijdos/kana/blob/main/docs/subagents.md)\n- **Frontend & Workflows** :[TUI interaction](https://github.com/longyijdos/kana/blob/main/docs/tui.md) ·[Terminal rendering](https://github.com/longyijdos/kana/blob/main/docs/terminal-rendering.md) ·[Headless execution](https://github.com/longyijdos/kana/blob/main/docs/headless.md) ·[Kana Agent workflow](https://github.com/longyijdos/kana/blob/main/docs/kana-agent-workflow.md) ·[Terminal-Bench evaluation](https://github.com/longyijdos/kana/blob/main/docs/terminal-bench.md)\n\nBuild from source and run the full verification suite:\n\n```\nbun install --frozen-lockfile\nbun run check\n```\n\n`bun run check` runs Biome, TypeScript type checks, project style constraints, Knip dead-code analysis, and the Bun test suite.\n\nKana is actively evolving toward `1.0`; see the [Release process](https://github.com/longyijdos/kana/blob/main/docs/releasing.md) for versioning details. Contributions are warmly welcomed:\n\n- **For human contributors** : Consult[CONTRIBUTING.md](https://github.com/longyijdos/kana/blob/main/CONTRIBUTING.md) for PR guidelines and development workflows;\n- **For coding agents** : Consult[AGENTS.md](https://github.com/longyijdos/kana/blob/main/AGENTS.md) for agent-specific constraints and context.", "url": "https://wpnews.pro/news/show-hn-kana-a-terminal-agent-where-the-human-stays-in-the-loop", "canonical_source": "https://github.com/longyijdos/kana", "published_at": "2026-09-24 13:47:46+00:00", "updated_at": "2026-09-24 13:59:56.799340+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "ai-products"], "entities": ["Kana", "longyijdos", "DeepSeek", "OpenAI Codex", "GPT-5.6-sol", "Ollama", "vLLM", "MCP"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/show-hn-kana-a-terminal-agent-where-the-human-stays-in-the-loop", "markdown": "https://wpnews.pro/news/show-hn-kana-a-terminal-agent-where-the-human-stays-in-the-loop.md", "text": "https://wpnews.pro/news/show-hn-kana-a-terminal-agent-where-the-human-stays-in-the-loop.txt", "jsonld": "https://wpnews.pro/news/show-hn-kana-a-terminal-agent-where-the-human-stays-in-the-loop.jsonld"}}