3.1 KiB
3.1 KiB
Technology Stack
Analysis Date: 2026-03-13
Languages
Primary:
- Python 3.12 - 主要用于 kb-* 技能模块(内容采集、语音识别、AI分析等)
- JavaScript/Node.js >=16.7.0 - 用于 gsd (Get-Shit-Done) 元提示系统
Secondary:
- Shell/Bash - 用于部署脚本和工具链(ffmpeg, yt-dlp)
Runtime
Environment:
- Python 3.12.3
- Node.js v22.22.0
Package Manager:
- pip/uv (Python) - gsd-openclaw 使用 uv.lock
- npm (Node.js) - gsd 使用 npm
Lockfile:
uv.lock(gsd-openclaw)package-lock.json(gsd)
Frameworks
Core:
- 无传统 Web 框架 - 这是一个 CLI 技能集合,非 Web 应用
Testing:
- pytest >=7.0.0 - Python 单元测试 (gsd-openclaw)
- Node.js 内置测试 - gsd 使用自定义
scripts/run-tests.cjs
Build/Dev:
- esbuild ^0.24.0 - gsd hooks 构建
- c8 ^11.0.0 - 测试覆盖率工具
Key Dependencies
Python 核心依赖:
requests- HTTP 客户端,用于 AI API 调用httpx- 异步 HTTP 客户端(Bilibili 元数据提取)playwright/undetected_playwright- 浏览器自动化(反爬虫)easyocr>=1.7.0- OCR 文字识别pytesseract>=0.3.10- Tesseract OCR 接口Pillow>=9.0.0- 图像处理torch>=2.0.0- PyTorch 深度学习框架pyannote.audio>=1.0.0- 说话者分离funasr/modelscope- 阿里 FunASR 语音识别libtmux>=0.55.0- tmux 会话管理 (gsd-openclaw)
Node.js 核心依赖:
- 无外部运行时依赖 - gsd 是纯 CommonJS 工具集
Configuration
环境变量配置:
- 配置文件:
~/.kb_env- 知识库专用环境变量 .env.example- 各技能目录下提供示例配置
关键配置文件:
pyproject.toml- gsd-openclaw 项目配置requirements.txt- Python 技能依赖声明package.json- gsd Node.js 项目配置
构建配置:
scripts/build-hooks.js- gsd hooks 构建tool.setuptools- gsd-openclaw 打包配置
Platform Requirements
Development:
- ffmpeg - 音视频格式转换
- yt-dlp - 视频下载工具
- whisper.cpp - 本地语音识别(或 GPU 版 PyTorch)
- tesseract - OCR 引擎(可选)
- tmux - 会话管理
Production:
- 自托管 Gitea Actions runner
- 部署目标:
~/.openclaw/skills/目录 - rsync 同步部署
Project Structure
Monorepo 结构:
kb-skills/
├── gsd/ # Get-Shit-Done 元提示系统 (Node.js)
├── gsd-openclaw/ # GSD-OpenClaw 桥接技能 (Python)
├── kb-workflow/ # 知识库工作流编排入口
├── kb-link-parser/ # 多平台 URL 解析
├── kb-bilibili-*/ # B站内容采集技能
├── kb-zhihu-*/ # 知乎内容采集技能
├── kb-whisper/ # Whisper 语音识别
├── kb-whisper-diarization/ # 说话者分离
├── kb-funasr/ # 阿里 FunASR 语音识别
├── kb-ocr-processor/ # OCR 文字提取
├── kb-deep-analyzer/ # AI 深度内容分析
└── todo-manager/ # 待办管理技能
Stack analysis: 2026-03-13