Files
ai-chat-app/PROJECTS.md

451 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# PROJECTS.md - 项目开发记录
> 本文件记录所有开发过的项目,包含简介、启动命令、检查方式。每次开发或修改项目后更新此文件。
---
## 项目列表
| # | 项目名称 | 类型 | 端口 | 状态 | 最后更新 |
|---|---------|------|------|------|---------|
| 1 | PDF翻译助手 V2 | Web | 19000 | ✅ 运行中 | 2026-04-09 |
| 2 | LLM Index RAG | Web | 19001 | ✅ 运行中 | 2026-04-09 |
| 3 | 产品参数爬取系统 | Web | 19011/19012 | ✅ 运行中 | 2026-04-10 |
| 4 | 碎片信息记录 | Web | 19009 | ✅ 运行中 | 2026-04-09 |
| 5 | ParamHub Python版 | Web | 19010 | ✅ 运行中 | 2026-04-09 |
| 6 | LLM Proxy | Web | 19007/19008 | ✅ 运行中 | 2026-04-10 |
| 7 | 网页助手插件 | Extension | - | 📦 已完成 | 2026-04-08 |
| 8 | A股历史数据系统 | CLI | - | 🔄 优化中 | 2026-04-09 |
| 9 | Web服务监控 | Cron | - | ✅ 运行中 | 2026-04-10 |
---
## 项目详情
### 1. PDF翻译助手 V2 (pdf-translate-web-v2)
**简介**: 英文PDF翻译中文网站支持用户系统、会员体系、数据包购买、后台动态配置。
**目录**: `works/pdf-translate-web-v2`
**启动命令**:
```bash
cd ~/.openclaw/workspace-coder/works/pdf-translate-web-v2
python3 app.py
```
**访问地址**: http://localhost:19000
**后台管理**: http://localhost:19000/admin (账号: admin / admin123)
**检查服务状态**:
```bash
curl -s http://localhost:19000/api/health || echo "服务未启动"
```
**依赖**:
- Python 3 + Flask
- SQLite (自动创建)
- 本地LLM服务 (http://192.168.2.5:1234/v1)
---
### 2. LLM Index RAG (llm-index-rag)
**简介**: 基于索引和搜索的知识检索系统不依赖向量模型使用BM25排序和LLM增强索引。
**目录**: `works/llm-index-rag`
**启动命令**:
```bash
cd ~/.openclaw/workspace-coder/works/llm-index-rag
python3 app.py
```
**访问地址**: http://localhost:19001
**系统设置**: http://localhost:19001/settings
**检查服务状态**:
```bash
curl -s http://localhost:19001/api/stats
```
**Git仓库**: http://192.168.2.8:12007/coder/llm-index-rag
**版本**: v1.1.2
**依赖**:
- Python 3 + Flask
- SQLite (自动创建)
- 本地LLM服务 (配置中设置)
---
### 3. 产品参数爬取系统 (product-crawler)
**简介**: 自动从官方网站爬取产品参数信息,支持多步骤爬取流程(入口页→列表页→详情页)。
**目录**: `/home/xian/.openclaw/common/projects/product-crawler`
**启动命令**:
```bash
# API服务
cd ~/.openclaw/workspace-coder/works/product-crawler
python3 app.py
# 后台管理
cd ~/.openclaw/workspace-coder/works/product-crawler/admin
python3 app.py
```
**访问地址**:
- API服务: http://localhost:19011
- 后台管理: http://localhost:19012
**检查服务状态**:
```bash
curl -s http://localhost:19011/api/products
```
**功能特点**:
- 多步骤爬取流程配置
- 浏览器爬虫Playwright处理JS渲染
- 静态爬虫requests + BeautifulSoup
- 数据存储和导出
**依赖**:
- Python 3 + Flask + Playwright + BeautifulSoup
---
### 4. 碎片信息记录 (snippet-notes)
**简介**: 简洁的碎片信息记录工具支持实时保存、AI自动生成标题、搜索、置顶、导出Markdown。
**目录**: `works/snippet-notes`
**启动命令**:
```bash
cd ~/.openclaw/workspace-coder/works/snippet-notes
python3 app.py
```
**访问地址**: http://localhost:19009
**检查服务状态**:
```bash
curl -s http://localhost:19009/api/notes || echo "服务未启动"
```
**依赖**:
- Python 3 + Flask
- 本地文件存储 (JSON)
- 本地LLM API (生成标题)
---
### 4. ParamHub Python版 (param-hub-python)
**简介**: AI大模型与硬件参数速查平台支持模型/GPU/CPU数据库、动态分类、对比工具、显存计算器。
**目录**: `works/param-hub-python`
**启动命令**:
```bash
cd ~/.openclaw/workspace-coder/works/param-hub-python
python3 app.py
```
**访问地址**: http://localhost:19010
**后台管理**: http://localhost:19010/admin
**检查服务状态**:
```bash
curl -s http://localhost:19010/api/stats
curl -s http://localhost:19010/api/categories
```
**Git仓库**: http://192.168.2.8:12007/coder/param-hub-python
**版本**: v0.3.1
**依赖**:
- Python 3 + Flask
- Tailwind CSS (CDN)
- JSON文件存储
---
### 5. 网页助手插件 (web-context-extension)
**简介**: 浏览器扩展插件右键菜单支持收藏网页、AI总结、深度研究分析。
**目录**: `works/web-context-extension`
**安装方法**:
1. Chrome浏览器打开 `chrome://extensions/`
2. 开启"开发者模式"
3. 点击"加载已解压的扩展程序"
4. 选择 `works/web-context-extension` 目录
**配置**: 需在插件设置中配置OpenClaw API地址
**依赖**:
- Chrome/Edge浏览器
- OpenClaw服务
---
### 6. LLM Proxy (llm-proxy)
**简介**: 大模型API中转系统兼容OpenAI API格式支持多上游提供商优先级调度、请求统计。
**目录**: `/home/xian/.openclaw/common/projects/llm-proxy`
**启动命令**:
```bash
# API服务
cd ~/.openclaw/common/projects/llm-proxy
python3 app.py
# 后台管理
cd ~/.openclaw/common/projects/llm-proxy/admin
python3 app.py
```
**访问地址**:
- API服务: http://localhost:19007
- 后台管理: http://localhost:19008
**检查服务状态**:
```bash
curl -s http://localhost:19007/health
curl -s http://localhost:19008/api/stats
```
**Git仓库**: http://192.168.2.8:12007/coder/llm-proxy
**版本**: v0.5.0
**功能特点**:
- OpenAI API兼容格式
- 多上游提供商优先级调度
- 自动重试和故障切换
- 请求统计(次数、成功/失败、token数
- 模型别名和auto配置
- 后台管理界面
**API使用示例**:
```bash
# curl
curl -X POST http://localhost:19007/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{"model": "auto", "messages": [{"role": "user", "content": "你好"}]}'
# Python OpenAI SDK
from openai import OpenAI
client = OpenAI(base_url='http://localhost:19007/v1', api_key='any')
response = client.chat.completions.create(model='auto', messages=[{'role': 'user', 'content': '你好'}])
print(response.choices[0].message.content)
```
**依赖**:
- Python 3 + Flask + Flask-CORS
---
### 7. PDF翻译助手 V1 (pdf-translate-web)
**简介**: 英文PDF翻译中文网站第一版支持翻译、缓存、用户系统。
**目录**: `works/pdf-translate-web`
**状态**: 已废弃,推荐使用 V2 版本
---
### 8. PDF翻译脚本 (pdf-translator)
**简介**: 基于本地LLM的英文PDF翻译命令行工具支持Markdown/TXT/JSON输出。
**目录**: `works/pdf-translator`
**使用命令**:
```bash
cd ~/.openclaw/workspace-coder/works/pdf-translator
python3 translate_pdf.py input.pdf output.md
```
**依赖**:
- Python 3
- 本地LLM服务 (http://192.168.2.5:1234/v1)
---
### 9. A股历史数据系统 (stock_system)
**简介**: 获取所有A股从2010年至今的历史行情数据支持断点续传。V2版本优化了CPU和磁盘占用。
**目录**: `/home/xian/.openclaw/common/stock_system`
**启动命令**:
```bash
cd /home/xian/.openclaw/common/stock_system
bash run_v2.sh
# 或直接运行
python3 fetch_history_v2.py
```
**V2优化点**:
- 分文件存储每只股票存独立小文件避免每次读写203MB大文件
- 批量合并每50只股票合并一次到主文件
- SQLite进度库更可靠的断点续传机制
- 请求间隔减少从5秒降到0.3秒,用轻量存储补偿
**检查进度**:
```bash
# 查看SQLite进度统计
sqlite3 /home/xian/.openclaw/common/stock_system/data/progress.db \
"SELECT status, COUNT(*) FROM progress GROUP BY status"
# 查看数据文件大小
ls -lh /home/xian/.openclaw/common/stock_system/data/stock_daily_data.parquet
```
**配置**:
- Tushare Token: 放入 `config.txt` 文件
- 股票列表: `A股股票列表.csv`
**依赖**:
- Python 3 + tushare + pandas
- Tushare API Token
---
### 10. Web服务监控 (service-monitor)
**简介**: 自动监控所有Web服务状态每20分钟检查一次如有服务停止则发送邮件通知。
**目录**: `works/service-monitor`
**监控服务**:
- PDF翻译助手 V2 (19000)
- LLM Index RAG (19001)
- 碎片信息记录 (19009)
- ParamHub Python (19010)
- 产品参数爬取 API (19011)
- 产品参数爬取 后台 (19012)
- LLM Proxy API (19007)
- LLM Proxy 后台 (19008)
**运行方式**: Cron定时任务每20分钟执行
**通知邮箱**: zuitoushang@tphai.com
**手动检查**:
```bash
python3 ~/.openclaw/workspace-coder/works/service-monitor/monitor.py
```
**查看日志**:
```bash
cat ~/.openclaw/workspace-coder/works/service-monitor/monitor.log
```
**Cron配置**:
```
*/20 * * * * /usr/bin/python3 /home/xian/.openclaw/workspace-coder/works/service-monitor/monitor.py >> /home/xian/.openclaw/workspace-coder/works/service-monitor/monitor.log 2>&1
```
**Git仓库**: http://192.168.2.8:12007/coder/service-monitor
**版本**: v1.0.0
**依赖**:
- Python 3 + urllib
- 邮件发送技能 (email-sender)
---
## 端口分配表
| 端口 | 项目 | 说明 |
|------|------|------|
| 19000 | PDF翻译助手 V2 | 主服务 + 后台 |
| 19001 | LLM Index RAG | API服务 |
| 19009 | 碎片信息记录 | Web服务 |
| 19010 | ParamHub Python | Web服务 |
| 19002-19008 | 预留 | 待分配 |
| 19011-19100 | 预留 | 待分配 |
**端口规范**: 所有Web服务必须使用 19000-19100 范围内的端口!
---
## Git仓库索引
| 项目 | 仓库地址 | 版本 |
|------|---------|------|
| ParamHub Node | http://192.168.2.8:12007/coder/param-hub | v0.2.0 |
| ParamHub Python | http://192.168.2.8:12007/coder/param-hub-python | v0.3.1 |
| LLM Index RAG | http://192.168.2.8:12007/coder/llm-index-rag | v1.2.0 |
| LLM Proxy | http://192.168.2.8:12007/coder/llm-proxy | v0.5.1 |
| 产品参数爬取系统 | http://192.168.2.8:12007/coder/product-crawler | v1.0.0 |
| 网页助手插件 | http://192.168.2.8:12007/coder/web-context-extension | v0.1.0 |
| A股历史数据系统 | http://192.168.2.8:12007/coder/stock_system | v0.2.0 |
| Web服务监控 | http://192.168.2.8:12007/coder/service-monitor | v1.0.0 |
**Git服务器**: http://192.168.2.8:12007/
**账号**: coder / Hps123@!
---
## 快速操作命令
### 查看所有服务状态
```bash
for port in 19000 19001 19009 19010; do
echo "端口 $port:"
curl -s http://localhost:$port --max-time 1 > /dev/null && echo " ✅ 运行中" || echo " ❌ 未启动"
done
```
### 启动所有Web服务
```bash
# PDF翻译助手 V2
cd ~/.openclaw/workspace-coder/works/pdf-translate-web-v2 && nohup python3 app.py > /tmp/pdf-v2.log 2>&1 &
# 碎片信息记录
cd ~/.openclaw/workspace-coder/works/snippet-notes && nohup python3 app.py > /tmp/snippet.log 2>&1 &
# ParamHub Python
cd ~/.openclaw/workspace-coder/works/param-hub-python && nohup python3 app.py > /tmp/paramhub.log 2>&1 &
```
### 停止所有Web服务
```bash
pkill -f "app.py.*port=19000"
pkill -f "app.py.*port=19009"
pkill -f "app.py.*port=19010"
```
---
## 更新日志
### 2026-04-10
- 创建 Web服务监控系统
- 配置 Cron 定时任务每20分钟检查
- 邮件通知功能(发送到 zuitoushang@tphai.com
### 2026-04-09
- 创建 PROJECTS.md 项目记录文件
- 记录现有8个项目详情
- 整理端口分配表和快速操作命令
- 优化 stock_system 获取脚本 V2分文件+批量合并+SQLite
### 待办
- [ ] 为每个项目创建 Git 仓库和版本 tag
- [ ] 配置 systemd 服务实现开机自启动