跳到正文
FunCoding

搜索

搜索文档、Skill 和 MCP

从模板开发与链接扩展

创建目录、准备 MCP 产物和本地链接,按重启后的实际能力验证。

先确定扩展是增加工具、共享提示、按需流程还是自动事件处理。只有需要新工具时才必需实现 MCP,简单上下文扩展可以只包含少量文件。

从模板开始

gemini extensions new my-first-extension mcp-server

官方模板生成 example.js、gemini-extension.json 和 package.json。还可选择 context、custom-commands 等模板;具体模板以当前 CLI 支持为准。

准备运行产物

阅读模板的 package.json,安装声明依赖,若项目需要编译则生成产物。manifest 应指向实际可执行入口。开发文档中 npm install 是扩展项目的准备步骤,不是 CLI 自动替所有发布包安装依赖的保证。

链接与验证

在扩展目录执行:

gemini extensions link .

链接省去反复复制安装,但源码修改后仍需生成构建产物。扩展参考建议重启会话;命令参考另列 /extensions restart 和针对命令定义的 /commands reload,可用入口以当前版本为准,重载未生效时重启 CLI。先用 /extensions list 看扩展,再检查 /mcp list、/help 或 /skills list 中相应能力,最后执行一个受控任务。

选择内容形式

持续背景放 GEMINI.md,偶尔才需要的复杂流程放 Skill;用户主动调用的重复提示放 commands,工具前后自动校验放 Hooks。避免把大量参考正文作为每次启动的固定上下文。

命令参数与脚本

官方教程用 {{args}} 与 !{...} 组合 shell 输出。实际命令应按自定义命令的参数处理规则编写,考虑参数引用、允许路径和错误结果;不要将任意用户输入无条件变成新的 shell 结构。

分享前检查

验证新环境中入口可运行、资源路径使用 extensionPath、必需变量在 settings 声明、所有能力可找到。开发机已有依赖或绝对路径可能掩盖发布包缺文件的问题。