niumagents-cli 0.1.11 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +177 -91
  2. package/dist/nium.js +1780 -335
  3. package/package.json +19 -16
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # NiumAgents-CLI
2
2
 
3
+ 一个基于 AI 的智能代码助手工具,支持多种编程语言的代码生成、项目分析、智能问答等功能。
4
+
3
5
  ## 📦 安装
4
6
 
5
7
  ### 全局安装
@@ -20,6 +22,8 @@ nium
20
22
 
21
23
  ### 模型配置
22
24
 
25
+ 首次启动时,系统会自动创建 `.nium/config.json` 配置文件。
26
+
23
27
  配置示例(`.nium/config.json`):
24
28
 
25
29
  ```json
@@ -29,10 +33,10 @@ nium
29
33
  "apiKey": "your-api-key-here",
30
34
  "baseURL": "https://api.openai.com/v1",
31
35
  "model": "gpt-4o",
32
- "provider": "openai", // openai(OpenAI兼容) / anthropic
36
+ "provider": "openai", // openai(OpenAI兼容) / anthropic
33
37
  "maxToken": 128000
34
38
  }
35
- // 可选配置
39
+ // 可选:轻量级模型,用于简单任务和上下文压缩
36
40
  // "liteModel": {
37
41
  // "apiKey": "your-api-key-here",
38
42
  // "baseURL": "https://api.openai.com/v1",
@@ -44,6 +48,10 @@ nium
44
48
  }
45
49
  ```
46
50
 
51
+ **支持的 provider 类型:**
52
+ - `openai` - OpenAI 及兼容接口(如 DeepSeek, Qwen 等)
53
+ - `anthropic` - Anthropic Claude API
54
+
47
55
  ### 基本工作流程
48
56
 
49
57
  ```bash
@@ -79,7 +87,7 @@ nium> /clear
79
87
  | 命令 | 说明 | 示例 |
80
88
  |------|------|------|
81
89
  | `/commit` | 使用AI生成commit message并提交 | `/commit` |
82
- | `/list_tools` | 列出所有可用的工具和代理 | `/list_tools` |
90
+ | `/list_tools` | 列出所有可用的工具(含MCP工具) | `/list_tools` |
83
91
  | `/history` | 查看归档的会话历史 | `/history` |
84
92
 
85
93
  ### 系统命令
@@ -92,18 +100,61 @@ nium> /clear
92
100
  ### 命令提示
93
101
 
94
102
  - 输入 `/` 后可以使用**模糊搜索**来快速找到命令
95
- - 大多数命令都有简短的别名(如 `/h` = `/help`)
103
+ - 支持命令简写和快速匹配
104
+
105
+ ## 🎯 内置工具和智能体
106
+
107
+ ### 核心工具
108
+
109
+ #### 思考和规划工具
110
+ - `think(thought)` - 记录思考过程,支持结构化思维和推理
111
+ - `plan(task, subtasks)` - 创建和管理复杂任务计划
112
+ - `todo(action, items)` - 管理待办任务列表,跟踪任务进度
113
+ - `askUser(question, options?)` - 向用户提问并等待响应
114
+
115
+ #### 文件操作工具
116
+ - `read(path)` - 读取文件内容
117
+ - `write(path, content)` - 写入文件(创建或覆盖)
118
+ - `merge(path, content)` - 智能合并内容到文件(使用三方合并算法,自动解决冲突)
119
+ - `delete(path)` - 删除文件或目录
120
+ - `mkdir(path)` - 创建目录
121
+ - `move(source, destination)` - 移动文件或目录
122
+ - `copy(source, destination)` - 复制文件或目录
123
+ - `searchReplace(pattern, replacement, path)` - 基于正则表达式的查找替换
124
+ - `validate(path)` - 验证文件语法和格式
125
+
126
+ #### 搜索和检索工具
127
+ - `glob(pattern)` - 通过模式匹配文件(如 `**/*.ts`、`src/**/*.java`)
128
+ - `grep(pattern, path)` - 在文件中搜索内容(支持正则表达式)
129
+ - `search_docs(query, scope?)` - 在项目文档中搜索内容
130
+ - `build_doc_index(paths?)` - 构建项目文档索引
131
+ - `search_file_changes(query?, options?)` - 搜索和查询文件变更历史
132
+
133
+ #### 项目探索工具
134
+ - `quickProjectScan()` - 快速扫描项目结构并生成文档(15-30秒)
135
+ - `explore(topic, topicEnglish)` - 深度探索项目整体架构、模块关系、设计模式(30-60秒)
136
+ - `moduleExplore(moduleName, moduleEnglish, searchPattern?)` - 深度探索单个模块的内部实现、函数细节(60-120秒)
137
+ - `toolingExplore(topic, topicEnglish)` - 深度探索构建工具和开发流程配置(30-60秒)
96
138
 
97
- ## 🎯 子代理系统
139
+ #### 智能辅助工具
140
+ - `smartSuggest(context, options?)` - 基于上下文的智能建议和推荐
98
141
 
99
- 子代理是具有特定领域专长的智能体,能够更专业地处理特定类型的任务。
142
+ #### 系统工具
143
+ - `shell(command)` - 执行通用 shell 命令(跨平台)
144
+ - `bash(command)` - 执行 Bash 命令(Linux/macOS)
145
+ - `powershell(command)` - 执行 PowerShell 命令(Windows)
100
146
 
147
+ **注意:** `bash` 和 `powershell` 工具会根据运行平台自动启用。
101
148
 
102
- ### 自定义子代理
149
+ ### MCP 工具(可选)
103
150
 
104
- 你可以创建自己的子代理来处理特定任务。
151
+ 如果配置了 MCP 服务器,还可以使用额外的工具。通过 `/list_tools` 命令可查看所有可用工具。
105
152
 
106
- #### 创建自定义代理
153
+ ### 自定义智能体
154
+
155
+ 你可以创建自己的智能体来处理特定任务。
156
+
157
+ #### 创建自定义智能体
107
158
 
108
159
  在 `.nium/agents/` 目录下创建 `.md` 文件:
109
160
 
@@ -134,28 +185,28 @@ keywords: 翻译, translate, 中英文, translation
134
185
 
135
186
  ### .nium 目录结构
136
187
 
137
- `.nium/` 目录包含所有配置文件和会话数据,该目录已添加到 `.gitignore`。
188
+ `.nium/` 目录包含所有配置文件和会话数据,该目录已自动添加到 `.gitignore`。
138
189
 
139
190
  ```
