Skip to content

Bitslix/BLXCode

Repository files navigation

BLXCode

BLXCode

Local-first desktop workbench for AI-assisted development
Terminals · Agent · Memory · Plans · Git · File preview — in one Tauri shell

MIT License Version 0.2.6 Rust 2021 Tauri 2 Leptos 0.8

Linux, macOS, Windows 14 locales 20 themes CI

Quick Start · Features · Screenshots · Documentation · Changelog · Community · Wiki


BLXCode is an open-source desktop workbench for running AI coding agents beside real terminals, project memory, Markdown plans, tasks, and an embedded browser. Built with Tauri 2, Rust, Leptos, and Trunk.

Create a workspace, assign terminal slots to Claude, Codex, Gemini, OpenCode, or Cursor, keep durable notes under .agents/, track work with plans and a Kanban board, preview and diff files in the center pane, and talk to model providers from the same interface — all local-first, with data you can inspect on disk.

Features

Workbench

🖥️ Native shell Tauri 2 + Leptos 0.8 WASM (Trunk) on Linux, macOS, and Windows
📑 Center tabs VS Code–style tab strip: Terminals, file preview, diff viewer, Settings
🧩 Multi-terminal grids Preset layouts, split panes, drag-and-drop slot reorder, session resume
📂 Sidebar Project Files tree, File Diff panel with stage/unstage, Git commit graph
⌨️ Shortcuts tmux-style Ctrl+b chords (default) or legacy direct chords
🎨 20 themes BLXCode, Dracula, Catppuccin, Nord, Rosé Pine, GitHub Dark, and more

Files & Git

👁️ Rich preview Images, video, Markdown, Mermaid, syntax-highlighted code (highlight.js)
📜 Policy docs LICENSE, README, CONTRIBUTING, SECURITY — rendered with hero banners
🔀 Diff viewer Unified diffs in center tabs; live refresh via filesystem watcher
🌿 Git graph Swim-lane commit history; auto-refresh on working-tree changes
✂️ Code handoff Drag-select line ranges → insert into terminal or attach to agent

Plans, memory & tasks

📋 Plan Manager Markdown plans under .agents/plans/, task syntax, load-into-agent
📊 Kanban board Drag-and-drop columns across plan tasks with Markdown write-back
🧠 Memory Dynamic categories, learnings, 2D/3D graph with category clustering
Tasks .blxcode/tasks/ with plan-linked grouping in the agent panel

BLXCode Agent

🤖 Providers OpenRouter, Anthropic, OpenAI-compatible; thinking levels; OS keyring
🛠️ Better Harness Slim system prompt + 11 core skills; shell, git, workspace search, web tools
🔍 Subagents Parallel scout / review / security_analyst runs with timeline cards
🖼️ Image mode Inline chat images; fal.ai support; output under .blxcode/generated/
🎙️ Voice STT, TTS, push-to-talk; OpenAI, OpenRouter, AWS Polly
📊 Turn metrics Per-row tokens, TTFT, decode speed, and session cost chip
Ask user Multiple-choice clarifying questions inline in the chat timeline
📜 Rules & skills .agents/rules/ and .agents/skills/ with install dialog

Platform

🌍 14-language UI Compile-time translations and localized EULA
🔄 Auto-updater Signed GitHub Releases via Tauri v2 updater
🛠️ Setup scripts scripts/setup/ for Linux, macOS, and Windows
CI PR workflow runs cargo check for backend and wasm32 frontend

What's new

Latest release: 0.2.6 — terminal slot drag-and-drop, code preview with syntax highlighting and context-menu handoff, policy-doc preview (LICENSE, README, …), closeable Terminals tab, and documentation sync.

0.2.3 — center multi-view tabs, rich file preview, docked Settings, 20 themes, GitHub auto-updater, centralized API Keys, per-turn chat metrics, agent question cards.

0.2.0 — Kanban board, expandable Rules/Skills cards, agent chat maximize, Leptos 0.8 upgrade.

See CHANGELOG.md for the full history and Unreleased for work in progress (sidebar File Diff, center diff viewer).

Screenshots

BLXCode workbench with multi-agent terminal grid and right panel

Workbench Sidebar explorer & Git
Workspace sidebar and terminal grid Project Files tree and Git Commits graph
Plan Manager Agent panel
Plans panel with task chips and Markdown editor BLXCode Agent with context and tasks
Memory & graph Skills panel
Memory Files with categories Skills panel and install dialog
More screenshots (boot screen, settings, providers, voice)

BLXCode boot loading screen

Welcome Workspace setup
Welcome screen with recent workspaces Create workspace layout
Provider settings Voice settings
Agent provider settings Voice STT and TTS settings

Quick Start

After cloning, run the setup script for your platform:

