Hive 配置指南:从全局默认值到 Agent 级覆盖的完整实战手册

发布时间:2026/9/24 1:40:25

Hive 配置指南:从全局默认值到 Agent 级覆盖的完整实战手册 人工智能AI Agent多智能体MCP 服务工具调用浏览器控制【免费下载链接】hiveMulti-Agent Harness for Production AI项目地址https://gitcode.com/gh_mirrors/hive48/hive点击查看免费下载导读Hive 是一个基于 Python 的多智能体生产级框架它的配置体系不依赖集中的config.yaml或 Docker Compose而是由「全局 JSON 配置 环境变量 Agent 级 config.py 项目级 .mcp.json」四层叠加而成。本文基于仓库 docs/configuration.md 展开结合 core/framework/config.py 等源码实现完整讲解 LLM Provider 切换、环境变量、Agent 级配置覆盖、MCP 服务注册、存储布局与故障排查读完即可独立完成 Hive 从安装到多 Provider 切换的整套配置。配置体系总览Hive 是 Python 编写的 Agent 框架配置通过环境变量和 Agent 级配置文件处理没有集中的config.yaml或 Docker Compose 编排。配置信息分布在以下五个层面~/.hive/configuration.json (全局默认值provider、model、max_tokens) Environment variables (API keys、运行时开关) Agent config.py (每个 Agent 的设置model、tools、storage) pyproject.toml (包元数据与依赖) .mcp.json (MCP 服务器连接)其中~/.hive/configuration.json由安装脚本quickstart.sh在首次初始化时创建保存所有 Agent 共享的默认 LLM Provider、模型与max_tokens每个 Agent 包内的config.py负责在全局默认值之上做局部覆盖API Key 等敏感信息一律走环境变量MCPModel Context Protocol服务器则在项目根目录的.mcp.json中声明。全局配置~/.hive/configuration.json文件结构与字段说明全局配置文件的典型内容如下{ llm: { provider: anthropic, model: claude-sonnet-4-5-20250929, max_tokens: 8192, api_key_env_var: ANTHROPIC_API_KEY }, created_at: 2026-01-15T12:00:0000:00 }字段含义说明llm.providerLLM 服务商标识如anthropic、openrouter、deepseek、hive等同时是凭据查找的索引键llm.model默认模型名各 Agent 未显式指定时使用llm.max_tokens单次生成的最大 token 数默认 8192即DEFAULT_MAX_TOKENSllm.api_key_env_var读取 API Key 的环境变量名如ANTHROPIC_API_KEYcreated_at配置文件创建时间由quickstart.sh写入默认值的源码位置文档与源码双重确认默认max_tokens值8192定义在 core/framework/orchestrator/edge.py 的DEFAULT_MAX_TOKENS 8192并通过 core/framework/orchestrator/init.py 对外导出。另外core/framework/config.py 中也定义了同名常量get_max_tokens()的解析顺序是配置文件显式值 → 模型目录model catalog中的模型上限 →DEFAULT_MAX_TOKENS兜底。每个 Agent 的RuntimeConfig在启动时读取该文件见下文源码深入因此修改全局默认值有两种方式重新运行quickstart.sh或直接编辑该文件。源码深入配置如何被消费Hive 将配置读取逻辑集中在 core/framework/config.py 中而不是让各 Agent 模板各自复制粘贴辅助函数。关键实现包括get_hive_config()读取~/.hive/configuration.json实际路径由HIVE_CONFIG_FILE HIVE_HOME / configuration.json定义文件不存在时返回空字典JSON 解析失败时记录警告并返回空字典保证配置损坏不影响进程启动。HIVE_HOME解析_resolve_hive_home()优先读取HIVE_HOME环境变量桌面版 Electron 壳会传入平台原生 userData 目录否则默认~/.hive。这意味着同一台机器上的桌面版与 CLI 版可互不共享状态。RuntimeConfig数据类聚合了model、temperature默认 0.7、max_tokens、max_context_tokens、api_key、api_base、extra_kwargs各字段通过default_factory懒加载上述配置函数——这正对应文档所说每个 Agent 的RuntimeConfig读取该文件。get_preferred_model()将provider/model拼接为anthropic/claude-sonnet-4-5-20250929这种 LiteLLM 风格完整模型串若配置缺失回退到anthropic/claude-sonnet-4-20250514。全局配置文件中的进阶配置段从 core/framework/config.py 的实现看configuration.json除了llm段还支持若干进阶配置文档未逐条展开此处结合源码补充worker_llm为 Worker 指定独立于 Queen 的模型、api_key_env_var、api_base以及use_claude_code_subscription/use_codex_subscription/use_kimi_code_subscription/use_antigravity_subscription等订阅式凭据开关未配置时回退到llm段默认值。vision_fallback为不支持图片输入的纯文本模型配置备用视觉模型provider/model/api_key_env_var/api_base用于工具结果图片的自动字幕化。llm.api_keys密钥池数组启用后KeyPool会在多个 Key 间轮转避免单 Key 限流。llm.extra_body透传给 LiteLLM/OpenAI SDK 的原始请求体例如 vLLM 的chat_template_kwargs用于关闭模型默认思考。retention数据保留 janitor 的窗口配置各字段还可用HIVE_RETENTION_字段大写环境变量覆盖环境变量优先于文件、文件优先于默认值。adaptive_tool_budget、email_senders、gcu_enabled、gcu_viewport_scale等开关分别控制自适应工具预算、邮件发送工具套件、GCU 浏览器自动化及其视口缩放。这些配置段证明configuration.json是一个可扩展的分层配置载体llm段只是最核心的默认值部分。环境变量配置LLM Provider真实执行至少需要一个# Anthropic主 Provider export ANTHROPIC_API_KEYsk-ant-... # OpenAI可选通过 LiteLLM 使用 GPT 系列模型 export OPENAI_API_KEYsk-... # OpenRouter可选托管模型 export OPENROUTER_API_KEY... # Hive LLM可选Hive 托管模型 export HIVE_API_KEY... # Cerebras可选用于输出清洗器与部分节点 export CEREBRAS_API_KEY... # Groq可选高速推理 export GROQ_API_KEY...框架通过 LiteLLM而密钥解析的完整优先级链在 core/framework/config.py 的get_api_key()中显式密钥池 → Claude Code / Codex / Kimi Code / Antigravity 订阅 token → 加密凭据库EncryptedFileStorage由HIVE_CREDENTIAL_KEY解锁→ 环境变量兜底。凭据库优先于环境变量是为了让桌面端刷新推送的 token 能对新起的RuntimeConfig实例立即生效。原生支持 Provider 示例DeepSeek、Mistral、Together AI、xAI、Perplexity{ llm: { provider: deepseek, model: deepseek-chat, max_tokens: 8192, api_key_env_var: DEEPSEEK_API_KEY } }注意事项将provider设为deepseek或mistral、together、xai、perplexitymodel使用标准模型名例如deepseek-chat这些原生支持的 Provider 无需配置api_base。OpenRouter 示例{ llm: { provider: openrouter, model: x-ai/grok-4.20-beta, max_tokens: 8192, api_key_env_var: OPENROUTER_API_KEY, api_base: https://openrouter.ai/api/v1 } }注意事项provider设为openroutermodel使用 OpenRouter 原始模型 ID例如x-ai/grok-4.20-betaapi_base应为https://openrouter.ai/api/v1源码中该常量定义于 core/framework/config.py 的OPENROUTER_API_BASE如果你粘贴的模型名已经以openrouter/开头Hive 会容忍并自动归一化见get_preferred_model()中对前缀的剥离逻辑。Hive LLM 示例{ llm: { provider: hive, model: queen, max_tokens: 32768, api_key_env_var: HIVE_API_KEY, api_base: https://api.adenhq.com } }注意事项provider设为hive常见 Hive 模型取值queen、kimi-k2.6、kimi-k2.5、GLM-5Hive LLM 请求使用 Hive 端点。从源码看core/framework/config.py 中HIVE_LLM_ENDPOINT https://llm.open-hive.com是当前生产代理端点LiteLLM 的 Anthropic 处理器会自动追加/v1/messages因此配置里只需基地址文档示例中的https://api.adenhq.com是仅为 Bearer 认证白名单保留的旧主机新部署建议指向llm.open-hive.com。搜索与工具可选# Agent 网络搜索Brave Search export BRAVE_SEARCH_API_KEY... # Exa Search备选网络搜索 export EXA_API_KEY...运行时标志# 无 LLM 调用运行 Agent仅做结构校验 export MOCK_MODE1 # 凭据库加密密钥~/.hive/credentials 的 Fernet 密钥 export HIVE_CREDENTIAL_KEYyour-fernet-key # 自定义 Agent 存储路径默认~/.hive/agents/{agent_name}/ export AGENT_STORAGE_PATH/custom/storage说明MOCK_MODE1对应框架中的 Mock Providercore/framework/llm/mock.py 中的MockLLMProvider适合在无 API Key 的环境下做流程与结构验证HIVE_CREDENTIAL_KEY解锁~/.hive/credentials/下的加密凭据加密后端为 core/framework/credentials/storage.py 的EncryptedFileStorage配合get_api_key()中凭据库优先的解析顺序可实现桌面端密钥热更新HIVE_HOME环境变量可整体重定向 Hive 的状态根目录默认~/.hive桌面版即通过它指向平台原生 userData 目录。Agent 级配置每个 Agent 的 config.py每个 Agent 包内包含自己的config.py# exports/my_agent/config.py CONFIG { model: anthropic/claude-sonnet-4-5-20250929, # 默认 LLM 模型 max_tokens: 8192, # 默认值framework.orchestrator 中的 DEFAULT_MAX_TOKENS temperature: 0.7, tools: [web_search, pdf_read], # 启用的 MCP 工具 storage_path: ~/.hive/agents/my_agent/, # 运行时数据位置默认 }如果model或max_tokens被省略Agent 会从~/.hive/configuration.json加载全局默认值——这正是前面所述RuntimeConfig的default_factory机制在起作用。模板实例竞争情报 Agent仓库 examples/templates/competitive_intel_agent/config.py 展示了更贴近实战的写法它直接继承框架的RuntimeConfig作为default_config再以AgentMetadata数据类声明name、version、description、intro_messageRuntime configuration for Competitive Intelligence Agent. from dataclasses import dataclass from framework.config import RuntimeConfig default_config: RuntimeConfig RuntimeConfig() dataclass class AgentMetadata: name: str Competitive Intelligence Agent version: str 1.0.0 description: str ( Monitors competitor websites, news sources, and GitHub repositories to deliver automated weekly digests with key insights and trend analysis for product and marketing teams. ) intro_message: str ( Hi! Im your competitive intelligence assistant. Tell me which competitors to monitor and what areas to focus on (pricing, features, hiring, partnerships, etc.) and Ill research them across websites, news, and GitHub to produce a detailed digest. ) metadata: AgentMetadata AgentMetadata()Queen框架内置的原生编码 Agent自身的配置在 core/framework/agents/queen/config.py 中同样从$HIVE_HOME/configuration.json的llm段加载首选模型未配置时回退到anthropic/claude-sonnet-4-20250514——两个入口对全局配置文件的消费方式完全一致。独立 Agent 规范legacy 导出格式适用范围下面的nodes/edgesagent.json格式是独立 / 导出型 Agent格式加载器仍然支持用于单一、可导出的 Agent。它不是线上 colony 运行时的运作方式——colony 没有图结构由 Queen 在运行时动态生长并通过共享的 tracker 协调 Worker。只有在编写可移植的独立 Agent 时才使用该格式。独立 Agent 通过agent.json定义{ id: my_agent, name: My Agent, goal: { success_criteria: [...], constraints: [...] }, nodes: [...], edges: [...] }仓库模板 examples/templates/competitive_intel_agent/agent.json 给出了完整的图式规格agent元数据、graphentry_node、terminal_nodes、nodes[]、edges[]、max_steps、max_retries_per_node、goalsuccess_criteria带权重、constraints带 hard/soft 类型、required_tools与metadata。其中edges[]的condition字段支持on_success、conditional如condition_expr: str(has_github_competitors).lower() true这类安全子集表达式等取值与 core/framework/orchestrator/edge.py 中的EdgeCondition枚举一一对应。构建 Agent 请参考 Getting Started Guide了解 colony 实际运行方式请阅读 Architecture Overview。MCP Server 配置项目根目录的 .mcp.jsonMCP 服务器在项目根目录的.mcp.json中配置{ mcpServers: { files-tools: { command: uv, args: [run, files_server.py, --stdio], cwd: tools }, tools: { command: uv, args: [run, mcp_server.py, --stdio], cwd: tools } } }两个服务器的作用与当前定位files-tools独立服务器tools/files_server.py暴露文件 I/O 工具read_file、write_file、edit_file、hashline_edit、search_files。它已不再为 Agent 自动注册——Queen/Worker 现在通过terminal-tools服务器做文件 I/O用terminal_exec执行 cat/sed/heredoc用terminal_rg/terminal_glob做搜索该服务器默认将 cwd 设为会话工作目录。toolstools/mcp_server.py暴露集成工具包括网络搜索、PDF 读取与 CSV 处理。仓库中另一个真实的 MCP 配置样例是 tools/mcp_servers.json它注册了名为hive_tools的 stdio 服务器uv run python mcp_server.py --stdio提供web_search、web_scrape、send_email与数据类工具并带description字段供 Agent 理解能力边界。若需更复杂的多服务器编排可参考 core/examples/mcp_servers.json 与 examples/templates/vulnerability_assessment/mcp_registry.json。存储基于文件的持久化Hive 使用基于文件的持久化无需外部数据库所有状态位于HIVE_HOME之下$HIVE_HOME/ agents/queens/queen_id/ # Queen 档案与会话 colonies/name/ # 每个 colony 一个自包含目录 worker.json # colony 的 worker克隆规格 data/tracker.db # colony 共享的 SQLite 账本 memories/ # 分作用域的 Queen 记忆global / colony / queen credentials/ # 加密凭据存储每个 colony 都自包含在其目录中因此可移植可整体导出/导入为 tarball。colony 的按会话对话与游标状态也持久化在 colony 目录下因此崩溃或重启后能精确恢复到原进度。存储模块位于 core/framework/storage/包含会话存储、对话存储、检查点存储与并发存储等实现如session_store.py、conversation_store.py、checkpoint_store.py、concurrent.py并配套了 migrate_v2.py、migrate_v3.py 等数据迁移脚本说明目录布局会随版本演进例如 tracker 数据库已从data/移入 colony 下的tracker/。凭据库独立存放于$HIVE_HOME/credentials/由 Fernet 加密HIVE_CREDENTIAL_KEY解锁无需任何外部数据库设置。IDE 配置VS Code在.vscode/settings.json中添加{ python.analysis.extraPaths: [ ${workspaceFolder}/core, ${workspaceFolder}/exports ] }PyCharm打开 Project Settings Project Structure将core标记为 Sources Root将exports标记为 Sources Root将core加入 Python 分析路径或标记为 Sources Root是消除No module named framework类报错的关键一步因为core是框架包framework的宿主目录。安全最佳实践绝不提交 API Key—— 使用环境变量或.env文件若使用本地.env文件务必保持私密—— 本仓库未提供根目录.env.example请使用自己的本地.env或 shell 环境变量存放密钥在非生产环境中使用真实 Provider Key 验证配置—— 在生产上线前用低风险输入校验配置凭据隔离—— 每个工具在运行时自行校验其凭据。框架层面对应的实现是 core/framework/credentials/ 凭据模块EncryptedFileStorage负责落盘加密各工具通过CredentialStore.with_encrypted_storage()按 Provider 取用并且get_api_key()的解析顺序保证环境变量只是兜底而非首选。故障排查ModuleNotFoundError: No module named framework安装 core 包cd core uv pip install -e .API key not found确保环境变量已在当前 shell 会话中设置echo $ANTHROPIC_API_KEY # 或 echo $OPENROUTER_API_KEY / echo $HIVE_API_KEYWindows PowerShell 下$env:ANTHROPIC_API_KEY sk-ant-... # 或 $env:OPENROUTER_API_KEY your-openrouter-key $env:HIVE_API_KEY your-hive-keyAgent not found从项目根目录携带 PYTHONPATH 运行PYTHONPATHexports uv run python -m my_agent validate详细的安装说明请参阅 Environment Setup。若需要进一步理解配置背后的运行时概念可延伸阅读 关键概念colony、Queen 以及 架构总览。赞分享人工智能AI Agent多智能体MCP 服务工具调用浏览器控制【免费下载链接】hiveMulti-Agent Harness for Production AI项目地址https://gitcode.com/gh_mirrors/hive48/hive点击查看免费下载相关推荐WinUtil 完整指南Windows 批量装软件、系统优化与更新管理WinUtil 完整指南Windows 批量装软件、系统优化与更新管理 WinUtil 是一款免费开源的 Windows 系统优化工具把装软件、调优化、修故桌面应用运维Semi Design ConfigProvider 全局配置与 semiGlobal 默认 Props 覆盖实战指南Semi Design ConfigProvider 全局配置与 semiGlobal 默认 Props 覆盖实战指南 ConfigProvider 是 Sem前端UI组件设计系统React Start 路由级错误边界Error Boundaries完全指南从全局默认配置到单路由覆盖React Start 路由级错误边界Error Boundaries完全指南从全局默认配置到单路由覆盖 在 React Start 全栈应用中渲染阶段前端路由SSR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/24 1:40:25

