potpie
Potpie 是一款专为大型代码库设计的开源开发辅助工具,它能将整个项目代码转化为结构化的“知识图谱”。通过深度索引每一个文件、类和函数,并梳理它们之间的复杂关联,Potpie 让 AI 智能体能够像原作者一样精准理解代码上下文,从而高效完成从故障调试到新功能开发的各种任务。
面对日益庞大的代码库,开发者常因难以快速理清模块依赖和逻辑脉络而降低效率。Potpie 正是为了解决这一痛点而生,它打破了传统搜索仅匹配文本的局限,提供了基于代码结构的深层推理能力,帮助团队在维护遗留系统或扩展复杂架构时更加得心应手。
这款工具非常适合需要处理大规模项目的软件工程师、技术负责人以及希望提升代码理解效率的开发团队。其核心技术亮点在于构建了全量代码的知识图谱,并支持多种主流大语言模型(如 OpenAI、Ollama、Anthropic 等),允许用户根据需求灵活配置推理模型。此外,Potpie 提供了完善的本地部署方案,结合 Docker 与 Python 环境即可快速启动,既保障了数据安全,又赋予了极高的定制化自由度,是现代化规范驱动开发的得力助手。
使用场景
某电商平台的后端团队需要在拥有百万行代码的遗留系统中,紧急修复一个涉及订单、库存和支付模块的深层耦合 Bug。
没有 potpie 时
- 开发人员需手动翻阅数十个文件,依靠记忆或全局文本搜索拼凑调用链路,极易遗漏间接依赖。
- 修改核心逻辑时因无法预判影响范围,导致“修好一个 Bug 引出三个新 Bug"的回归问题频发。
- 新入职成员面对复杂的代码迷宫无从下手,理解业务逻辑往往需要数周时间的摸索与请教。
- AI 辅助编程工具因缺乏整体上下文,只能提供片段级建议,经常产生幻觉或错误的重构方案。
使用 potpie 后
- potpie 将整个代码库转化为知识图谱,自动梳理出从订单创建到库存扣减的完整调用链,精准定位故障点。
- 基于图谱的推理能力让 potpie 能预先分析变更影响面,明确指出哪些测试用例必须执行,大幅降低回归风险。
- 新人可直接向 potpie 提问“支付失败如何触发库存回滚”,获得包含具体文件跳转的结构化解释,上手时间缩短至几天。
- 构建在图谱之上的 AI Agent 具备“作者级”理解力,能生成符合项目架构规范的完整修复代码而非零散片段。
potpie 通过将静态代码转化为动态知识图谱,让开发团队在超大型项目中拥有了上帝视角般的精准掌控力。
运行环境要求
- Linux
- macOS
- Windows
未说明
未说明

