Truth Lens 是一款基于 DeepSeek AI 的浏览器扩展,用户可通过划词触发实时分析,验证互联网信息的真实性。
- 框架: Plasmo + React + TypeScript
- UI: Tailwind CSS + Framer Motion
- 图标: lucide-react
- 框架: Next.js 15 (App Router)
- AI SDK: Vercel AI SDK
- 大模型: DeepSeek-V3 (deepseek-chat)
- 搜索引擎: Tavily AI Search
- Node.js: v20 (LTS) - 强制要求,不支持 v22+
- 包管理器: pnpm
# 使用 nvm 切换到 Node v20
nvm use 20
# 安装依赖
pnpm install# 在 apps/web 目录下创建 .env.local
cd apps/web
cp .env.local.example .env.local
# 编辑 .env.local,填入你的 API Key
DEEPSEEK_API_KEY=your_deepseek_api_key_here
TAVILY_API_KEY=your_tavily_api_key_here- DeepSeek: https://platform.deepseek.com/api_keys
- Tavily: https://tavily.com/ (免费额度 1000 次/月)
# 方式 1: 同时启动插件和服务端
pnpm dev
# 方式 2: 分别启动
pnpm dev:web # 启动 Next.js 后端 (localhost:3000)
pnpm dev:ext # 启动 Plasmo 插件开发环境- 打开 Chrome,访问
chrome://extensions/ - 开启右上角的 "开发者模式"
- 点击 "加载已解压的扩展程序"
- 选择
apps/extension/build/chrome-mv3-dev目录
- 在任意网页选中一段文字(至少 10 个字符)
- 等待 300ms 后自动弹出 Truth Lens 悬浮窗
- 点击 "🔍 立即验证" 按钮
- AI 将实时流式输出分析结果
原因: Node 版本不对或缓存残留
解决方案:
# 1. 确认 Node 版本
node -v # 必须是 v20.x
# 2. 如果不是,切换版本
nvm use 20
# 3. 执行核打击清理
rm -rf node_modules apps/*/node_modules pnpm-lock.yaml
# 4. 重新安装
pnpm install可能原因:
- 后端未启动
- API Key 未配置
- 网络问题
检查步骤:
# 1. 确认后端运行
curl http://localhost:3000/api/analyze
# 2. 检查环境变量
cat apps/web/.env.local
# 3. 查看后端日志
# 在终端查看 pnpm dev:web 的输出原因: DeepSeek API 返回格式不符合预期
临时方案: 检查 Prompt 是否正确,或降低 temperature 参数
truth-lens-clean/
├── apps/
│ ├── extension/ # Plasmo 插件端
│ │ ├── content.tsx # Content Script 主逻辑
│ │ ├── popup.tsx # 插件弹窗页面
│ │ └── style.css # 样式文件
│ └── web/ # Next.js 后端
│ ├── app/
│ │ └── api/
│ │ └── analyze/
│ │ └── route.ts # 分析接口
│ └── lib/
│ ├── ai-config.ts # DeepSeek 配置
│ ├── prompts.ts # AI Prompt 模板
│ └── tavily.ts # 搜索引擎集成
├── packages/
│ └── ts-config/ # 共享 TypeScript 配置
├── pnpm-workspace.yaml # Monorepo 配置
└── README.md
- 所有 API Key 存储在后端
.env.local,前端无法访问 - 插件仅能访问
localhost:3000和必要的外部资源 - 生产环境需要配置请求频率限制(防止滥用)
- 基础架构搭建
- DeepSeek V3 集成
- Tavily 搜索引擎集成
- 划词检测 + 流式展示
- 信源可信度评级算法优化
- 历史记录功能(Chrome Storage)
- 用户反馈机制
- 生产环境部署
欢迎提交 Issue 和 Pull Request!
MIT License