最近爆火的gemini-cli有哪些常用的api?

119 阅读3分钟

一、核心命令行参数

gemini -p "你的提示"          # 发送单次文本请求
gemini -c                   # 启动交互式聊天模式
gemini --model gemini-pro    # 指定使用的模型(如 gemini-pro、gemini-1.5-flash)
gemini --debug               # 启用调试输出(显示请求详情)
gemini --quiet               # 隐藏错误信息
gemini --sandbox             # 在沙盒环境中执行工具(需 Docker/Podman)

二、文件系统操作

# 读取文件内容
gemini "读取文件:@/path/to/file.txt"
gemini "读取文件前10行:@/path/to/file.txt?offset=0&limit=10"

# 写入文件
gemini "创建 HTML 文件:@/path/to/index.html\n内容:<h1>Hello</h1>"

# 列出目录
gemini "列出目录:@/path/to/directory"
gemini "列出目录并忽略 .git 文件:@/path/to/directory?ignore=('.git', '*.log')"

# 搜索文件内容
gemini "搜索 .js 文件中的 'async' 关键字:@/src/**/*.js?pattern=async"

# 批量读取文件
gemini "读取所有 .md 文件:@/docs/**/*.md"

三、工具调用格式(函数调用语法)

# 通用格式
{
  "name": "工具名称",
  "parameters": {
    "参数名": "值"
  }
}

# 示例:读取文件
{
  "name": "read_file",
  "parameters": {
    "path": "/path/to/file.txt"
  }
}

# 示例:执行 Shell 命令
{
  "name": "run_shell_command",
  "parameters": {
    "command": "ls -l"
  }
}

# 示例:网页内容获取
{
  "name": "web_fetch",
  "parameters": {
    "url": "https://example.com"
  }
}

四、环境变量配置

export GEMINI_API_KEY="your_api_key"        # 设置 API 密钥
export GEMINI_API_BASE_URL="https://api.example.com"  # 自定义 API 端点
export HTTP_PROXY="http://127.0.0.1:7890"  # 设置代理
export GOOGLE_CLOUD_PROJECT="your-project-id"  # 企业账户必填

五、配置文件(settings.json)

{
  "coreTools": ["read_file", "run_shell_command"],  # 启用的工具列表
  "excludeTools": ["run_shell_command(rm)"],         # 禁用危险命令
  "fileFiltering": {
    "respectGitIgnore": true,
    "enableRecursiveFileSearch": false
  },
  "autoAccept": true  # 自动批准安全的只读工具调用
}

六、高级功能

# 代码生成与重构
gemini "重构此文件:@/path/to/api.js?pattern=callback-to-async"

# 上下文管理
gemini /memory save "重要信息"  # 保存长期记忆
gemini /memory show            # 查看记忆内容

# 错误处理
gemini --ignore-errors         # 忽略工具调用错误
gemini --retry 3               # 重试失败的请求(最多3次)

七、HTTP API 代理(兼容 OpenAI 接口)

# 启动代理服务
gemini-cli-oai-proxy --port 11434

# 使用 OpenAI SDK 调用
curl -X POST http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-pro",
    "messages": [{"role": "user", "content": "Hello"}]
  }'

八、安全与沙盒

# 启用沙盒模式(限制文件访问)
gemini --sandbox -p "执行受限操作"

# 查看沙盒日志
gemini /sandbox logs

九、网络与搜索

# 网页内容获取
gemini "总结此网页:https://example.com"

# Google 搜索
gemini "搜索 Gemini API 文档:@google"

十、调试与监控

gemini /stats                   # 查看 token 使用统计
gemini /checkpoint save        # 保存项目快照
gemini /checkpoint restore     # 恢复到最近的快照

注意事项:

  1. 文件路径:需使用绝对路径或相对于当前工作目录的路径。
  2. 工具安全:执行 run_shell_command 时建议通过 excludeTools 限制危险命令。
  3. 上下文窗口:Gemini Pro 支持 1M token,可处理超长文档,但需注意网络传输限制。
  4. 代理配置:国内用户需配置 HTTP/HTTPS 代理以访问 Google 服务。

这些 API 覆盖了文本交互、文件操作、代码辅助、网络访问等核心功能,可通过自然语言或结构化函数调用灵活使用。