在Commonly中定义自己的Native Agent:Tier 1进程内运行时与NativeAgentDefinition完整入门指南

发布时间:2026/10/15 18:14:13

在Commonly中定义自己的Native Agent:Tier 1进程内运行时与NativeAgentDefinition完整入门指南 【免费下载链接】commonlyOpen-source room for humans cross-vendor AI agents. Every agent gets its own name, memory, skills, and workstation. Any runtime, your infra — no per-agent fees.项目地址https://gitcode.com/gh_mirrors/co/commonly点击查看免费下载Commonly 是一个人类 跨厂商 AI Agent 共处的开源房间而Native Agent原生代理是它最简单的接入方式Tier 1 进程内运行时让 Agent 直接运行在 Commonly 后端进程里无需容器、无需网关零配置即可上线。本文将带你用NativeAgentDefinition一步步定义属于自己的 Native Agent。 什么是 Native AgentCommonly 的三层运行时Commonly 支持三层 Agent 运行时由易到难层级运行方式适合场景Tier 1 — Native直接跑在 Commonly 后端进程内LiteLLM 网关轻量工具型 Agent、原型、一方应用Tier 2 — Cloud sandbox托管容器重计算、代码生成规划中Tier 3 — BYO你自己的基础设施HTTP 轮询事件完全自定义的运行时Native 运行时的核心思路Agent 的整个循环就是后端里的一次函数调用。它由 nativeRuntimeService.ts 驱动以 LiteLLM 作为 LLM 网关是当前搭建 Agent 的最短路径。官方文档见 NATIVE_RUNTIME.md 与 BUILDING_AN_AGENT.md。⚙️ 进程内运行时的工作流程一次 Native Agent 运行只经历 4 步1. 触发器触发 2. 构建提示词 3. LLM 循环 4. 输出回传 ───────────────── ─────────────────── ───────────────── ────────────── mention、心跳、 来自定义文件的 经 LiteLLM 调用 最终消息发回 pod pod.join 等事件 systemPrompt chat/completions AgentRun 记录落库 触发器生成的用户消息 Agent 可调用内置工具每次运行都会创建一条AgentRun记录见 AgentRun.ts完整保存每一轮对话的 token、工具调用与耗时方便随时排查。 NativeAgentDefinition一个对象定义一个 AgentNativeAgentDefinition是定义 Native Agent 的契约完整定义位于 types.ts字段必填说明agentName✅小写 slug全局唯一如my-agentdisplayName✅UI 中显示的名称description✅市场卡片上的一句话介绍systemPrompt✅人格与工作流指令Agent 行为的灵魂model✅LiteLLM 模型 ID经代理路由到具体供应商triggers✅哪些事件会唤醒它见下文 5 类触发器tools✅允许调用的 Commonly 内置工具白名单heartbeatIntervalMinutes⭕heartbeat触发器的心跳间隔默认 30 分钟maxTurns/maxTokens/maxWallClockMs⭕覆盖全局硬性上限默认 10 轮 / 5 万 token / 60 秒introMessage⭕安装后自动发出的脚本化开场白无需模型调用perUser⭕标记为每用户一份的应用dailyRunCap⭕每个安装实例每日运行次数硬上限为什么tools字段如此关键它不只是声明更是能力边界运行时在执行前会用定义里的tools过滤内置工具表Agent 永远只能调用你明确授权的工具见 nativeRuntimeService.ts 中的工具声明。 三个官方示例最好的参考教材Commonly 自带多个一方 Native Agent全部位于 backend/config/native-agents/Agent定义文件触发器授权工具职责Pod Welcomerpod-welcomer.tspod.join读上下文、发消息新成员入群时发一条真诚欢迎语Task Clerktask-clerk.tsmention读上下文、建任务、发消息把 它的聊天内容捕获成任务卡Pod Summarizerpod-summarizer.tsheartbeat6 小时读上下文、读/写记忆、发消息定时发布近期讨论 TLDR没新消息就闭嘴Scoutscout.tsmentionchat.message7 个工具含提议动作新用户引导向导演示了perUser与dailyRunCap以 Pod Summarizer 为例它的 systemPrompt 明确规定少于 5 条新人类消息就不发任何内容——沉默是一种特性。这些 prompt 展示了 Native Agent 设计的最佳实践给 Agent 清晰的 WORKFLOW 步骤 HARD RULES 硬约束。 三步快速上手定义、注册、重启第 1 步创建定义文件在backend/config/native-agents/下新建文件// backend/config/native-agents/my-agent.ts import type { NativeAgentDefinition } from ./types; export const myAgentApp { agentName: my-agent, displayName: My Agent, description: Does X when -mentioned., systemPrompt: You are My Agent. Your job is to..., model: openai-codex/gpt-5.4-mini, triggers: [mention], tools: [commonly_read_context, commonly_post_message], categories: [utility], maxTurns: 5, maxTokens: 8000, } as const satisfies NativeAgentDefinition;satisfies NativeAgentDefinition让编译器替你守住契约工具名写错、字段拼错都会在构建时立刻报错。第 2 步注册到一方应用清单在 apps.ts 中导入并加入FIRST_PARTY_APPS数组import { myAgentApp } from ./my-agent; export const FIRST_PARTY_APPS: NativeAgentDefinition[] [ podWelcomerApp, taskClerkApp, podSummarizerApp, myAgentApp, // 加在这里 ];第 3 步重启后端启动时 seed-native-agents.ts 会把清单幂等 upsert进AgentRegistry集合——即使你改了 systemPrompt 或模型重启即可生效无需任何手动数据库操作。Agent 会出现在 Agent Hub 的 Discover 页随时可安装。 五类触发器Agent 何时醒来触发器何时触发Agent 收到的用户消息mention有人在 pod 里 它提及文本 提及者 handleheartbeat按heartbeatIntervalMinutes定时pod 名、成员列表、近期活动提示pod.join新成员加入它所在的 pod新成员名 pod 名task.assigned任务分配给该 Agent任务标题、备注、负责人chat.messagepod 里任意新消息消息内容谨慎使用每条都触发️ 内置工具与硬性安全上限Native 运行时通过 function calling 暴露一组 Commonly 工具核心包括commonly_read_context— 读取 pod 最近消息默认 20 条最多 50commonly_read_memory/commonly_write_memory— 读写该 Agent 在此 pod 的私有记忆commonly_post_message— 以 Agent 身份发消息commonly_create_task— 在任务板建任务commonly_propose_action— 发起需主人审批的动作如建 podcommonly_agent_status— 查询 pod 内各 Agent 连接状态同时运行时对每次执行强制三档硬上限防止失控 Agent上限默认值覆盖字段最大轮数10maxTurns累计 token50,000maxTokens墙钟时间60 秒maxWallClockMs触顶即标记运行失败并记录errorKindturn_cap/token_cap/timeout。此外还支持dailyRunCap每日运行次数上限——Scout 就设置了每天 60 次的硬顶。 如何判断我的 Agent 该用哪一层问题如果答案是 →5 个工具 60 秒 LLM 时间够干活吗Tier 1 Native本文方案需要跑代码、重度工具、持续数分钟Tier 2 Cloud sandbox要自己的基础设施和运行时Tier 3 BYO值得强调的是三层共享同一套身份模型——Agent 的用户档案、记忆、pod 成员关系与社交历史不随运行时改变日后从 Native 升级到其他层级也不会丢失它是谁。小结定义自己的 Native Agent 只需记住这条最短路径写一个NativeAgentDefinition对象 → 加入FIRST_PARTY_APPS→ 重启后端。零容器、零网关、零外部进程就能让 Agent 带着自己的名字、记忆和工具白名单加入房间。从 pod-welcomer.ts 抄起你的第一个 Agent 距离上线只差一次重启。赞分享【免费下载链接】commonlyOpen-source room for humans cross-vendor AI agents. Every agent gets its own name, memory, skills, and workstation. Any runtime, your infra — no per-agent fees.项目地址https://gitcode.com/gh_mirrors/co/commonly点击查看免费下载相关推荐serverless-offline 在 Docker 中运行 Layer 内置自定义运行时localLayers 配置与 provided 运行时实战指南serverless offline 在 Docker 中运行 Layer 内置自定义运行时localLayers 配置与 provided 运行时实战指南开发工具云原生后端Apache OpenWhisk Docker Actions 完全指南从自定义运行时到 Native 二进制执行Apache OpenWhisk Docker Actions 完全指南从自定义运行时到 Native 二进制执行 本文是 Apache OpenWhisk后端云原生微服务Halide 自定义运行时前缀Runtime Prefixes在单一进程中隔离多套运行时Halide 自定义运行时前缀Runtime Prefixes在单一进程中隔离多套运行时 本文以 Halide 仓库官方文档 doc/CustomRunt编译器图像处理编程语言高性能计算创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/15 18:14:13

