Skip to content
 
 

Repository files navigation

VidkNot

VidkNot turns video links into structured knowledge notes. It downloads audio, transcribes speech, generates Markdown notes, and saves them to Obsidian, Feishu, Notion, Yuque, or AnythingLLM.

GitHub Release License

| English | 中文 |

Use Cases

  • Convert courses, interviews, podcasts, and industry videos into searchable notes
  • Save useful short-video content into a personal knowledge base
  • Expose video-to-note capability to agents through MCP
  • Reduce transcription mistakes with dual-ASR cross-validation

Capabilities

Capability Description
Video parsing and download Supports Douyin, Bilibili, YouTube, and other yt-dlp-compatible platforms
Dual-ASR transcription SiliconFlow SenseVoice + local faster-whisper correction, enabled by default
Structured notes Generates topic, summary, key points, details, quotes, terms, and full transcript
Storage targets Obsidian, Feishu, Notion, Yuque, AnythingLLM, or Markdown-only output
Agent integration CLI, FastAPI, MCP, and Python API

Installation

VidkNot is managed through the uv ecosystem. If you don't have uv yet, install it first (see the uv docs):

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
winget install astral-sh.uv
# or via pip
pip install uv

The current GitHub release is v0.3.2. Install this repository version from GitHub:

uv tool install "vidknot @ git+https://github.com/suonian/vidknot.git@v0.3.2"

For Feishu support:

uv tool install "vidknot[feishu] @ git+https://github.com/suonian/vidknot.git@v0.3.2"

Run it without installing:

uvx "vidknot @ git+https://github.com/suonian/vidknot.git@v0.3.2" --help

For development:

git clone https://github.com/suonian/vidknot.git
cd vidknot
uv sync

This creates a .venv from uv.lock with the dev tools (pytest, ruff) included. Run commands with uv run or activate the environment:

uv run vidknot "URL" --destinations none

FFmpeg must be available locally:

ffmpeg -version

Configuration

Copy .env.example to .env and configure the keys you need:

SILICONFLOW_API_KEY=your_siliconflow_api_key
OPENAI_API_KEY=your_openai_compatible_api_key

# Optional: Feishu
FEISHU_APP_ID=your_feishu_app_id
FEISHU_APP_SECRET=your_feishu_app_secret
FEISHU_FOLDER_TOKEN=your_feishu_folder_token

# Optional: Obsidian
OBSIDIAN_VAULT_PATH=/path/to/obsidian/vault

# Optional: Notion
NOTION_TOKEN=your_notion_token
NOTION_PAGE_ID=your_notion_page_id

# Optional: Yuque
YUQUE_TOKEN=your_yuque_token
YUQUE_LOGIN=your_yuque_login

# Optional: Douyin cookie file
VIDKNOT_DOUYIN_COOKIE_FILE=/path/to/douyin-cookies.txt

Default settings live in config.yaml. Dual-ASR correction is enabled by default:

settings:
  enable_correction: true
  correction_version: v4
faster_whisper:
  model: small
  device: cpu
  compute_type: int8

v4 is the conservative default. v3 makes broader corrections and carries a higher risk of changing valid text.

Usage

CLI:

# Generate a note and save to the default destination, Obsidian
vidknot "https://v.douyin.com/example/"

# Print output only
vidknot "https://v.douyin.com/example/" --destinations none

# Save to Feishu
vidknot "https://v.douyin.com/example/" --destinations feishu

# Save to multiple destinations, comma-separated
vidknot "https://v.douyin.com/example/" --destinations obsidian,anythingllm

# Disable dual-ASR correction
vidknot "https://v.douyin.com/example/" --no-correct

# Check local requirements
vidknot --check-env

In a development checkout, prefix these with uv run (e.g. uv run vidknot --check-env).

MCP:

vidknot --mcp

FastAPI:

uv run uvicorn vidknot.api:app --reload

Python API:

from vidknot import VideoKnowledgePipeline

pipeline = VideoKnowledgePipeline(destinations="none")
result = pipeline.run("https://v.douyin.com/example/")

print(result["markdown"])

Output

VidkNot writes Markdown notes with:

  • Video title, source URL, and processing metadata
  • Topic and summary
  • Structured key points and details
  • Important quotes
  • Terms and explanations
  • Timestamped transcript

Documentation

Document Purpose
INSTALL.md Local installation and environment checks
API_GUIDE.md Third-party API configuration
COOKIE_GUIDE.md Cookie setup and security
DEPENDENCIES.md Direct dependencies
CHANGELOG.md Version history

Security And Compliance

  • Do not commit .env, cookie files, or API keys
  • Only process video content you are allowed to access and use
  • Follow the terms of video platforms, cloud services, and note platforms
  • Third-party service availability, pricing, and permissions are controlled by their providers

License

MIT

About

VidkNot Video Knowledge, Knotted. Convert video links to structured notes, supports Feishu, Yuque, Notion, Obsidian. | 一键将视频链接转换为结构化笔记, 支持飞书、语雀、Notion、Obsidian 等多平台存储.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages