3分钟上手Goose智能提示与记忆扩展:让AI代理记住你的项目
【免费下载链接】goosean open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM项目地址: https://gitcode.com/GitHub_Trending/goose3/goose
每次和 AI 代理(基于大语言模型自动执行任务的助手)开新对话,你都得重讲一遍项目背景:用什么语言、测试命令是什么、提交信息走什么格式。会话一关,它就全忘了。Goose 是一个开源的可扩展 AI 代理,兼容任意 LLM(大语言模型),用上下文文件和记忆扩展两套机制解决这个问题。下面拆三个机制,再给一条三步路线。
🔁 场景演示:交代一次,后面都不用再说
假设你维护一个 Rust 项目。第一天你告诉 Goose:单测命令是 just test,提交信息用 Conventional Commits 格式。第二天开新会话,只说帮它修一个 panic。
没做任何配置时,它会先反问:测试怎么跑?信息什么规范?配好之后,它直接跑 just test 验证修复。差别就是那两句交代,从"每轮对话"搬进了"固定上下文"。
拆解三个机制:提示模板、上下文文件、记忆扩展
系统提示模板:Goose 的出厂人设在哪
system.md 是主系统提示模板,用 Jinja2 模板语法(一种靠条件渲染动态拼装文本的模板语言)写成。会话启动时,它按当前启用的扩展拼装内容,决定 Goose 的默认语气和行为边界。
模板都在 提示模板目录:plan.md 管规划、recipe.md 管配方任务、subagent_system.md 管子代理,按任务类型拆分。一般用不到改它;想定制行为时,先读这个目录,搞清每句话从哪来。
.goosehints 上下文文件怎么写、放哪里
.goosehints 是纯文本上下文文件。全局放 ~/.config/goose/.goosehints,本地放项目根目录,两者可共存,冲突时本地优先。
它在会话启动时加载,并随每次请求完整发送;Goose 每访问一个子目录,还会增量加载该目录的提示文件。加载逻辑在 hints 模块,默认还认 AGENTS.md,可用 CONTEXT_FILE_NAMES 环境变量自定义文件名。完整写法参考 goosehints 使用文档。
写法就一条:把"每次都得遵守"的项目约定写进去,尽量短——它每轮全量发送,会占 token(模型计费单位,约等于字词粒度)。
测试命令:just test,提交前必须通过 代码风格:遵循项目 .editorconfig 回复用中文,报错附复现步骤某条规则若必须每一轮都在场(比如"提交前让我确认"),用 GOOSE_MOIM_MESSAGE_TEXT 环境变量设持久指令,它每轮重新注入,不会被长对话稀释。
记忆扩展如何按需检索
记忆扩展是内置的 memory MCP 服务(MCP 即 Model Context Protocol,AI 连接外部工具与数据的标准协议),提供 remember_memory、retrieve_memories、remove_memory_category、remove_specific_memory 四个工具。
数据落在 ~/.goose/memory(项目级)或 ~/.config/goose/memory(全局级),按类别和关键词组织,检索时才发给模型,不像提示文件那样整份塞进去。源码在 memory 服务。
分工建议:长期事实(团队约定、长期目标)进记忆,每轮规则进 .goosehints。说白了,固定背景走文件,动态事实走记忆。
🧭 上手路线:三步让 Goose 记住你的项目
- 安装 Goose:克隆仓库,按仓库 README 装 CLI 或桌面端。
git clone https://gitcode.com/GitHub_Trending/goose3/goose- 新建全局 .goosehints:在 ~/.config/goose/ 下建文件,写三到五条个人约定。
- 给项目加本地 .goosehints:放在项目根目录,写该项目的测试命令与风格要求。
- 把长期事实交给记忆:直接说"记住:本项目测试命令是 just test";每轮生效的规则走 GOOSE_MOIM_MESSAGE_TEXT。
- 重启会话验证:问"这个项目的测试怎么跑",它能直接引用提示文件回答而不是反问,就配好了。
下一步就做一件事:把这几天你重复说过两遍以上的交代,写进 .goosehints 或丢给记忆。Goose 的表现上限取决于你喂给它的上下文,先把这步做对,再谈换更大的模型。
【免费下载链接】goosean open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM项目地址: https://gitcode.com/GitHub_Trending/goose3/goose
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考