bama
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
Video summarizer agent skill for Claude Code, Codex, ChatGPT & OpenClaw — YouTube/Bilibili/podcast via BibiGPT CLI/MCP/API (bibi)
SkillsJavaScript · ShellGitHub @JimmyLvSelf-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Installable projects can be verified without a deployment domain. Use GitHub sign-in for a personal repository, or the repository verification file above for an organization repository.
Ask about other verification options
Loading the full README. The saved excerpt is shown below.
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. Multiple skills, one CLI (bibi), one account.
npx skills add JimmyLv/bibigpt-skill still installs bibi (existing onboarding). Add a sibling with --skill:
Agent landing: bibigpt.co/mcp. Hand-held per-host install pages: bibigpt.co/agent (ChatGPT, Claude Code, OpenClaw, WorkBuddy, Doubao Work, QwenWork, DeepSeek Harness).Read the full README ↗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. 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:
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. Hand-held per-host install pages: bibigpt.co/agent (ChatGPT, Claude Code, OpenClaw, WorkBuddy, Doubao Work, QwenWork, DeepSeek Harness).
Ways to use:
bibi CLI, works with Claude Code / OpenClaw / Codex / WorkBuddy / QwenWork / Doubao Work / DeepSeek Harnesshttps://bibigpt.co/api/mcpEvery plugin signs in with OAuth on first use — no API key to paste.
/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.
From the terminal:
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).
gemini extensions install https://github.com/JimmyLv/bibigpt-skill
Then run /mcp auth bibigpt once.
The repo is also a Cursor plugin (.cursor-plugin/plugin.json + .mcp.json) and an
Agent Plugins package (plugin.json + mcp.json) for GitHub Copilot.
Without a marketplace, add the MCP server directly:
{ "mcpServers": { "bibigpt": { "url": "https://bibigpt.co/api/mcp" } } }
The server is also in the official MCP Registry as io.github.JimmyLv/bibigpt.
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`
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).
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:
brew install --cask jimmylv/bibigpt/bibigpt (Homebrew tap)winget install BibiGPT --source winget or download from bibigpt.co/download/desktop.deb / .AppImage from bibigpt.co/download/desktopThen log in: bibi auth login (opens browser for OAuth, saves token automatically).
npx skills add JimmyLv/bibigpt-skill
npx skills add JimmyLv/bibigpt-skill --agents OpenClaw --yes
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/. Copying skills/bibi into ~/.agents/skills/bibi
also works (shared with Claude Code).
Download: workbuddy.cn. Skills live in
~/.workbuddy/skills/<name>/SKILL.md.
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
Download desktop: 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.
Step-by-step: https://bibigpt.co/agent/doubao
App: qwenwork.cn. Skill dir: ~/.qwenworkcn/skills/.
Paste this into QwenWork:
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
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.
| Command | Description |
|---|---|
bibi summarize "<URL>" | Summarize a video/audio URL |
bibi summarize "/path/to/file.mp4" | Summarize a local audio/video file |
bibi summarize "<INPUT>" --async | Async mode (long videos) |
bibi summarize "<INPUT>" --chapter | Chapter-by-chapter summary |
bibi summarize "<INPUT>" --subtitle | Fetch subtitles/transcript only |
bibi summarize "<INPUT>" --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) |
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 |
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:
npx skills remove JimmyLv/bibigpt-skill && npx skills add JimmyLv/bibigpt-skill
The GitHub Releases page tracks what each version changed.
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.
Manifest is hot-cached, not embedded. Even without
bibi upgrade, the CLI dispatcher fetcheshttps://bibigpt.co/api/cli-manifest.jsonon first call (24h TTL) — newly-released agent procedures show up the next day.bibi upgradeonly matters when the dispatcher itself or the embeddedSKILL.mdchanges.
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-appGitHub Actions workflow. After a successful build, artifacts are uploaded to OSS and thelatest.jsonmanifest is updated automatically — the client checks this manifest for update availability.
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.
| 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 |
Add to .mcp.json in your project root:
{
"mcpServers": {
"bibigpt": {
"type": "http",
"url": "https://bibigpt.co/api/mcp"
}
}
}
Or via CLI:
claude mcp add --transport http bibigpt https://bibigpt.co/api/mcp
Edit ~/.codex/config.toml (or .codex/config.toml in project root):
[mcp_servers.bibigpt]
url = "https://bibigpt.co/api/mcp"
With API key authentication:
[mcp_servers.bibigpt]
url = "https://bibigpt.co/api/mcp"
bearer_token_env_var = "BIBIGPT_API_KEY"
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):
{
"mcpServers": {
"bibigpt": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://bibigpt.co/api/mcp"]
}
}
}
Add to .cursor/mcp.json in project root, or configure in Cursor Settings → MCP:
{
"mcpServers": {
"bibigpt": {
"url": "https://bibigpt.co/api/mcp",
"type": "streamable-http"
}
}
}
Add .vscode/mcp.json in your workspace:
{
"servers": {
"bibigpt": {
"type": "http",
"url": "https://bibigpt.co/api/mcp"
}
}
}
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"bibigpt": {
"serverUrl": "https://bibigpt.co/api/mcp"
}
}
}
https://bibigpt.co/api/mcpSettings → Connectors → Add Connectors → Custom MCP → +Add Custom MCP:
Enter server URL: https://bibigpt.co/api/mcp
Settings → Plugin Settings → Custom Plugins → Quick Import JSON:
{
"type": "mcp:streamable-http",
"url": "https://bibigpt.co/api/mcp",
"metadata": {
"title": "BibiGPT",
"description": "AI Video & Audio Summarizer"
}
}
If you have a BibiGPT API key, skip OAuth and use Bearer token directly:
# 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.
MIT