📈 GH Trending Explorer 🎲 Surprise me

← all repos

AtomUICommunity / TKCode

git clone https://github.com/AtomUICommunity/TKCode.git v0.1.4 · 1d ago

A native desktop client for AI coding agents, built with Avalonia and AtomUI. Multi-provider, MCP, integrated terminal, local resumable sessions, NativeAOT.

—
stars, 24h
+39
stars, 7 days · #1,100
+39
stars, 30 days · #7,403
39
★ total · +39% this week
4
forks · 1 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageC#
LicenseApache-2.0
Created2026-10-16 (4d ago)
Last pushtoday
Watchers0
OwnerOrganization

Links

README excerpt
# TKCode
**A desktop AI agent client built with Avalonia and AtomUI.**
简体中文 · English
TKCode is a native desktop client for working with AI coding agents. It runs its agent loop in a separate Agent Host process, talks to models through three wire protocols, and keeps every session as a local, append-only JSONL file. The whole client is designed to publish as a NativeAOT binary.
> **Status:** early development. The core pieces (protocol adapters, agent loop, session store, Host process, desktop UI) exist, but the app is not yet a finished product, and APIs and file formats may change.
## Features
- **Project- and session-centric UI.** Dark-first design with light and system-following themes, Chinese and English UI, and a command palette (⌘K) with nested pages and keyboard navigation.
- **Multiple providers and models.** Built-in provider catalog with one API key per provider, custom OpenAI-compatible and local endpoints, and hot-reloaded settings.
- **Three protocol adapters:** OpenAI Chat Completions, OpenAI Responses, and Anthropic Messages, with thinking / reasoning replay and fast mode where the provider supports it.
- **Coding tools for the built-in agent:** `read`, `write`, `edit`, `ls`, `glob`, `grep`, `bash` (with background tasks), task lists, `web_fetch`, `web_search`, and sub-agents.
- **External agent runtimes.** Claude Code, Codex, and ACP agents found on the machine run inside TKCode and share its approval flow.
- **Approvals and permission modes.** Read-only actions inside the workspace pass; everything else can ask the UI first, once or for the whole session.
- **Composer.** `@` file mentions, `/` commands and skills, Agent / Plan roles, and image attachments. Global assets live in `~/.tkcode`, project assets in `.agents/`.
- **MCP.** stdio and HTTP servers from `settings.json` or `.mcp.json`, with tools, resources, prompts, elicitation, and import / export.
- **Workbench.** File tree, code and Markdown previews, and an integrated terminal (libghostty-vt, separate pty host that keeps sessions alive, search).
- **Resumable sessions.** Sessions are stored as JSONL trees under `~/.tkcode/sessions/` and can be listed, renamed, pinned, reopened, and continued.
- **Streaming Markdown** via StreamMark (code highlighting, Mermaid, LaTeX).
- **In-app updates** from GitHub Releases, plus a system tray icon.
## Screenshots
 New chat. Pick a device, project, model, and role. 
 Workbench. Conversation, code preview, and file tree side by side. 
 Command palette (⌘K). Commands, projects, and chats. 
 Light theme. Follows the system or set explicitly. 
The screenshots are rendered headlessly from a sample project. Regenerate them with `tools/readme-screenshots.sh`.
## Architecture
 [code] 
| Project | Responsibility |
|---|---|
| `src/TKCode.Ai` | Unified message model, streaming events, OpenAI / Anthropic adapters |
| `src/TKCode.Agent` | Agent loop, tool abstraction, approval hook, steer / follow-up queues |
| `src/TKCode.Agent.Coding` | Coding