Skip to content

Commit b583c93

Browse files
author
echoVic
committed
docs: 更新文档以反映0.2.0版本新增的Web UI功能
添加Web UI相关文档和截图 更新快速开始指南和命令参考 调整文档结构以支持双模式界面
1 parent 913d26c commit b583c93

15 files changed

Lines changed: 397 additions & 106 deletions

File tree

BLADE.md

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -9,33 +9,40 @@ always respond in Chinese
99
- **项目类型**: CLI 工具(TUI 应用)+ Web UI + VSCode 扩展
1010
- **主要语言**: TypeScript
1111
- **运行时**: Node.js >=20.0.0(开发使用 Bun)
12-
- **UI 框架**: React 18 + Ink(终端 UI)/ React 18 + Vite(Web UI)
12+
- **UI 框架**: React 19 + Ink(终端 UI)/ React 19 + Vite(Web UI)
1313
- **状态管理**: Zustand
1414
- **配置管理**: 支持 JSON 配置和环境变量插值
1515
- **测试框架**: Vitest
1616
- **代码质量**: Biome(Lint + Format)
1717
- **包管理**: pnpm workspace
18+
- **当前版本**: 0.2.0
1819

1920
## 核心特性
2021

2122
- 🤖 智能对话,支持上下文理解和多轮对话
22-
- 🛠️ 内置 18+ 工具(文件读写、代码搜索、Shell 执行、Git 操作等)
23+
- 🌐 **双模式界面**:CLI 终端 + Web UI,随心切换
24+
- 🛠️ 内置 20+ 工具(文件读写、代码搜索、Shell 执行、Git 操作等)
2325
- 🔗 支持 Model Context Protocol (MCP),可扩展外部工具
2426
- 💾 会话管理(多会话、继续对话、会话 Fork)
25-
- 🔒 三级权限系统(allow/ask/deny)、工具白名单、操作确认
27+
- 🔒 多级权限系统(default/autoEdit/plan/yolo/spec)、工具白名单、操作确认
2628
- 🎨 现代 UI,支持 Markdown 渲染和语法高亮
27-
- 🌐 Web UI 支持,可在浏览器中使用
29+
- 🖥️ Web UI 支持,可在浏览器中使用(0.2.0 新增)
2830

2931
## 关键命令
3032

3133
### 开发命令
3234
```bash
33-
pnpm dev # 并行启动所有包的开发模式
34-
pnpm dev:cli # 仅启动 CLI 开发模式
35-
pnpm dev:web # 仅启动 Web UI 开发模式
36-
pnpm build # 构建所有包
37-
pnpm build:cli # 仅构建 CLI
38-
pnpm build:web # 仅构建 Web UI
35+
pnpm dev # 启动 CLI 开发模式(watch)
36+
pnpm dev:serve # 启动 CLI 开发模式 + Web 服务器
37+
pnpm build # 构建 CLI
38+
```
39+
40+
### 运行命令
41+
```bash
42+
blade # 启动交互式 CLI
43+
blade web # 启动 Web UI(自动打开浏览器)
44+
blade serve # 启动无头服务器
45+
blade serve --port 3000 --hostname 0.0.0.0 # 指定端口和主机
3946
```
4047

4148
### 测试命令
@@ -50,9 +57,8 @@ pnpm test:coverage # 带覆盖率测试
5057
### 代码质量
5158
```bash
5259
pnpm lint # Lint 检查
53-
pnpm format # 格式化代码
60+
pnpm lint:fix # Lint 并自动修复
5461
pnpm type-check # 类型检查
55-
pnpm preflight # 全面检查(清理、安装、格式化、Lint、构建、类型检查、测试)
5662
```
5763

