@ia-ccun/code-agent-cli 0.0.51-beta.12 → 0.0.51-beta.14
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.
- package/bin/cli.js +4 -3
- package/config/agent/extensions/aicode-btw.ts +2273 -0
- package/config/agent/extensions/aicode-plan.ts +9 -3
- package/config/agent/extensions/msg-debug.ts +33 -9
- package/config/agent/help.md +23 -0
- package/config/agent/settings.json +0 -1
- package/dist/banner.d.ts +5 -1
- package/dist/banner.d.ts.map +1 -1
- package/dist/banner.js +106 -7
- package/dist/banner.js.map +1 -1
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -1
- package/package.json +1 -1
|
@@ -80,6 +80,10 @@ const EXECUTION_TRIGGER_PROMPT =
|
|
|
80
80
|
// ============== 工具函数 ==============
|
|
81
81
|
|
|
82
82
|
function isSafeReadOnlyCommand(command: string): boolean {
|
|
83
|
+
// 临时移除错误重定向 (如 2>/dev/null, 1>&2 等),避免误判
|
|
84
|
+
// 错误重定向是只读操作,不应被拦截
|
|
85
|
+
const normalizedCommand = command.replace(/\d+>[&]?\s*[^\s|;&]+/g, "").trim();
|
|
86
|
+
|
|
83
87
|
const DESTRUCTIVE_PATTERNS = [
|
|
84
88
|
/\brm\b/i,
|
|
85
89
|
/\brmdir\b/i,
|
|
@@ -113,7 +117,8 @@ function isSafeReadOnlyCommand(command: string): boolean {
|
|
|
113
117
|
/\bshutdown\b/i,
|
|
114
118
|
/\bsystemctl\s+(start|stop|restart|enable|disable)\b/i,
|
|
115
119
|
/\bservice\s+\S+\s+(start|stop|restart)\b/i,
|
|
116
|
-
|
|
120
|
+
// 编辑器命令 - 只拦截命令开头的编辑器调用,不拦截参数中的匹配
|
|
121
|
+
/^\s*(vim?|nano|emacs|code|subl)\b/i,
|
|
117
122
|
];
|
|
118
123
|
|
|
119
124
|
const SAFE_PATTERNS = [
|
|
@@ -165,9 +170,10 @@ function isSafeReadOnlyCommand(command: string): boolean {
|
|
|
165
170
|
/^\s*fd\b/,
|
|
166
171
|
];
|
|
167
172
|
|
|
168
|
-
|
|
173
|
+
// 使用标准化后的命令进行检查(已移除错误重定向)
|
|
174
|
+
const isDestructive = DESTRUCTIVE_PATTERNS.some((pattern) => pattern.test(normalizedCommand));
|
|
169
175
|
if (isDestructive) return false;
|
|
170
|
-
return SAFE_PATTERNS.some((pattern) => pattern.test(
|
|
176
|
+
return SAFE_PATTERNS.some((pattern) => pattern.test(normalizedCommand));
|
|
171
177
|
}
|
|
172
178
|
|
|
173
179
|
function normalizeArg(input: string): string {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Msg Debug Extension - Log LLM request/response messages to file
|
|
4
4
|
*
|
|
5
5
|
* This extension logs all requests and responses sent to/from the LLM provider
|
|
6
|
-
* for debugging purposes. Logs are saved to
|
|
6
|
+
* for debugging purposes. Logs are saved to ~/.aicode-cli/logs/
|
|
7
7
|
*
|
|
8
8
|
* Features:
|
|
9
9
|
* - Logs before_provider_request: messages, parameters, raw payload
|
|
@@ -13,8 +13,9 @@
|
|
|
13
13
|
* - Session-based log files (one file per session)
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
-
import { appendFileSync, existsSync, mkdirSync } from "node:fs";
|
|
16
|
+
import { appendFileSync, existsSync, mkdirSync, readdirSync, unlinkSync } from "node:fs";
|
|
17
17
|
import { join } from "node:path";
|
|
18
|
+
import os from "node:os";
|
|
18
19
|
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
19
20
|
|
|
20
21
|
// 北京时间格式化函数 (UTC+8)
|
|
@@ -31,16 +32,39 @@ function formatDateStr(date: Date = new Date()): string {
|
|
|
31
32
|
return `${year}-${month}-${day}`;
|
|
32
33
|
}
|
|
33
34
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
// 日志目录配置(与 error-monitor.ts 保持一致)
|
|
36
|
+
const LOG_DIR = join(os.homedir(), ".aicode-cli", "logs");
|
|
37
|
+
const KEEP_DAYS = 2; // 保留最近2天
|
|
38
|
+
|
|
39
|
+
// 确保日志目录存在
|
|
40
|
+
function ensureLogDir(): void {
|
|
41
|
+
if (!existsSync(LOG_DIR)) {
|
|
42
|
+
mkdirSync(LOG_DIR, { recursive: true });
|
|
39
43
|
}
|
|
40
|
-
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// 清理过期日志文件
|
|
47
|
+
function cleanOldLogs(): void {
|
|
48
|
+
if (!existsSync(LOG_DIR)) return;
|
|
49
|
+
const now = new Date(new Date().toLocaleString("zh-CN", { timeZone: "Asia/Shanghai" }));
|
|
50
|
+
for (const file of readdirSync(LOG_DIR)) {
|
|
51
|
+
if (!file.startsWith("llm-requests-") || !file.endsWith(".log")) continue;
|
|
52
|
+
const match = file.match(/llm-requests-(\d{4})-(\d{2})-(\d{2})\.log/);
|
|
53
|
+
if (!match) continue;
|
|
54
|
+
const fileDate = new Date(parseInt(match[1]), parseInt(match[2]) - 1, parseInt(match[3]));
|
|
55
|
+
const diffDays = Math.floor((now.getTime() - fileDate.getTime()) / (1000 * 60 * 60 * 24));
|
|
56
|
+
if (diffDays > KEEP_DAYS) {
|
|
57
|
+
unlinkSync(join(LOG_DIR, file));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export default function (pi: ExtensionAPI) {
|
|
63
|
+
ensureLogDir();
|
|
64
|
+
cleanOldLogs();
|
|
41
65
|
// Format date as YYYY-MM-DD for daily log files
|
|
42
66
|
const dateStr = formatDateStr();
|
|
43
|
-
const logFile = join(
|
|
67
|
+
const logFile = join(LOG_DIR, `llm-requests-${dateStr}.log`);
|
|
44
68
|
|
|
45
69
|
// Filter to only log user and assistant messages
|
|
46
70
|
const ALLOWED_ROLES = ["user", "assistant"];
|
package/config/agent/help.md
CHANGED
|
@@ -4,6 +4,29 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
## 📖 帮助命令
|
|
8
|
+
|
|
9
|
+
查看 aicode-cli 的使用帮助:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
/help
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
快速帮助:
|
|
16
|
+
- `/help` - 查看本完整文档
|
|
17
|
+
- `/models` - 查看模型列表
|
|
18
|
+
- `/tools` - 查看可用工具
|
|
19
|
+
- `/skill:<name>` - 激活指定技能
|
|
20
|
+
- `Ctrl+Alt+P` - 切换计划模式
|
|
21
|
+
- `/goal` - 设置持续目标
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
# aicode-cli 使用指南
|
|
25
|
+
|
|
26
|
+
> 全面掌握 AI 编程助手的各项功能与配置
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
7
30
|
## 目录
|
|
8
31
|
|
|
9
32
|
1. [快速开始](#1-快速开始)
|
package/dist/banner.d.ts
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
* Banner 生成器 - AI Code Agent
|
|
3
3
|
*/
|
|
4
4
|
declare let defaultBanner: string;
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* 根据星期几轮转颜色主题
|
|
7
|
+
*/
|
|
8
|
+
declare function getRotatedColorTheme(): string;
|
|
9
|
+
export { defaultBanner, getRotatedColorTheme };
|
|
6
10
|
/**
|
|
7
11
|
* 生成带颜色的 Banner
|
|
8
12
|
* @param colorTheme 主题色 (hex 格式,如 #49bccf)
|
package/dist/banner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,QAAA,IAAI,aAAa,QAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,QAAA,IAAI,aAAa,QAAK,CAAC;AAoBvB;;GAEG;AACH,iBAAS,oBAAoB,IAAI,MAAM,CAGtC;AAED,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,CAAC;AAc/C;;;GAGG;AACH,wBAAgB,cAAc,CAAC,UAAU,GAAE,MAAkB,GAAG,MAAM,CA8FrE"}
|
package/dist/banner.js
CHANGED
|
@@ -16,20 +16,28 @@ catch {
|
|
|
16
16
|
// fallback
|
|
17
17
|
defaultBanner = ``;
|
|
18
18
|
}
|
|
19
|
-
|
|
19
|
+
// 预置颜色主题 — 围绕 #49bccf 的渐变色(不同明度)
|
|
20
|
+
const COLOR_THEMES = [
|
|
21
|
+
{ name: 'deep-cyan', hex: '#2e7d8c' }, // 周一 - 最深
|
|
22
|
+
{ name: 'dark-cyan', hex: '#399aad' }, // 周二 - 深
|
|
23
|
+
{ name: 'cyan', hex: '#49bccf' }, // 周三 - 基准色
|
|
24
|
+
{ name: 'light-cyan', hex: '#5ec9db' }, // 周四 - 亮
|
|
25
|
+
{ name: 'bright-cyan', hex: '#73d6e8' }, // 周五 - 最亮
|
|
26
|
+
{ name: 'pale-cyan', hex: '#8ae3f0' }, // 周六 - 极亮
|
|
27
|
+
{ name: 'faint-cyan', hex: '#a0f0f8' }, // 周日 - 最浅
|
|
28
|
+
];
|
|
20
29
|
/**
|
|
21
|
-
*
|
|
22
|
-
* @param colorTheme 主题色 (hex 格式,如 #49bccf)
|
|
30
|
+
* 根据星期几轮转颜色主题
|
|
23
31
|
*/
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
return
|
|
32
|
+
function getRotatedColorTheme() {
|
|
33
|
+
const dayOfWeek = new Date().getDay(); // 0=周日, 1=周一, ..., 6=周六
|
|
34
|
+
return COLOR_THEMES[dayOfWeek % COLOR_THEMES.length].hex;
|
|
27
35
|
}
|
|
36
|
+
export { defaultBanner, getRotatedColorTheme };
|
|
28
37
|
/**
|
|
29
38
|
* 将 Hex 颜色转换为 RGB 对象
|
|
30
39
|
*/
|
|
31
40
|
function hexToRgb(hex) {
|
|
32
|
-
// 去掉 # 前缀
|
|
33
41
|
hex = hex.replace('#', '');
|
|
34
42
|
return {
|
|
35
43
|
r: parseInt(hex.slice(0, 2), 16),
|
|
@@ -37,4 +45,95 @@ function hexToRgb(hex) {
|
|
|
37
45
|
b: parseInt(hex.slice(4, 6), 16)
|
|
38
46
|
};
|
|
39
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* 生成带颜色的 Banner
|
|
50
|
+
* @param colorTheme 主题色 (hex 格式,如 #49bccf)
|
|
51
|
+
*/
|
|
52
|
+
export function generateBanner(colorTheme = '#49bccf') {
|
|
53
|
+
// 如果传入 'random' 或 'rotate' 则使用按星期轮转的颜色
|
|
54
|
+
const theme = (colorTheme === 'random' || colorTheme === 'rotate') ? getRotatedColorTheme() : colorTheme;
|
|
55
|
+
const rgb = hexToRgb(theme);
|
|
56
|
+
const version = process.env.AICODE_CLI_VERSION || '';
|
|
57
|
+
const cwd = process.cwd().replace(process.env.HOME || process.env.USERPROFILE || '', '~');
|
|
58
|
+
const color = (text) => `\x1b[38;2;${rgb.r};${rgb.g};${rgb.b}m${text}\x1b[0m`;
|
|
59
|
+
const dim = (text) => `\x1b[2m${text}\x1b[0m`;
|
|
60
|
+
const bold = (text) => `\x1b[1m${text}\x1b[0m`;
|
|
61
|
+
// 去除 ANSI 转义码获取实际可见长度
|
|
62
|
+
const stripAnsi = (text) => text.replace(/\x1b\[[\d;]*m/g, '');
|
|
63
|
+
// 生成固定宽度的列(左侧用空格填充到指定宽度)
|
|
64
|
+
const padCol = (text, width) => {
|
|
65
|
+
const visible = stripAnsi(text).length;
|
|
66
|
+
return text + ' '.repeat(Math.max(0, width - visible));
|
|
67
|
+
};
|
|
68
|
+
// 列宽定义
|
|
69
|
+
const COL_WIDTH = 28; // 每列总宽度(命令 + 2空格 + 描述 + 填充)
|
|
70
|
+
// 生成一列文本(命令 + 2空格 + 描述,右侧空白补齐到固定宽度)
|
|
71
|
+
const col = (cmd, desc) => {
|
|
72
|
+
const text = `${cmd} ${desc}`;
|
|
73
|
+
return padCol(text, COL_WIDTH);
|
|
74
|
+
};
|
|
75
|
+
// 生成一行(1-3 列)
|
|
76
|
+
const row = (cmd1, desc1, cmd2, desc2, cmd3, desc3) => {
|
|
77
|
+
const c1 = col(cmd1, desc1);
|
|
78
|
+
const c2 = cmd2 && desc2 ? col(cmd2, desc2) : '';
|
|
79
|
+
const c3 = cmd3 && desc3 ? col(cmd3, desc3) : '';
|
|
80
|
+
return ` ${c1}${c2}${c3}`;
|
|
81
|
+
};
|
|
82
|
+
// 解析 banner.txt 为行数组
|
|
83
|
+
const bannerLines = defaultBanner.split('\n');
|
|
84
|
+
const maxBannerWidth = Math.max(...bannerLines.map(line => line.replace(/\x1b\[[\d;]*m/g, '').length));
|
|
85
|
+
// 右侧信息行 (参考 Claude Code 布局)
|
|
86
|
+
const infoLines = [
|
|
87
|
+
`${color(bold('AICODE CLI'))} ${dim(`v${version}`)}`,
|
|
88
|
+
`${dim('Dir:')} ${dim(cwd)}`,
|
|
89
|
+
];
|
|
90
|
+
// 将 banner 和右侧信息合并为多行
|
|
91
|
+
const maxLines = Math.max(bannerLines.length, infoLines.length);
|
|
92
|
+
const headerLines = [];
|
|
93
|
+
for (let i = 0; i < maxLines; i++) {
|
|
94
|
+
const bannerLine = bannerLines[i] || '';
|
|
95
|
+
const infoLine = infoLines[i] || '';
|
|
96
|
+
if (i === 0) {
|
|
97
|
+
headerLines.push(`${bannerLine} ${infoLine}`);
|
|
98
|
+
}
|
|
99
|
+
else if (i < infoLines.length && bannerLine.trim() === '') {
|
|
100
|
+
// banner 的空白行填充信息
|
|
101
|
+
headerLines.push(`${' '.repeat(maxBannerWidth)} ${infoLine}`);
|
|
102
|
+
}
|
|
103
|
+
else if (i < bannerLines.length) {
|
|
104
|
+
headerLines.push(bannerLine);
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
headerLines.push(`${' '.repeat(maxBannerWidth)} ${infoLine}`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return [
|
|
111
|
+
headerLines.join('\n'),
|
|
112
|
+
'',
|
|
113
|
+
dim('- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'),
|
|
114
|
+
dim(' 直接用自然语言描述需求即可 • 复杂任务先用 /plan 生成计划 • @文件路径 指定文件'),
|
|
115
|
+
dim('- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'),
|
|
116
|
+
'',
|
|
117
|
+
bold(' 常用命令'),
|
|
118
|
+
row(color('/model'), '切换模型', color('/settings'), 'aicode设置', color('/compact'), '压缩上下文'),
|
|
119
|
+
row(color('/new'), '新会话', color('/reload'), '重载配置', color('/resume'), '恢复会话'),
|
|
120
|
+
row(color('/bugs'), '已知bug修复', color('/goal'), '目标导向', color('/plan'), '计划模式(只读)'),
|
|
121
|
+
'',
|
|
122
|
+
bold(' 常用提示词 (Prompts)'),
|
|
123
|
+
row(color('/workflow'), '六阶段工作流', color('/feat'), '新功能开发', color('/git-commit'), 'Git提交'),
|
|
124
|
+
row(color('/code-simplifier'), '代码简化', color('/init-project'), '项目初始化'),
|
|
125
|
+
'',
|
|
126
|
+
bold(' 常用技能 (Skills)'),
|
|
127
|
+
row(color('/code-review'), '代码审查', color('/skill-creator'), '创建技能', color('/commit'), 'Git提交'),
|
|
128
|
+
row(color('/frontend-design'), '前端设计', color('/brainstorming'), '头脑风暴'),
|
|
129
|
+
'',
|
|
130
|
+
bold(' 会话管理'),
|
|
131
|
+
row(color('/export'), '导出会话', color('/tree'), '浏览对话历史'),
|
|
132
|
+
'',
|
|
133
|
+
dim(' • npm i -g @ia-ccun/code-agent-cli • @文件路径 指定文件'),
|
|
134
|
+
'',
|
|
135
|
+
dim('- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'),
|
|
136
|
+
'',
|
|
137
|
+
].join('\n');
|
|
138
|
+
}
|
|
40
139
|
//# sourceMappingURL=banner.js.map
|
package/dist/banner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,+BAA+B;AAC/B,IAAI,aAAa,GAAG,EAAE,CAAC;AACvB,IAAI,CAAC;IACH,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IAClE,aAAa,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AACpD,CAAC;AAAC,MAAM,CAAC;IACP,WAAW;IACX,aAAa,GAAG,EAAE,CAAC;AACrB,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmBH,MAAM,CAAC,MAAM,aAAa,GAAc;IACtC,IAAI,EAAE,YAAY;IAClB,MAAM,EAAE,aAAa,EAAG,QAAQ;IAChC,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmBH,MAAM,CAAC,MAAM,aAAa,GAAc;IACtC,IAAI,EAAE,YAAY;IAClB,MAAM,EAAE,aAAa,EAAG,QAAQ;IAChC,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,aAAa;CACzB,CAAC"}
|