砚(Inkstone)是基于 pi 的个人全能 Agent。把事情交给它,它自己动手做完:写代码、查资料、操作网页和文件,每一步都看得见,做完把结果说清楚。
0.14.1 版界面 · 图中会话、模型与文件均为演示数据
- 把任务交给 AI:贴图片、用
@引用文件、用/调命令。正文保持连续阅读,思考与工具步骤按需展开;计划和排队消息收在输入框附近。 - 按项目整理会话:在左栏切换项目和会话,查看运行状态、置顶、归档或全文搜索;多个会话可以并排分屏。
Ctrl+K打开搜索与命令面板。 - 边做边看成果:HTML 页面可以直接预览,文件、PDF、代码和改动差异都能在会话旁查看;改动、文件、浏览器、终端、Pull 请求等以标签形式在右栏打开,最多可分 3 列、拖动调宽或最大化,窄屏时变为抽屉,每个会话记住自己的布局。Agent 也能读取和操作会话终端,写入同样走审批。
- 浏览器操作:Agent 操作的网页直接显示在砚的侧栏,支持多步脚本、下载和用户接管,无需额外浏览器;标签竖排在左侧,视口可切换自适应、手机、平板、桌面;每个会话的标签互不干扰,Agent 起的本地服务可以一键停止。点击「一键导入登录态」,可从默认 Chrome / Edge 当前档案导入网站 Cookie;首次需按提示安装配套扩展。不迁移密码、通行密钥或完整浏览器设置,部分网站仍需重新登录。
- 让子 Agent 分头做事:为子任务指定模型,在后台并行处理;运行中可直接向子代理插话。会话中汇总进度,打开右侧工作区即可读完整转录。
- 自己决定操作权限:「自动批准」下,常规操作直接执行,危险操作与项目外写入先确认;可以允许一次、在本会话允许,或附理由拒绝。「不受限制」按 pi 原生行为执行。符合条件的项目还会在发送前保存本地快照,方便预览和回退。
- 模型、技能和 MCP:在设置里登录模型服务或填入 API Key,随时切换模型与思考档位;技能和 MCP 可按全局或当前项目配置。输入框显示上下文占用,会话栏展示用量与速度,支持的服务可查看额度窗口。
- 长任务继续聊:接近设定的上下文上限时自动压缩,保留摘要和可查回的原文快照;不裁剪正常发给模型的历史工具内容。
- 预测下一句:回复结束后,输入框用灰字预测你可能要说的话,Tab 填入、Esc 关闭。
- 手机端:Android 客户端配对电脑后,可看进度、回复和审批,切换模型与思考档位,重命名、置顶、归档、压缩、切分支或删除会话,按内容搜索会话,查看用量与更改,停止子代理;折叠屏自动切换双栏,界面跟随系统语言,也可在设置里切换。
- 中文与英文界面:电脑端和手机端都可在设置里切换界面语言。
- 更多工作方式:同步文件夹,以及两台电脑之间的代码分支拉取、对比与合并。语音输入、桌宠、ComfyUI 等在插件市场按需安装;ComfyUI 插件可让模型查询节点、自行拼装并运行工作流,支持出图与视频生成;另有 Minecraft 模组开发(独立仓库,按需从 GitHub 下载安装)。
桌面端只交付和验证 Windows(x64)。macOS 和 Linux 是规划中的目标,现在还不能视为已支持。Android 客户端的安装包在发布页附件里,可在 设置 → 手机与远程 扫码配对电脑(仍在测试);iOS 尚未交付。开发版的改动不一定包含在已发布的安装包里。
- 到发布页下载安装包并安装,之后软件会在后台下载更新,重启时自动装好;也有免安装的便携版,更新需手动下载。
- 打开砚,在 设置 → 模型 里登录,或填入 API Key。
- 新建会话,在输入框底栏选好项目文件夹,说出要做的事。
安装包还没有数字签名,Windows 可能会弹出「未知发布者」提示,请只从本页下载。
- 聊天记录和设置都存在你自己的电脑上。发给 AI 的内容会发到你选的模型服务,费用由该服务收取。
- 换电脑或换版本前,先备份砚的数据目录。
- Hermes 可以通过
integrations/hermes-inkstone/下的独立插件查看会话、选择模型、提交任务,并批准待审批的操作。
遇到问题欢迎提 Issue,请写上版本号和操作步骤;截图时记得遮住密钥。
模型循环和工具执行由 pi(@earendil-works/pi-coding-agent)提供,砚以独立 RPC 子进程的方式运行它,随包带一份固定版本的运行时。上下文、会话恢复、技能和 MCP 由 pi 原生管理,压缩沿用 pi 的触发与记录机制。砚在此之上提供:
- 界面:把 pi 的工作过程呈现出来;
- 宿主能力:审批、文件、Git、终端、浏览器等;
- 少量随包 pi 扩展:提问、待办、危险操作审批,以及到达自动压缩上限时调用原生
compact()。压缩摘要由砚通过 pi 的session_before_compact钩子生成,并保留原文快照;不改写正常请求中的历史消息。宿主侧另有可关闭的流式循环防护。
yan 命令行(resources/yan-cli/)给 Agent 提供砚的能力,例如子 Agent、搜索、技能接入。
开发者:从源码运行
技术栈:Electron、React、TypeScript;手机端在 mobile/(React Native)。
准备 Git、Node.js(建议 24)和 npm,然后在 PowerShell 中执行:
git clone https://github.com/Yu-DaTouX/Inkstone.git
cd Inkstone
npm install -g @earendil-works/pi-coding-agent
npm run launch启动器会检查依赖,准备缺失的内置 pi 运行时(从已安装的 pi 提取),并按需构建。已有工作区可以直接双击 启动-砚.cmd。
常用命令:
| 命令 | 作用 |
|---|---|
npm run launch:dev / 开发-砚.cmd |
开发模式启动 |
npm run dev |
electron-vite 开发服务器 |
npm run build |
构建到 out/ |
npm run typecheck |
主进程与渲染端类型检查、CSS 与分层检查 |
npm run test:unit |
单元测试(依赖已构建的 out/) |
npm run test:live -- <场景> |
Electron 场景检查;部分场景会请求真实模型,按场景选择 |
npm run check |
完整检查(类型、图标、构建、单测、设计度量、核心 live 场景) |
npm run vendor:pi / npm run upgrade:pi |
提取或升级随包 pi 运行时 |
npm run debug -- help |
隔离实例、假模型、截图与回归场景 |
npm run storybook |
界面控件的 Storybook |
npm run dist |
打包 Windows 安装包 |
目录概览:
| 位置 | 内容 |
|---|---|
src/main/ |
Electron 主进程:pi 进程管理、审批、文件、Git、终端、同步、远程连接 |
src/preload/ |
渲染端可调用的宿主接口 |
src/renderer/src/ |
界面:app/ 外壳,features/ 各功能,ui/ 基础控件,design/tokens.json 设计令牌 |
src/shared/ |
主进程与渲染端共用的类型和纯逻辑 |
resources/ |
随包的 pi 扩展、技能、yan CLI、品牌素材;pi-runtime/ 由脚本生成,不进 Git |
scripts/ |
构建、测试、打包与设计检查脚本 |
mobile/ |
Android 客户端(React Native) |
integrations/hermes-inkstone/ |
Hermes 外部控制插件 |
integrations/desktop-pet/、integrations/comfyui/ |
随包插件:桌宠、ComfyUI 本地出图,在插件市场安装 |
AI 协作约定见 AGENTS.md。