140
191
  .nium/
141
- ├── .env # 环境变量配置
142
- ├── config.json # 全局配置
192
+ ├── config.json # 全局配置(模型、MCP服务器等)
143
193
  ├── session.jsonl # 当前会话数据(用于恢复)
144
- ├── agents/ # 自定义子代理配置
194
+ ├── agents/ # 自定义智能体配置
145
195
  │ ├── commit-helper.md
146
196
  │ ├── translator.md
147
197
  │ └── your-agent.md
148
198
  ├── archives/ # 历史会话归档
149
199
  │ └── session-*.jsonl
150
- └── project/ # 项目信息
151
- └── project.json
200
+ ├── project/ # 项目信息缓存
201
+ └── project.json
202
+ └── rules.md # 项目规则文件(可选)
152
203
  ```
153
204
 
154
- ### 环境变量配置
205
+ ### 高级配置
155
206
 
156
- `.nium/.env` 文件中可以配置以下环境变量:
207
+ #### 环境变量(可选)
157
208
 
158
- #### 功能开关
209
+ 可以通过环境变量或 `.nium/.env` 文件配置:
159
210
 
160
211
  ```bash
161
212
  # 启用上下文隔离模式(推荐)
@@ -164,49 +215,80 @@ USE_LLM_DISCLOSURE=true
164
215
  # 启用LLM生成高质量摘要
165
216
  USE_LLM_SUMMARY=true
166
217
 
