@ia-ccun/code-agent-cli
v0.0.53
Published
AI Coding Agent CLI - 基于OpenClaw🦞底层Agent原理封装的编码智能体(供学习使用)。
Downloads
1,097
Maintainers
Readme
@ia-ccun/code-agent-cli
基于OpenClaw 🦞底层Agent架构实现的智能编码智能体,具备通用技能Skills扩展能力,实现高效、智能的代码开发体验。(供学习使用)
核心工作流
- 遵循“任务拆解→深度思考→执行行动→复盘反思”的闭环逻辑,确保每一步操作精准可靠。
立即安装
- 欢迎下载体验,开启智能编码新范式。
# 全局安装
npm install -g @ia-ccun/code-agent-cli
# 或使用 npx 直接运行
npx @ia-ccun/code-agent-cli快速开始
# 启动交互式会话 (两种命令均可使用)
aicode
aicode-cli
# 查看帮助
aicode --help
aicode-cli --help
# 指定配置目录
aicode --config /path/to/config
aicode-cli --config /path/to/config
# 指定模型
aicode --model openai/gpt-4o
aicode-cli --model openai/gpt-4o
# 非交互模式
aicode -p "你的指令"
aicode-cli -p "你的指令"配置
配置文件位于 ~/.aicode-cli/
config.json
{
"name": "aicode-cli",
"banner": ["Code is poetry", "Build with pride"],
"themeColor": "#49bccf",
"configDir": ".aicode-cli"
}banner 配置说明:
| 值 | 说明 |
|---|---|
| "" | 禁用 banner |
| "__default__" | 使用 ASCII 艺术 banner |
| "单条标语" | 显示单条自定义标语 |
| ["标语1", "标语2"] | 每次启动随机显示一条标语 |
示例:
// 禁用 banner
"banner": ""
// 使用 ASCII banner
"banner": "__default__"
// 单条标语
"banner": "Hello, World!"
// 多条标语(随机显示)
"banner": [
"Code is poetry",
"Build with pride",
"Ideas become reality"
]models.json
编辑 ~/.aicode-cli/agent/models.json 配置 LLM Provider:
{
"providers": {
"openai": {
"name": "OpenAI",
"baseUrl": "https://api.openai.com/v1",
"api": "openai-completions",
"apiKey": "YOUR_API_KEY_HERE",
"models": [
{
"id": "gpt-4o",
"name": "GPT-4o",
"contextWindow": 128000,
"maxTokens": 16384,
"reasoning": false,
"cost": { "input": 2.5, "output": 10 }
},
{
"id": "gpt-4o-mini",
"name": "GPT-4o Mini",
"contextWindow": 128000,
"maxTokens": 16384,
"reasoning": false,
"cost": { "input": 0.075, "output": 0.3 }
}
]
},
"anthropic": {
"name": "Anthropic",
"baseUrl": "https://api.anthropic.com",
"api": "anthropic-messages",
"apiKey": "YOUR_API_KEY_HERE",
"models": [
{
"id": "claude-sonnet-4-20250514",
"name": "Claude Sonnet 4",
"contextWindow": 200000,
"maxTokens": 8192,
"reasoning": true,
"cost": { "input": 3, "output": 15 }
}
]
}
}
}字段说明:
| 字段 | 说明 |
|------|------|
| api | API 类型:openai-completions 或 anthropic-messages |
| baseUrl | API 端点地址 |
| apiKey | API 密钥 |
| models[].id | 模型 ID |
| models[].contextWindow | 上下文窗口大小 |
| models[].maxTokens | 最大输出 tokens |
| models[].reasoning | 是否为推理模型 |
| models[].cost | 价格(美元/百万 tokens) |
环境变量
| 变量 | 说明 |
|------|------|
| AICODE_CLI_CONFIG_DIR | 自定义配置目录 |
命令行参数
# 两种命令均可使用
aicode # 启动交互式会话
aicode-cli # 启动交互式会话
aicode --help # 查看帮助
aicode-cli --help # 查看帮助
aicode --config /path # 指定配置目录
aicode-cli --config /path # 指定配置目录
aicode --model provider/model # 指定模型
aicode-cli --model provider/model # 指定模型
aicode -p "prompt" # 非交互模式
aicode-cli -p "prompt" # 非交互模式
aicode --list-models # 列出可用模型
aicode-cli --list-models # 列出可用模型快捷键
| 快捷键 | 功能 | |--------|------| | Ctrl+C | 清空编辑器 | | Ctrl+L | 切换模型 | | Escape | 取消/中止 |
预置 Skills
内置技能位于 config/agent/skills/(打包在 npm 包中)
| Skill | 说明 |
|-------|------|
| /skill:code-review | 代码审查 - 执行全面的代码审查,检查代码质量、安全性、性能和最佳实践 |
| /skill:commit | Git 提交 - 分析代码变更并生成规范的 Git commit 消息 |
| /skill:pr | PR 描述 - 分析代码变更并生成规范的 Pull Request 描述 |
| /skill:refactor | 代码重构 - 对代码进行重构,提高可读性和可维护性 |
| /skill:unit-test | 单元测试 - 为选定的代码文件生成单元测试 |
| /skill:ui-ux-pro-max | UI/UX 设计 - 专业 UI/UX 设计辅助,支持 50+ 样式、21+ 配色方案 |
| /skill:csv-data-summarizer | CSV 数据分析 - 分析 CSV 文件,生成统计摘要和可视化图表 |
| /skill:find-skills | 技能发现 - 查找和安装扩展技能 |
| /skill:frontend-design | 前端设计 - 创建生产级前端界面 |
| /skill:skill-creator | 技能创建 - 辅助创建自定义技能 |
| /skill:hello | 示例技能 - 自定义技能示例 |
使用 Skill
在对话中直接使用:
/skill:code-review
/skill:commit --emoji
/skill:ui-ux-pro-max design a login page创建自定义 Skill
在 ~/.aicode-cli/agent/skills/<skill-name>/ 目录下创建 SKILL.md 文件:
# 创建技能目录
mkdir -p ~/.aicode-cli/agent/skills/my-skill
# 创建 SKILL.md
cat > ~/.aicode-cli/agent/skills/my-skill/SKILL.md << 'EOF'
---
name: my-skill
description: "技能的简短描述。Use when 触发条件描述。"
metadata:
version: "1.0.0"
author: "your-name"
---
# My Skill
## 描述
技能的详细说明
## 触发方式
`/skill:my-skill`
## 执行步骤
1. 步骤一
2. 步骤二
EOF字段说明:
| 字段 | 必填 | 说明 |
|------|------|------|
| name | 是 | 技能标识符(小写+连字符),与目录名一致 |
| description | 是 | 触发条件描述,Agent 据此判断何时使用该技能 |
| disable-model-invocation | 否 | 设为 true 时禁止调用 LLM,纯本地执行 |
| metadata.version | 否 | 版本号 |
| metadata.author | 否 | 作者 |
⚠️ 文件名必须为
SKILL.md,且放在独立目录中(目录名与name一致)。
预置 Prompts
内置 Prompt 模板位于 config/agent/prompts/(打包在 npm 包中)
| Prompt | 说明 |
|--------|------|
| /git-commit | Git 提交 - 生成 Conventional Commits 风格的提交信息 |
| /git-rollback | Git 回滚 - 安全回滚 Git 操作 |
| /git-worktree | Git Worktree - 管理 Git Worktree |
| /bmad-init | 项目初始化 - 初始化新项目 |
| /feat | 功能开发 - 辅助功能开发 |
| /workflow | 工作流 - 执行复杂工作流 |
自定义 Agents
内置 Agent 示例位于 config/agent/agents/(打包在 npm 包中)
| Agent | 说明 |
|-------|------|
| agent-example | 示例 Agent - 展示如何创建自定义 subagent |
创建自定义 Agent
在 ~/.aicode-cli/agent/agents/ 目录下创建 <name>.md 文件:
# 创建 Agent 文件
cat > ~/.aicode-cli/agent/agents/my-agent.md << 'EOF'
---
name: my-agent
description: "自定义 Agent 的简短描述"
tools: "read,bash,write,edit"
model: "qwen3.5-35b-a3b"
---
# My Agent
## 角色
你是一个专业的代码优化助手...
## 能力
1. 代码分析
2. 性能优化
3. 重构建议
## 工作流程
1. 阅读代码
2. 分析问题
3. 提供建议
EOF字段说明:
| 字段 | 必填 | 说明 |
|------|------|------|
| name | 是 | Agent 标识符(小写+连字符) |
| description | 是 | 功能描述,用户据此选择 Agent |
| tools | 否 | 逗号分隔的工具列表 |
| model | 否 | 指定使用的模型 |
使用 Agent
在对话中自然语言调用:
使用 my-agent 来优化这段代码或配合 pi-subagents 使用:
/run my-agent "Review this implementation"项目结构
@ia-ccun/code-agent-cli/
├── src/ # TypeScript 源码
│ ├── index.ts # 入口文件
│ ├── config.ts # 配置定义
│ ├── config-loader.ts # 配置加载器
│ └── banner.ts # 启动 Banner
├── bin/
│ └── cli.js # CLI 入口
├── config/
│ └── agent/ # 预置配置
│ ├── prompts/ # 预置 Prompts
│ └── skills/ # 预置 Skills
├── scripts/
│ └── postinstall.js # 安装脚本
└── package.json