# bibigpt-skill — Video Summarizer Agent Skill **Claude Code · Codex · ChatGPT · OpenClaw · Cursor.** Summarize YouTube, Bilibili, podcasts, and local files via the `bibi` CLI or hosted MCP. AI Agent skills for [BibiGPT](https://bibigpt.co). **Multiple skills, one CLI (`bibi`), one account.** | Skill | When to use | |-------|-------------| | `bibi` | Watch a video: summarize, transcript, chapters | | `bibi-library` | Already-saved videos, notes, collections, in-library search | | `bibi-feed` | Subscribe to channels, pull latest, mark seen | | `bibi-vision` | Frames / OCR / slides, mind map | `npx skills add JimmyLv/bibigpt-skill` still installs `bibi` (existing onboarding). Add a sibling with `--skill`: ```bash npx skills add JimmyLv/bibigpt-skill --skill bibi-library npx skills add JimmyLv/bibigpt-skill --skill bibi-feed npx skills add JimmyLv/bibigpt-skill --skill bibi-vision ``` Agent landing: [bibigpt.co/mcp](https://bibigpt.co/mcp). Hand-held per-host install pages: [bibigpt.co/agent](https://bibigpt.co/agent) (ChatGPT, Claude Code, OpenClaw, WorkBuddy, Doubao Work, QwenWork, DeepSeek Harness). Ways to use: 1. **Agent plugin** — one install adds the hosted MCP server plus all 4 skills: Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot (see below) 2. **BibiGPT Desktop + CLI Skill** — install `bibi` CLI, works with Claude Code / OpenClaw / Codex / WorkBuddy / QwenWork / Doubao Work / DeepSeek Harness 3. **Remote MCP Server** — zero install, works with any MCP client (Claude, ChatGPT, Cursor, etc.): `https://bibigpt.co/api/mcp` 4. **OpenAPI** — direct HTTP calls for containers, CI, or custom integrations Every plugin signs in with OAuth on first use — no API key to paste. ### Install as a Claude Code plugin ``` /plugin marketplace add JimmyLv/bibigpt-skill /plugin install bibi@bibigpt ``` On Claude Code 2.1.275 or later, one line works: `/plugin install bibi --marketplace JimmyLv/bibigpt-skill`. ### Install as a Codex plugin From the terminal: ```bash codex plugin marketplace add JimmyLv/bibigpt-skill codex plugin add bibi@bibigpt ``` Or inside a Codex session: `/plugin marketplace add JimmyLv/bibigpt-skill`, then install `bibi` from the marketplace tab in `/plugins`. Also works in the Codex IDE extension (Settings → Plugins) and the ChatGPT desktop app (Work / Codex). ### Install in Gemini CLI ```bash gemini extensions install https://github.com/JimmyLv/bibigpt-skill ``` Then run `/mcp auth bibigpt` once. ### Install in Cursor or GitHub Copilot The repo is also a Cursor plugin (`.cursor-plugin/plugin.json` + `.mcp.json`) and an [Agent Plugins](https://agent-plugins.org) package (`plugin.json` + `mcp.json`) for GitHub Copilot. Without a marketplace, add the MCP server directly: ```json { "mcpServers": { "bibigpt": { "url": "https://bibigpt.co/api/mcp" } } } ``` The server is also in the official MCP Registry as `io.github.JimmyLv/bibigpt`. --- ## Skill Structure ``` skills/ ├── bibi/ # Watch: summarize / subtitle / chapter ├── bibi-library/ # Saved videos, notes, collections ├── bibi-feed/ # Channel subscribe + latest feed └── bibi-vision/ # Frames, OCR, mind map ``` Each directory has `SKILL.md` (intent + triggers), `references/` (auth, CLI), and `workflows/` where a multi-step path exists. All four skills call the same `bibi` binary — there is no second npm package named `video-cli`. ``` skills/bibi/ ├── SKILL.md # Watch-video router — library/feed/vision go to siblings ├── scripts/ │ └── bibi-check.sh # Auto-detect CLI vs API mode ├── references/ │ ├── cli.md # CLI command reference │ ├── api.md # OpenAPI endpoint reference │ ├── endpoints.md # Auto-generated OpenAPI dump │ ├── installation.md # Setup & auth guide │ └── supported-platforms.md # URL types & platform limits └── workflows/ ├── quick-summary.md # Paste URL → get AI summary ├── deep-dive.md # Chapter breakdown + follow-up Q&A ├── transcript-extract.md # Subtitle/transcript extraction ├── article-rewrite.md # Video → blog/公众号图文/小红书 ├── batch-process.md # Multi-URL batch processing ├── research-compile.md # Multi-source topic synthesis ├── export-notes.md # Save to Notion/Obsidian/local └── visual-analysis.md # Kept as fallback; prefer skill `bibi-vision` ``` ## Workflows `bibi` (watch-video) workflows: | Workflow | What it does | Trigger examples | |----------|-------------|-----------------| | **Quick Summary** | One URL → AI summary | "summarize this video", "总结" | | **Deep Dive** | Chapter-by-chapter + Q&A | "chapter summary", "分章节总结" | | **Transcript Extract** | Raw subtitles with timestamps | "get subtitles", "获取字幕" | | **Article Rewrite** | Video → polished article | "turn into article", "AI改写" | | **Batch Process** | Multiple URLs at once | "batch summarize", "批量总结" | | **Research Compile** | Cross-source synthesis | "compare these videos", "综合分析" | | **Export Notes** | Save to Notion/Obsidian/file | "save to Notion", "导出笔记" | Sibling skills own the rest: `bibi-library` (saved library / notes / collections), `bibi-feed` (channels / latest), `bibi-vision` (frames / mind map). --- ## Quick Start ### 1. Install Desktop App ```bash curl -fsSL https://bibigpt.co/install.sh | bash ``` Works on **macOS** (auto-uses Homebrew), **Linux** (downloads AppImage), and detects Windows (prompts to use winget). Or install manually per platform: - **macOS**: `brew install --cask jimmylv/bibigpt/bibigpt` ([Homebrew tap](https://github.com/JimmyLv/homebrew-bibigpt)) - **Windows**: `winget install BibiGPT --source winget` or download from [bibigpt.co/download/desktop](https://bibigpt.co/download/desktop) - **Linux**: Download `.deb` / `.AppImage` from [bibigpt.co/download/desktop](https://bibigpt.co/download/desktop) Then log in: `bibi auth login` (opens browser for OAuth, saves token automatically). ### 2. Install Skill #### Claude Code ```bash npx skills add JimmyLv/bibigpt-skill ``` #### OpenClaw ```bash npx skills add JimmyLv/bibigpt-skill --agents OpenClaw --yes ``` #### DeepSeek Harness ```bash dsh plugin --profile web add "github:JimmyLv/bibigpt-skill#path:/dsh-plugin" ``` Restart the profile and `/bibi` shows up under **Skills**. Keep the quotes — `#` starts a shell comment. Source and the disk-copy alternative live in [`dsh-plugin/`](./dsh-plugin). Copying `skills/bibi` into `~/.agents/skills/bibi` also works (shared with Claude Code). #### WorkBuddy (Tencent) Download: [workbuddy.cn](https://www.workbuddy.cn/). Skills live in `~/.workbuddy/skills//SKILL.md`. ```bash npx skills add JimmyLv/bibigpt-skill -g -y ``` WorkBuddy custom skills need `agent_created: true` in the SKILL.md frontmatter (this repo includes it). Then `/reload-skills` or restart the app. Fallback: copy `skills/bibi` to `~/.workbuddy/skills/bibi`. Step-by-step: https://bibigpt.co/agent/workbuddy #### 豆包工作 / Doubao Work Download desktop: [doubao.com/download/desktop](https://www.doubao.com/download/desktop). Doubao Work does **not** publish a filesystem skill directory — do not invent `~/.doubao/skills`. In the desktop sidebar open **技能 · 连接器 · 伙伴**, create a skill named `bibi`, and paste [skills/bibi/SKILL.md](https://raw.githubusercontent.com/JimmyLv/bibigpt-skill/main/skills/bibi/SKILL.md). Step-by-step: https://bibigpt.co/agent/doubao #### 千问工作 / QwenWork App: [qwenwork.cn](https://qwenwork.cn/). Skill dir: `~/.qwenworkcn/skills/`. Paste this into QwenWork: ```text Please download https://github.com/JimmyLv/bibigpt-skill and copy skills/bibi to ~/.qwenworkcn/skills/bibi ``` QwenWork clones and loads the skill from chat. Docs: https://help.aliyun.com/zh/qwenwork/skills Step-by-step: https://bibigpt.co/agent/qwenwork ### 3. Usage Ask your agent to summarize any video, audio URL, or **local file**: ``` > Summarize this video: https://www.youtube.com/watch?v=xxxxx > Summarize this local file: /path/to/meeting-recording.mp4 ``` The agent will automatically detect the best mode and route to the right workflow. ### Commands | Command | Description | |---------|-------------| | `bibi summarize ""` | Summarize a video/audio URL | | `bibi summarize "/path/to/file.mp4"` | Summarize a local audio/video file | | `bibi summarize "" --async` | Async mode (long videos) | | `bibi summarize "" --chapter` | Chapter-by-chapter summary | | `bibi summarize "" --subtitle` | Fetch subtitles/transcript only | | `bibi summarize "" --json` | Full JSON output | | `bibi auth check` | Check auth status | | `bibi auth login` | OAuth login via browser (saves token automatically) | | `bibi check-update` | Check for new version | | `bibi upgrade` | Download and install latest version (alias: `self-update`) | --- ### Updating BibiGPT ships **three independently updateable layers**. Pick the one that matches what you want refreshed. | Layer | Updates | Command | When to run | |---|---|---|---| | **Skill content** (workflows, references, intent router) | npm-distributed, manual | `npx skills update JimmyLv/bibigpt-skill` | Weekly, or when changelog adds a new MCP tool / workflow | | **`bibi` desktop CLI** (binary + embedded SKILL.md + manifest dispatcher) | Self-update or package manager | `bibi upgrade` *(or `brew upgrade --cask bibigpt` / `winget upgrade BibiGPT`)* | When the changelog mentions CLI changes | | **Remote MCP server** (`https://bibigpt.co/api/mcp`) | Always latest, server-side | *automatic* — restart your MCP client to pick up new tools | Never manually; happens server-side | #### Update the skill ```bash npx skills update JimmyLv/bibigpt-skill ``` The skill **does not auto-update** — Agents read whatever was last fetched. Re-run when you want new BibiGPT capabilities, fixed workflows, or new MCP tools surfaced. For a clean reinstall: ```bash npx skills remove JimmyLv/bibigpt-skill && npx skills add JimmyLv/bibigpt-skill ``` The [GitHub Releases page](https://github.com/JimmyLv/bibigpt-skill/releases) tracks what each version changed. #### Update the bibi CLI ```bash bibi check-update # peek at the latest published version bibi upgrade # download and install (uses brew on macOS, installer on Windows) ``` Or via package manager: `brew upgrade --cask bibigpt` / `winget upgrade BibiGPT --source winget` / fresh download from [bibigpt.co/download/desktop](https://bibigpt.co/download/desktop). > **Manifest is hot-cached, not embedded.** Even without `bibi upgrade`, the CLI dispatcher fetches `https://bibigpt.co/api/cli-manifest.json` on first call (24h TTL) — newly-released agent procedures show up the next day. `bibi upgrade` only matters when the dispatcher itself or the embedded `SKILL.md` changes. #### Update the MCP server Nothing to do — the remote MCP endpoint always serves the latest `meta.mcp.enabled` tool list. **Restart your MCP client** (Claude Desktop, Cursor, etc.) if you don't see a newly-released tool — that refreshes its `tools/list` cache. > **Note**: The desktop app build is triggered via the `build-tauri-desktop-app` GitHub Actions workflow. After a successful build, artifacts are uploaded to OSS and the `latest.json` manifest is updated automatically — the client checks this manifest for update availability. --- ## Remote MCP Server (No Install Required) BibiGPT also provides a remote MCP server at `https://bibigpt.co/api/mcp` — works with any MCP-compatible client. Streamable HTTP transport with OAuth 2.1 authentication. ### Available Tools | Tool | Description | |------|-------------| | `summarize_video` | Summarize a video or podcast URL | | `summarize_video_with_config` | Summarize with custom prompt, model, language | | `summarize_by_chapter` | Chapter-by-chapter summary | | `get_subtitle` | Get transcript/subtitles with timestamps | | `create_summary_task` | Create async task for long videos | | `get_task_status` | Check async task status | ### Claude Code Add to `.mcp.json` in your project root: ```json { "mcpServers": { "bibigpt": { "type": "http", "url": "https://bibigpt.co/api/mcp" } } } ``` Or via CLI: ```bash claude mcp add --transport http bibigpt https://bibigpt.co/api/mcp ``` ### OpenAI Codex Edit `~/.codex/config.toml` (or `.codex/config.toml` in project root): ```toml [mcp_servers.bibigpt] url = "https://bibigpt.co/api/mcp" ``` With API key authentication: ```toml [mcp_servers.bibigpt] url = "https://bibigpt.co/api/mcp" bearer_token_env_var = "BIBIGPT_API_KEY" ``` ### Claude Desktop **Option A** — UI (recommended): Settings → Connectors → Add Connector → paste `https://bibigpt.co/api/mcp` **Option B** — Config file (`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS, `%APPDATA%\Claude\claude_desktop_config.json` on Windows): ```json { "mcpServers": { "bibigpt": { "command": "npx", "args": ["-y", "mcp-remote", "https://bibigpt.co/api/mcp"] } } } ``` ### Cursor Add to `.cursor/mcp.json` in project root, or configure in Cursor Settings → MCP: ```json { "mcpServers": { "bibigpt": { "url": "https://bibigpt.co/api/mcp", "type": "streamable-http" } } } ``` ### VS Code (GitHub Copilot) Add `.vscode/mcp.json` in your workspace: ```json { "servers": { "bibigpt": { "type": "http", "url": "https://bibigpt.co/api/mcp" } } } ``` ### Windsurf Add to `~/.codeium/windsurf/mcp_config.json`: ```json { "mcpServers": { "bibigpt": { "serverUrl": "https://bibigpt.co/api/mcp" } } } ``` ### ChatGPT 1. Settings → Apps & Connectors → Advanced settings → enable **Developer mode** 2. Settings → Apps & Connectors → **Create** connector 3. Enter URL: `https://bibigpt.co/api/mcp` 4. Complete OAuth authorization when prompted ### Manus Settings → Connectors → Add Connectors → Custom MCP → +Add Custom MCP: Enter server URL: `https://bibigpt.co/api/mcp` ### LobeChat Settings → Plugin Settings → Custom Plugins → Quick Import JSON: ```json { "type": "mcp:streamable-http", "url": "https://bibigpt.co/api/mcp", "metadata": { "title": "BibiGPT", "description": "AI Video & Audio Summarizer" } } ``` ### Direct API Key (Skip OAuth) If you have a BibiGPT API key, skip OAuth and use Bearer token directly: ```bash # List available tools (no auth needed for discovery) curl -X POST https://bibigpt.co/api/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' # Summarize a video (requires auth) curl -X POST https://bibigpt.co/api/mcp \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"summarize_video","arguments":{"url":"https://www.youtube.com/watch?v=xxxxx"}}}' ``` Get your API key at [bibigpt.co/user/integration](https://bibigpt.co/user/integration). ## License MIT