218
+ # 启用调试模式
219
+ DEBUG=true
167
220
  ```
168
221
 
222
+ #### 项目规则文件(可选)
169
223
 
170
- ### 项目规则文件(可选)
171
-
172
- 创建 `.nium/rules.md` 文件来定义项目特定的规则和约定
173
-
174
- 该文件用于告诉AI助手项目的编码规范、架构约定、开发流程等信息。
175
-
176
- ## 🛠️ 可用工具
177
-
178
- 系统提供了丰富的工具集,可通过 `/list_tools` 命令查看完整列表。
179
-
180
- ### 文件操作工具
181
-
182
- - `read(path)` - 读取文件内容
183
- - `write(path, content)` - 写入文件
184
- - `merge(path, content)` - 智能合并内容到文件
185
- - `delete(path)` - 删除文件
186
- - `mkdir(path)` - 创建目录
187
- - `searchReplace(pattern, replacement, path)` - 查找替换
188
-
189
- ### 代码搜索工具
224
+ 创建 `.nium/rules.md` 文件来定义项目特定的规则和约定。该文件用于告诉AI助手项目的编码规范、架构约定、开发流程等信息。
190
225
 
191
- - `glob(pattern)` - 通过模式匹配文件
192
- - `grep(pattern, path)` - 在文件中搜索内容
226
+ **示例 `.nium/rules.md`:**
193
227
 
194
- ### Git工具
228
+ ```markdown
229
+ # 项目规则
230
+
231
+ ## 代码风格
232
+ - 使用 TypeScript 严格模式
233
+ - 使用 ES6+ 语法
234
+ - 优先使用函数式编程风格
235
+
236
+ ## 命名约定
237
+ - 文件名使用 kebab-case
238
+ - 类名使用 PascalCase
239
+ - 函数和变量使用 camelCase
240
+
241
+ ## 架构约定
242
+ - 遵循单一职责原则
243
+ - 保持模块解耦
244
+ - 使用依赖注入
245
+ ```
195
246
 
196
- - `shell(command)` - 执行shell命令(包括git命令)
247
+ ### MCP 集成
197
248
 
198
- ### 项目分析工具
249
+ 支持 Model Context Protocol (MCP),可以通过MCP服务器扩展更多功能。
199
250
 
200
- - `quickProjectScan()` - 快速扫描项目结构并生成文档
251
+ #### MCP 配置
201
252
 
202
- ### 智能体工具
253
+ `.nium/config.json` 中配置 MCP 服务器:
203
254
 
204
- - `think(thought)` - 记录思考过程
205
- - `askUser(question)` - 向用户提问
255
+ ```json
256
+ {
257
+ "models": {
258
+ "defaultModel": {
259
+ "apiKey": "your-api-key-here",
260
+ "baseURL": "https://api.openai.com/v1",
261
+ "model": "gpt-4o",
262
+ "provider": "openai",
263
+ "maxToken": 128000
264
+ }
265
+ },
266
+ "mcpServers": [
267
+ {
268
+ "name": "example-http-server",
269
+ "description": "示例 HTTP MCP 服务器",
270
+ "transport": "http",
271
+ "url": "http://localhost:3000",
272
+ "headers": {
273
+ "Authorization": "Bearer your-token-here"
274
+ },
275
+ "timeout": 30000,
276
+ "enabled": false
277
+ }
278
+ ]
279
+ }
280
+ ```
206
281
 
207
- ### MCP工具(可选)
282
+ **配置说明:**
283
+ - `name` - 服务器名称(唯一标识)
284
+ - `description` - 服务器描述
285
+ - `transport` - 传输协议(http 或 stdio)
286
+ - `url` - 服务器地址(HTTP 模式)
287
+ - `headers` - 请求头(可选)
288
+ - `timeout` - 超时时间(毫秒)
289
+ - `enabled` - 是否启用
208
290
 
209
- 如果配置了MCP服务器,还可以使用额外的工具。详见MCP配置文档。
291
+ 配置完成后重新启动,使用 `/list_tools` 命令查看可用的 MCP 工具。
210
292
 
211
293
  ## 🎨 使用示例
212
294
 
@@ -216,66 +298,70 @@ USE_LLM_SUMMARY=true
216
298
  nium> 帮我创建一个用户认证模块,包括登录、注册和token验证
217
299
  ```
218
300
 
219
- ### 示例2:代码审查
301
+ ### 示例2:代码分析和重构
220
302
 
221
303
  ```bash
222
- nium> 审查 src/api/user.ts 文件,找出潜在问题
304
+ nium> 分析 src/api/user.ts 文件,找出潜在问题并优化代码
223
305
  ```
224
306
 
225
- ### 示例3:生成commit message
307
+ ### 示例3:自动提交代码
226
308
 
