- 使用 ProcessDirect 替代 ChatStream,支持工具调用结果显示 - 新增 project.config.yml 统一配置(Logo、用户前缀、流式延迟、Markdown等) - Markdown 渲染支持自动终端宽度换行 - 按行输出文本,每行延迟可配置 - 简化状态栏,只显示耗时(图标颜色 #f0c75e,文字颜色 #2b2e32) - spinner 动画右移两个字符 - 用户输入前缀可配置化
This commit is contained in:
52
agents.md
52
agents.md
@@ -57,20 +57,48 @@
|
||||
|
||||
### v0.1.0 已完成功能
|
||||
|
||||
1. **流式输出**
|
||||
- 实时打印 token
|
||||
- Spinner 显示"思考中..."
|
||||
- 第一个 token 到达时停止 spinner
|
||||
1. **流式输出(新流程)**
|
||||
- 等待 AI 返回完整响应
|
||||
- Markdown 转译
|
||||
- 模拟流式输出(从配置读取速度)
|
||||
- 效果更好,无残留问题
|
||||
|
||||
2. **Markdown 渲染**
|
||||
- 使用 glamour 库渲染 Markdown
|
||||
- 支持多种主题(dark, light, dracula, tokyo-night 等)
|
||||
- 通过 GLAMOUR_STYLE 环境变量配置主题
|
||||
- 通过 project.config.yml 配置主题
|
||||
|
||||
3. **重绘逻辑**
|
||||
- 响应完成后尝试重绘
|
||||
- 使用 termenv 库清除屏幕
|
||||
- ⚠️ 存在轻微残留 bug(可接受)
|
||||
3. **项目配置**
|
||||
- 通过 project.config.yml 统一管理配置项
|
||||
- 支持流式速度、渲染主题、Logo 等配置
|
||||
|
||||
---
|
||||
|
||||
## 项目配置
|
||||
|
||||
### project.config.yml
|
||||
|
||||
配置文件位于项目根目录:
|
||||
|
||||
```yaml
|
||||
# hxclaw 项目配置文件
|
||||
|
||||
# 模拟流式输出配置
|
||||
streaming:
|
||||
simulated_speed_ms: 30 # 模拟流式输出速度(毫秒/字符)
|
||||
|
||||
# Markdown 渲染配置
|
||||
markdown:
|
||||
glamour_style: dark # 渲染主题:dark, light, dracula, tokyo-night 等
|
||||
|
||||
# UI 配置
|
||||
ui:
|
||||
logo: "🦐"
|
||||
```
|
||||
|
||||
配置加载优先级:
|
||||
1. 环境变量 `HXCLAW_CONFIG` 指定路径
|
||||
2. 项目根目录 `project.config.yml`
|
||||
|
||||
---
|
||||
|
||||
@@ -82,12 +110,14 @@
|
||||
- `charm.land/lipgloss/v2` - 终端样式
|
||||
- `charm.land/x/term` - 终端控制
|
||||
- `github.com/muesli/termenv` - 终端环境工具
|
||||
- `gopkg.in/yaml.v3` - 配置文件解析
|
||||
|
||||
### 配置文件
|
||||
|
||||
- `cmd/hxclaw/main.go` - 主入口逻辑
|
||||
- `cmd/hxclaw/internal/markdown.go` - Markdown 渲染器
|
||||
- `cmd/hxclaw/internal/helpers.go` - 辅助函数
|
||||
- `cmd/hxclaw/internal/config.go` - 项目配置加载
|
||||
|
||||
---
|
||||
|
||||
@@ -100,9 +130,9 @@
|
||||
|
||||
## 待优化
|
||||
|
||||
1. 优化重绘逻辑,解决残留问题
|
||||
1. 优化重绘逻辑,解决残留问题(已通过新流程解决)
|
||||
2. 添加更多主题支持
|
||||
3. 添加命令-line 参数支持主题选择
|
||||
3. 添加命令行参数支持主题选择
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user