mcpField
G
gemini-cli

gemini-cli

github.com/x-zero-lAgent 工作流2229 次安装37 周前更新
代码仓库

关于 gemini-cli

通过本地 `gemini` 命令行调用 Google Gemini,适用于大上下文分析、头脑风暴和结构化编辑建议。它直接运行 CLI,不使用 MCP。

主要功能

  1. 01通过命令行查询 Gemini
  2. 02用 `@path` 分析大型文件
  3. 03使用指定方法开展头脑风暴
  4. 04生成结构化 OLD/NEW 编辑块
  5. 05获取分块响应

适用场景

  1. 01总结大型文件或目录
  2. 02为问题征求另一种意见
  3. 03生成可确定性应用的代码修改建议

MCP 相关

此技能不使用 MCP,而是直接调用本地 `gemini` 命令行。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/x-zero-l/agent-skills --skill gemini-cli

安装后在 Claude Code 中输入/gemini-cli确认已加载。

附带文件scripts/gemini-tool.mjs

详细介绍

Gemini CLI 技能

当你需要超大的上下文窗口、第二种意见或安全的沙盒执行时,可将 Google 的 gemini CLI 用作外部“第二大脑”。此技能不使用 MCP;它会直接运行本地 CLI。

适用场景

用户提出以下请求时,可使用此技能:

  • “询问 Gemini”/“使用 Gemini”
  • 分析或总结大型文件或目录(尤其是包含 @path 引用时)
  • 使用特定框架(SCAMPER、设计思维等)集思广益
  • 生成结构化的编辑建议(“更改模式”),以便确定性地应用

前提条件

  • 已安装并配置 gemini CLI(例如,运行 gemini --version 可正常工作)
  • 允许在此环境中运行本地 shell 命令
  • 对于沙盒执行,Gemini CLI 支持 -s/--sandbox(参见 gemini --help)

核心命令

单次查询(普通模式)
gemini "Explain what this code does: @src/main.ts"
选择模型
gemini -m gemini-3-pro-preview "..."
gemini -m gemini-3-flash-preview "..."
沙盒模式
gemini -s "Safely test @scripts/example.py and explain the results."

辅助脚本(推荐)

此技能附带一个无依赖的包装脚本,其行为与 gemini-mcp-tool 的核心功能相同,但不使用 MCP:

skills/gemini-cli/scripts/gemini-tool.mjs

重要提示:Gemini CLI 只能读取其当前“项目目录”下的文件(通常是进程的工作目录)。请从要让 Gemini 读取的代码库中运行包装脚本,或传入 --cwd。

node skills/gemini-cli/scripts/gemini-tool.mjs help
向 Gemini 提问(包装脚本)
node skills/gemini-cli/scripts/gemini-tool.mjs ask --prompt "Summarize @. in 5 bullets."
node skills/gemini-cli/scripts/gemini-tool.mjs ask --cwd /path/to/project --prompt "Summarize @. in 5 bullets."
node skills/gemini-cli/scripts/gemini-tool.mjs ask --prompt "..." --model gemini-3-pro-preview
node skills/gemini-cli/scripts/gemini-tool.mjs ask --prompt "..." --sandbox
集思广益(包装脚本)
node skills/gemini-cli/scripts/gemini-tool.mjs brainstorm --prompt "How should we design onboarding?" --methodology scamper --ideaCount 12
更改模式(结构化编辑+分块缓存)

当你希望 Gemini 输出可通过精确字符串匹配应用的确定性 OLD/NEW 块时,请使用更改模式。

node skills/gemini-cli/scripts/gemini-tool.mjs ask --changeMode --prompt "In @src/foo.ts, rename Foo to Bar and update call sites."

如果响应被分块,输出中会包含 cacheKey。获取下一块:

node skills/gemini-cli/scripts/gemini-tool.mjs fetch-chunk --cacheKey <key> --chunkIndex 2

安全规则

  • 未经用户明确批准,绝不要执行 Gemini 输出中的破坏性命令。
  • 在更改模式下,OLD 块必须与文件内容完全一致;否则,不要应用编辑。
  • 除非用户明确要求进行更改,否则优先进行只读分析。

评论

支持 Markdown