@ia-ccun/code-agent-cli 0.0.49 → 0.0.50-beta.2
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/README.md +30 -4
- package/bin/cli.js +3 -2
- package/config/agent/extensions/aicode-tips.ts +34 -36
- package/config/agent/extensions/error-monitor.ts +3 -2
- package/config/agent/help.md +114 -19
- package/config/agent/settings.json +4 -1
- package/config/agent/skills/frontend-slides/LICENSE +21 -0
- package/config/agent/skills/frontend-slides/README.md +136 -0
- package/config/agent/skills/frontend-slides/SKILL.md +219 -0
- package/config/agent/skills/frontend-slides/STYLE_PRESETS.md +347 -0
- package/config/agent/skills/frontend-slides/animation-patterns.md +110 -0
- package/config/agent/skills/frontend-slides/html-template.md +347 -0
- package/config/agent/skills/frontend-slides/scripts/extract-pptx.py +96 -0
- package/config/agent/skills/frontend-slides/viewport-base.css +153 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -217,22 +217,48 @@ aicode-cli --list-models # 列出可用模型
|
|
|
217
217
|
|
|
218
218
|
### 创建自定义 Skill
|
|
219
219
|
|
|
220
|
-
在 `~/.aicode-cli/skills
|
|
220
|
+
在 `~/.aicode-cli/agent/skills/<skill-name>/` 目录下创建 `SKILL.md` 文件:
|
|
221
|
+
|
|
222
|
+
```bash
|
|
223
|
+
# 创建技能目录
|
|
224
|
+
mkdir -p ~/.aicode-cli/agent/skills/my-skill
|
|
225
|
+
|
|
226
|
+
# 创建 SKILL.md
|
|
227
|
+
cat > ~/.aicode-cli/agent/skills/my-skill/SKILL.md << 'EOF'
|
|
228
|
+
---
|
|
229
|
+
name: my-skill
|
|
230
|
+
description: "技能的简短描述。Use when 触发条件描述。"
|
|
231
|
+
metadata:
|
|
232
|
+
version: "1.0.0"
|
|
233
|
+
author: "your-name"
|
|
234
|
+
---
|
|
221
235
|
|
|
222
|
-
```markdown
|
|
223
236
|
# My Skill
|
|
224
237
|
|
|
225
238
|
## 描述
|
|
226
|
-
|
|
239
|
+
技能的详细说明
|
|
227
240
|
|
|
228
241
|
## 触发方式
|
|
229
|
-
|
|
242
|
+
`/skill:my-skill`
|
|
230
243
|
|
|
231
244
|
## 执行步骤
|
|
232
245
|
1. 步骤一
|
|
233
246
|
2. 步骤二
|
|
247
|
+
EOF
|
|
234
248
|
```
|
|
235
249
|
|
|
250
|
+
**字段说明:**
|
|
251
|
+
|
|
252
|
+
| 字段 | 必填 | 说明 |
|
|
253
|
+
|------|------|------|
|
|
254
|
+
| `name` | 是 | 技能标识符(小写+连字符),与目录名一致 |
|
|
255
|
+
| `description` | 是 | 触发条件描述,Agent 据此判断何时使用该技能 |
|
|
256
|
+
| `disable-model-invocation` | 否 | 设为 `true` 时禁止调用 LLM,纯本地执行 |
|
|
257
|
+
| `metadata.version` | 否 | 版本号 |
|
|
258
|
+
| `metadata.author` | 否 | 作者 |
|
|
259
|
+
|
|
260
|
+
> ⚠️ 文件名必须为 `SKILL.md`,且放在独立目录中(目录名与 `name` 一致)。
|
|
261
|
+
|
|
236
262
|
## 预置 Prompts
|
|
237
263
|
|
|
238
264
|
内置 Prompt 模板位于 `config/agent/prompts/`(打包在 npm 包中)
|
package/bin/cli.js
CHANGED
|
@@ -194,7 +194,8 @@ async function checkForUpdates() {
|
|
|
194
194
|
checkForUpdates();
|
|
195
195
|
|
|
196
196
|
// 获取 node_modules 中 pi-coding-agent 的 CLI 路径
|
|
197
|
-
const
|
|
197
|
+
const piAgentPathUrl = new URL('../node_modules/@mariozechner/pi-coding-agent/dist/cli.js', import.meta.url);
|
|
198
|
+
const piAgentPath = fileURLToPath(piAgentPathUrl); // 解码中文路径
|
|
198
199
|
|
|
199
200
|
// 获取本地版本号
|
|
200
201
|
const localVersion = getLocalVersion();
|
|
@@ -221,7 +222,7 @@ const agentDir = join(fullPath, 'agent');
|
|
|
221
222
|
env.AICODE_CLI_CODING_AGENT_DIR = agentDir;
|
|
222
223
|
|
|
223
224
|
// 启动 pi-coding-agent
|
|
224
|
-
const child = spawn('node', [piAgentPath
|
|
225
|
+
const child = spawn('node', [piAgentPath, ...remainingArgs], {
|
|
225
226
|
stdio: 'inherit',
|
|
226
227
|
env
|
|
227
228
|
});
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @author: xujianjiang
|
|
3
3
|
* Aicode Tips Extension — 在边框下方、状态栏上方随机显示使用技巧
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* 每 10 秒轮播显示下一条技巧
|
|
6
6
|
* 技巧列表包含快捷键、命令使用及联系方式提示
|
|
7
7
|
*/
|
|
8
8
|
|
|
@@ -16,26 +16,25 @@ const AICODE_TIPS = [
|
|
|
16
16
|
"Ctrl+O 展开/折叠工具输出",
|
|
17
17
|
"Ctrl+T 展开/折叠思考块",
|
|
18
18
|
"Alt+Enter 队列跟进消息",
|
|
19
|
-
"Ctrl+V 粘贴图片",
|
|
20
19
|
"Shift+Enter 输入多行",
|
|
21
20
|
"/ 查看所有命令",
|
|
22
21
|
"/tree 查看会话历史",
|
|
23
22
|
"/session 查看统计",
|
|
24
23
|
"/settings 自定义设置",
|
|
25
|
-
"/export 导出会话为HTML",
|
|
24
|
+
"/export 导出会话为 HTML",
|
|
26
25
|
"/copy 复制最后消息",
|
|
27
26
|
"/name 设置会话名称",
|
|
28
27
|
"/hotkeys 显示所有快捷键",
|
|
29
28
|
"/reload 重新加载配置文件",
|
|
30
29
|
"/new 开始新会话",
|
|
31
30
|
"!cmd 执行 bash",
|
|
32
|
-
"!!cmd 执行bash但不发送给AI",
|
|
31
|
+
"!!cmd 执行 bash 但不发送给 AI",
|
|
33
32
|
"/compact 压缩上下文",
|
|
34
|
-
"/skill
|
|
33
|
+
"/skill:技能名称 调用技能",
|
|
35
34
|
"/resume 恢复会话",
|
|
36
|
-
"/fork
|
|
35
|
+
"/fork 创建会话新分支",
|
|
37
36
|
"Ctrl+C 清空编辑器",
|
|
38
|
-
"双击Esc 打开树视图",
|
|
37
|
+
"双击 Esc 打开树视图",
|
|
39
38
|
"拖拽文件到终端附加",
|
|
40
39
|
// 扩展命令提示
|
|
41
40
|
"/version 查看当前版本",
|
|
@@ -43,32 +42,32 @@ const AICODE_TIPS = [
|
|
|
43
42
|
"/status 显示会话状态",
|
|
44
43
|
"/clear 清理当前会话",
|
|
45
44
|
"/quit 退出当前会话",
|
|
46
|
-
// 常用Prompt提示
|
|
45
|
+
// 常用 Prompt 提示
|
|
47
46
|
"/code-simplifier 自动简化刚修改的代码,提升清晰度和一致性",
|
|
48
47
|
"/feat 新功能开发,支持需求规划→讨论迭代→执行实施完整流程(推荐使用)",
|
|
49
|
-
"/git-commit 分析Git改动并生成Conventional Commits规范提交信息(推荐使用)",
|
|
50
|
-
"/init-project 初始化项目AI上下文,生成根级和模块级CLAUDE.md索引",
|
|
51
|
-
"/workflow 专业开发者6阶段结构化工作流(研究→构思→计划→执行→优化→评审)",
|
|
48
|
+
"/git-commit 分析 Git 改动并生成 Conventional Commits 规范提交信息(推荐使用)",
|
|
49
|
+
"/init-project 初始化项目 AI 上下文,生成根级和模块级 CLAUDE.md 索引",
|
|
50
|
+
"/workflow 专业开发者 6 阶段结构化工作流(研究→构思→计划→执行→优化→评审)",
|
|
52
51
|
// 常用技能提示
|
|
53
52
|
"/skill:brainstorming 探索用户意图、需求分析和方案设计",
|
|
54
53
|
"/skill:code-review 执行全面的代码质量/安全/性能审查(推荐使用)",
|
|
55
|
-
"/skill:commit 分析代码变更并生成规范的Git提交信息",
|
|
54
|
+
"/skill:commit 分析代码变更并生成规范的 Git 提交信息",
|
|
56
55
|
"/skill:frontend-design 创建高质量生产级前端界面(推荐使用)",
|
|
57
|
-
"/skill:owasp-security 遵循OWASP Top 10的安全编码实践(推荐使用)",
|
|
56
|
+
"/skill:owasp-security 遵循 OWASP Top 10 的安全编码实践(推荐使用)",
|
|
58
57
|
"/skill:receiving-code-review 技术性处理代码评审反馈并验证(推荐使用)",
|
|
59
58
|
"/skill:requesting-code-review 请求代码评审确保满足合并要求",
|
|
60
59
|
"/skill:unit-test 为选定的代码文件生成单元测试",
|
|
61
60
|
"/skill:verification-before-completion 完成前验证实际工作是否完整",
|
|
62
61
|
"/skill:writing-plans 为多步骤任务编写详细的实施计划(推荐使用)",
|
|
63
|
-
"/skill:writing-skills 创建、修改和优化Agent技能并测量性能",
|
|
62
|
+
"/skill:writing-skills 创建、修改和优化 Agent 技能并测量性能",
|
|
64
63
|
"/skill:session-learning 总结会话经验并沉淀为可复用的技能",
|
|
65
|
-
"/skill:test-driven-development 先写测试再写实现的TDD开发模式",
|
|
66
|
-
"/skill:subagent-driven-development 通过派发子Agent执行复杂实施计划",
|
|
64
|
+
"/skill:test-driven-development 先写测试再写实现的 TDD 开发模式",
|
|
65
|
+
"/skill:subagent-driven-development 通过派发子 Agent 执行复杂实施计划",
|
|
67
66
|
"/skill:dispatching-parallel-agents 并行分发多个独立任务无共享状态",
|
|
68
|
-
"/skill:csv-data-summarizer 分析CSV文件并生成统计和可视化图表",
|
|
67
|
+
"/skill:csv-data-summarizer 分析 CSV 文件并生成统计和可视化图表",
|
|
69
68
|
"/skill:executing-plans 执行带有检查点的书面实施计划",
|
|
70
|
-
"/skill:frontend-slides 使用HTML/CSS创建精美的演示幻灯片",
|
|
71
|
-
"/skill:markdown-to-html 将Markdown文档转换为精美的HTML页面",
|
|
69
|
+
"/skill:frontend-slides 使用 HTML/CSS 创建精美的演示幻灯片",
|
|
70
|
+
"/skill:markdown-to-html 将 Markdown 文档转换为精美的 HTML 页面",
|
|
72
71
|
"/skill:refactor 重构代码提升可读性和可维护性保持功能不变",
|
|
73
72
|
"/skill:skill-creator 创建、修改和提升技能性能的工具",
|
|
74
73
|
"/skill:adapt (impeccable) 使设计适配不同的屏幕尺寸、设备、场景或平台,确保跨环境体验一致",
|
|
@@ -90,22 +89,22 @@ const AICODE_TIPS = [
|
|
|
90
89
|
"/skill:polish (impeccable) 上线前的最终质量检查,修正对齐、间距、一致性和细节问题",
|
|
91
90
|
"/skill:quieter (impeccable) 弱化过于大胆或视觉攻击性强的设计,降低视觉强度",
|
|
92
91
|
"/skill:typeset (impeccable) 通过修正字体选择、层级、大小、粗细来优化排版",
|
|
93
|
-
"/skill:ui-ux-pro-max 提供50种设计风格和21种配色方案的设计助手(推荐使用)",
|
|
92
|
+
"/skill:ui-ux-pro-max 提供 50 种设计风格和 21 种配色方案的设计助手(推荐使用)",
|
|
94
93
|
// 常用技能提示
|
|
95
94
|
"/btw 并行侧边对话,可在不中断主流程的情况下进行临时讨论或查询 ",
|
|
96
95
|
"/rewind 回退到任意工具执行前的状态,支持快照恢复和撤销重做 ",
|
|
97
|
-
"/mcp 连接现有的MCP服务器(如xx平台、企业微信等等),扩展AI能力支持多种外部工具和服务 ",
|
|
96
|
+
"/mcp 连接现有的 MCP 服务器 (如 xx 平台、企业微信等等),扩展 AI 能力支持多种外部工具和服务 ",
|
|
98
97
|
// 消息传递模式提示
|
|
99
|
-
"Enter 插话消息 - 在工具执行后立即发送,中断AI思考流程",
|
|
100
|
-
"Alt+Enter 排队消息 - 等待AI完全结束后发送,不中断AI工作",
|
|
101
|
-
"Escape 中断当前AI并恢复编辑器中的排队消息",
|
|
98
|
+
"Enter 插话消息 - 在工具执行后立即发送,中断 AI 思考流程",
|
|
99
|
+
"Alt+Enter 排队消息 - 等待 AI 完全结束后发送,不中断 AI 工作",
|
|
100
|
+
"Escape 中断当前 AI 并恢复编辑器中的排队消息",
|
|
102
101
|
"Alt+Up 查看并编辑所有排队的消息",
|
|
103
|
-
"插话消息会打断AI正在执行的工具,等待响应",
|
|
104
|
-
"排队消息静默等待,AI空闲时自动发送",
|
|
102
|
+
"插话消息会打断 AI 正在执行的工具,等待响应",
|
|
103
|
+
"排队消息静默等待,AI 空闲时自动发送",
|
|
105
104
|
"可在 /settings 中调整消息发送模式和行为偏好",
|
|
106
105
|
// 联系方式提示
|
|
107
106
|
"⚠️ 任何疑问或需求可联系 xujianjiang,支持需求对接开发、系统集成与扩展",
|
|
108
|
-
"⚠️ 内网手册参考 UniDoc《2026.03 AICode Agent CLI编码智能体使用手册》",
|
|
107
|
+
"⚠️ 内网手册参考 UniDoc《2026.03 AICode Agent CLI 编码智能体使用手册》",
|
|
109
108
|
"⚠️ LLM API 4xx/5xx 错误时请确认模型配置是否正确,或在企微群咨询 jiangchi、maliang",
|
|
110
109
|
];
|
|
111
110
|
|
|
@@ -150,11 +149,13 @@ export default function (pi: ExtensionAPI) {
|
|
|
150
149
|
return str + " ".repeat(padding);
|
|
151
150
|
};
|
|
152
151
|
|
|
153
|
-
const showRandomTip = () => {
|
|
152
|
+
const showRandomTip = (isInternalCall = false) => {
|
|
154
153
|
if (!currentCtx?.hasUI) return;
|
|
155
154
|
|
|
156
|
-
//
|
|
157
|
-
|
|
155
|
+
// 清除之前的定时器(但内部轮播调用时不清除,避免中断轮播)
|
|
156
|
+
if (!isInternalCall) {
|
|
157
|
+
clearAllTimers();
|
|
158
|
+
}
|
|
158
159
|
|
|
159
160
|
let randomIndex = Math.floor(Math.random() * AICODE_TIPS.length);
|
|
160
161
|
if (randomIndex === currentTipIndex && AICODE_TIPS.length > 1) {
|
|
@@ -167,12 +168,9 @@ export default function (pi: ExtensionAPI) {
|
|
|
167
168
|
const coloredTip = `${color}tips: ${tip}\x1b[0m`;
|
|
168
169
|
currentCtx.ui.setWidget("aicode-tips", [coloredTip], { placement: "aboveEditor" });
|
|
169
170
|
|
|
170
|
-
// 自动轮播:10
|
|
171
|
+
// 自动轮播:10 秒后直接显示下一条
|
|
171
172
|
if (isAutoPlaying) {
|
|
172
|
-
autoHideTimeoutId = setTimeout(() =>
|
|
173
|
-
hideTip();
|
|
174
|
-
autoShowTimeoutId = setTimeout(showRandomTip, 3000);
|
|
175
|
-
}, 10000);
|
|
173
|
+
autoHideTimeoutId = setTimeout(() => showRandomTip(true), 10000);
|
|
176
174
|
}
|
|
177
175
|
};
|
|
178
176
|
|
|
@@ -207,4 +205,4 @@ export default function (pi: ExtensionAPI) {
|
|
|
207
205
|
showRandomTip();
|
|
208
206
|
},
|
|
209
207
|
});
|
|
210
|
-
}
|
|
208
|
+
}
|
|
@@ -3,15 +3,16 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @author: xujianjiang
|
|
5
5
|
*
|
|
6
|
-
* Logs errors to
|
|
6
|
+
* Logs errors to ~/.aicode-cli/logs/aicode-error-YYYY-MM-DD.log
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
10
10
|
import fs from "fs";
|
|
11
|
+
import os from "os";
|
|
11
12
|
import path from "path";
|
|
12
13
|
|
|
13
14
|
// Error log file configuration
|
|
14
|
-
const ERROR_LOG_DIR = path.resolve(
|
|
15
|
+
const ERROR_LOG_DIR = path.resolve(os.homedir(), ".aicode-cli", "logs");
|
|
15
16
|
const KEEP_DAYS = 2; // 保留最近2天
|
|
16
17
|
|
|
17
18
|
// 北京时间格式化函数 (UTC+8)
|
package/config/agent/help.md
CHANGED
|
@@ -31,6 +31,8 @@ npm install -g @ia-ccun/code-agent-cli
|
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
33
|
aicode-cli
|
|
34
|
+
# 或
|
|
35
|
+
aicode
|
|
34
36
|
```
|
|
35
37
|
|
|
36
38
|
### 基本对话
|
|
@@ -66,6 +68,15 @@ Ctrl+Q
|
|
|
66
68
|
Enter
|
|
67
69
|
```
|
|
68
70
|
|
|
71
|
+
### Git Worktree 支持
|
|
72
|
+
|
|
73
|
+
使用 `/skill:using-git-worktrees` 在多工作区间高效切换:
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
/skill:using-git-worktrees
|
|
77
|
+
帮我创建一个新的 worktree 来开发登录功能
|
|
78
|
+
```
|
|
79
|
+
|
|
69
80
|
---
|
|
70
81
|
|
|
71
82
|
## 3. 核心命令
|
|
@@ -90,6 +101,13 @@ Enter
|
|
|
90
101
|
|
|
91
102
|
思考级别:`off` → `minimal` → `low` → `medium` → `high` → `xhigh`
|
|
92
103
|
|
|
104
|
+
### 技能相关
|
|
105
|
+
|
|
106
|
+
| 命令 | 说明 |
|
|
107
|
+
|------|------|
|
|
108
|
+
| `/skill:<name>` | 激活指定技能 |
|
|
109
|
+
| `/skills` | 列出所有可用技能 |
|
|
110
|
+
|
|
93
111
|
---
|
|
94
112
|
|
|
95
113
|
## 4. 快捷键
|
|
@@ -224,16 +242,71 @@ Skill 是预置的 AI 技能模块,针对特定场景优化。
|
|
|
224
242
|
|
|
225
243
|
### 可用 Skills
|
|
226
244
|
|
|
245
|
+
#### 代码开发
|
|
246
|
+
|
|
227
247
|
| Skill | 说明 | 激活方式 |
|
|
228
248
|
|-------|------|----------|
|
|
229
|
-
| code-review | 代码审查 | `/skill:code-review` |
|
|
230
|
-
|
|
|
231
|
-
|
|
|
232
|
-
|
|
|
233
|
-
|
|
|
234
|
-
|
|
|
235
|
-
|
|
236
|
-
|
|
249
|
+
| `code-review` | 代码审查 | `/skill:code-review` |
|
|
250
|
+
| `refactor` | 代码重构 | `/skill:refactor` |
|
|
251
|
+
| `unit-test` | 单元测试 | `/skill:unit-test` |
|
|
252
|
+
| `test-driven-development` | 测试驱动开发 | `/skill:test-driven-development` |
|
|
253
|
+
| `frontend-design` | 前端设计 | `/skill:frontend-design` |
|
|
254
|
+
| `owasp-security` | OWASP 安全编码 | `/skill:owasp-security` |
|
|
255
|
+
|
|
256
|
+
#### Git 相关
|
|
257
|
+
|
|
258
|
+
| Skill | 说明 | 激活方式 |
|
|
259
|
+
|-------|------|----------|
|
|
260
|
+
| `commit` | Git 提交消息生成 | `/skill:commit` |
|
|
261
|
+
| `using-git-worktrees` | Git Worktree 管理 | `/skill:using-git-worktrees` |
|
|
262
|
+
|
|
263
|
+
#### 数据分析
|
|
264
|
+
|
|
265
|
+
| Skill | 说明 | 激活方式 |
|
|
266
|
+
|-------|------|----------|
|
|
267
|
+
| `csv-data-summarizer` | CSV 数据分析 | `/skill:csv-data-summarizer` |
|
|
268
|
+
| `design-md` | Markdown 设计文档 | `/skill:design-md` |
|
|
269
|
+
|
|
270
|
+
#### UI/UX 设计
|
|
271
|
+
|
|
272
|
+
| Skill | 说明 | 激活方式 |
|
|
273
|
+
|-------|------|----------|
|
|
274
|
+
| `ui-ux-pro-max` | UI/UX 专业设计 | `/skill:ui-ux-pro-max` |
|
|
275
|
+
| `impeccable/*` | 完美界面系列技能 | `/skill:impeccable:polish` 等 |
|
|
276
|
+
|
|
277
|
+
#### 多媒体
|
|
278
|
+
|
|
279
|
+
| Skill | 说明 | 激活方式 |
|
|
280
|
+
|-------|------|----------|
|
|
281
|
+
| `video-generation` | 视频生成 | `/skill:video-generation` |
|
|
282
|
+
| `aliyun-tts` | 阿里云 TTS | `/skill:aliyun-tts` |
|
|
283
|
+
| `xiaomi-tts` | 小米 TTS | `/skill:xiaomi-tts` |
|
|
284
|
+
|
|
285
|
+
#### 写作与内容
|
|
286
|
+
|
|
287
|
+
| Skill | 说明 | 激活方式 |
|
|
288
|
+
|-------|------|----------|
|
|
289
|
+
| `khazix-writer` | 公众号长文写作 | `/skill:khazix-writer` |
|
|
290
|
+
| `hv-analysis` | 横纵分析法深度研究 | `/skill:hv-analysis` |
|
|
291
|
+
|
|
292
|
+
#### 开发流程
|
|
293
|
+
|
|
294
|
+
| Skill | 说明 | 激活方式 |
|
|
295
|
+
|-------|------|----------|
|
|
296
|
+
| `brainstorming` | 头脑风暴 | `/skill:brainstorming` |
|
|
297
|
+
| `writing-plans` | 编写实施计划 | `/skill:writing-plans` |
|
|
298
|
+
| `executing-plans` | 执行计划 | `/skill:executing-plans` |
|
|
299
|
+
| `dispatching-parallel-agents` | 并行任务分发 | `/skill:dispatching-parallel-agents` |
|
|
300
|
+
| `systematic-debugning` | 系统性调试 | `/skill:systematic-debugging` |
|
|
301
|
+
| `verification-before-completion` | 完成前验证 | `/skill:verification-before-completion` |
|
|
302
|
+
|
|
303
|
+
#### 技能管理
|
|
304
|
+
|
|
305
|
+
| Skill | 说明 | 激活方式 |
|
|
306
|
+
|-------|------|----------|
|
|
307
|
+
| `skill-creator` | 创建/编辑技能 | `/skill:skill-creator` |
|
|
308
|
+
| `session-learning` | 会话学习总结 | `/skill:session-learning` |
|
|
309
|
+
| `find-skills` | 查找技能 | `/skill:find-skills` |
|
|
237
310
|
|
|
238
311
|
### 使用方法
|
|
239
312
|
|
|
@@ -254,13 +327,11 @@ Prompt 是预置的工作流模板,用于特定任务。
|
|
|
254
327
|
|
|
255
328
|
| Prompt | 说明 |
|
|
256
329
|
|--------|------|
|
|
257
|
-
| `/bmad-init` | 初始化 BMAD 项目 |
|
|
258
330
|
| `/init-project` | 初始化新项目 |
|
|
259
331
|
| `/feat` | 新增功能开发流程 |
|
|
260
332
|
| `/git-commit` | Git 提交 |
|
|
261
|
-
| `/git-rollback` | Git 回滚 |
|
|
262
|
-
| `/git-worktree` | Git Worktree 管理 |
|
|
263
333
|
| `/workflow` | 复杂工作流 |
|
|
334
|
+
| `/code-simplifier` | 代码简化 |
|
|
264
335
|
|
|
265
336
|
### 使用示例
|
|
266
337
|
|
|
@@ -273,6 +344,9 @@ Prompt 是预置的工作流模板,用于特定任务。
|
|
|
273
344
|
|
|
274
345
|
# Git 提交
|
|
275
346
|
/git-commit
|
|
347
|
+
|
|
348
|
+
# 复杂工作流
|
|
349
|
+
/workflow
|
|
276
350
|
```
|
|
277
351
|
|
|
278
352
|
---
|
|
@@ -293,9 +367,11 @@ Prompt 是预置的工作流模板,用于特定任务。
|
|
|
293
367
|
|
|
294
368
|
| 主题 | 说明 |
|
|
295
369
|
|------|------|
|
|
296
|
-
|
|
|
297
|
-
|
|
298
|
-
|
|
370
|
+
| `catppuccin-mocha` | Catppuccin Mocha 暗色主题(推荐) |
|
|
371
|
+
|
|
372
|
+
### 自定义主题
|
|
373
|
+
|
|
374
|
+
主题文件位于 `~/.aicode-cli/agent/themes/`,可自定义颜色和样式。
|
|
299
375
|
|
|
300
376
|
---
|
|
301
377
|
|
|
@@ -320,6 +396,12 @@ Prompt 是预置的工作流模板,用于特定任务。
|
|
|
320
396
|
2. **先审后改**:重要修改前先让 AI 解释代码
|
|
321
397
|
3. **备份优先**:关键文件操作前手动备份
|
|
322
398
|
|
|
399
|
+
### Git 工作流
|
|
400
|
+
|
|
401
|
+
1. **使用 Worktree**:多分支并行开发时使用 Git Worktree
|
|
402
|
+
2. **规范提交**:使用 `/skill:commit` 生成规范提交消息
|
|
403
|
+
3. **代码审查**:重要变更使用 `/skill:code-review` 审查
|
|
404
|
+
|
|
323
405
|
---
|
|
324
406
|
|
|
325
407
|
## 10. 故障排除
|
|
@@ -328,10 +410,11 @@ Prompt 是预置的工作流模板,用于特定任务。
|
|
|
328
410
|
|
|
329
411
|
| 问题 | 解决方案 |
|
|
330
412
|
|------|----------|
|
|
331
|
-
| 启动慢 |
|
|
332
|
-
| 模型连接失败 | 核对 models.json
|
|
333
|
-
| 扩展不生效 | 运行 `/reload`
|
|
413
|
+
| 启动慢 | 检查网络连接,确认模型 API 可达 |
|
|
414
|
+
| 模型连接失败 | 核对 `models.json` 配置和 API Key |
|
|
415
|
+
| 扩展不生效 | 运行 `/reload` 重载配置 |
|
|
334
416
|
| Token 溢出 | 使用 `/clear` 清理上下文 |
|
|
417
|
+
| Skills 找不到 | 确认技能已安装到 `~/.aicode-cli/agent/skills/` |
|
|
335
418
|
|
|
336
419
|
### 详细模式
|
|
337
420
|
|
|
@@ -339,6 +422,12 @@ Prompt 是预置的工作流模板,用于特定任务。
|
|
|
339
422
|
aicode-cli --verbose
|
|
340
423
|
```
|
|
341
424
|
|
|
425
|
+
### 查看上下文
|
|
426
|
+
|
|
427
|
+
```bash
|
|
428
|
+
/context
|
|
429
|
+
```
|
|
430
|
+
|
|
342
431
|
---
|
|
343
432
|
|
|
344
433
|
## 附录
|
|
@@ -347,8 +436,8 @@ aicode-cli --verbose
|
|
|
347
436
|
|
|
348
437
|
| 变量 | 说明 |
|
|
349
438
|
|------|------|
|
|
350
|
-
| `AICODE_CLI_CONFIG_DIR` |
|
|
351
|
-
| `AICODE_CLI_CODING_AGENT_DIR` | Agent
|
|
439
|
+
| `AICODE_CLI_CONFIG_DIR` | 配置目录路径 |
|
|
440
|
+
| `AICODE_CLI_CODING_AGENT_DIR` | Agent 配置目录路径 |
|
|
352
441
|
|
|
353
442
|
### 命令行参数
|
|
354
443
|
|
|
@@ -359,6 +448,12 @@ aicode-cli --verbose
|
|
|
359
448
|
| `--model <name>` | 指定模型 |
|
|
360
449
|
| `--clear` | 启动时清理会话 |
|
|
361
450
|
|
|
451
|
+
### 相关资源
|
|
452
|
+
|
|
453
|
+
- **项目仓库**: https://github.com/ia-ccun/code-agent-cli
|
|
454
|
+
- **npm 包**: https://www.npmjs.com/package/@ia-ccun/code-agent-cli
|
|
455
|
+
- **pi-coding-agent**: 底层 Agent 框架
|
|
456
|
+
|
|
362
457
|
---
|
|
363
458
|
|
|
364
459
|
*世界那么哒 · AI 实践落地 @2026*
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Zara Zhang
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# Frontend Slides
|
|
2
|
+
|
|
3
|
+
A Claude Code skill for creating stunning, animation-rich HTML presentations — from scratch or by converting PowerPoint files.
|
|
4
|
+
|
|
5
|
+
## What This Does
|
|
6
|
+
|
|
7
|
+
**Frontend Slides** helps non-designers create beautiful web presentations without knowing CSS or JavaScript. It uses a "show, don't tell" approach: instead of asking you to describe your aesthetic preferences in words, it generates visual previews and lets you pick what you like.
|
|
8
|
+
|
|
9
|
+
Here is a deck about the skill, made through the skill:
|
|
10
|
+
|
|
11
|
+
https://github.com/user-attachments/assets/ef57333e-f879-432a-afb9-180388982478
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Key Features
|
|
15
|
+
|
|
16
|
+
- **Zero Dependencies** — Single HTML files with inline CSS/JS. No npm, no build tools, no frameworks.
|
|
17
|
+
- **Visual Style Discovery** — Can't articulate design preferences? No problem. Pick from generated visual previews.
|
|
18
|
+
- **PPT Conversion** — Convert existing PowerPoint files to web, preserving all images and content.
|
|
19
|
+
- **Anti-AI-Slop** — Curated distinctive styles that avoid generic AI aesthetics (bye-bye, purple gradients on white).
|
|
20
|
+
- **Production Quality** — Accessible, responsive, well-commented code you can customize.
|
|
21
|
+
|
|
22
|
+
## Installation
|
|
23
|
+
|
|
24
|
+
### For Claude Code Users
|
|
25
|
+
|
|
26
|
+
Copy the skill files to your Claude Code skills directory:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
# Create the skill directory
|
|
30
|
+
mkdir -p ~/.claude/skills/frontend-slides/scripts
|
|
31
|
+
|
|
32
|
+
# Copy all files (or clone this repo directly)
|
|
33
|
+
cp SKILL.md STYLE_PRESETS.md viewport-base.css html-template.md animation-patterns.md ~/.claude/skills/frontend-slides/
|
|
34
|
+
cp scripts/extract-pptx.py ~/.claude/skills/frontend-slides/scripts/
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Or clone directly:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
git clone https://github.com/zarazhangrui/frontend-slides.git ~/.claude/skills/frontend-slides
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Then use it by typing `/frontend-slides` in Claude Code.
|
|
44
|
+
|
|
45
|
+
## Usage
|
|
46
|
+
|
|
47
|
+
### Create a New Presentation
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
/frontend-slides
|
|
51
|
+
|
|
52
|
+
> "I want to create a pitch deck for my AI startup"
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
The skill will:
|
|
56
|
+
1. Ask about your content (slides, messages, images)
|
|
57
|
+
2. Ask about the feeling you want (impressed? excited? calm?)
|
|
58
|
+
3. Generate 3 visual style previews for you to compare
|
|
59
|
+
4. Create the full presentation in your chosen style
|
|
60
|
+
5. Open it in your browser
|
|
61
|
+
|
|
62
|
+
### Convert a PowerPoint
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
/frontend-slides
|
|
66
|
+
|
|
67
|
+
> "Convert my presentation.pptx to a web slideshow"
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
The skill will:
|
|
71
|
+
1. Extract all text, images, and notes from your PPT
|
|
72
|
+
2. Show you the extracted content for confirmation
|
|
73
|
+
3. Let you pick a visual style
|
|
74
|
+
4. Generate an HTML presentation with all your original assets
|
|
75
|
+
|
|
76
|
+
## Included Styles
|
|
77
|
+
|
|
78
|
+
### Dark Themes
|
|
79
|
+
- **Bold Signal** — Confident, high-impact, vibrant card on dark
|
|
80
|
+
- **Electric Studio** — Clean, professional, split-panel
|
|
81
|
+
- **Creative Voltage** — Energetic, retro-modern, electric blue + neon
|
|
82
|
+
- **Dark Botanical** — Elegant, sophisticated, warm accents
|
|
83
|
+
|
|
84
|
+
### Light Themes
|
|
85
|
+
- **Notebook Tabs** — Editorial, organized, paper with colorful tabs
|
|
86
|
+
- **Pastel Geometry** — Friendly, approachable, vertical pills
|
|
87
|
+
- **Split Pastel** — Playful, modern, two-color vertical split
|
|
88
|
+
- **Vintage Editorial** — Witty, personality-driven, geometric shapes
|
|
89
|
+
|
|
90
|
+
### Specialty
|
|
91
|
+
- **Neon Cyber** — Futuristic, particle backgrounds, neon glow
|
|
92
|
+
- **Terminal Green** — Developer-focused, hacker aesthetic
|
|
93
|
+
- **Swiss Modern** — Minimal, Bauhaus-inspired, geometric
|
|
94
|
+
- **Paper & Ink** — Literary, drop caps, pull quotes
|
|
95
|
+
|
|
96
|
+
## Architecture
|
|
97
|
+
|
|
98
|
+
This skill uses **progressive disclosure** — the main `SKILL.md` is a concise map (~180 lines), with supporting files loaded on-demand only when needed:
|
|
99
|
+
|
|
100
|
+
| File | Purpose | Loaded When |
|
|
101
|
+
|------|---------|-------------|
|
|
102
|
+
| `SKILL.md` | Core workflow and rules | Always (skill invocation) |
|
|
103
|
+
| `STYLE_PRESETS.md` | 12 curated visual presets | Phase 2 (style selection) |
|
|
104
|
+
| `viewport-base.css` | Mandatory responsive CSS | Phase 3 (generation) |
|
|
105
|
+
| `html-template.md` | HTML structure and JS features | Phase 3 (generation) |
|
|
106
|
+
| `animation-patterns.md` | CSS/JS animation reference | Phase 3 (generation) |
|
|
107
|
+
| `scripts/extract-pptx.py` | PPT content extraction | Phase 4 (conversion) |
|
|
108
|
+
|
|
109
|
+
This design follows [OpenAI's harness engineering](https://openai.com/index/harness-engineering/) principle: "give the agent a map, not a 1,000-page instruction manual."
|
|
110
|
+
|
|
111
|
+
## Philosophy
|
|
112
|
+
|
|
113
|
+
This skill was born from the belief that:
|
|
114
|
+
|
|
115
|
+
1. **You don't need to be a designer to make beautiful things.** You just need to react to what you see.
|
|
116
|
+
|
|
117
|
+
2. **Dependencies are debt.** A single HTML file will work in 10 years. A React project from 2019? Good luck.
|
|
118
|
+
|
|
119
|
+
3. **Generic is forgettable.** Every presentation should feel custom-crafted, not template-generated.
|
|
120
|
+
|
|
121
|
+
4. **Comments are kindness.** Code should explain itself to future-you (or anyone else who opens it).
|
|
122
|
+
|
|
123
|
+
## Requirements
|
|
124
|
+
|
|
125
|
+
- [Claude Code](https://claude.ai/claude-code) CLI
|
|
126
|
+
- For PPT conversion: Python with `python-pptx` library
|
|
127
|
+
|
|
128
|
+
## Credits
|
|
129
|
+
|
|
130
|
+
Created by [@zarazhangrui](https://github.com/zarazhangrui) with Claude Code.
|
|
131
|
+
|
|
132
|
+
Inspired by the "Vibe Coding" philosophy — building beautiful things without being a traditional software engineer.
|
|
133
|
+
|
|
134
|
+
## License
|
|
135
|
+
|
|
136
|
+
MIT — Use it, modify it, share it.
|