一个强大的团队社交动态监控和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=recipient1@example.com,recipient2@example.com# 安装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-turboOPENAI_API_KEY=your-azure-api-key OPENAI_BASE_URL=https://your-resource.openai.azure.com/openai/deployments/your-deployment OPENAI_MODEL=gpt-35-turboOPENAI_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": "zhangsan@example.com", "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 \ inspectorInspector/ ├── 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 testQ: 监控无法获取数据 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 - 让团队协作更智能,让信息获取更高效! 🚀