5864
## 架构概览
@@ -62,32 +68,31 @@ pnpm preflight # 全面检查(清理、安装、格式化、Lint、构
6268
```
6369
Blade/
6470
├── packages/
65-
│ ├── cli/ # @blade/cli - CLI 核心工具
71+
│ ├── cli/ # blade-code - CLI 核心工具(npm 包)
6672
│ │ ├── src/
6773
│ │ │ ├── agent/ # Agent 核心(无状态设计)
6874
│ │ │ ├── tools/ # 工具系统(内置工具、执行管道、注册系统)
75+
│ │ │ ├── server/ # Web 服务器(Hono)
6976
│ │ │ ├── mcp/ # MCP 协议支持
7077
│ │ │ ├── context/ # 上下文管理
7178
│ │ │ ├── config/ # 配置管理
7279
│ │ │ ├── ui/ # UI 组件(React + Ink)
7380
│ │ │ ├── store/ # 状态管理(Zustand)
74-
│ │ │ ├── services/ # 服务层
75-
│ │ │ ├── cli/ # CLI 相关
76-
│ │ │ ├── commands/ # 命令处理
81+
│ │ │ ├── services/ # 服务层(Chat、Session 等)
82+
│ │ │ ├── commands/ # CLI 子命令(serve、web、mcp 等)
7783
│ │ │ ├── prompts/ # 提示词
78-
│ │ │ ├── utils/ # 工具函数
7984
│ │ │ ├── slash-commands/ # Slash 命令
85+
│ │ │ ├── skills/ # Skills 系统
86+
│ │ │ ├── hooks/ # Hooks 系统
87+
│ │ │ ├── spec/ # Spec 模式
8088
│ │ │ └── blade.tsx # 应用入口
8189
│ │ └── tests/ # 测试文件
82-
│ ├── web/ # @blade/web - Web UI 前端
83-
│ │ └── src/
84-
│ ├── vscode/ # @blade/vscode - VSCode 扩展
85-
│ │ └── src/
86-
│ └── shared/ # @blade/shared - 共享代码
90+
│ └── vscode/ # blade-vscode - VSCode 扩展
8791
│ └── src/
88-
├── docs/ # 文档
89-
├── pnpm-workspace.yaml # Workspace 配置
90-
├── tsconfig.base.json # 共享 TypeScript 配置
92+
├── docs/ # 用户文档(Docsify)
93+
├── .blade/ # 项目级 Blade 配置
94+
│ ├── commands/ # 自定义 Slash 命令
95+
│ └── skills/ # 自定义 Skills
9196
└── package.json # 根 package.json
9297
```
9398

CLAUDE.md

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,25 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
66

77
## Project Overview
88

9-
Blade Code is a modern AI-powered CLI coding assistant built with React + Ink and TypeScript. The project uses **pnpm workspace monorepo** architecture.
9+
Blade Code is a modern AI-powered coding assistant with CLI + Web UI, built with React + Ink (CLI) and React + Vite (Web), using TypeScript. Current version: **0.2.0**.
1010

1111
## Quick Commands
1212

1313
```bash
14-
pnpm dev # Start all packages in dev mode
15-
pnpm dev:cli # Start CLI dev mode only
16-
pnpm dev:web # Start Web UI dev mode only
17-
pnpm build # Build all packages
14+
# Development
15+
pnpm dev # Start CLI dev mode (watch)
16+
pnpm dev:serve # Start CLI + Web server
17+
pnpm build # Build CLI
18+
19+
# Running
20+
blade # Start interactive CLI
21+
blade web # Start Web UI (opens browser)
22+
blade serve # Start headless server
23+
24+
# Testing & Quality
1825
pnpm test:all # Run all tests
1926
pnpm lint # Run linter
2027
pnpm type-check # TypeScript type checking
21-
pnpm preflight # Full check (clean, install, format, lint, build, type-check, test)
2228
```
2329

