AI工具配置 826

Oh My OpenAgent (原oh-my-opencode)配置指南

Oh My OpenAgent 前身是 oh-my-opencode,是一个高度可定制的 AI 编程辅助工具。虽然默认配置已经能覆盖大多数使用场景,但如果你有特殊的模型偏好或功能需求,了解一下配置方式会很有帮助。

快速开始

大多数情况下,运行以下命令即可开始使用:

bash
bunx oh-my-openagent install

安装完成后,如果想调整配置,可以在项目根目录创建 .opencode/oh-my-openagent.json(项目级配置),或者在用户目录 ~/.config/opencode/oh-my-openagent.json(用户级配置)。配置文件支持 JSONC 格式,意味着你可以加注释和尾随逗号。

一个最简单的配置示例:

json
{
  "$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/master/assets/oh-my-openagent.schema.json",
  "agents": {
    "oracle": {
      "model": "openai/gpt-5.4",
      "variant": "high"
    }
  },
  "categories": {
    "quick": {
      "model": "opencode/gpt-5-nano"
    }
  }
}

内置 Agent

Oh My OpenAgent 内置了 11 个 Agent,每个都有不同的专长:

  • Sisyphus — 通用任务
  • Hephaestus — 代码构建
  • Oracle — 高级推理
  • Librarian — 知识检索
  • Explore — 代码探索
  • Multimodal Looker — 多模态理解
  • Prometheus — 性能优化
  • Metis — 元认知
  • Momus — 创意任务
  • Atlas — 导航与规划
  • Sisyphus Junior — 轻量任务

你可以为每个 Agent 单独配置模型、变体、温度等参数。例如:

json
{
  "agents": {
    "explore": {
      "model": "github-copilot/grok-code-fast-1"
    }
  }
}

Agent 可配置的选项包括:

选项 说明
model 模型标识符,如 openai/gpt-4o
variant 变体:maxhighmediumlow
category 从分类继承配置
temperature 采样温度(0-2)
top_p Top-p 采样(0-1)
prompt 完全覆盖系统提示词
prompt_append 在系统提示词后追加文本
tools 启用或禁用特定工具
disable 是否禁用此 Agent
maxTokens 响应的最大 token 数
thinking 扩展思考配置
reasoningEffort 推理强度:lowmediumhighxhigh

权限控制也很重要,每个 Agent 的权限可以设为 askallowdeny,控制文件编辑、Bash 命令执行、网络请求、无限循环覆盖、访问项目外部文件等能力。

Categories 分类系统

Categories 允许你定义 Agent 可以继承的共享配置,这比逐个 Agent 配置要方便得多。

内置分类及其默认模型:

分类 默认模型 适用场景
visual-engineering gemini-3.1-pro (high) 前端、UI/UX、设计任务
ultrabrain gpt-5.3-codex (xhigh) 深度逻辑推理
deep gpt-5.3-codex (medium) 自主解决问题与深入研究
artistry gemini-3.1-pro (high) 创意任务
quick claude-haiku-4-5 简单、快速任务
unspecified-low claude-sonnet-4-6 低投入一般任务
unspecified-high gpt-5.4 (high) 高投入一般任务
writing gemini-3-flash 文档和写作

分类可用选项包括:modelvarianttemperaturetop_pmaxTokensthinkingreasoningEfforttextVerbositytoolsprompt_appendis_unstable_agent

Skills 技能系统

内置技能包括:

  • playwright — 完整的浏览器自动化
  • agent-browser — 轻量级浏览器 Agent,适合快速查询和简单抓取
  • git-master — Git 操作专家

如果内置技能不够用,你也可以定义自定义技能:

json
{
  "skills": {
    "my-custom-skill": {
      "description": "A custom skill for specific tasks",
      "instructions": "Always use this skill when..."
    }
  }
}

钩子(Hooks)机制

