一个强大的团队社交动态监控和AI总结系统,支持LinkedIn、GitHub等平台的实时监控和智能报告生成。
- 多平台监控: 支持LinkedIn、GitHub等主流社交平台
- 实时更新: 自动监控团队成员的最新动态
- AI智能总结: 使用OpenAI GPT生成每日/每周活动总结
- 可视化界面: 现代化的React前端界面
- 数据统计: 详细的成员活动和监控统计
- 模块化架构: 易于扩展和维护的监控器系统
- RESTful API: 完整的后端API接口
- 实时调度: 支持定时监控和报告生成
- 数据持久化: SQLite/PostgreSQL数据库支持
- 容器化部署: Docker和Docker Compose支持
graph TB
subgraph "前端 (React + TypeScript)"
UI[用户界面]
API[API客户端]
end
subgraph "后端 (FastAPI + Python)"
WebAPI[Web API]
MonitorMgr[监控管理器]
LLM[AI总结器]
DB[(数据库)]
end
subgraph "监控服务"
LinkedIn[LinkedIn监控器]
GitHub[GitHub监控器]
end
subgraph "外部服务"
OpenAI[OpenAI API]
LinkedInAPI[LinkedIn]
GitHubAPI[GitHub API]
end
UI --> API
API --> WebAPI
WebAPI --> MonitorMgr
WebAPI --> LLM
MonitorMgr --> LinkedIn
MonitorMgr --> GitHub
LinkedIn --> LinkedInAPI
GitHub --> GitHubAPI
LLM --> OpenAI
MonitorMgr --> DB
LLM --> DB
WebAPI --> DB
- Python 3.12+
- Node.js 18+
- uv (Python包管理器)
- npm 或 yarn
git clone <repository-url>
cd Inspector
# 复制环境配置模板
cp config/env.example .env
# 编辑配置文件
nano .env
必需的环境变量:
# OpenAI API配置
OPENAI_API_KEY=your-openai-api-key-here
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-3.5-turbo
# GitHub API配置 (可选)
GITHUB_TOKEN=your-github-personal-access-token
# 数据库配置
DATABASE_URL=sqlite:///./inspector.db
# 邮件通知配置 (可选)
EMAIL_RECIPIENTS=[email protected],[email protected]
# 安装Python依赖
uv sync
# 安装前端依赖
cd frontend
npm install
cd ..
# 方式1: 使用启动脚本
chmod +x start-all.sh
./start-all.sh
# 方式2: 手动启动
# 终端1 - 启动后端
uv run python main.py
# 终端2 - 启动前端
cd frontend && npm start
- 前端界面: http://localhost:3000
- API文档: http://localhost:8000/docs
- 健康检查: http://localhost:8000/health
# 验证所有配置
uv run python tests/validate_config.py
# 跳过外部服务测试 (OpenAI, GitHub)
uv run python tests/validate_config.py --skip-external
# 跳过API端点测试 (后端未启动时)
uv run python tests/validate_config.py --skip-api
# 跳过外部服务和API端点测试
uv run python tests/validate_config.py --skip-external --skip-api
# 测试AI配置
uv run python tests/test_openai_config.py
# 测试阿里云通义千问配置
uv run python tests/test_aliyun_openai.py
# 测试GitHub配置
uv run python tests/test_github_token.py
- 访问 http://localhost:3000/members
- 点击"添加成员"按钮
- 填写成员信息(姓名、邮箱、职位)
- 保存成员信息
- 在成员列表中找到目标成员
- 点击"添加社交配置"
- 选择平台(GitHub/LinkedIn)
- 输入个人主页URL和用户名
- 保存配置
- 访问 http://localhost:3000
- 点击"运行监控"按钮
- 系统将自动抓取所有配置的社交动态
- 查看实时更新的活动列表
- 在仪表板页面点击"生成每日总结"
- 系统将使用OpenAI分析最近的活动
- 查看生成的智能总结报告
系统支持多种AI平台,可以通过配置不同的base URL来使用不同的模型服务。
OPENAI_API_KEY=sk-your-openai-api-key
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-3.5-turbo
OPENAI_API_KEY=your-azure-api-key
OPENAI_BASE_URL=https://your-resource.openai.azure.com/openai/deployments/your-deployment
OPENAI_MODEL=gpt-35-turbo
OPENAI_API_KEY=your-api-key
OPENAI_BASE_URL=https://api.your-platform.com/v1
OPENAI_MODEL=gpt-3.5-turbo
运行以下命令测试AI配置是否正确:
uv run python test_openai_config.py
详细配置示例: 查看 AI平台配置示例 文档
参考 GitHub配置指南 创建Personal Access Token
参考 阿里云配置指南 配置AI总结服务
# 获取所有成员
GET /api/v1/members/
# 创建新成员
POST /api/v1/members/
{
"name": "张三",
"email": "[email protected]",
"position": "软件工程师"
}
# 添加社交配置
POST /api/v1/members/{member_id}/social-profiles/
{
"platform": "github",
"profile_url": "https://github.com/username",
"username": "username"
}
# 获取监控统计
GET /api/v1/monitoring/stats
# 运行监控
POST /api/v1/monitoring/run-monitoring
# 获取活动列表
GET /api/v1/monitoring/activities
# 生成每日总结
POST /api/v1/monitoring/generate-daily-summary
# 构建并启动所有服务
docker-compose up -d
# 查看服务状态
docker-compose ps
# 查看日志
docker-compose logs -f inspector
# 构建镜像
docker build -t inspector .
# 运行容器
docker run -d \
--name inspector \
-p 8000:8000 \
--env-file .env \
inspector
Inspector/
├── app/ # 后端应用
│ ├── api/v1/ # API路由
│ │ ├── members.py # 成员管理API
│ │ └── monitoring.py # 监控管理API
│ ├── core/ # 核心配置
│ │ ├── config/ # 配置管理
│ │ └── database/ # 数据库配置
│ ├── models/ # 数据模型
│ │ ├── member.py # 成员模型
│ │ └── schemas.py # Pydantic模式
│ └── services/ # 业务服务
│ ├── monitors/ # 监控器
│ │ ├── base_monitor.py # 基础监控器
│ │ ├── linkedin_monitor.py
│ │ ├── github_monitor.py
│ │ └── monitor_manager.py
│ └── summarizers/ # 总结器
│ └── llm_summarizer.py
├── frontend/ # 前端应用
│ ├── src/
│ │ ├── components/ # React组件
│ │ ├── pages/ # 页面组件
│ │ ├── services/ # API服务
│ │ └── types/ # TypeScript类型
│ ├── public/ # 静态资源
│ └── package.json
├── main.py # 应用入口
├── pyproject.toml # Python配置
├── docker-compose.yml # Docker配置
├── Dockerfile # Docker镜像
└── README.md # 项目文档
系统支持以下定时任务:
- 监控任务: 每30分钟自动运行一次(可配置)
- 每日总结: 每天上午9点自动生成
- 每周总结: 每周一上午9点自动生成
在 .env
文件中修改:
MONITORING_INTERVAL_MINUTES=30
SUMMARY_TIME=09:00
WEEKLY_SUMMARY_DAY=monday
- 在
app/services/monitors/
创建新的监控器 - 继承
BaseMonitor
类 - 实现必要的抽象方法
- 在
MonitorManager
中注册新监控器
- 在
app/services/summarizers/
创建新的总结器 - 实现总结接口
- 在API中注册新的总结端点
# 运行后端测试
uv run pytest
# 运行前端测试
cd frontend && npm test
Q: 监控无法获取数据 A: 检查网络连接和API密钥配置,确保目标平台可访问
Q: AI总结生成失败 A: 验证OpenAI API密钥是否正确,检查API配额
Q: 前端无法连接后端 A: 确认后端服务正在运行,检查端口配置和CORS设置
Q: 数据库连接失败 A: 检查数据库URL配置,确保数据库服务可用
# 查看后端日志
tail -f logs/app.log
# 查看Docker日志
docker-compose logs -f inspector
- 定期清理旧的活动数据
- 为频繁查询的字段添加索引
- 使用连接池管理数据库连接
- 调整监控间隔以减少API调用
- 实现增量更新避免重复数据
- 使用缓存减少重复请求
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature
) - 提交更改 (
git commit -m 'Add some AmazingFeature'
) - 推送到分支 (
git push origin feature/AmazingFeature
) - 打开 Pull Request
本项目采用 Business Source License 1.1 (BSL) - 查看 LICENSE 文件了解详情
重要说明:
- 本软件受 BSL 许可证永久保护
- 商业使用需要获得许可
- 禁止直接竞争的商业产品使用
- 个人和非商业使用允许
- FastAPI - 现代、快速的Web框架
- React - 用户界面库
- OpenAI - AI服务提供商
- Tailwind CSS - CSS框架
Inspector - 让团队协作更智能,让信息获取更高效! 🚀