./scripts/setup/setup-linux.sh
./scripts/setup/setup-macos.sh
powershell -ExecutionPolicy Bypass -File scripts/setup/setup-windows.ps1

Use --check-only to inspect missing prerequisites, or --with-bundle to run cargo tauri build after checks.

Prerequisites

  • Rust stable and Cargo
  • wasm32-unknown-unknown Rust target
  • Trunk and Cargo Tauri CLI
  • Tauri 2 system dependencies for your OS
rustup target add wasm32-unknown-unknown
cargo install trunk tauri-cli

On Linux, install WebKitGTK and build dependencies for your distribution.

Run

cargo tauri dev

Tauri starts Trunk automatically via src-tauri/tauri.conf.json. The frontend serves at http://localhost:1420.

First-build tip: Tauri's dev connection times out after 180 seconds. On slower machines, warm the WASM cache first:

trunk build
cargo tauri dev

Build

cargo tauri build

Release automation

./scripts/release.sh
./scripts/release-macos.sh
scripts\release.cmd
powershell -ExecutionPolicy Bypass -File scripts/release.ps1 --platform windows

Copy .env.release.example to .env.release only when you need signing keys or GitHub upload overrides.

Checks

cargo test --workspace
cargo check -p blxcode
cargo check -p blxcode-ui --target wasm32-unknown-unknown
trunk build

Documentation

Full index: Documentation Home · GitHub Wiki

User guides

Topic Guide
Getting started docs/user/getting-started.md
Workspaces & center tabs docs/user/workspaces.md
Settings & API keys docs/user/settings.md
Themes docs/user/appearance-themes.md
File preview & handoff docs/user/file-preview.md
Memory & tasks docs/user/memory-and-tasks.md
Plans & Kanban docs/user/plans.md
Rules & skills docs/user/rules-and-skills.md
Agent harness docs/user/agent-harness.md
Subagents docs/user/subagents.md
Providers & hooks docs/user/agent-providers.md
Image mode docs/user/image.md
Voice docs/user/voice.md
Keyboard shortcuts docs/user/keyboard-shortcuts.md
UI language docs/user/language.md
Building docs/user/building.md
Troubleshooting docs/user/troubleshooting.md

Developer guides

Repository layout

.
├── src/                    # Leptos CSR frontend (blxcode-ui)
├── src-tauri/              # Tauri 2 backend (blxcode)
├── content/                # EULA markdown and bundled agent hook scripts
├── src-tauri/src/agent/harness_skills/  # Embedded core skill Markdown
├── public/                 # Static assets (Trunk)
├── themes/                 # CSS theme tokens
├── scripts/                # Setup, release, and maintainer scripts
├── docs/                   # User and developer documentation
├── Cargo.toml              # Workspace manifest
├── Trunk.toml              # Frontend build config
└── styles.css              # Global app styling

Workspace data

<workspace>/.agents/memory/       # notes; subfolders = categories
<workspace>/.agents/learnings/    # repo learnings
<workspace>/.agents/plans/        # Markdown plans
<workspace>/.agents/rules/        # binding rule-*.md files
<workspace>/.agents/skills/       # user skills
<workspace>/.blxcode/tasks/       # task files
<workspace>/.blxcode/generated/   # image mode output
<workspace>/.blxcode/agent-context/  # handoff exports

API keys are stored in the OS keyring when available, with a private file fallback under the app config directory.

Internationalization

BLXCode ships 14 locales with compile-time string checks. Change language via Ctrl+Shift+PBLXCode settingsAppUI language.

Status

BLXCode is early-stage open source. The workbench, agent harness, file preview, Git tooling, and settings revamp are in active use on main; APIs and on-disk formats may still evolve. Current crate version: 0.2.6.

Community

🐛 Bug reports GitHub Issues — use the Bug report template
💬 Questions & ideas GitHub DiscussionsQ&A, Ideas, and General templates
📦 Downloads GitHub Releases — installers for Linux, macOS, and Windows
🆘 Help SUPPORT.md — docs, troubleshooting, and where to ask
🤝 Contributing CONTRIBUTING.md — setup, conventions, PR checklist

The in-app auto-updater pulls signed builds from GitHub Releases. Release notes live in CHANGELOG.md.

Contributing

Contributions welcome. Start with Developer Setup and Contributing. For code changes, open a pull request; for bugs and feature requests, use Issues or Discussions.

  • Keep frontend (blxcode-ui) and backend (blxcode) boundaries clear
  • Register Tauri commands in src-tauri/src/lib.rs and add wrappers in src/tauri_bridge.rs
  • Update docs when user-facing behavior changes
  • Run relevant checks before opening a pull request

License

BLXCode is released under the MIT License.

About

BLXCode is an open-source desktop workbench for running AI coding agents beside real terminals, project memory, tasks, and an embedded browser. It is built with Tauri 2, Rust, Leptos, and Trunk.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors