109 lines
3.1 KiB
Markdown
109 lines
3.1 KiB
Markdown
# 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*
|