
Agent 架构总览

- cron 触发器到点(每个工作日 08:00),平台自动创建一个新会话,把
initial_events里的任务指令投递给智能体; - 智能体收到晨报任务,按系统提示词约定的固定顺序开工:先拉隔夜行情(美股、港股、大宗商品、汇率),再检查持仓标的异动;
- 数据拉取通过金融市场终端插件完成——智能体用「能力名」请求数据(如
market.price.eod、fundamental.estimates),不需要关心具体供应商接口; - 持仓数据(如果挂载了持仓文件)用于异动检测和归因分析,涨跌幅超阈值的标的逐条列出并附原因;
- 智能体汇总今日财报事件和宏观日历,生成尾部风险提示;
- 按晨报工作流技能的排版规范生成 HTML 早报,写入
output/目录并登记为产物; - 会话回到
idle,产物可通过 API 取回,或转发到邮件、企业微信。
为什么拆成三层:触发器管调度,工作流管内容,数据源管取数,三者可分别调整,避免相互影响。
核心设计
官方金融晨报监控智能体的全部能力来自「模型 + 系统提示词 + 插件 + 触发器」的组合,工具使用平台默认内置工具集。它的设计目标有三条,后面每个配置选择都由此出发:- 到点就跑,不等指令:每个工作日 08:00 自动触发,全程无人值守,产出写入
output/目录; - 结论先行,3 分钟扫完:读者是开盘前快速扫一眼的人,每个板块第一句话就是结论,后面才是支撑数据;
- 数据有出处,缺数据不编:所有数据标注来源与取数日期;无法取数或无法核实的内容列入「待核实」,严禁编造。
触发器:每个工作日 08:00 自动跑
这是晨报智能体与其他五个金融智能体最本质的区别。官方配置了一个 cron 触发器,表达式0 8 * * 1-5(每周一到周五 08:00),时区 Asia/Shanghai。到点后平台自动创建会话、投递 initial_events 中的任务指令,智能体直接开工,产出写入 output/ 目录。
自建时触发频率完全由你定:改成 30 7 * * 1-5 就是 7:30 跑,改成 0 18 * * 5 就是每周五 18:00 跑周报。完整配置方式见 触发器。
系统提示词:晨报工作流 + 数据口径 + 护栏
晨报智能体的系统提示词围绕「每日定时产出一份可读晨报」来写,核心约定:- 晨报工作流:收到晨报任务后,按固定顺序执行:先拉取隔夜行情(A 股收盘后到今天开盘前的美股、港股、大宗商品、汇率),再检查持仓标的的异动(涨跌幅超阈值、成交量异常、公告 / 新闻),然后汇总今日财报事件和宏观日历,最后生成尾部风险提示;
- 结论先行:晨报的读者是在开盘前快速扫一眼的人。每个板块的第一句话就是结论,后面才是支撑数据,不写「综上所述」「总体来看」这类过渡语;
- 数据口径:每次晨报携带同一个数据口径,包括市场范围(A 股 / 港股 / 美股)、币种、数据质量策略,智能体不需要向用户追问这些;
- 护栏:不执行任何交易;缺失数据不当作零;无法取数或无法核实的内容列入「待核实」并注明原因;建议与事实分开呈现。
插件:一个管工作流,一个管数据源
晨报智能体挂了两个插件,分工不同:- 机构金融插件(
institutional-finance-kit):提供晨报工作流技能。插件里的morning-briefing技能定义了持仓早报的完整生成流程(数据拉取、异动检测、报告排版);财报点评是独立任务,用earnings-review技能,需要单独配置触发器或任务指令。这些技能是「怎么写晨报」的方法论; - 金融市场终端(
financial-market-terminal):提供 11 个数据源的统一接入,包括万得 Wind、同花顺 iFinD、恒生聚源、S&P、新华财经、财联社、财新、东方财富、金融研究、Yahoo Finance、国际组织数据。智能体用「能力名」请求数据(如market.price.eod、fundamental.estimates),不需要关心具体供应商接口。
morning-briefing 技能决定「晨报该有什么板块、按什么顺序生成」,但它本身不直接对接数据供应商;数据拉取通过金融市场终端的数据源技能完成。这样换数据源时不用改工作流,换工作流时不用改数据接入。
自建时按需替换:数据源需要授权时,凭据统一放在 凭据库,运行时注入,不进智能体配置。插件的引用方式和版本固定规则见 插件。
配置选择
模型选kimi-k3。选型考虑:晨报需要同时处理多个数据源的返回结果、持仓清单和新闻文本,对长上下文和结构化输出要求高。工具用平台默认内置工具集,文件读写、代码运行、联网检索开箱即用;外部数据能力已由插件的数据源路由覆盖,一般不需要再接 MCP 服务,需要接时见 接入 MCP。
各项资源的配置如下:
运行成本
成本几乎全部来自模型 tokens;沙箱按运行时长计费(¥0.072 / 小时,一次晨报约几分钟到十几分钟,不到 ¥0.1),可以忽略;文件上传与抽取限时免费,详见 托管智能体定价。以kimi-k3 的 公开单价,测算单次晨报与按月定时运行的成本:
一次含持仓文件晨报的成本构成:
测算口径:数字来自 2026 年 9 月底至 10 月初的生产会话实测(
kimi-k3,每日定时触发),按每一次模型调用的上下文长度与输出长度折算。一次含持仓文件的常规晨报累计输入约 8M tokens,主要是 11 个数据源的返回结果和持仓清单;其中约 95% 是重复前缀,命中上下文缓存后只按缓存命中价计费,若没有缓存,成本会是现在的六七倍。需要说明:实测某次财报季 trigger 同时出了早报和业绩点评两份产物(full 完整模式,夹带 60 步点评),单次 trigger 成本约 ¥98——这是”full 模式早报 + 业绩点评”的累计,不是单次常规晨报的成本;大部分非财报季日子只有常规晨报,单次约 ¥21(无持仓时约 ¥6)。按月成本按大部分日子常规晨报、财报季部分日子夹带点评估算,持仓规模小、数据源返回少时单次成本相应更低。实际成本和时间随标的数据量、页数/深度、上传材料多少和返工轮次浮动,以控制台账单为准。插件按调用次数另行计费,单价按插件分档,见 托管智能体定价,未计入上表。
从最小版本开始搭建
晨报智能体的最小起点是「单智能体 + 两个插件 + 一个触发器」。下面按步骤给出可运行的创建命令,它不是官方配置的逐字拷贝,官方当前配置以GET /v1/agents 返回为准。
第 1 步:创建智能体
id 作为 AGENT_ID。插件 ID 用 GET /v1/plugins 列出后按显示名「机构金融插件」和「金融市场终端」查找,或在控制台智能体表单中直接勾选。
之后按需调整的字段:
第 2 步:创建执行环境
通用云沙箱即可,config 传 {"type": "cloud"},全部使用默认值:
id 作为 ENVIRONMENT_ID。如果需要访问特定数据源的外部接口,在网络白名单中放行对应域名,详见 执行环境。
第 3 步:上传持仓文件(推荐)
持仓清单先通过POST /v1/files 上传拿到 file_id,后续创建触发器时在 resources 中挂载。有持仓数据的晨报,异动检测和归因分析质量明显高于纯市场概览,详见 文件。
id 作为 FILE_ID。
第 4 步:创建触发器
有了AGENT_ID 和 ENVIRONMENT_ID 之后,创建 cron 触发器:
session_mode用new_session:每次触发创建新会话,晨报之间互不干扰;需要连续性就改成reuse_session;initial_events是自动投递的任务指令:没有它,智能体不知道要干什么;expression的五个字段:依次是分、时、日、月、星期。
id 作为 TRIGGER_ID。触发器创建后即为 active 状态。调试时用 POST /v1/triggers/$TRIGGER_ID/run 手动运行一次,并从返回的运行记录中保存 session_id 作为 SESSION_ID,供第 6 步取回产物。暂停、恢复、运行记录等完整操作见 触发器。
定时触发时,initial_events 里的任务描述决定每次晨报的质量。以下三条原则按重要性排序:
- 说清持仓范围。 上传持仓文件后写「基于绑定的持仓数据」即可;没有文件时口述持仓,如「我持有宁德时代 1000 股、贵州茅台 500 股」。
- 说清异动阈值。 明确写出来,比如「涨跌幅超 3% 的逐条列出」或「只关注涨跌幅超 5% 的」。
- 说清关注什么事件。 比如「重点关注美联储议息会议和国内央行公开市场操作」,或者「只看我持仓公司的财报事件」。
第 5 步:手动调用(可选)
除了定时触发,也可以随时手动创建会话、下达晨报任务。创建会话:id 作为 SESSION_ID,订阅事件流(见 快速开始),然后下达任务:
第 6 步:取回产物
会话回到idle 后,通过产物接口取回交付物:
id,下载:
output/ 目录下,下载后在浏览器打开即可阅读,也可以直接转发到邮件或企业微信。需要 PDF 时在任务描述中追加「同时导出 PDF」。
早报的结构按阅读优先级排列(板块结构由 morning-briefing 技能定义,可能随版本调整):
- M1 流动性脉搏:美债 / 中债收益率、中美利差、南向资金、VIX、资金利率,标注数据日期;
- M2 叙事扫描:昨日回看(对照上期逐条结算)+ 今日主线若干条,每条附可证伪的观察点;
- M3 市场快照:美股、港股、A 股、大宗商品、汇率的收盘 / 盘中数据和涨跌幅,标注数据时间;
- M4 持仓快照:持仓组合整体表现 + 各标的行情,涨跌幅超阈值的逐条列出并附异动原因,无法确认原因的标注「待核实」;
- M5 主线 Deep Dive:周 / 月尺度展开当日最重要的主线,区分「已发生的事实」和「基于推断的判断」;
- M6 今日待盯与尾部情景:今晚 / 未来需要盯的事件(财报、宏观数据、政策日程)+ 尾部情景推演。
运行与观察
定时触发后,事件流能看到智能体的完整工作过程。判断一次运行是否正常,看这几处:session.status:回到idle表示本轮完成,可以取回早报;agent.tool_use:能看到每次取数调的是哪个数据源;session.error:任务失败时出现,携带错误类型与信息;定时触发失败时,用GET /v1/triggers/$TRIGGER_ID/runs?has_error=true查失败记录。
可扩展方向
- 晨报 + 周报:再加一个触发器,
0 18 * * 5(每周五 18:00),任务描述改成「生成本周持仓周报」,复用同一个智能体; - 嵌入自有系统:通过 API 创建触发器、订阅事件流、取回产出,接入你的业务看板或邮件分发;
- 接入记忆库:把每日晨报要点写入记忆库,周报触发时自动回顾本周晨报,生成趋势分析,详见 记忆库;
- 多智能体拆分:先跑通「单智能体 + 插件 + 触发器」,再拆分团队,详见 多智能体编排。
下一步
配置每日晨报计划
cron 触发器的完整配置、暂停恢复与运行记录。
使用金融市场数据插件
插件的引用方式、版本固定与数据源路由。
上传持仓文件
上传持仓文件、挂载会话与取回产出。