4路CAN FD同时采集与LTE云调试:汽车电子逆向工程实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 1:35:25

RDK X3实战指南:边缘AI硬件部署与避坑全链路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 3:00:30

Win11 忘记本地账户密码,无需旧密码快速重置(PowerShell 命令行方案)

Win11 忘记本地账户密码,无需旧密码快速重置(PowerShell 命令行方案) 📌适用范围:Windows11 本地账户,已经可以进入系统(能进桌面、可打开管理员终端);不适合微软账户登录,也不适合完全卡在登录界面无法进系统的场景。 一、问题场景 日常使用 Win11 时,很多人会遇…

2026/9/24 3:00:30

基于TinyUSB的STM32 U盘实现:从RAM Disk到SPI Flash完整教程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 3:00:30

StarRocks 全面支持 Paimon 2.0:构建多模态统一分析与检索

作者:范振,StarRocks TSC Member;阿里云开源 OLAP 负责人StarRocks 对 Lakehouse 的投入已经持续多年。自 2023 年提出“From OLAP to Lakehouse”技术路线以来,社区持续完善对 Delta Lake、Iceberg、Paimon 等开放湖表的支持。数…

2026/9/24 3:00:30

论文里那个基础集合坍缩成一个基的bug,AI把论文变代码时在偷懒

你有没有想过一个问题:AI 现在写代码这么厉害,能不能直接把一篇学术论文变成一个能跑起来的代码仓库?听起来像是科幻片里的情节,但这件事已经有人在做了。而且做出来的结果,有点一言难尽。2024 年有一篇论文叫《Universal Neural …

2026/9/23 12:07:00

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/23 12:06:55

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/24 0:00:21

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为…

2026/9/24 0:00:21

单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

简介:一份基于单细胞RNA测序数据的细胞类型注释算法研究Python毕业设计源码,针对计算机相关专业正在做毕设或需要项目实战的学习者,可用于课程设计与期末大作业。项目代码完整、经导师指导评审通过,可直接运行,覆盖数据…

2026/9/24 0:00:21

C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

第一次在项目里被反射卡住,是在一个老旧的WinForms模块里:几十个类依赖PropertyChanged通知,运行时反射读属性、发通知,每次启动慢半拍不说,一上.NET Native/AOT裁剪模式几乎全面崩盘。后来我把这段逻辑全部改成C#源生…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码