本工作坊是
demos/enterprise/02_snippets_and_predicates.py 与 03_agent_analysis_session.py 的文档转录。实时 LLM 分析为可选项(HVNB_RUN_LLM_DEMO=1)。database MCP profile 执行它们,并模拟 Agent 分析会话。MCP 工具调用日志已在文档中说明,但当前发布基线上尚未交付。
1. 前置条件
完成 数据连接,或确保demos/data/warehouse.db 已存在:
2. 注册 Snippet 与 Predicate
脚本:demos/enterprise/02_snippets_and_predicates.py
将只读 SQL 存储为 db-snippet 行,将可复用过滤器存储为 db-predicate 行:
3. 通过 Database Profile 运行 Snippet
database profile 扩展 read/query 工具组,并新增 run_snippet 与 suggest_sql。首次使用时会自动启用扩展:
CM_HVNB 中设置 heavenbase.database.allow_write=true(默认 false),否则写 snippet 会被拒绝。
4. Agent 分析会话
脚本:demos/enterprise/03_agent_analysis_session.py
暴露 database profile,并在进程内模拟 Agent 调用:
deepseek-v4-flash,并将 database MCP 工具集 (Toolkit) 挂载到 LLMSession。
5. 会话日志(规划中)
通过heavenbase.mcp.log_sessions 记录 MCP 工具调用已在原型计划中定义,但当前发布基线上尚未实现。CLI 通过 hb llm chat 与 hb llm session 记录日志的功能现已交付。
MCP 日志落地后,enterprise 演示 03 将记录三条针对 agent-message 行的元分析查询:
- 工具调用频率 — 按
tool_name分组 - 错误率 — 筛选
error_flag为 true 的行 - 慢调用 — 按
duration_ms降序排序
Summary
- 只读
db-snippet行可通过databaseprofile 安全执行;写访问默认关闭。 suggest_sql按卡片文本搜索 snippet 与 predicate,无需在引擎内调用 LLM。- Agent 通过 MCP 连接,获得面向
db-*实体的小型、schema 感知工具面。

