76 lines
2.3 KiB
Markdown
76 lines
2.3 KiB
Markdown
# CLAUDE.md
|
|
|
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
|
|
## Project Overview
|
|
|
|
This is a collection of Python scripts for a WeChat (微信) bot that integrates with OpenAI-compatible APIs for AI-powered conversations with tool calling capabilities.
|
|
|
|
## Architecture
|
|
|
|
The codebase contains two main categories of scripts:
|
|
|
|
### 1. Chat Bot Scripts (f25904664.py, f25904704.py, f25912200.py, f25919488.py, f25919528.py, f25922064.py)
|
|
- `send_message` class manages conversation state and OpenAI API calls
|
|
- Uses OpenAI-compatible API at `https://token-plan-cn.xiaomimimo.com/v1` with model `mimo-v2.5-pro`
|
|
- Implements tool calling for: weather queries (`tianqi`), web search (`sousuo`)
|
|
- External modules: `weixin_bot`, `get_tianqi`, `cha_xianglaing`, `weixin`
|
|
|
|
### 2. Image Upload Scripts (f25912304.py, f25919896.py, f25920056.py)
|
|
- Handles WeChat image sending via `WeixinBot`
|
|
- AES-ECB encryption for file uploads
|
|
- Upload flow: prepare → encrypt → get upload URL → upload to WeChat servers
|
|
- Uses `ilinkai.weixin.qq.com` API endpoints
|
|
|
|
### 3. Video Export Module (video_cutter.py)
|
|
- Exports video clips based on image timestamps
|
|
- Supports multiple modes: around/after/before/total
|
|
- Uses ffmpeg for fast video cutting (no re-encoding)
|
|
- Saves exported videos to `./export_videos/` directory
|
|
|
|
## Dependencies
|
|
|
|
```bash
|
|
pip install openai httpx pycryptodome prompt_toolkit requests
|
|
```
|
|
|
|
### System Dependencies (for video export)
|
|
|
|
```bash
|
|
# Ubuntu/Debian
|
|
sudo apt install ffmpeg
|
|
|
|
# macOS
|
|
brew install ffmpeg
|
|
```
|
|
|
|
## Key External Modules (not in repo)
|
|
|
|
- `weixin_bot` - WeChat bot framework (provides `WeixinBot` class)
|
|
- `get_tianqi` - Weather data retrieval (`get_tianqi_data`)
|
|
- `cha_xianglaing` - Web search functionality (`search1`)
|
|
- `weixin` - WeChat utilities (`weix`)
|
|
|
|
## Running
|
|
|
|
Scripts are standalone and can be run directly:
|
|
```bash
|
|
python f25904664.py
|
|
```
|
|
|
|
### Testing Video Export
|
|
|
|
```bash
|
|
# Test video cutter module
|
|
python video_cutter.py
|
|
|
|
# Run full test suite
|
|
python test_video_export.py
|
|
```
|
|
|
|
## Code Notes
|
|
|
|
- All comments and UI strings are in Chinese
|
|
- Files appear to be versioned snapshots with numeric suffixes (likely from a code review or commit system)
|
|
- API keys in code are for the Xiaomi Mimo API proxy, not direct OpenAI
|