JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 36
  • Score
    100M100P100Q83455F
  • License MIT

Multi-channel Obsidian clipping and video transcription CLI (WeChat/YouTube/Douyin).

Package Exports

  • cat-crawl
  • cat-crawl/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (cat-crawl) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

cat-crawl (CLI)

cat-crawl is a CLI that crawls web/video content and saves clean Markdown notes into Obsidian.

What It Supports

  • Web article clipping: WeChat, Huxiu, generic article pages
  • Video transcription: YouTube, Douyin, local video files
  • Channels: CLI, Feishu, Telegram, Discord
  • AI providers: DeepSeek, Gemini, Vertex (ADC/OAuth)

Prerequisites

  • Node.js >= 22
  • Obsidian CLI installed (obsidian command)
  • For video transcription:
    • ffmpeg
    • yt-dlp (for YouTube)
    • whisper-cli + local whisper.cpp model file

Install

npm install -g cat-crawl

Basic Commands

# Start channel listeners
cat-crawl obsidian start --telegram
cat-crawl obsidian start --all-channels

# Run one-shot from CLI input/url
cat-crawl obsidian run "https://mp.weixin.qq.com/s/xxxx"
cat-crawl obsidian run "https://www.youtube.com/watch?v=xxxx"

# Configure channel / agent
cat-crawl obsidian config set channel telegram
cat-crawl obsidian config set agent gemini
cat-crawl obsidian config set agent vertex

# Telegram pairing approval
cat-crawl obsidian pairing approve telegram <code>

Config File

Config is stored in:

~/.cat-crawl/config.json

Recommended nested format:

{
  "agent": {
    "provider": "gemini",
    "gemini": {
      "apiKey": "<GEMINI_API_KEY>",
      "model": "gemini-3.1-flash-lite-preview"
    }
  },
  "transcription": {
    "provider": "whisper_cpp",
    "whisperCpp": {
      "bin": "whisper-cli",
      "modelPath": "/absolute/path/to/model.bin"
    }
  },
  "obsidian": {
    "vault": "知识库",
    "folder": "Clippings",
    "dynamicFolders": ["AI", "OPC", "English"]
  }
}

Vertex Notes

vertex uses ADC/OAuth (not API-key-only auth for Vertex endpoint):

gcloud auth application-default login
gcloud config set project <YOUR_PROJECT_ID>

Then set agent to vertex:

cat-crawl obsidian config set agent vertex

Source Repo

https://github.com/wfnking/cat-crawl