duclaw-cli 1.0.0 → 1.4.0
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 +121 -23
- package/dist/bundle.js +381 -240
- package/dist/main.js +1 -1
- package/package.json +4 -10
- package/.claude/cron/jobs.json +0 -3
- package/docker/.env +0 -31
- package/docker/Dockerfile +0 -61
- package/docker/agent-template.json +0 -9
- package/docker/docker-compose.yml +0 -43
- package/docker/entrypoint.sh +0 -27
package/README.md
CHANGED
|
@@ -1,36 +1,134 @@
|
|
|
1
|
-
#
|
|
2
|
-
1. config enviroment
|
|
3
|
-
cp .env.example .env
|
|
1
|
+
# Duclaw
|
|
4
2
|
|
|
5
|
-
|
|
3
|
+
AI Agent 管理框架 — 支持飞书 Channel、团队协作、定时任务、Skill 扩展、Web 管理界面。
|
|
6
4
|
|
|
7
|
-
|
|
5
|
+
使用 Anthropic 标准协议(兼容 Claude / GLM / Kimi 等),一行命令启动你的 AI Agent。
|
|
8
6
|
|
|
9
|
-
|
|
7
|
+
## Quick Start
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
> **前提**:Node.js >= 18,Redis 运行中(默认 `redis://localhost:6379`)
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
```bash
|
|
12
|
+
# 安装
|
|
13
|
+
npm install -g duclaw-cli
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
# 初始化项目
|
|
16
|
+
mkdir my-agent && cd my-agent
|
|
17
|
+
duclaw-cli init
|
|
16
18
|
|
|
17
|
-
|
|
19
|
+
# 编辑配置(见下方说明)
|
|
20
|
+
# 启动
|
|
21
|
+
duclaw-cli start
|
|
22
|
+
```
|
|
18
23
|
|
|
19
|
-
|
|
20
|
-
支持多用户,各种组织顺序参考下面:
|
|
21
|
-
{app} : {module} : {userId} : {scope?} : {id?}
|
|
22
|
-
agent:mem:${userId}:${date?}:${cron_title?}
|
|
24
|
+
## 配置
|
|
23
25
|
|
|
24
|
-
|
|
25
|
-
app 应用命名空间 agent
|
|
26
|
-
module 功能模块 mem, dedup, task, cron
|
|
27
|
-
userId 用户标识 user_abc123
|
|
28
|
-
scope? 可选 - 子作用域 日期 20260317、分组等
|
|
29
|
-
id? 可选 - 具体标识 cron_title、messageId 等
|
|
26
|
+
`duclaw-cli init` 会生成以下文件:
|
|
30
27
|
|
|
28
|
+
| 文件 | 说明 |
|
|
29
|
+
|------|------|
|
|
30
|
+
| `duclaw.json` | Channel 配置(飞书 appId / appSecret) |
|
|
31
|
+
| `.env` | LLM API、Redis、OSS 等环境变量 |
|
|
32
|
+
| `skills/` | 自定义技能目录 |
|
|
31
33
|
|
|
32
|
-
|
|
34
|
+
### duclaw.json
|
|
33
35
|
|
|
36
|
+
```json
|
|
37
|
+
{
|
|
38
|
+
"channels": {
|
|
39
|
+
"feishu": {
|
|
40
|
+
"enabled": true,
|
|
41
|
+
"appId": "YOUR_FEISHU_APP_ID",
|
|
42
|
+
"appSecret": "YOUR_FEISHU_APP_SECRET"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
```
|
|
34
47
|
|
|
35
|
-
|
|
36
|
-
|
|
48
|
+
### .env (必填项)
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# LLM 配置(Anthropic 兼容协议)
|
|
52
|
+
export ANTHROPIC_BASE_URL="https://api.anthropic.com"
|
|
53
|
+
export ANTHROPIC_AUTH_TOKEN="your-api-key"
|
|
54
|
+
export ANTHROPIC_MODEL="claude-sonnet-4-20250514"
|
|
55
|
+
|
|
56
|
+
# Redis
|
|
57
|
+
export REDIS_URL="redis://localhost:6379"
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
支持的 LLM 提供商(只要兼容 Anthropic Messages API):
|
|
61
|
+
|
|
62
|
+
| 提供商 | BASE_URL | 示例模型 |
|
|
63
|
+
|--------|----------|----------|
|
|
64
|
+
| Anthropic | `https://api.anthropic.com` | `claude-sonnet-4-20250514` |
|
|
65
|
+
| 智谱 GLM | `https://open.bigmodel.cn/api/anthropic` | `glm-5` |
|
|
66
|
+
| Kimi | `https://api.moonshot.cn/anthropic` | `kimi-k2.5` |
|
|
67
|
+
|
|
68
|
+
> 如果 API 使用 Bearer Token 风格,需额外设置 `ANTHROPIC_AUTH_STYLE="bearer"`
|
|
69
|
+
|
|
70
|
+
## 飞书机器人配置
|
|
71
|
+
|
|
72
|
+
1. 前往 [飞书开放平台](https://open.feishu.cn/app) 创建应用
|
|
73
|
+
2. 添加权限:`im:message`(消息读写)
|
|
74
|
+
3. 添加事件订阅:`im.message.receive_v1`,订阅方式选择 **长连接**
|
|
75
|
+
4. 发布应用版本
|
|
76
|
+
5. 将 appId 和 appSecret 填入 `duclaw.json`
|
|
77
|
+
|
|
78
|
+
## CLI 命令
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
duclaw-cli init [目录] # 初始化项目
|
|
82
|
+
duclaw-cli start # 启动服务
|
|
83
|
+
duclaw-cli # 等同于 start
|
|
84
|
+
duclaw-cli --help # 帮助
|
|
85
|
+
duclaw-cli --version # 版本
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## 数据目录
|
|
89
|
+
|
|
90
|
+
运行时数据默认存储在 `~/.duclaw/`:
|
|
91
|
+
|
|
92
|
+
| 路径 | 说明 | 环境变量覆盖 |
|
|
93
|
+
|------|------|-------------|
|
|
94
|
+
| `~/.duclaw/cron/jobs.json` | 定时任务配置 | `JOB_PATH` |
|
|
95
|
+
| `~/.duclaw/cron/` | 任务执行历史 | `JOB_HISTORY_DIR` |
|
|
96
|
+
| `~/.duclaw/data/` | 临时文件 | `APP_TEMP_DIR` |
|
|
97
|
+
|
|
98
|
+
## Docker 部署
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
cd docker
|
|
102
|
+
# 编辑 .env 和 duclaw.json
|
|
103
|
+
docker compose up -d
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
详见 [docker/README.md](docker/README.md)。
|
|
107
|
+
|
|
108
|
+
## 开发
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
git clone <repo>
|
|
112
|
+
cd agent-template-ts
|
|
113
|
+
pnpm install
|
|
114
|
+
|
|
115
|
+
# 复制并编辑配置
|
|
116
|
+
cp .env.example .env
|
|
117
|
+
# 编辑 duclaw.json
|
|
118
|
+
|
|
119
|
+
# 启动开发
|
|
120
|
+
pnpm start
|
|
121
|
+
|
|
122
|
+
# 构建
|
|
123
|
+
pnpm build
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## 依赖
|
|
127
|
+
|
|
128
|
+
- Node.js >= 18
|
|
129
|
+
- Redis(无密码)
|
|
130
|
+
- 飞书开放平台应用(用于 Channel 接入)
|
|
131
|
+
|
|
132
|
+
## License
|
|
133
|
+
|
|
134
|
+
Private
|