FlyHub

[ Documentation ]

接入 FlyHub · DeepSeek Harness

DeepSeek Harness(命令 dsh)支持 OpenAI 兼容模型提供商。完成本指南后,可通过 FlyHub 使用 deepseek-v4-pro、gpt-5.6-sol 等模型,并保留 Harness Web 界面与会话能力。

手动安装

1. 准备工作

开始前请安装 Node.js 24,并在 FlyHub 控制台准备有效的 API Key。

  • DeepSeek:deepseek-v4deepseek-v4-flash
  • OpenAI 兼容:gpt-5.6-sol
  • Anthropic 兼容(OpenAI 格式):claude-sonnet-5

1.1 安装 Node.js 24

DeepSeek Harness 需要 Node.js 24(自带 npm)。安装后重新打开终端并检查版本:

bash
node --version npm --version

node --version 输出应以 v24. 开头。

2. 一键配置并启动

若未使用上方 FlyHub CLI,可将下方脚本中的 API Key 替换为你的 FlyHub Key,复制整段到终端执行。

bash <<'FLYHUB_SETUP' set -e npm install -g @deepseek-ai/dsh FLYHUB_API_KEY="sk-flyhub-replace-with-your-api-key" export FLYHUB_API_KEY NODE_PATH="$(npm root -g)/@deepseek-ai/dsh/node_modules" node <<'NODE' const fs = require('fs'); const os = require('os'); const path = require('path'); const yaml = require('js-yaml'); const home = process.env.DSH_HOME || path.join(os.homedir(), '.dsh'); const settingsPath = path.join(home, 'settings.yaml'); fs.mkdirSync(home, { recursive: true }); const current = fs.existsSync(settingsPath) ? (yaml.load(fs.readFileSync(settingsPath, 'utf8')) || {}) : {}; if (fs.existsSync(settingsPath)) { fs.copyFileSync(settingsPath, settingsPath + '.bak.' + Date.now()); } current['llm-pi-ai'] ??= {}; current['llm-pi-ai'].providers ??= {}; current['llm-pi-ai'].providers.flyhub = { displayName: 'FlyHub', apiKeyEnv: 'FLYHUB_API_KEY', api: 'openai-completions', baseURL: 'https://api.flyhub.cn/v1', models: [ { id: 'deepseek-v4-pro', name: 'DeepSeek V4 Pro' }, { id: 'deepseek-v4-flash', name: 'DeepSeek V4 Flash' }, { id: 'gpt-5.6-sol', name: 'GPT-5.6 Sol' }, { id: 'claude-sonnet-5', name: 'Claude Sonnet 5' }, ], }; current['agent-default-model'] = { provider: 'flyhub', model: 'deepseek-v4-pro', }; fs.writeFileSync( settingsPath, yaml.dump(current, { lineWidth: -1, noRefs: true }), { mode: 0o600 }, ); const envPath = path.join(home, '.env'); const oldLines = fs.existsSync(envPath) ? fs.readFileSync(envPath, 'utf8').split(/\r?\n/) : []; const lines = oldLines.filter( (line) => line && !line.startsWith('FLYHUB_API_KEY='), ); lines.push('FLYHUB_API_KEY=' + process.env.FLYHUB_API_KEY); fs.writeFileSync(envPath, lines.join('\n') + '\n', { mode: 0o600 }); console.log('FlyHub configured. Default model: deepseek-v4-pro'); NODE dsh web FLYHUB_SETUP

命令会安装 Harness、备份并合并已有配置、写入 Key、注册 FlyHub 模型并启动服务。启动后终端会显示本地地址(通常为 http://127.0.0.1:3080),在浏览器打开并新建会话即可。

bash
dsh web

在指定项目目录中使用 Harness 时,请先 cd 到项目目录再运行 dsh web。

3. 验证连接

使用 headless 模式发送最小请求,验证 Key 与模型配置:

bash
export FLYHUB_API_KEY="sk-flyhub-replace-with-your-api-key" dsh --profile headless "Reply with OK only"

若终端返回 OK,说明 Harness 已通过 FlyHub 成功调用模型。之后可运行 dsh web 打开 Web 界面。

4. 添加与切换模型

在 ~/.dsh/settings.yaml 的 models 列表中添加更多 FlyHub 模型。修改 agent-default-model.model 可设置新会话默认模型:

yaml
llm-pi-ai: providers: flyhub: displayName: FlyHub apiKeyEnv: FLYHUB_API_KEY api: openai-completions baseURL: https://api.flyhub.cn/v1 models: - id: deepseek-v4-pro name: DeepSeek V4 Pro - id: deepseek-v4-flash name: DeepSeek V4 Flash - id: gpt-5.6-sol name: GPT-5.6 Sol - id: claude-sonnet-5 name: Claude Sonnet 5 agent-default-model: provider: flyhub model: deepseek-v4-pro

实时模型列表请调用 GET /v1/models。FlyHub 模型目录会持续更新,请以接口返回为准。

5. 故障排查

401 / invalid_bearer_token:确认 Key 完整、无空格、未被删除。仍失败请在控制台轮换 Key 后重试。

准备好了?登录控制台 · 充值 · 创建 API Key