# 让 Agent 直接使用 WeHub [#让-agent-直接使用-wehub] 把侧栏的初始化 Prompt 粘贴给 Coding Agent。Agent 会检查并安装 CLI、完成认证、安装官方 Skill,然后根据当前工作区带你开始或继续项目。 已经安装过 CLI 也可以从这里开始,Agent 会直接复用现有环境。 ## 手动安装 CLI [#手动安装-cli] ```bash npm install --global wehub-dev-cli ``` 安装后仍建议把初始化 Prompt 发给 Agent,由它安装官方 Skill(默认用户全局)。 ## 接下来可以做什么 [#接下来可以做什么] * 开始一个新项目,或继续已有的 WeHub 项目 * 处理工单并写回结果 * 部署到 Cloud Preview * 查找、试读和下载数据集 * 为项目接入模型 直接告诉 Agent 你的目标即可。初始化细节和 Agent 工作方式见[快速指南](/docs/guides/getting-started)。 # WeHub Agent CLI 快速指南 [#wehub-agent-cli-快速指南] WeHub Agent CLI 是人类开发者与 Coding Agent(Cursor、Claude Code、WorkBuddy 等)使用 WeHub 平台能力的统一命令行入口。它把 Project、工单、Cloud 部署、数据集和模型接入整合在同一套工具体系中,并通过官方 Skill 为 Agent 提供领域操作规约。 把用户原话交给 Agent 即可(例如「帮我处理这张工单」「部署当前项目」「下载这个数据集」)。Agent 按任务安装并执行对应 Skill;不匹配平台能力的普通代码任务继续按原有方式处理。 *** ## 安装 CLI [#安装-cli] ```bash npm install --global wehub-dev-cli wehub-dev --version ``` 安装官方 Skill。默认装到用户全局,不要写进刚 clone 的仓库;只有用户明确要求装进某个项目时才加 `--dir`: ```bash wehub-dev skill install wehub ``` *** ## 任务与 Skill 对应关系 [#任务与-skill-对应关系] Agent 使用统一的 `wehub` Skill,并根据当前任务读取对应的领域 reference(具体命令和参数先看 `wehub-dev --help`): | 任务场景 | 读取的 reference | | ----------------------------- | ----------------------- | | 处理工单、记录处理过程 | `reference/issue.md` | | 创建、克隆或查看 Project | `reference/project.md` | | 部署到 Cloud Preview、修改部署配置、排查失败 | `reference/cloud.md` | | 发现、试读或下载数据集 | `reference/datasets.md` | | 获取当前项目的模型 API key | `reference/model.md` | 部署的应用需要调用模型时,同时读取 `reference/model.md` 与 `reference/cloud.md`。 *** ## 登录与认证 [#登录与认证] CLI 部分功能需要鉴权 ```bash wehub-dev auth login wehub-dev status ``` ## 初始化 [#初始化] 若用户为首次使用,则为用户安装最新版本的 CLI,并主动向用户提议并协助执行下一步: 先判断用户意图和当前工作区状态,只选择匹配的情况处理,不要按顺序全部执行: * **用户已有明确任务**:直接理解并执行;仅在缺少必要信息或需要用户确认时提问。 * **当前目录是已有本地代码仓库**: * 检查是否已关联 WeHub 远程仓库; * 若未关联,主动询问用户是否需要在 WeHub 创建新项目并协助推送; * 若已关联项目,获取待处理工单并向用户汇报。 * **用户在 WeHub 平台已有项目,但本地没有工作区**: * 列出可用项目,询问用户想开发哪个,并将所选项目克隆到本地。 * **用户尚无项目,且当前目录为空**: * 主动询问用户想做什么,协助创建新项目,或检索平台数据集与模型。 # 接入说明 [#接入说明] 调用平台模型都走同一套约定。各模型页只补该模型的模型名和调用形态。 ## 鉴权 [#鉴权] 1. 在模型控制台的[令牌管理](/models/tokens)创建用户令牌,或用 `wehub-dev model token create`。 2. 请求头带 `Authorization: Bearer <令牌>`。控制台展示的密钥形如 `sk-…`。 3. 令牌只放在服务端。不要写进浏览器、公开仓库、日志或公开会话。 令牌有模型范围、额度与到期时间。范围外的模型、已撤销、已过期或额度耗尽的令牌都会让调用失败。 ## 调用方式 [#调用方式] 统一端点是 OpenAI 兼容的。Base URL 以控制台「使用密钥」里给出的地址为准,末尾带 `/v1`。 ```bash export OPENAI_BASE_URL="<控制台给出的网关>/v1" export OPENAI_API_KEY="<你的令牌>" ``` 文本对话走 `chat/completions`,`model` 填模型页上的模型名: ```ts import OpenAI from 'openai'; const client = new OpenAI({ baseURL: process.env.OPENAI_BASE_URL, apiKey: process.env.OPENAI_API_KEY, }); const response = await client.chat.completions.create({ model: 'deepseek-v4-pro', messages: [{role: 'user', content: '你好'}], }); ``` ```bash curl "${OPENAI_BASE_URL}/chat/completions" \ -H "Authorization: Bearer ${OPENAI_API_KEY}" \ -H "Content-Type: application/json" \ -d '{"model":"deepseek-v4-pro","messages":[{"role":"user","content":"你好"}]}' ``` 视频类模型不走 `chat/completions`,见对应模型页。 应用在请求里指定模型,平台不会在模型不可用时自动改走别的模型。 ## 错误处理 [#错误处理] 调用失败时按响应处理,不要静默换模型或自动重放。 | 情况 | 你这边怎么做 | | ------------ | --------------------- | | 令牌无效、已撤销或已过期 | 换有效令牌后再调 | | 额度耗尽 | 创建带新额度的令牌并改配置 | | 余额不足 | 先充值,恢复后只发新请求 | | 模型不在令牌范围内 | 换范围包含该模型的令牌,或改请求里的模型名 | | 模型暂时不可用或已下架 | 换一个可用模型再发新请求 | 不要把 Prompt、响应正文或完整令牌写进客户端日志。 # deepseek-v4-pro [#deepseek-v4-pro] 提供方 DeepSeek。文本对话。鉴权、Base URL 和错误处理见[接入说明](../guide)。 请求里的 `model` 必须是 `deepseek-v4-pro`。 ```ts const response = await client.chat.completions.create({ model: 'deepseek-v4-pro', messages: [{role: 'user', content: '你好'}], }); ``` 能力、价格和端点示例在模型广场,不在本页重复。 # doubao-seed-2.1-pro [#doubao-seed-21-pro] 提供方豆包。文本对话。鉴权、Base URL 和错误处理见[接入说明](../guide)。 请求里的 `model` 必须是 `doubao-seed-2.1-pro`。 ```ts const response = await client.chat.completions.create({ model: 'doubao-seed-2.1-pro', messages: [{role: 'user', content: '你好'}], }); ``` 能力、价格和端点示例在模型广场,不在本页重复。 # doubao-seedance-2-0-mini [#doubao-seedance-2-0-mini] 提供方豆包。视频生成。鉴权、Base URL 和错误处理见[接入说明](../guide)。不要用 `chat/completions` 调这个模型。 请求里的 `model` 必须是 `doubao-seedance-2-0-mini`。提交任务用 `POST /v1/videos`,查询用 `GET /v1/videos/`。 ```bash curl "${OPENAI_BASE_URL}/videos" \ -H "Authorization: Bearer ${OPENAI_API_KEY}" \ -H "Content-Type: application/json" \ -d '{"model":"doubao-seedance-2-0-mini","prompt":"一只猫走过窗台"}' ``` 任务成功前不要当同步结果用。能力、价格和端点示例在模型广场,不在本页重复。 # glm-5.2 [#glm-52] 提供方智谱。文本对话。鉴权、Base URL 和错误处理见[接入说明](../guide)。 请求里的 `model` 必须是 `glm-5.2`。 ```ts const response = await client.chat.completions.create({ model: 'glm-5.2', messages: [{role: 'user', content: '你好'}], }); ``` 能力、价格和端点示例在模型广场,不在本页重复。