227
309
  ```bash
228
310
  # 修改代码后
229
311
  nium> /commit
312
+ # AI会自动分析变更,生成合适的commit message并提交
230
313
  ```
231
314
 
232
- ### 示例4:探索项目
315
+ ### 示例4:项目探索
233
316
 
234
317
  ```bash
235
- nium> 探索这个项目的结构
318
+ nium> 探索这个项目的结构,告诉我主要的模块和它们的功能
236
319
  ```
237
320
 
321
+ ### 示例5:智能问答
238
322
 
239
- ### MCP集成
323
+ ```bash
324
+ nium> 这个项目中的用户认证是如何实现的?
325
+ ```
240
326
 
241
- 支持Model Context Protocol,可以通过MCP服务器扩展更多功能。配置完成后重新启动,通过 /list_tools 命令查看
327
+ ## 核心特性
242
328
 
243
- 配置示例(`.nium/config.json`):
329
+ ### 智能上下文管理
244
330
 
245
- ```json
246
- {
247
- "models": {
248
- "defaultModel": {
249
- "apiKey": "your-api-key-here",
250
- "baseURL": "https://api.openai.com/v1",
251
- "model": "gpt-4o",
252
- "provider": "openai",
253
- "maxToken": 128000
254
- },
255
- "liteModel": {
256
- "apiKey": "your-api-key-here",
257
- "baseURL": "https://api.openai.com/v1",
258
- "model": "gpt-3.5-turbo",
259
- "provider": "openai",
260
- "maxToken": 16385
261
- }
262
- },
263
- "mcpServers": [
264
- {
265
- "name": "example-http-server",
266
- "description": "Example HTTP MCP server",
267
- "transport": "http",
268
- "url": "http://localhost:3000",
269
- "headers": {
270
- "Authorization": "Bearer your-token-here"
271
- },
272
- "timeout": 30000,
273
- "enabled": false
274
- }
275
- ]
276
- }
277
- ```
331
+ - **自动上下文压缩** - 使用 LLM 智能压缩历史对话,保持上下文相关性
332
+ - **语义分析** - 自动分析代码语义,提取关键信息
333
+ - **上下文锚点** - 标记重要上下文,避免信息丢失
334
+ - **会话恢复** - 支持中断恢复,保持工作连续性
335
+ - **项目语言缓存** - 自动检测和缓存项目语言,优化后续操作
336
+
337
+ ### 智能文件操作
338
+
339
+ - **文件变更追踪** - 自动记录所有文件变更,支持历史查询
340
+ - **编码自动检测** - 智能识别文件编码(UTF-8/GBK等)
341
+
342
+ ### 项目分析能力
343
+
344
+ - **快速扫描** - 快速分析项目结构,生成文档(15-30秒)
345
+ - **深度探索** - 深入分析项目架构、模块关系、设计模式(30-60秒)
346
+ - **模块探索** - 探索单个模块的内部实现和调用链(60-120秒)
347
+ - **依赖分析** - 分析项目依赖关系(支持 Java Maven/Gradle、npm、pip 等)
348
+ - **代码标准检测** - 自动检测项目使用的代码规范和工具
349
+ - **文档搜索** - 基于 FlexSearch 的文档全文检索
350
+
351
+ ### ReAct 智能体架构
352
+
353
+ 基于 ReAct(Reasoning + Acting)模式:
354
+ 1. **Thought(思考)** - 结构化思考和推理过程
355
+ 2. **Action(行动)** - 执行具体操作和工具调用
356
+ 3. **Observation(观察)** - 观察执行结果和反馈
357
+ 4. **循环优化** - 根据结果调整策略,持续改进
278
358
 
279
359
  ## 📝 许可证
280
360
 
281
- MIT License - 详见 [LICENSE](https://github.com/niuma996/niumagents-cli?tab=MIT-1-ov-file) 文件
361
+ MIT License - 详见 [LICENSE](https://github.com/niuma996/niumagents-cli?tab=MIT-1-ov-file) 文件
362
+
363
+ ## 🔗 相关链接
364
+
365
+ - [GitHub 仓库](https://github.com/niuma996/niumagents-cli)
366
+ - [问题反馈](https://github.com/niuma996/niumagents-cli/issues)
367
+ - [更新日志](https://github.com/niuma996/niumagents-cli/releases)