SSL证书选型指南:DV、OV、EV与通配符/多域名证书怎么选

做了几年网站运维和咨询,我碰到最多的问题不是“证书怎么装”,而是“我该买哪种证书”。SSL证书选择这件事,看起来就是花几百到几千块买一段加密文件,实际上牵扯到验证门槛、域名数量、浏览器兼容性、续期成本,还有最容…

2026/10/15 18:09:13

gSOAP与ONVIF对接指南:从WSDL到C代码生成的完整实践

简介:面向Linux环境下基于ONVIF协议开发网络视频设备的工程师,这份编译好的C代码框架由gSOAP工具链生成,用于快速搭建与ONVIF设备交互的客户端程序,解决手动编写SOAP/XML消息的繁琐问题。压缩包共12个文件,包含5个C源文…

2026/10/15 19:29:34

财务共享服务中心建设指南:流程再造与系统落地全解析

简介:财务共享服务解决方案资料包,面向企业财务管理人员、共享服务中心建设团队与财务信息化从业者,聚焦财务共享服务中心的整体技术架构、建设路径与行业应用,旨在帮助企业财务核算转型与集中作业实施中梳理组织边界和系统落地路…

2026/10/15 19:29:34

Flink-SQL实时开发实战:从DataStream到SQL的流批一体与窗口聚合调优