2430
## Architecture
@@ -28,27 +34,27 @@ pnpm preflight # Full check (clean, install, format, lint, build, type-ch
2834
```
2935
Blade/
3036
├── packages/
31-
│ ├── cli/ # @blade/cli - CLI core
37+
│ ├── cli/ # blade-code - CLI core (npm package)
3238
│ │ └── src/
3339
│ │ ├── agent/ # Stateless Agent core
3440
│ │ ├── tools/ # Tool system (builtin, execution, registry)
41+
│ │ ├── server/ # Web server (Hono)
3542
│ │ ├── mcp/ # MCP protocol support
3643
│ │ ├── context/ # Context management
3744
│ │ ├── config/ # Configuration management
38-
│ │ ├── ui/ # UI components (React + Ink)
45+
│ │ ├── ui/ # Terminal UI (React + Ink)
3946
│ │ ├── store/ # State management (Zustand)
40-
│ │ ├── services/ # Service layer
41-
│ │ ├── cli/ # CLI configuration
42-
│ │ ├── commands/ # Command handlers
47+
│ │ ├── services/ # Service layer (Chat, Session, etc.)
48+
│ │ ├── commands/ # CLI subcommands (serve, web, mcp, etc.)
4349
│ │ ├── prompts/ # Prompt templates
4450
│ │ ├── slash-commands/ # Slash commands
51+
│ │ ├── skills/ # Skills system
52+
│ │ ├── hooks/ # Hooks system
53+
│ │ ├── spec/ # Spec mode
4554
│ │ └── blade.tsx # Entry point
46-
│ ├── web/ # @blade/web - Web UI
47-
│ ├── vscode/ # @blade/vscode - VSCode extension
48-
│ └── shared/ # @blade/shared - Shared utilities
49-
├── docs/ # Documentation
50-
├── pnpm-workspace.yaml # Workspace config
51-
└── tsconfig.base.json # Shared TypeScript config
55+
│ └── vscode/ # blade-vscode - VSCode extension
56+
├── docs/ # User documentation (Docsify)
57+
└── .blade/ # Project-level config
5258
```
5359

5460
## Key Design Principles

CONTRIBUTING.md

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -52,21 +52,29 @@
5252

5353
2. **开发模式**
5454
```bash
55-
pnpm dev:cli # 启动 CLI 开发模式
56-
pnpm dev:web # 启动 Web UI 开发模式
57-
pnpm dev # 并行启动所有包
55+
cd packages/cli
56+
pnpm dev # 启动 CLI 开发模式(watch)
57+
pnpm dev:serve # 启动 CLI + Web 服务器
5858
```
5959

60-
3. **代码质量检查**
60+
3. **测试 Web UI**
61+
```bash
62+
# 构建后启动 Web UI
63+
pnpm build
64+
blade web # 启动 Web UI 并打开浏览器
65+
blade serve # 启动无头服务器模式
66+
```
67+
68+
4. **代码质量检查**
6169
```bash
6270
pnpm lint # 运行 linting 检查
6371
pnpm type-check # TypeScript 类型检查
6472
pnpm test:all # 运行测试
6573
```
6674

67-
4. **构建验证**
75+
5. **构建验证**
6876
```bash
69-
pnpm build # 构建所有包
77+
pnpm build # 构建 CLI
7078
```
7179

7280
#### 代码规范
@@ -112,30 +120,30 @@
112120
```
113121
Blade/
114122
├── packages/
115-
│ ├── cli/ # @blade/cli - CLI 核心工具
123+
│ ├── cli/ # blade-code - CLI 核心工具(npm 包)
116124
│ │ ├── src/
117125
│ │ │ ├── agent/ # Agent 核心逻辑
118-
│ │ │ ├── cli/ # CLI 配置和中间件
119-
│ │ │ ├── commands/ # CLI 命令实现
126+
│ │ │ ├── commands/ # CLI 子命令(serve、web、mcp 等)
127+
│ │ │ ├── server/ # Web 服务器(Hono)
120128
│ │ │ ├── config/ # 配置管理
121129
│ │ │ ├── context/ # 上下文管理
122-
│ │ │ ├── ide/ # IDE 集成
123-
│ │ │ ├── logging/ # 日志系统
124130
│ │ │ ├── mcp/ # MCP 协议
125131
│ │ │ ├── prompts/ # 提示模板
126-
│ │ │ ├── services/ # 核心服务
132+
│ │ │ ├── services/ # 核心服务(Chat、Session 等)
127133
│ │ │ ├── slash-commands/ # 斜杠命令
134+
│ │ │ ├── skills/ # Skills 系统
135+
│ │ │ ├── hooks/ # Hooks 系统
136+
│ │ │ ├── spec/ # Spec 模式
128137
│ │ │ ├── tools/ # 工具系统
129-
│ │ │ ├── ui/ # 用户界面
130-
│ │ │ ├── utils/ # 工具函数
138+
│ │ │ ├── ui/ # 终端 UI(React + Ink)
139+
│ │ │ ├── store/ # 状态管理(Zustand)
131140
│ │ │ └── blade.tsx # 应用入口
132141
│ │ └── tests/ # 测试文件
133-
│ ├── web/ # @blade/web - Web UI 前端
134-
│ ├── vscode/ # @blade/vscode - VSCode 扩展
135-
│ └── shared/ # @blade/shared - 共享代码
136-
├── docs/ # 文档
137-
├── pnpm-workspace.yaml # Workspace 配置
138-
├── tsconfig.base.json # 共享 TypeScript 配置
142+
│ └── vscode/ # blade-vscode - VSCode 扩展
143+
├── docs/ # 用户文档(Docsify)
144+
├── .blade/ # 项目级配置
145+
│ ├── commands/ # 自定义 Slash 命令
146+
│ └── skills/ # 自定义 Skills
139147
└── package.json # 根 package.json
140148
```
141149