钩子允许你在各个生命周期点扩展功能。Oh My OpenAgent 内置了大量钩子:

  • agent-usage-reminder — Agent 使用提醒
  • anthropic-context-window-limit-recovery — 上下文窗口限制恢复
  • auto-slash-command — 自动斜杠命令
  • auto-update-checker — 自动更新检查
  • background-notification — 后台通知
  • category-skill-reminder — 分类技能提醒
  • claude-code-hooks — Claude Code 钩子集成
  • comment-checker — 注释检查器
  • compaction-context-injector — 压缩上下文注入器
  • compaction-todo-preserver — 压缩待办事项保留器
  • delegate-task-retry — 委托任务重试
  • directory-agents-injector — 目录 Agent 注入器
  • directory-readme-injector — 目录 README 注入器
  • edit-error-recovery — 编辑错误恢复
  • interactive-bash-session — 交互式 Bash 会话
  • keyword-detector — 关键词检测器
  • non-interactive-env — 非交互环境检测
  • prometheus-md-only — Prometheus 仅 Markdown 模式
  • question-label-truncator — 问题标签截断器
  • ralph-loop — Ralph 循环
  • rules-injector — 规则注入器
  • session-recovery — 会话恢复
  • sisyphus-junior-notepad — Sisyphus Junior 记事本
  • start-work — 开始工作检测
  • stop-continuation-guard — 停止继续守卫
  • subagent-question-blocker — 子 Agent 问题拦截器
  • task-reminder — 任务提醒
  • task-resume-info — 任务恢复信息
  • tasks-todo — 待办事项集成
  • write-disabler — 写入禁用器
  • think-mode — 思考模式
  • thinking-block-validator — 思考块验证器
  • unstable-agent-babysitter — 不稳定 Agent 看护
  • write-existing-file-guard — 写入现有文件守卫

钩子很多,大多数场景下不需要手动配置,但如果需要深度定制,这里就是切入点。

MCP 集成

Oh My OpenAgent 支持 MCP(Model Context Protocol)扩展:

  • websearch — 由 Exa 驱动,提供高质量搜索结果
  • context7 — 文档检索和上下文管理
  • grep_app — GitHub 代码搜索集成

浏览器自动化

浏览器自动化支持两种模式:

工具 说明 适用场景
playwright 完整的浏览器自动化(默认) 测试、复杂交互
agent-browser 轻量级浏览器 Agent 快速查询、简单抓取

Tmux 集成

如果习惯在 Tmux 环境中工作,可以启用集成:

json
{
  "tmux": {
    "enabled": true,
    "layout": "你的布局偏好",
    "main_pane_size": "主面板大小"
  }
}

Git Master

Git Master 配置可以自定义提交信息:

json
{
  "gitMaster": {
    "commit_footer": "追加到提交消息的文本",
    "include_co_authored_by": true
  }
}

注释检查器

注释检查器可以验证代码中的注释。在自定义提示词中使用 {{comments}} 占位符:

json
{
  "comment-checker": {
    "custom_prompt": "Review these comments: {{comments}}"
  }
}

实验性功能

以下几个实验性功能可以按需开启:

  • aggressive_truncation — 积极截断输出
  • auto_resume — 自动恢复中断的任务
  • preemptive_compaction — 在达到限制前压缩上下文
  • truncate_all_tool_outputs — 截断所有工具输出
  • dynamic_context_pruning — 动态上下文修剪

这些功能默认关闭,有需要的话可以自行测试。

LSP 配置

如果你使用 Language Server Protocol 相关的工具,可以这样配置:

json
{
  "lsp": {
    "command": "LSP 服务器命令",
    "extensions": ["匹配的文件扩展名"],
    "priority": 优先级数字,
    "env": { "环境变量": "值" },
    "initialization": { "初始化选项": {} },
    "disabled": false
  }
}

环境变量

通过 OPENCODE_CONFIG_DIR 环境变量可以覆盖默认配置目录路径。

后台任务

后台任务的并发控制优先级为:modelConcurrency > providerConcurrency > defaultConcurrency。相关配置项包括:

  • defaultConcurrency — 默认最大并发任务数
  • staleTimeoutMs — 过时任务超时时间(毫秒)
  • providerConcurrency — 每个提供商的并发限制
  • modelConcurrency — 每个模型的并发限制

小结

Oh My OpenAgent 的配置体系相当完善,从 Agent、分类、技能、钩子到 MCP 扩展,每个层面都有细粒度的控制能力。默认配置开箱即用,但当你需要调优或深度定制时,这些配置选项就是你的工具箱。

建议先从最基础的需求开始——比如切换模型或调整某个 Agent 的行为——熟悉后再逐步探索更高级的功能。

感谢阅读,如果这篇文章对你有帮助,欢迎继续浏览同栏目内容。

返回 AI工具配置