bibi by jimmylv/bibigpt-skill
npx skills add https://github.com/jimmylv/bibigpt-skill --skill bibi提供两种模式。请根据使用环境选择合适的一种:
| 模式 | 适用场景 | 认证方式 |
|---|---|---|
CLI 模式 (bibi 命令) | 已安装桌面应用的 macOS / Windows / Linux | 桌面应用登录或 BIBI_API_TOKEN |
| OpenAPI 模式 (HTTP 调用) | 容器、CI 或任何没有 bibi CLI 的环境 | 仅 BIBI_API_TOKEN |
自动检测:运行检查脚本 (scripts/bibi-check.sh)。它会告诉你哪种模式可用,并打印使用说明。
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
bibi)macOS (Homebrew)
brew install --cask jimmylv/bibigpt/bibigpt
Windows
winget install BibiGPT --source winget
Linux
curl -fsSL https://bibigpt.co/install.sh | bash
或从以下地址下载:https://bibigpt.co/download/desktop
验证安装
bibi --version
安装后,通过桌面应用登录一次。CLI 会自动读取保存的会话。
或者,设置一个 API 令牌:
export BIBI_API_TOKEN=<token>
重要提示:包含 ? 或 & 的 URL 必须用引号括起来,以避免 shell 通配符错误。
# 基础摘要(Markdown 输出到 stdout)
bibi summarize "<URL>"
# 异步模式 — 推荐用于长视频(>30分钟)
bibi summarize "<URL>" --async
# 分章节摘要
bibi summarize "<URL>" --chapter
# 仅获取字幕/文稿(无 AI 摘要)
bibi summarize "<URL>" --subtitle
# 完整的 JSON 响应
bibi summarize "<URL>" --json
# 组合标志
bibi summarize "<URL>" --subtitle --json
# 认证管理
bibi auth check
bibi auth login
bibi auth set-token <TOKEN>
# 更新
bibi check-update
bibi self-update
支持管道操作:
bibi summarize "<URL>" > summary.md
bibi summarize "<URL>" --json | jq '.summary'
在 Linux、容器、CI 流水线或任何未安装 bibi CLI 的环境中使用此模式。这些端点与 CLI 内部执行的操作完全一致。
基础 URL:https://api.bibigpt.co/api 完整的 OpenAPI 规范:https://bibigpt.co/api/openapi.json
两种选项:
选项 1 — API 令牌(最简单)
在 https://bibigpt.co/user/integration(API 令牌部分)获取你的令牌,然后:
export BIBI_API_TOKEN="<your-token>"
选项 2 — OAuth 2.0
BibiGPT 支持标准的 OAuth 2.0 授权码流程:
| 端点 | URL |
|---|---|
| 授权 | https://bibigpt.co/api/auth/authorize |
| 令牌交换 | https://bibigpt.co/api/auth/token |
使用 bibigpt-skill 作为 client_id,重定向 URI 为 http://localhost 或 http://127.0.0.1。
每个请求必须包含以下两个请求头:
Authorization: Bearer $BIBI_API_TOKEN
x-client-type: bibi-cli
x-client-type: bibi-cli 请求头将调用标识为 agent-skill 通道,这为会员提供了每天 100 次免费调用,之后才按正常计费。
GET /v1/summarizecurl -s "https://api.bibigpt.co/api/v1/summarize?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
响应:
{
"success": true,
"id": "...",
"service": "youtube",
"sourceUrl": "...",
"htmlUrl": "https://bibigpt.co/video/...",
"summary": "Markdown summary text...",
"costDuration": 12.5,
"remainingTime": 3600
}
添加 &includeDetail=true 以在 detail 字段中获取完整的字幕数据。
GET /v1/summarizeByChaptercurl -s "https://api.bibigpt.co/api/v1/summarizeByChapter?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
返回包含每个章节 start、end、content 和 summary 的 chapters 数组。
GET /v1/getSubtitlecurl -s "https://api.bibigpt.co/api/v1/getSubtitle?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
在 detail.subtitlesArray 中返回字幕。可选参数:audioLanguage、enabledSpeaker。
# 步骤 1: 创建任务 — GET /v1/createSummaryTask
curl -s "https://api.bibigpt.co/api/v1/createSummaryTask?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
# → { "success": true, "taskId": "abc-123", "status": "processing" }
# 步骤 2: 轮询直到完成(每 3 秒一次,最多约 6 分钟)— GET /v1/getSummaryTaskStatus
curl -s "https://api.bibigpt.co/api/v1/getSummaryTaskStatus?taskId=abc-123" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
# → status: "processing" | "completed" | "failed"
URL 作为查询参数传递时必须进行百分比编码:
# Python
python3 -c 'import urllib.parse,sys; print(urllib.parse.quote(sys.argv[1], safe=""))' "$VIDEO_URL"
# Node.js
node -e 'console.log(encodeURIComponent(process.argv[1]))' "$VIDEO_URL"
# 1. 检查令牌
test -n "$BIBI_API_TOKEN" || { echo "Set BIBI_API_TOKEN first"; exit 1; }
# 2. 摘要
ENCODED=$(python3 -c 'import urllib.parse,sys; print(urllib.parse.quote(sys.argv[1], safe=""))' "$VIDEO_URL")
RESULT=$(curl -sf "https://api.bibigpt.co/api/v1/summarize?url=$ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli")
# 3. 提取摘要
echo "$RESULT" | jq -r '.summary'
| HTTP 状态码 | 含义 | 操作 |
|---|---|---|
| 401 | 令牌过期/无效 | 重新登录或刷新 BIBI_API_TOKEN |
| 402/403 | 配额超出 | 访问 https://bibigpt.co/pricing |
| 429 | 频率限制 | 等待并重试 |
CLI 退出码:0 = 成功,1 = 错误。
YouTube、Bilibili、播客(Apple/Spotify/小宇宙)、TikTok/抖音、Twitter/X、小红书、音频文件,以及 BibiGPT 支持的任何 URL。
--async / API:createSummaryTask)。--json(CLI)或解析 JSON 响应(API)以获取结构化数据。chapter 模式提供逐章节摘要 — 非常适合讲座。每周安装量
481
代码仓库
GitHub 星标数
35
首次出现
2026年3月5日
安全审计
已安装于
codex470
opencode470
gemini-cli469
cursor469
github-copilot468
amp468
Two modes are available. Pick the one that fits the environment:
| Mode | When to use | Auth |
|---|---|---|
CLI mode (bibi command) | macOS / Windows / Linux with desktop app installed | Desktop login or BIBI_API_TOKEN |
| OpenAPI mode (HTTP calls) | Containers, CI, or any env without bibi CLI | BIBI_API_TOKEN only |
Auto-detection : Run the check script (scripts/bibi-check.sh). It will tell you which mode is available and print usage instructions.
bibi)macOS (Homebrew)
brew install --cask jimmylv/bibigpt/bibigpt
Windows
winget install BibiGPT --source winget
Linux
curl -fsSL https://bibigpt.co/install.sh | bash
Or download from: https://bibigpt.co/download/desktop
Verify
bibi --version
After installing, log in via the desktop app once. The CLI reads the saved session automatically.
Alternatively, set an API token:
export BIBI_API_TOKEN=<token>
Important : URLs containing ? or & must be quoted to avoid shell glob errors.
# Basic summary (Markdown output to stdout)
bibi summarize "<URL>"
# Async mode — recommended for long videos (>30min)
bibi summarize "<URL>" --async
# Chapter-by-chapter summary
bibi summarize "<URL>" --chapter
# Fetch subtitles/transcript only (no AI summary)
bibi summarize "<URL>" --subtitle
# Full JSON response
bibi summarize "<URL>" --json
# Combine flags
bibi summarize "<URL>" --subtitle --json
# Auth management
bibi auth check
bibi auth login
bibi auth set-token <TOKEN>
# Updates
bibi check-update
bibi self-update
Pipe-friendly:
bibi summarize "<URL>" > summary.md
bibi summarize "<URL>" --json | jq '.summary'
Use this mode on Linux, in containers, in CI pipelines, or anywhere the bibi CLI is not installed. These endpoints mirror exactly what the CLI does internally.
Base URL : https://api.bibigpt.co/api Full OpenAPI spec : https://bibigpt.co/api/openapi.json
Two options:
Option 1 — API Token (simplest)
Get your token at https://bibigpt.co/user/integration (API Token section), then:
export BIBI_API_TOKEN="<your-token>"
Option 2 — OAuth 2.0
BibiGPT supports the standard OAuth 2.0 authorization code flow:
| Endpoint | URL |
|---|---|
| Authorization | https://bibigpt.co/api/auth/authorize |
| Token exchange | https://bibigpt.co/api/auth/token |
Use bibigpt-skill as client_id with redirect URI http://localhost or http://127.0.0.1.
Every request MUST include both headers:
Authorization: Bearer $BIBI_API_TOKEN
x-client-type: bibi-cli
The x-client-type: bibi-cli header identifies the call as agent-skill channel, which gives members 100 free calls/day before normal billing kicks in.
GET /v1/summarizecurl -s "https://api.bibigpt.co/api/v1/summarize?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
Response:
{
"success": true,
"id": "...",
"service": "youtube",
"sourceUrl": "...",
"htmlUrl": "https://bibigpt.co/video/...",
"summary": "Markdown summary text...",
"costDuration": 12.5,
"remainingTime": 3600
}
Add &includeDetail=true to get full subtitle data in the detail field.
GET /v1/summarizeByChaptercurl -s "https://api.bibigpt.co/api/v1/summarizeByChapter?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
Returns chapters array with start, end, content, and summary for each chapter.
GET /v1/getSubtitlecurl -s "https://api.bibigpt.co/api/v1/getSubtitle?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
Returns subtitles in detail.subtitlesArray. Optional params: audioLanguage, enabledSpeaker.
# Step 1: Create task — GET /v1/createSummaryTask
curl -s "https://api.bibigpt.co/api/v1/createSummaryTask?url=VIDEO_URL_ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
# → { "success": true, "taskId": "abc-123", "status": "processing" }
# Step 2: Poll until done (every 3s, max ~6min) — GET /v1/getSummaryTaskStatus
curl -s "https://api.bibigpt.co/api/v1/getSummaryTaskStatus?taskId=abc-123" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli"
# → status: "processing" | "completed" | "failed"
URLs must be percent-encoded when passed as query params:
# Python
python3 -c 'import urllib.parse,sys; print(urllib.parse.quote(sys.argv[1], safe=""))' "$VIDEO_URL"
# Node.js
node -e 'console.log(encodeURIComponent(process.argv[1]))' "$VIDEO_URL"
# 1. Check token
test -n "$BIBI_API_TOKEN" || { echo "Set BIBI_API_TOKEN first"; exit 1; }
# 2. Summarize
ENCODED=$(python3 -c 'import urllib.parse,sys; print(urllib.parse.quote(sys.argv[1], safe=""))' "$VIDEO_URL")
RESULT=$(curl -sf "https://api.bibigpt.co/api/v1/summarize?url=$ENCODED" \
-H "Authorization: Bearer $BIBI_API_TOKEN" \
-H "x-client-type: bibi-cli")
# 3. Extract summary
echo "$RESULT" | jq -r '.summary'
| HTTP Status | Meaning | Action |
|---|---|---|
| 401 | Token expired/invalid | Re-login or refresh BIBI_API_TOKEN |
| 402/403 | Quota exceeded | Visit https://bibigpt.co/pricing |
| 429 | Rate limited | Wait and retry |
CLI exit codes: 0 = success, 1 = error.
YouTube, Bilibili, podcasts (Apple/Spotify/小宇宙), TikTok/Douyin, Twitter/X, Xiaohongshu, audio files, and any URL supported by BibiGPT.
--async / API: createSummaryTask).--json (CLI) or parse JSON response (API) for structured data.chapter mode provides section-by-section summaries — great for lectures.Weekly Installs
481
Repository
GitHub Stars
35
First Seen
Mar 5, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
codex470
opencode470
gemini-cli469
cursor469
github-copilot468
amp468
React 组合模式指南:Vercel 组件架构最佳实践,提升代码可维护性
105,000 周安装
OpenAPI 转 TypeScript 工具 - 自动生成 API 接口与类型守卫
563 周安装
Rust Unsafe代码检查器 - 安全使用Unsafe Rust的完整指南与最佳实践
566 周安装
数据库模式设计器 - 内置最佳实践,自动生成生产级SQL/NoSQL数据库架构
565 周安装
Nx 生成器使用指南:自动化代码生成与单体仓库项目搭建
594 周安装
.NET并发编程模式指南:async/await、Channels、Akka.NET选择决策树
725 周安装
韩语语法检查器 - 基于国立国语院标准的拼写、空格、语法、标点错误检测与纠正
586 周安装