README.en.md

Lines changed: 28 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
# 🗡️ Blade Code
44

5-
**Next-Generation AI Coding Assistant (CLI)**
5+
**Next-Generation AI Coding Assistant (CLI + Web UI)**
66

77
[![npm version](https://img.shields.io/npm/v/blade-code.svg?style=flat-square)](https://www.npmjs.com/package/blade-code)
88
[![License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](LICENSE)
@@ -15,31 +15,53 @@ English | [简体中文](README.md)
1515

1616
---
1717

18+
## 📸 Screenshots
19+
20+
<div align="center">
21+
<img src="./assets/screenshots/startup.png" alt="Blade Code CLI" width="800" />
22+
<p><em>CLI Terminal Interface</em></p>
23+
</div>
24+
25+
<div align="center">
26+
<img src="./assets/screenshots/web.png" alt="Blade Code Web UI" width="800" />
27+
<p><em>Web UI Interface (new in 0.2.0)</em></p>
28+
</div>
29+
30+
---
31+
1832
## ✨ Key Features
1933

2034
- 🤖 **Smart Chat** - Context-aware, multi-turn collaboration with session continuity
2135
- 🆓 **Out of the Box** - Built-in free GLM-4.7 model (with chain-of-thought), plus custom models
36+
- 🌐 **Dual Interface** - CLI terminal + Web UI, switch as you like
2237
- 🛠️ **Rich Tooling** - 20+ built-in tools: file/search/shell/git/web and more
23-
- 🌐 **Smart Search** - WebSearch with multi-provider fallback (Exa → DuckDuckGo → SearXNG)
38+
- 🔍 **Smart Search** - WebSearch with multi-provider fallback (Exa → DuckDuckGo → SearXNG)
2439
- 🔗 **Extensible** - MCP, plugins, and Skills system
2540
- 📋 **Structured Workflows** - Spec / Plan / Subagents
2641
- 🔒 **Secure Control** - Permission modes: default/autoEdit/plan/yolo/spec + allow/deny lists
27-
- 🎨 **Modern UI** - React + Ink TUI with Markdown and syntax highlighting
42+
- 🎨 **Modern UI** - React + Ink TUI / React + Vite Web UI
2843

2944
---
3045

3146
## 🚀 Quick Start
3247

3348
```bash
49+
# Quick try
3450
npx blade-code
3551

52+
# Global install
3653
npm install -g blade-code
3754
# or
3855
pnpm add -g blade-code
3956

57+
# CLI mode
4058
blade
4159
blade "Help me analyze this project"
4260
blade --print "Write a quicksort"
61+
62+
# Web UI mode (new in 0.2.0)
63+
blade web # Start and open browser
64+
blade serve --port 3000 # Headless server mode
4365
```
4466

4567
> Uses the built-in free model by default; run `blade` to configure your own provider.
@@ -66,11 +88,12 @@ See docs for the full schema.
6688

6789
**Common Commands**
6890

69-
- `blade` start interactive UI
91+
- `blade` start interactive CLI
92+
- `blade web` start Web UI (new in 0.2.0)
93+
- `blade serve` start headless server (new in 0.2.0)
7094
- `blade mcp` manage MCP servers
7195
- `blade doctor` environment check
7296
- `blade update` check for updates
73-
- `blade install` install a specific version (experimental)
7497

7598
**Common Options**
7699

0 commit comments

Comments
 (0)