使用 CLI 连接工作空间
InYourWork 支持通过 API Key 让外部 CLI 工具或 Agent 安全地访问指定工作空间。 您可以用 API Key 调用文件上传、下载、列表等接口,把 InYourWork 接入自己的自动化流程。
第一步:创建 API Key
-
打开目标工作空间,点击右上角的设置(齿轮)图标。
-
在打开的 AI Agent 设置 窗口中,找到下方 API Keys 区域。
-
输入名称(例如
xx-agent),可选填过期时间,点击「创建」。 -
创建成功后,页面会显示一次完整的 API Key,请点击「复制」并妥善保存。
API Key 与当前工作空间绑定,只能访问该工作空间内的文件。每个用户在每个工作空间下最多可创建 5 个有效 Key。
第二步:运行 setup 脚本完成配置
在需要使用 CLI 的机器上执行以下命令,下载并运行交互式配置脚本:
curl -fsSL https://www.inyourwork.com/cli/setup.sh | bash
配置完成后会写入 ~/.inyourwork/config(仅当前用户可读)。
之后所有请求只需从该文件或环境变量读取配置,把 API Key 放到
Authorization 头中即可调用接口:
Authorization: Bearer ak_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
如何在您的本地 Agent 中配置
复制下面这段提示词发给您的本地 Agent(如 Kimi Code、Claude Code 等), 它会自动下载并安装 Skill、完成配置和连接验证。API Key 按上方第一步创建。
为我安装一个 Agent Skill,用于连接我的 InYourWork 工作空间。
Skill 名称:inyourwork-cli
Skill 文件:
- https://www.inyourwork.com/cli/SKILL.md
- https://www.inyourwork.com/cli/setup.sh
请下载以上全部文件,安装到你的 skills 目录下的 inyourwork-cli/ 文件夹中,不要只安装 SKILL.md。
安装完成后完成配置:API Key 我会提供给你。请先注入 CLI_API_KEY 环境变量,再运行 setup.sh(它是交互式脚本,注入环境变量后会跳过提示直接验证连接;服务地址默认为 https://api.inyourwork.com,无需填写),配置会写入 ~/.inyourwork/config。最后调用一次文件列表接口验证连接是否成功。
附录 1:详细 API 列表
当前 CLI 开放的是工作空间文件(uploads)相关接口:
| 接口 | 说明 |
|---|---|
POST /api/cli/drive/uploads/init |
初始化文件上传,返回 OSS 预签名上传地址(PUT 直传) |
POST /api/cli/drive/uploads/complete |
完成上传并登记文件 |
GET /api/cli/drive/uploads |
列出工作空间或工作项下的文件 |
GET /api/cli/drive/uploads/download?key=... |
下载文件(经服务端中转,带 API Key) |
GET /api/cli/drive/uploads/download-url?key=... |
获取 OSS 预签名下载地址(GET 直下载,无需 API Key) |
附录 2:典型场景 —— 批量上传 + 清单驱动处理
典型需求:外部系统(CI、定时脚本、业务系统)周期性产生一批文件,希望 InYourWork 的云端 Agent 统一处理这批文件,例如汇总日报、批量分析、生成报告。
推荐思路是「先传文件,再传一份清单」:把本批文件逐个上传后, 再编写一份描述这批文件的 JSON 清单并上传。之后无论是手动发起任务还是定时任务, Agent 只需读取这份清单,就能知道本批要处理哪些文件、按什么要求处理。 清单把「文件上传」和「任务触发」解耦:文件可以随时传,任务可以稍后跑。
1. 批量上传数据文件
对每个文件执行一次「init → PUT 预签名地址 → complete」流程,记录每个文件 complete 返回的 objectKey。
2. 编写并上传清单 JSON
清单内容自定义,建议至少包含本批标识、文件列表(带 objectKey)和处理要求,例如:
{
"batchId": "daily-report-2026-08-21",
"files": [
{ "objectKey": "workspaces/ws1/input/uploads/2026-08-21/aaa.txt", "originalName": "销售数据.csv" },
{ "objectKey": "workspaces/ws1/input/uploads/2026-08-21/bbb.txt", "originalName": "客服记录.csv" }
],
"instruction": "逐个读取 files 中的文件,汇总生成一份中文日报(markdown)"
}
把这份 JSON(如 batch-2026-08-21.json)用同样的上传流程传到工作空间。
3. 让云端 Agent 按清单处理
- 手动触发:在 AI 面板新建任务,引用刚上传的清单 JSON,提示词例如「读取引用的清单文件,按其中 files 列表逐个处理,生成日报」。
- 定时任务:创建定时任务时同样引用清单 JSON(定时任务支持引用上传文件),到点自动执行。
Agent 会先读取清单内容,再按其中的 objectKey 逐个解析并读取文件内容,
处理结果会作为产物写入工作空间,可在文件/产物区查看。
如果每批文件的命名规则固定(例如每天覆盖同一份清单),清单也可以只列文件名, 由 Agent 在工作空间文件列表中按名称匹配最新上传的文件。