ATLAS 本地编程助手
让本地开源模型通过规划、验证与修复完成代码任务。
按维度查看评分与理由
证据显示:README 明确说明本地运行、不主动上传仓库或提示词;SECURITY.md 详细描述了沙箱隔离(只读根文件系统、无新权限、资源限制)、敏感文件排除和私有值过滤,以及 ATLAS_TRUST_MODE 信任模式(untrusted 拒绝命令执行、trusted 默认沙箱执行、fully-trusted 才允许主机执行)。交互式权限提示和会话恢复在 V3.1.3 中提及。回滚机制(staged upgrade/rollback with auto-restore)在 README 中提及。依赖安全方面有 CodeQL、容器扫描、签名发布等 CI 工作流。扣分原因:发布者身份未验证,来源归属仅基于仓库元数据;沙箱默认有出站网络访问(除非设置 ATLAS_SANDBOX_NET_INTERNAL=true),这可能增加外部影响风险;用户确认机制的具体实现细节未在提供的文件中展示。
证据显示:README 和 SECURITY.md 对系统架构、信任模式、安全边界描述一致;测试文件(如 test_embedding_contract.py)展示了针对特定故障的回归测试,表明内部一致性。依赖可用性方面,pyproject.toml 声明了训练依赖的下限,但未固定版本,可能影响可重现性。失败消息方面,测试中检查了错误消息内容(如 'unreadable'、'per_token'),表明有失败消息设计。扣分原因:未提供完整的依赖锁定文件或 SBOM 细节;失败消息的全面性未在提供的文件中充分展示。
证据显示:README 明确了目标受众(开发者、本地使用)、使用场景(本地编码代理)、能力边界(支持的语言、硬件平台)和触发条件(通过 TUI 或 CLI 启动)。环境适配方面,支持多种 GPU 和操作系统,并有 SUPPORT_MATRIX.md 和 SETUP.md 等文档。扣分原因:能力边界和触发精度的具体细节(如工具调用的分类、安全限制)在提供的文件中仅部分描述,未深入代码层面。
证据显示:README 提供了清晰的信息架构(文档链接、目录结构)、安装说明(一键安装脚本、手动安装路径)、命名稳定性(版本号、组件名称)、示例和 FAQ(文档中有示例)、已知限制(明确列出)、许可证(AGPL-3.0 完整文本)、版本变更日志(CHANGELOG.md 链接)和维护责任(贡献指南、赞助信息)。扣分原因:维护责任仅由单一维护者承担,未提供明确的更新路径或社区治理细节;版本变更日志的具体内容未在提供的文件中展示。
证据显示:README 描述了输出可用性(TUI、CLI、结构化日志)、边际价值(在小型模型上实现前沿推理)和成本效益(本地运行、无 API 费用)。扣分原因:缺乏实际运行数据或基准测试结果来支持这些声明;成本效益分析未量化。
证据显示:README 引用了具体的基准测试(LiveCodeBench 74.6%)和方法论文档(V3_ABLATION_STUDY.md),表明声明有可追溯性。测试文件展示了针对特定问题的回归测试,支持事实与推断的分离。扣分原因:跨来源佐证有限,主要依赖单一仓库的文档和测试;基准测试结果未在提供的文件中独立验证。
- 发布者身份未验证,来源归属仅基于仓库元数据,需谨慎对待。
- 沙箱默认有出站网络访问,可能增加外部影响风险;建议设置 ATLAS_SANDBOX_NET_INTERNAL=true 以限制。
- 依赖版本未固定,可能影响可重现性。
- 基准测试结果(如 LiveCodeBench 74.6%)未在提供的文件中独立验证,需谨慎引用。
这个 Agent 能做什么,适合哪些场景?
ATLAS 是一个在本机运行的编程代理,围绕兼容 GGUF 的本地模型增加规划、候选生成、质量评分、沙箱验证和修复流程。其主要交互入口是 Bubbletea 终端界面:在项目目录运行 atlas 即可启动对话。外层 atlas-proxy 负责工具调用路由、语法约束、复杂度分级和安全限制,V3 Pipeline 则生成并筛选候选代码。Geometric Lens 利用模型自身嵌入进行候选评分,Sandbox 可在隔离环境中编译、运行 lint 与测试。部署可使用 Docker 或 Podman;系统不需要托管模型或第三方模型供应商 API 密钥,但 ATLAS 服务使用本地的每安装实例令牌认证。
用户在 atlas-tui 中输入任务,或使用 /add、/diff、/commit、/run 等命令提供本地文件上下文和执行 shell 操作。atlas-proxy 对文件操作进行复杂度分级,使用 GBNF 约束模型输出的 JSON 形状,并在格式错误或截断时恢复。V3 Pipeline 通过 PlanSearch、DivSampling、Budget Forcing、PR-CoT Repair 和 Refinement Loops 生成多个候选并迭代修复。Geometric Lens 的 C(x) 与 G(x) 对候选及写入步骤评分;Sandbox 在隔离环境中执行 Python、Rust、Go、C、Shell 等工作负载,编译、lint 并运行生成的和现有的测试套件,帮助决定是否接受或继续修复代码。
- 使用单张消费级 GPU 的个人开发者,希望在自己的项目目录中通过终端让本地模型完成代码修改。
- 需要先编译、运行 lint 或测试,再决定是否接受生成代码的团队或个人。
- 在 Python、Rust、Go、C 或 Shell 项目中,希望将生成代码放入隔离执行环境验证的开发者。
- 拥有兼容 GGUF 模型、希望通过 atlas lens build 或 retrain 为额外模型训练 Lens 工件的本地模型使用者。
- 需要在终端查看 V3 各阶段流式进展,并用 /diff 或 /commit 管理本地修改的工程师。
这个 Agent 有哪些优点和局限?
- 以 PlanSearch、DivSampling、候选选择和修复循环替代单次生成,并将验证纳入代理流程。
- Sandbox 可编译、lint 并运行生成与既有测试,覆盖 Python、Rust、Go、C、Shell 等多语言执行。
- 支持本地兼容 GGUF 模型及 CUDA、ROCm、Metal 和 Vulkan 路径,不依赖托管模型或第三方模型 API。
- 原生 Bubbletea TUI 提供实时管线视图,以及 /add、/diff、/commit、/run 等本地工作流命令。
- 需要 Docker 或 Podman、Python 3.9+、模型权重和约 20–22 GB 磁盘空间;推荐硬件为至少 16 GB 显存。
- 预构建 CUDA 镜像面向 Blackwell RTX 50xx,较旧 NVIDIA GPU 需要一次本地重建。
- Vulkan 仍属预览,AMD ROCm 仅为社区测试;Intel Arc/SYCL 尚在路线图中。
- 语法约束解码速度约为 51 tok/s,复杂功能开发在陌生代码库中仍可能不稳定。
- Sandbox 默认允许出站网络访问,采用前需根据环境安全要求设置网络限制。
如何安装或部署这个 Agent?
满足 Python 3.9+、Docker 或 Podman,以及 16 GB 以上显存的受支持 GPU 后,可执行:
curl -fsSL https://raw.githubusercontent.com/itigges22/ATLAS/main/scripts/atlas-bootstrap.sh | bash安装脚本会检测发行版和 GPU 厂商、安装相应运行时、下载模型权重、构建 ASA steering vector 并启动服务。若要固定到 V3.1.3:
curl -fsSL https://raw.githubusercontent.com/itigges22/ATLAS/v3.1.3/scripts/atlas-bootstrap.sh | ATLAS_BOOTSTRAP_REF=v3.1.3 bashNVIDIA 使用 CUDA 路径;AMD 使用 ROCm;Apple Silicon 使用原生 macOS hybrid Metal 路径;Vulkan 为预览支持。ATLAS 不要求托管模型或第三方模型 API 密钥,但服务以本地每安装实例令牌认证。
如何使用这个 Agent?
在任意项目目录启动:
atlas
在 atlas-tui 中输入编程任务,使用 /add 添加本地文件上下文,/diff 查看变更,/commit 创建提交,或 /run 执行命令。也可使用聊天、!bash 与 /slash 输入模式。默认情况下,Sandbox 内的命令具有出站网络访问;如需禁用,设置:
ATLAS_SANDBOX_NET_INTERNAL=true