@boltdoggy/boli
v0.1.4
Published
AI coding assistant in your terminal
Downloads
92
Readme
boli
一个受 Claude Code 启发的智能命令行助手。
想了解更多背景?参见 产品介绍。 想了解文档驱动开发在本项目中的实践?参见 Showcase 说明。
功能特性
- 单次模式:直接执行单次任务,无上下文保留
- REPL 模式:持续对话,支持上下文和输入历史(上下键切换)
- 工具调用:读文件、写文件、编辑、搜索、执行 Shell、向用户提问
- 内置 Skills:
/init、/loop、/commit等快捷命令 - 流式 TUI:基于 Ink 的终端交互界面
环境要求
安装与使用
从 npm 安装
# 全局安装
npm install -g @boltdoggy/boli
# 单次模式
boli "帮我写一个快速排序"
# 单次模式,不注入项目上下文
boli --no-context "帮我写一个快速排序"
# REPL 模式
boli不想全局安装时,也可以用 npx:
npx @boltdoggy/boli "帮我写一个快速排序"从源码开发
# 安装依赖
pnpm install
# 从源码直接运行(无需构建)
bun run src/cmd/cli.ts "帮我写一个快速排序"
# 构建产物
pnpm run build
# 用 pnpm 链接本地包进行测试
pnpm link --global
boli "帮我写一个快速排序"项目架构
src/
├── cmd/ # CLI 入口与参数解析
├── domain/ # 核心领域模型(message、session、skill、tool)
├── infra/ # 基础设施(LLM、文件系统、Shell、配置、持久化)
├── interactive/ # Ink 交互界面(REPL、用户输入、流式渲染)
└── skills/ # 内置 skill 实现- domain 层:纯业务逻辑,无框架依赖
- infra 层:对接外部系统,隔离实现细节
- interactive 层:负责所有终端交互
开发指引
# 从源码直接运行(无需构建)
bun run src/cmd/cli.ts "帮我写一个快速排序"
# 开发运行 REPL 模式
pnpm run dev
# 类型检查
pnpm exec tsc --noEmit
# 构建
pnpm run build添加新 Skill
- 在
src/domain/skill.ts中定义 Skill 接口与元数据 - 在
src/skills/下实现具体逻辑 - 在
src/agent/skill-registry.ts中注册
相关文档
| 文档 | 说明 | |------|------| | docs/guides/product.md | 产品定位与核心能力介绍 | | docs/guides/showcase.md | 文档驱动开发实践说明 | | docs/requirements/cli-tool-requirements.md | CLI 工具需求文档 | | docs/design/cli-tool-design.md | CLI 工具架构设计 | | docs/adr/ | 架构决策记录 |
当前状态
| 功能/变更 | 状态 |
|-----------|------|
| CLI 工具 MVP(单次/REPL 模式、基础工具调用) | ✅ 已完成 |
| P1 增强(/init、/loop、输入历史) | ✅ 已完成 |
| 测试框架引入 | ⬜ 待进行 |
| 打包分发 | ⬜ 待进行 |
本仓库遵循严格的文档驱动开发流程,详见 CLAUDE.md 与 docs/guides/showcase.md。
