Wholiver/metis

GitHub: Wholiver/metis

Metis 是一个编码 Agent 增强层,通过提供更优上下文检索、记忆积累和结果验证机制,在不更换模型的前提下提升 AI 编码质量与效率。

Stars: 31 | Forks: 3

Metis pixel mark

English · 简体中文

TypeScript npm version Node.js 22.19.0 or newer MIT License

借助更优质的上下文、可复用的经验以及经过验证的结果,帮助编码模型编写出更好的代码并更快完成任务。

为什么选择 Metis · 编码性能 · 可靠性 · 快速开始

## 快速开始 选择一种界面。两者使用相同的 Metis 配置、模型和会话。 | 界面 | 最适合 | 要求 | | --- | --- | --- | | **桌面应用** | 包含 CLI 和服务器的图形化工作区 | Apple silicon Mac (`arm64`) 或 Windows (`x64`) | | **CLI** | 终端、脚本、print/JSON、RPC 和 SDK 集成 | Node.js `>=22.19.0` 和 `npm` | ### macOS 桌面应用 1. [下载最新的 Apple silicon `.dmg`](https://github.com/Wholiver/metis/releases/latest) (`Metis-*-macos-arm64.dmg`)。 2. 打开它并将 **Metis.app** 拖入 **应用程序**。 3. 启动 **Metis**。已内置 Node.js。 ### Windows 桌面应用 Windows 构建版本捆绑了完整的 Metis CLI 和服务器运行时。选择安装 EXE 进行常规安装,或选择 ZIP 获取便携版。 1. 打开[最新的 GitHub Release 页面](https://github.com/Wholiver/metis/releases/latest)。 2. 下载并运行 `Metis-*-win-x64-setup.exe`,或者下载 `Metis-*-win-x64.zip`,解压后从 **Metis** 文件夹中启动 **Metis.exe**。 3. 使用附带的 `.sha256` 文件验证您的下载。如果 Windows SmartScreen 提示未知发布者,请仅在确认该文件来自官方发布页面后继续。 ### CLI 和终端 安装 Metis,然后启动交互式会话: ``` npm install -g --ignore-scripts @wholiver_hu/metis@latest metis ``` 运行 `metis --help` 以查看所有 CLI 选项。 ## 为什么选择 Metis Metis 是一个针对编码模型的 agent 层。它不替换模型,也不改变其权重。它通过为模型提供更好的搜索、记忆、工作和检查自身结果的方式,来提升模型的有效编码性能。 这意味着更好的代码库理解能力,更少的不受支持的假设和遗漏的需求,更强大的任务完成能力,以及花在重复上下文上的时间更少。 ### 更好的编码性能

How Metis helps the same coding model achieve better coding outcomes

对于同一个底层模型,Metis 强化了其周围的系统: - **相关上下文** — 在编辑之前搜索代码库和权威来源。 - **可复用的经验** — 将有用的决策、教训和技术知识带入后续的工作中。 - **基于证据的实现** — 遵循现有的代码、约束和项目约定,而不是盲目猜测。 - **经过验证的完成情况** — 构建、测试、检查输出,并将结果与原始请求进行比较。 这些机制可以在不重新训练或替换模型的情况下改善实际编码结果。结果仍取决于模型、任务、工具和环境。 ### 更快的完成速度

User test comparing Metis and OpenCode task completion time

在一次执行相同任务的用户测试中: - **Metis 在 1 分 30 秒内完成。** - **OpenCode 在 3 分 30 秒内完成。** - 在该测试中未观察到准确性差异。 在此对比中,Metis 使用的时间减少了约 57%。这只是一次用户测试,并非通用基准;结果取决于任务、模型、工具和环境。 ## 可靠性的来源

Metis memory, Dream, search, and verification features

### Memory 和 Lessons Metis 在开始技术工作之前会检查其脑图。它可以复用早期会话中的相关决策、项目知识和技术教训,而不是每次都重新发现。 在长任务期间,Metis 会保留一份仅追加(append-only)的工作日志,其中包含紧凑的检查点、已诊断的错误、验证状态和后续步骤。它在恢复、中断或上下文压缩后恢复最新状态;Dream 稍后会整合完整的历史记录。 ### Dream Dream 会审查已完成的工作,并将有用的笔记整合为结构化的 Memory 和 Lessons。临时任务上下文会变成可复用的知识,而低价值的细节则会被清理。 ### 行动前搜索 Metis 在进行更改之前会进行调查。它首先搜索代码库,并在需要时使用网络研究来检查权威文档、已知解决方案、发行说明或安全信息。 ### 日志和验证 Metis 会记录有意义的错误和完成情况摘要。在它宣布任务完成之前,它会将结果与用户的原始 prompt 进行比较,并检查每一项需求、约束和后续的澄清说明。它还会在可用时运行相关的构建、测试和功能检查。 总之,这些行为有助于同一个编码模型在更好的上下文、更少的假设以及更强大的完成循环下工作。 ## 工作原理

Metis workflow: Understand, Build, Verify

1. **理解** — 阅读请求,回忆相关教训,并调查代码库。 2. **构建** — 做出有针对性的更改,并保留有用的工作记录。 3. **验证** — 测试结果,并将其与原始请求进行比较。
开发者信息 ### 界面 Metis 支持交互式终端、print 和 JSON 输出、RPC 集成,以及用于 Node.js 应用程序的 SDK。 该包从 `@wholiver_hu/metis` 导出 SDK,并从 `@wholiver_hu/metis/rpc-entry` 导出 RPC 入口点。 ### 命令 | 命令 | 用途 | | --- | --- | | `npm run build` | 编译 TypeScript 并复制 runtime 资产。 | | `npm test` | 运行 Vitest 测试套件。 | | `npm run clean` | 移除编译后的输出。 | | `npm run build:binary` | 构建独立二进制文件。 |
## 贡献 欢迎踊跃贡献。请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) 了解核心开发、Extension 集成、包分发、测试以及 AI 辅助贡献指南。 ## License 在 [MIT License](https://opensource.org/license/mit) 下分发。
标签:AI编程助手, MITM代理, SOC Prime, TypeScript, 安全插件, 开发工具, 暗色界面, 自动化攻击