快速开始
Potpie
Potpie 可以将您的整个代码库转换为一个知识图谱——即对每个文件、类和函数的结构化索引,捕捉它们之间的所有关系以及代码各部分在整体上下文中的作用。基于该图谱构建的 AI 代理能够像编写代码的人一样精确地理解并推理您的代码,从调试到功能开发都能胜任。
快速入门
前置条件
- 已安装并运行 Docker
- 已安装 Git
- 安装了 Python 3.11+,并配备 uv
安装步骤
克隆仓库
git clone --recurse-submodules https://github.com/potpie-ai/potpie.git cd potpie配置环境变量
cp .env.template .env编辑
.env文件,填写以下必填项:# 应用与环境 isDevelopmentMode=enabled ENV=development defaultUsername=defaultuser # AI / LLM 配置 LLM_PROVIDER=openai # openai | ollama | anthropic | openrouter OPENAI_API_KEY=sk-proj-your-key CHAT_MODEL=gpt-4o INFERENCE_MODEL=gpt-4o-mini # 数据库 POSTGRES_SERVER=postgresql://postgres:mysecretpassword@localhost:5432/momentum NEO4J_URI=bolt://127.0.0.1:7687 NEO4J_USERNAME=neo4j NEO4J_PASSWORD=mysecretpassword # Redis 与后台任务 REDISHOST=127.0.0.1 REDISPORT=6379 BROKER_URL=redis://127.0.0.1:6379/0 CELERY_QUEUE_NAME=dev # 项目与仓库管理 PROJECT_PATH=projectsCHAT_MODEL和INFERENCE_MODEL分别用于代理推理和知识图谱生成。模型名称应遵循 LiteLLM 所要求的provider/model_name格式。💡 使用 Ollama? 将
LLM_PROVIDER=ollama,并设置CHAT_MODEL=ollama_chat/qwen2.5-coder:7b和INFERENCE_MODEL=ollama_chat/qwen2.5-coder:7b。您可以参考
.env.template查看完整的可选配置列表(日志记录、功能开关、对象存储、邮件、分析等)。安装依赖
curl -LsSf https://astral.sh/uv/install.sh | sh uv sync启动所有服务
chmod +x scripts/start.sh ./scripts/start.sh这将启动 Docker 服务、应用数据库迁移、启动 FastAPI 应用程序以及 Celery 工作进程。
健康检查
curl -X GET 'http://localhost:8001/health'查看解析状态
curl -X GET 'http://localhost:8001/api/v1/parsing-status/your-project-id'
要停止所有服务:
./scripts/stop.sh
接下来设置 Potpie 前端
cd potpie-ui
cp .env.template .env
pnpm build && pnpm start
工作原理?
Potpie 会将您的代码仓库解析成一个存储在 Neo4j 中的知识图谱,其中包含每个文件、函数、类及其相互之间的关系。代理可以直接从该图谱中读取信息,从而根据您实际的代码回答问题或完成任务。
架构图
- FastAPI 作为 API 层——所有请求通过
localhost:8001进入,支持 CORS、Logfire 跟踪,并可选集成 Sentry 错误监控。 - Firebase Auth 负责生产环境的身份验证。在开发模式下,本地会创建一个虚拟用户,无需 Firebase。
- Celery Worker 结合 Redis 作为消息代理,负责异步解析代码库——克隆、AST 提取和知识图谱构建都在后台进行。
- Conversation Service 管理多轮对话中的聊天会话及代理记忆。
- Agent Router 根据意图将提示分发给合适的预构建或自定义代理。
- Tool Service 向代理暴露可调用的功能——代码搜索、文件获取、知识图谱查询、网络工具等。
- Neo4j Knowledge Graph 以属性图的形式存储您的代码库——函数、类、文件、导入关系及调用关系,是所有代理上下文的核心。
- PostgreSQL 存储用户、项目、对话记录及消息历史。
GitHub 身份验证
| 方法 | 配置 | 适用场景 |
|---|---|---|
| GitHub App | GITHUB_APP_ID, GITHUB_PRIVATE_KEY |
生产环境 |
| PAT 池 | GH_TOKEN_LIST=ghp_token1,ghp_token2 |
开发环境 / 更高速率限制 |
| 未认证 | 无需配置 | 仅限公开仓库(60 请求/小时) |
通过设置 GITHUB_AUTH_MODE 为 app、pat 或 none 来选择相应的方法。
自托管 Git 服务提供商
对于自托管的 Git 服务器(例如 GitBucket、GitLab 等),请进行如下配置:
uv sync
这将创建一个 .venv 目录,并从 pyproject.toml 中安装所有依赖项。
GitHub 身份验证设置
Potpie 支持多种身份验证方法来访问 GitHub 仓库:
对于 GitHub.com 仓库:
选项 1:GitHub 应用程序(推荐用于生产环境)
- 在您的组织中创建一个 GitHub 应用程序
- 设置环境变量:
GITHUB_APP_ID=your-app-id GITHUB_PRIVATE_KEY=your-private-key
选项 2:个人访问令牌池
- 创建一个或多个具有
repo范围的 GitHub PAT - 设置环境变量(多个令牌用逗号分隔):
GH_TOKEN_LIST=ghp_token1,ghp_token2,ghp_token3 - Potpie 将从令牌池中随机选择以实现负载均衡
- 速率限制:每个令牌每小时 5,000 次请求(已认证)
选项 3:未认证访问(仅限公共仓库)
- 无需配置
- 自动作为公共仓库的后备方案
- 速率限制:每个 IP 每小时 60 次请求(非常有限)
对于自托管 Git 服务器(GitBucket、GitLab 等):
设置以下环境变量:
CODE_PROVIDER=github # 选项:github、gitbucket
CODE_PROVIDER_BASE_URL=http://your-git-server.com/api/v3
CODE_PROVIDER_TOKEN=your-token
重要提示:无论 CODE_PROVIDER_BASE_URL 如何设置,GH_TOKEN_LIST 中的令牌始终用于 GitHub.com。
启动 Potpie
要启动所有 Potpie 服务:
chmod +x scripts/start.sh ./scripts/start.sh这将:
- 启动所需的 Docker 服务
- 等待 PostgreSQL 准备就绪
- 应用数据库迁移
- 启动 FastAPI 应用程序
- 启动 Celery 工作器
可选:Logfire 追踪设置
若要使用 Pydantic Logfire 监控 LLM 跟踪和代理操作:
- 从 https://logfire.pydantic.dev 获取 Logfire 令牌
- 将其添加到你的
.env文件中:
LOGFIRE_TOKEN=your_token_here- Potpie 启动时会自动初始化追踪功能。你可以在 https://logfire.pydantic.dev 查看追踪记录。
注意:在你的
.env文件中设置LOGFIRE_SEND_TO_CLOUD=false可以禁用向 Logfire 云端发送追踪数据。停止 Potpie
要停止所有 Potpie 服务:
./scripts/stop.shWindows
./stop.ps1这将优雅地停止:
- FastAPI 应用程序
- Celery 工作器
- 所有 Docker Compose 服务
Potpie 的预构建代理
Potpie 提供了一系列专门的代码库代理,用于自动化和优化软件开发的关键方面:
调试代理自动分析堆栈跟踪,并根据您的代码库提供逐步调试指导——而不是通用建议。 |
代码库问答代理回答有关您代码库的问题,并从基本原理出发解释函数、特性及架构。 |
代码生成代理为新功能生成代码、重构现有代码,并基于您实际的代码库提出优化建议。 |
规格代理根据您的代码库生成详细的软件规格说明、PRD 和架构文档。 |
自定义代理
借助自定义代理,您可以设计个性化的工具,以精确处理重复性任务。定义:
- 系统指令 - 代理的任务、目标和预期输出
- 任务 - 完成工作所需的各个步骤
- 工具 - 用于查询知识图谱或检索代码的函数
curl -X POST "http://localhost:8001/api/v1/custom-agents/agents/auto" \
-H "Content-Type: application/json" \
-d '{"prompt": "一个以堆栈跟踪为输入,输出根本原因分析和解决方案的代理"}'
更多内容请参阅我们的文档。
使用场景
入职培训让新开发者在数小时内就能高效工作,而不是几周。Potpie 会映射您的架构、入口点和设置流程,使任何人都能快速上手。 |
代码库问答关于您的代码库,无论是函数、数据流还是设计决策,都可以随时提问。您将获得基于实际代码的精准答案,而非猜测。 |
调试粘贴堆栈跟踪信息,即可获得针对您代码的根本原因分析和逐步修复方案——而不是通用的故障排除建议。 |
代码审查在合并代码之前,了解您的更改可能带来的影响范围。Potpie 会展示受影响的 API、下游影响以及潜在的回归问题。 |
测试生成生成能够理解您的代码结构的单元测试和集成测试——而不是千篇一律的模板。这些测试可以覆盖手动测试遗漏的边缘情况。 |
功能规划将需求或开放问题转化为低层级的实施计划——包括组件分解、API 接口以及建议的代码结构。 |
扩展与集成
社区与支持
- GitHub Issues。适合:你在使用 Potpie 时遇到的 bug 和错误。
- Discord。适合:分享你的项目并与社区交流。
- 电子邮件支持。适合:关于你的设置或基础设施的问题。
更多详情请参阅 贡献指南。
许可证
本项目采用 Apache 2.0 许可证授权——详细信息请参阅 LICENSE 文件。
贡献者
感谢你抽出时间帮助构建 Potpie。继续加油 🥂
想参与贡献吗?请阅读 贡献指南,开始行动吧。
版本历史
v0.1.12025/02/25v0.1.02025/02/19v0.0.62025/02/13v0.0.52025/01/14v0.0.42024/12/21v0.0.32024/12/13v0.0.22024/11/29v0.0.12024/11/22v0.1.22025/03/09v1.0.12026/04/15v1.0.02026/02/23v0.1.72025/06/13v0.1.62025/04/25v0.1.52025/04/15v0.1.42025/03/30v0.1.32025/03/15常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
n8n
n8n 是一款面向技术团队的公平代码(fair-code)工作流自动化平台,旨在让用户在享受低代码快速构建便利的同时,保留编写自定义代码的灵活性。它主要解决了传统自动化工具要么过于封闭难以扩展、要么完全依赖手写代码效率低下的痛点,帮助用户轻松连接 400 多种应用与服务,实现复杂业务流程的自动化。 n8n 特别适合开发者、工程师以及具备一定技术背景的业务人员使用。其核心亮点在于“按需编码”:既可以通过直观的可视化界面拖拽节点搭建流程,也能随时插入 JavaScript 或 Python 代码、调用 npm 包来处理复杂逻辑。此外,n8n 原生集成了基于 LangChain 的 AI 能力,支持用户利用自有数据和模型构建智能体工作流。在部署方面,n8n 提供极高的自由度,支持完全自托管以保障数据隐私和控制权,也提供云端服务选项。凭借活跃的社区生态和数百个现成模板,n8n 让构建强大且可控的自动化系统变得简单高效。
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
opencode
OpenCode 是一款开源的 AI 编程助手(Coding Agent),旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件,而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码,还是排查难以定位的 Bug,OpenCode 都能通过自然语言交互高效完成,显著减少开发者在重复性劳动和上下文切换上的时间消耗。 这款工具专为软件开发者、工程师及技术研究人员设计,特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构,这意味着用户可以审查代码逻辑、自定义行为策略,甚至私有化部署以保障数据安全,彻底打破了传统闭源 AI 助手的“黑盒”限制。 在技术体验上,OpenCode 提供了灵活的终端界面(Terminal UI)和正在测试中的桌面应用程序,支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具,安装便捷,并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客,还是渴望提升产出的独立开发者,OpenCode 都提供了一个透明、可信
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。