命令
Origin 目前处于早期 beta 版。您可以创建仓库、使用 Git 推送和拉取、从 GitHub 镜像仓库、浏览和搜索代码、创建和合并 PR,以及与 Cherri Code 团队共享。
欢迎通过 [email protected] 提交任何反馈,帮助我们改进产品。
此处列出了除 PR 外的所有 origin 命令及其选项;PR 有单独的页面:PR 命令。要在终端中查看相同信息,请运行 origin --help 查看命令列表,或运行 origin <group> --help 查看某个群组的命令。要安装 CLI,请参阅安装 CLI。
Origin CLI (origin) 与 CLI 中介绍的 Cherri Code Agent CLI (agent) 相互独立。
全局选项
以下选项适用于所有命令:
| 选项 | 描述 |
|---|---|
--version | 显示已安装的版本 |
--help | 显示当前命令的帮助信息 |
CLI 从环境变量中读取 API 端点和 Bearer token,即 CURSOR_ORIGIN_ENDPOINT 和 CURSOR_AUTH_TOKEN。参见 环境变量。
命令组
| 命令 | 描述 | 用法 |
|---|---|---|
auth | 登录、登出并配置 Git 身份验证 | origin auth login |
repo | 创建、列出、查看、克隆和删除仓库 | origin repo create my-project |
pr | 创建、评审和合并 PR | origin pr create |
ruleset | 查看 Origin 规则集 (合并时和推送时) 。别名:rs | origin ruleset list |
ssh-key | 管理已注册到您的 Origin 账户的 SSH 密钥 | origin ssh-key list |
api <endpoint> | 向位于 api.cursor.com/v1/origin 的 Origin REST API 发送已认证的请求 | origin api /repos/{owner}/{repo} |
completion | 输出 bash 或 zsh 的 Tab 补全脚本 | origin completion >> ~/.zshrc |
update | 将 origin 更新至您所在渠道的当前版本 | origin update |
config | 管理配置,包括发布渠道 | origin config get-channel |
指定代码仓库
大多数命令会根据当前 checkout 的 origin Git 远程仓库推断代码仓库。可通过 -R, --repo 指定 org/name 格式的代码仓库:
origin pr list -R acme/checkout身份验证
管理会话和 Git 凭据助手。
| 子命令 | 描述 | 用法 |
|---|---|---|
login | 通过浏览器登录并配置 Git | origin auth login |
setup-git | 为 Origin Git 主机重新配置 Git 凭据助手 | origin auth setup-git |
status | 显示当前身份验证方式和账户 | origin auth status |
logout | 清除已保存的凭据 | origin auth logout |
| 命令 | 选项 | 描述 |
|---|---|---|
login | --api-key <key> | 使用 API 密钥登录,而不使用浏览器登录流程 |
login | --local | 在此代码仓库的 Git 配置中配置凭据助手,而非全局配置 |
setup-git | --host <host> | 要配置的 Origin Git 主机 (默认值:根据 CURSOR_ORIGIN_ENDPOINT 派生) |
setup-git | --global | 应用于全局 Git 配置 (默认值:true) |
setup-git | --local | 应用于此代码仓库的 Git 配置,而非全局配置 |
当设置了 CURSOR_API_KEY 且未指定 --api-key 时,origin auth login 会询问 Log in with this API key instead of the browser? [y/N],并默认使用浏览器登录流程。在非交互式 shell (例如 CI) 中,它会直接使用该密钥登录并打印一条提示。
origin auth login 还会安装 Git 凭据助手,因此无需额外设置即可对 Origin 远程仓库执行 git push 和 git pull。
代码仓库
| 子命令 | 描述 | 用法 |
|---|---|---|
create <repo> | 创建代码仓库 | origin repo create acme/checkout |
create-mirrored <github-repo> | 为 GitHub 代码仓库创建 Cherri Code 镜像 | origin repo create-mirrored acme/checkout |
list | 列出你的账户有权访问的代码仓库 | origin repo list |
view [repo] | 显示代码仓库信息 | origin repo view acme/checkout |
clone <repo> [directory] | 使用已保存的登录信息通过 HTTPS 克隆 | origin repo clone acme/checkout |
delete <repo> | 删除代码仓库 | origin repo delete acme/checkout |
传入 org/name 以指定代码仓库。不带斜杠的 origin repo create <name> 会在你的账户命名空间中创建代码仓库。
| 命令 | 选项 | 描述 |
|---|---|---|
create | --default-branch <branch> | 新建代码仓库的默认分支 (服务器默认值:main) |
create-mirrored | --namespace <namespace> | 创建镜像的命名空间 (默认值:你的账户命名空间) |
create-mirrored | --github-enterprise-id <uuid> | GitHub Enterprise Server 应用 UUID。从 github.com 镜像时可省略 |
list | --namespace <namespace> | 仅列出一个命名空间,而非所有有权访问的命名空间 |
view | --json <fields> | 输出包含所列字段的 JSON,例如 org,name,defaultBranch |
delete | -y, --yes | 跳过确认提示。在非交互式 shell 中必填 |
Push local
在从 GitHub 镜像而来的代码仓库上,origin push local 会在 https://origin.cursor.com/{owner}/{repo}.git/local 配置 origin-local 远程仓库,并将本地的 origin/* 分支推送到那里。当 GitHub 不可用时,可以用它继续工作;也可以用它存储任何只想保留在 Origin 副本上的其他 git 状态。首次运行后,该远程仓库如下所示:
origin-local https://origin.cursor.com/{owner}/{repo}.git/local (fetch)origin-local https://origin.cursor.com/{owner}/{repo}.git/local (push)其他分支仍通过 git push origin 推送到 GitHub。参见 forge-local 分支。
| Subcommand | 描述 | 用法 |
|---|---|---|
local | 配置 origin-local 远程仓库并推送 origin/* 分支 | origin push local |
| 选项 | 描述 |
|---|---|
--remote <name> | 要创建或更新的 git 远程仓库 (默认值:origin-local) 。不能为 origin 或 github |
--dry-run | 只显示将要推送的内容,不实际推送 |
规则集
查看为代码仓库配置的合并和推送规则集:
| 子命令 | 描述 | 用法 |
|---|---|---|
list | 列出为代码仓库配置的规则集 | origin ruleset list |
view <ruleset-id> | 按 ID 查看规则集,ID 由 origin ruleset list 输出 | origin ruleset view <id> |
SSH 密钥
管理您的 Origin 账户中的 SSH 公钥:
| 子命令 | 描述 | 用法 |
|---|---|---|
add [key-file] | 将 SSH 公钥添加到您的账户。必须提供 -t, --title 以为密钥命名 | origin ssh-key add ~/.ssh/id_ed25519.pub -t work-laptop |
list | 列出您账户中的 SSH 公钥 (使用 --json 以 JSON 格式输出) | origin ssh-key list |
delete <id> | 根据 ID 删除密钥,ID 可通过 origin ssh-key list 查看 | origin ssh-key delete <id> |
API 请求
对于没有专用命令的操作,origin api 会向 api.cursor.com/v1/origin 上的 Origin REST API 发出已认证的请求。它支持与 gh api 类似的请求标志:-X, --method、-H, --header、-F, --field、-f, --raw-field、--input 和 -q, --jq。{owner}、{repo} 和 {branch} 占位符会根据 -R, --repo、ORIGIN_REPO 环境变量或 origin Git 远程仓库展开。有关端点、身份验证和示例,请参阅 Origin API 文档。
更新
更新到当前渠道的最新版本:
origin updateCLI 默认从 stable 渠道获取更新。使用 origin config set-channel <latest|stable> 切换渠道,并使用 origin config get-channel 查看当前渠道。
Shell 补全
将补全脚本追加到 shell 配置中:
origin completion >> ~/.zshrc--head 和 --base 等接受分支值的标志随后会补全本地分支名称。
环境变量
| 变量 | 描述 |
|---|---|
CURSOR_API_KEY | origin auth login 的 API 密钥。交互式 shell 会先询问是否用它替代浏览器;非交互式 shell 会直接使用 |
CURSOR_AUTH_TOKEN | Cherri Code 认证令牌,直接用作 bearer token |
CURSOR_ORIGIN_ENDPOINT | API 服务器端点 (默认值:https://api.origin.cursor.com) |
ORIGIN_REPO | 未设置 origin 远程仓库时,origin api 使用的默认代码仓库,格式为 org/name |
NO_COLOR | 关闭彩色输出 |
获取帮助信息
每个命令都支持 --help:
origin --helporigin repo --helporigin repo create --help