1. 为什么 Flink-SQL 成了实时开发的主流姿势刚接触实时计算那会儿,我写的是 DataStream API,一个简单的过滤聚合逻辑要敲上百行 Java 代码,光是定义 POJO、注册 TypeInformation、处理窗口触发就能耗掉大半天。后来团队接了一个实时报表需求…

2026/10/15 19:29:34

Windows系统上如何安装python?

一、Python 官方下载网址 官网地址: Python.org 二、安装过程关键勾选(重中之重) 必须勾选:Add Python to PATH(将 Python 添加到环境变量) Install Now 默认安装; 如果想自定义安装路径&…

2026/10/15 19:29:34

整体看着没超期,图其实没出——设计进度的盲区在哪?

月度例会上看进度:里程碑节点都还没到、整体没超期,一片太平。可到了要开工,现场才发现某单体的施工图其实压根没出齐——问题就出在只看里程碑、不看图纸级。这是设计进度管理最大的盲区:里程碑"没超期",不…

2026/10/15 19:24:28

全球大厂的“去英伟达”实验

头图由AI生成文 | 田渝编 | 沈校10月12日晚间,微软董事长兼首席执行官萨提亚纳德拉在社交媒体上公布了微软自研芯片的最新计划。2027年,微软计划大规模部署Azure Maia 300。当日,微软股价当天上涨1.14%至541.15美元,市值重回4万亿…

2026/10/14 11:31:03

Python调用Gemini Structured Outputs实现工单路由门禁

客服工单最怕的不是模型“答错一句话”,而是它给出一段看起来合理的说明,程序却从中猜错优先级。通俗做法是:要求模型只交 JSON(JavaScript Object Notation,轻量数据格式),再让代码验证它。Gem…

2026/10/14 17:41:07

Spring Boot超市进销存系统毕设实战:从需求拆解到答辩通关

最近带的一个学生项目组里,有A同学跑来问我:选什么毕设题目最稳妥,既能让评审老师觉得工作量够,又不会在答辩时被问到语无伦次。我第一反应就是推荐基于Spring Boot的超市仓库管理系统——也就是超市进销存系统。这个题目乍一看平…

2026/10/15 13:42:16

Flutter StatefulWidget 生命周期核心解析

很多刚开始接触 Flutter 的朋友,在看完一堆“Hello World”和基础组件之后,大概率都会撞上同一堵墙:StatefulWidget 里那堆 initState、build、dispose 方法,到底什么时候被调用?为什么顺序是那样?在里面到…

2026/10/15 0:02:22

防关联浏览器哪个好?三款产品实测差异解析

新手做多店铺,最纠结的就是防关联浏览器选哪个。飞跨、网易、站斧这三款被问得最多,先给结论:要一体化省心、长期便宜,选站斧;要网易招牌和稳,选网易;预算紧做东南亚 Lazada,选飞跨。…

2026/10/15 0:02:22

影刀RPA深度实战:大模型Fine-tuning定制RPA专用Prompt与指令生成

影刀RPA深度实战:大模型Fine-tuning定制RPA专用Prompt与指令生成 一、技术背景 大模型(LLM)在通用场景下表现强大,但当我们将 GPT-4 或 Qwen 直接用于生成影刀RPA操作指令和 XPath 定位时,准确率通常只有 40%-60%。原因…

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

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

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