Skip to content

途牛 CLI 安装与配置

一、前置条件

在开始安装前,请确认以下条件均已满足:

条件说明
运行环境Node.js 18+
认证方式推荐使用 OAuth;无法使用浏览器时可配置 TUNIU_API_KEY 作为兜底
网络需能访问途牛服务端点(如 https://openapi.tuniu.cn/hybrid/mcp/hotel)及 OAuth 授权服务

二、安装 CLI

方式一:npm 全局安装(推荐)

bash
npm install -g tuniu-cli@latest

若提示需要 sudo 权限,则使用:

bash
sudo npm install -g tuniu-cli@latest

安装后,执行以下命令验证是否成功:

bash
tuniu --version

返回类似 tuniu version 1.1.1 则说明安装成功。

注意:安装 CLI 与 Skill 注册是两条路径: 通过 npm 安装时,postinstall 会自动检测本机已安装的 Agent(例如 ~/.claude/~/.cursor/ 等),并将内置 Skill 安装到对应目录;若未检测到任何 Agent,则默认 ~/.agents/skills/tuniu-cli/。 通过 CLI 命令注册 Skill 时,可用 tuniu skill install 显式安装/更新 Skill(更可控,适合 CI、容器或多 Agent 环境)。

方式二:npx 临时使用

无需全局安装,直接执行:

bash
npx tuniu-cli --version
npx tuniu-cli list

适合一次性使用或 CI 环境中临时调用。

方式三:从源码安装

bash
git clone https://github.com/tuniucorp/tuniu-cli.git
cd tuniu-cli
npm install
sudo npm link

三、配置 CLI

调用途牛服务前需要完成 OAuth 授权,或配置 API Key 作为兜底。可前往 途牛开放平台 注册并在控制台申请 API Key。

3.1 OAuth 授权(推荐)

bash
tuniu auth login
tuniu auth status

授权完成后,CLI 会将当前 profile 的 OAuth client、access token 和 refresh token 保存到本地,并在 token 过期时自动刷新。退出登录:

bash
tuniu auth logout

在 WorkBuddy 等会捕获授权 URL 的 Agent 环境中,使用 daemon 模式:

bash
tuniu auth login --daemon
tuniu auth status --daemon

3.2 API Key(兜底)

将 API Key 配置到环境变量 TUNIU_API_KEY 中:

bash
export TUNIU_API_KEY=your_api_key
export TUNIU_AUTH_TYPE=apiKey

可配置的其他环境变量如下:

变量说明示例
TUNIU_API_KEY普通 MCP 服务 API 认证密钥(OAuth 不可用时)export TUNIU_API_KEY=your_api_key
TUNIU_TTMS_API_KEYsk- 开头的 TTMS 企业商旅员工 CLI API Key,仅供 ttms-* 服务使用export TUNIU_TTMS_API_KEY=sk-your_ttms_api_key
MCP_TIMEOUT请求超时秒数(可选)export MCP_TIMEOUT=30
TUNIU_DISCOVERY_ENABLED服务动态发现开关(true 开启,false 关闭)export TUNIU_DISCOVERY_ENABLED=true
TUNIU_AUTH_TYPE全局认证方式:autooauthapiKeyexport TUNIU_AUTH_TYPE=oauth

TUNIU_AUTH_TYPE 的取值说明如下:

说明
auto默认值;有可用 API Key 时优先使用 API Key,否则使用 OAuth
oauth强制使用 OAuth,不发送 API Key
apiKey强制使用 API Key

3.3 初始化配置文件(可选)

除环境变量外,CLI 也支持配置文件。执行以下命令在默认路径 ~/.tuniu-mcp/config.json 生成初始配置:

bash
tuniu config init

若需要覆盖已有配置,使用 --force 选项:

bash
tuniu config init --force

查看当前生效的配置:

bash
tuniu config show

四、可选:安装 Skill 到 Agent 目录

如果你的使用场景是 Cursor、Claude、OpenClaw、CoPaw 等支持 Skill 的 Agent,推荐在安装途牛 CLI 后安装 Skill:

注意:如果你是通过 npm 安装(npm install -g tuniu-cli@latest),通常不需要再手动执行 tuniu skill install。npm 安装会自动检测本机已安装的 Agent 目录并写入 Skill;若未检测到任何 Agent,则默认写入 ~/.agents/skills/tuniu-cli/

以下场景,建议你显式执行 tuniu skill install 来安装/更新 Skill:

  • 你通过 npx 临时使用或源码安装(未触发/不依赖 npm postinstall
  • 你希望只安装到某个 Agent(或安装到全部内置支持的 Agent)
  • 你需要安装到“非内置适配”的 Agent 目录(用 --dir 指定)

默认行为(无参数):仅安装到通用目录

  • ~/.agents/skills/tuniu-cli/

如需安装到指定 Agent / 多个 Agent / 全部内置支持的 Agent,可使用:

bash
# 位置参数:单个 Agent
tuniu skill install claude

# 选项参数:多个 Agent(逗号分隔)或 all
tuniu skill install --agent cursor,claude
tuniu skill install --agent all

# 自定义目录
tuniu skill install --dir ~/.custom-agent/skills

内置支持的 Agent 标识包括:agents,claude,cursor,qoder,codex,opencode,openclaw,copaw,workbuddy(WorkBuddy 目录为 ~/.workbuddy/skills/tuniu-cli)。all 仅安装到本机已检测到的 Agent,不会强装未使用的 Agent。 对于未内置适配的 Agent,请优先通过 --dir 将 Skill 安装到其技能目录。


五、更新 CLI

推荐使用一键更新(全局 npm 安装场景):

bash
tuniu update --check          # 仅检查是否有新版本
tuniu update                  # 更新 CLI,并刷新本机已安装的 Agent Skill
tuniu update --cli-only       # 只更新 CLI
tuniu update --to 1.1.2       # 更新到指定版本

说明:

  • 会清理 npm 全局升级残留的 .tuniu-cli-* 临时目录;遇 ENOTEMPTY 时自动卸载后重装。
  • 默认只刷新已经安装过的 Agent Skill;未装过的 Agent 不会新建。
  • 仅刷新 Skill:tuniu skill install(可加 --agent / --dir)。

也可手动:

bash
npm install -g tuniu-cli@latest
tuniu skill install --agent / --dir   # 如需同步刷新内置 Skill
tuniu -V

下一步

配置完成后,前往 使用指南 了解如何调用具体服务工具。

Powered by VitePress