Boss · 经营决策助手
数据范围:全企业
核心 Skill:
- 经营日报 / 周报解读
- 经营异常诊断
- 经营方案生成
- 目标完成预测
- 管理层报告生成
执行特点:以全局分析和方案为主,正式业务执行通常走审批。
面向连锁经营及其他垂直行业,根据企业、部门、岗位、角色和数据权限, 自动为登录用户装配专属 AI 员工,并通过受控 Skill 与 Tool 完成经营分析、 营销策划、运营执行和业务闭环。
本平台不是普通的“多模型聊天工具”,而是一套基于企业组织、岗位职责、 功能权限和数据权限,为不同员工自动装配专属 AI 员工的企业级 Agent 平台。
| 层级 | 建议技术 | 主要职责 |
|---|---|---|
| 业务主系统 | Java 21、Spring Boot 3、Spring Security、MyBatis-Plus | 企业、用户、权限、任务、审批、报告和后台管理 |
| Agent / 分析服务 | Python、FastAPI、LangGraph 或轻量状态机、Pandas/Polars | 复杂 Agent 编排、数据分析、模型评测 |
| 数据存储 | PostgreSQL / MySQL、Redis / Valkey、对象存储 | 业务数据、配置、任务状态、报告和缓存 |
| 知识检索 | pgvector / Elasticsearch / Milvus(按规模选型) | 企业知识库、权限过滤和混合检索 |
| 模型网关 | 独立 LLM Gateway,可自建或基于统一模型网关 | 模型路由、协议适配、降级、成本和安全控制 |
岗位、角色和权限必须分开建模,避免将“用户是市场总监”直接等同于全部功能和数据权限。
agent:business-decision:use agent:marketing-strategy:use agent:store-operation:use skill:business-plan:execute skill:competitor-research:execute skill:campaign-create:execute tool:store-metrics:read tool:campaign-draft:create tool:campaign:publish data:tenant:read data:region:read data:store:read report:view report:export campaign:approve
| 机制 | 用途 | 示例 |
|---|---|---|
| RBAC | 控制用户能做什么 | 运营总监角色拥有“活动草稿创建”权限 |
| ABAC | 控制在什么条件下、对什么对象执行 | 只能对本人负责区域内的门店创建活动 |
| 显式拒绝 | 处理高敏数据或临时限制 | 即使拥有区域权限,也禁止访问员工薪资字段 |
Agent 不应固定写死为“一个岗位对应一个代码类”,而应由平台依据当前用户上下文动态装配。
{
"agentCode": "store_operation_agent",
"agentName": "门店运营助手",
"persona": "你是一名连锁门店运营管理专家",
"defaultModelAlias": "operation-agent",
"allowedSkills": [
"store_operation_diagnosis",
"campaign_plan_generation",
"campaign_draft_create"
],
"knowledgeScopes": [
"tenant_operation_manual",
"store_standard_process"
],
"outputStyle": "ACTION_ORIENTED",
"allowBusinessWrite": true,
"approvalPolicy": "REQUIRE_CONFIRMATION"
}
店长运营 Agent 实例 ├── Agent:门店运营助手 ├── Skill:单店经营诊断、营销活动草稿创建 ├── Tool:本店指标查询、本店库存查询、活动草稿创建 ├── 数据范围:门店 A ├── 指标范围:营业额、订单量、客单价、库存 ├── 禁止字段:会员手机号、员工薪资 ├── 模型策略:企业指定模型 / 可选兼容模型 └── 操作限制:只能创建草稿,不能直接发布
{
"skillCode": "campaign_create",
"skillName": "营销活动创建",
"requiredPermission": "skill:campaign-create:execute",
"riskLevel": "L3",
"requiredTools": [
"query_store_profile",
"query_product_margin",
"validate_campaign_rule",
"create_campaign_draft"
],
"requiredMetrics": [
"revenue",
"gross_margin",
"member_activity"
],
"approvalPolicy": "USER_CONFIRM"
}
企业数据权限必须独立于 Agent 和提示词,统一为所有 Agent、Skill、Tool、数据库查询、 RAG 检索、缓存、报告和长期记忆提供权限边界。
| 范围 | 说明 | 典型岗位 |
|---|---|---|
| TENANT | 当前企业全部数据 | Boss、集团高管 |
| BUSINESS_UNIT | 指定事业部数据 | 事业部负责人 |
| REGION | 指定区域或城市数据 | 区域经理、城市经理 |
| STORE_GROUP | 指定门店组数据 | 督导、多店经理 |
| STORE | 指定单店或多店数据 | 店长 |
| SELF | 本人创建或负责的数据 | 活动负责人、普通员工 |
| CUSTOM | 临时或项目化授权 | 项目组、跨部门协作人员 |
| 维度 | Boss | 店长 |
|---|---|---|
| 组织范围 | 当前企业全部区域和门店 | 本人授权门店 |
| 经营指标 | 集团、区域、门店全层级指标 | 本店经营指标 |
| 跨店对比 | 可查看实名门店明细与排名 | 仅允许匿名区域平均和分位基准 |
| 敏感字段 | 按企业授权查看 | 默认脱敏或禁止 |
| AI 分析结果 | 集团经营诊断和战略建议 | 本店问题诊断和改善措施 |
大模型只能选择受控 Tool,不允许直接提交 SQL 或任意门店 ID。
{
"tool": "query_store_operation_metrics",
"arguments": {
"startDate": "2026-07-01",
"endDate": "2026-07-30",
"metrics": [
"revenue",
"order_count",
"customer_unit_price"
]
}
}
门店范围由后端的 DataScopeContext 自动注入:
SELECT revenue, order_count, customer_unit_price FROM store_daily_metrics WHERE tenant_id = :tenantId AND store_id IN (:authorizedStoreIds) AND business_date BETWEEN :startDate AND :endDate;
数据范围:全企业
核心 Skill:
执行特点:以全局分析和方案为主,正式业务执行通常走审批。
数据范围:全企业或市场授权区域
核心 Skill:
执行特点:偏分析、策划和内容生成,可创建营销方案或活动草稿。
数据范围:授权区域或授权门店
核心 Skill:
执行特点:偏执行落地;店长只处理本店数据和本店业务对象。
| 岗位 | 数据范围 | 经营数据 | 成本利润 | 会员明细 | 跨店比较 | 业务写入 |
|---|---|---|---|---|---|---|
| Boss | 全企业 | 是 | 是 | 汇总或授权 | 是 | 审批为主 |
| 市场总监 | 全企业/市场范围 | 是 | 部分 | 脱敏 | 是 | 方案或草稿 |
| 运营总监 | 全企业/运营范围 | 是 | 部分 | 否或脱敏 | 是 | 任务与草稿 |
| 区域经理 | 所属区域 | 是 | 区域范围 | 否 | 区域内 | 区域草稿 |
| 店长 | 所属门店 | 是 | 本店授权范围 | 本店脱敏 | 匿名基准 | 本店草稿 |
AI 对企业业务系统的操作必须按风险分级,不能把“能调用 Skill”等同于“能直接发布”。
tenant organization department position user role permission user_position user_role role_permission
agent_definition agent_version agent_prompt agent_model_policy agent_knowledge_scope tenant_agent position_agent role_agent user_agent skill_definition skill_version skill_parameter skill_step skill_tool agent_skill role_skill tenant_skill
tool_definition tool_endpoint tool_permission tool_risk_level tool_approval_policy user_data_scope role_data_scope user_store_scope metric_definition role_metric_permission data_field_definition role_field_permission data_policy approval_instance approval_record
agent_session agent_run skill_run tool_call_log llm_request_log generated_report security_event_log
| 字段 | 说明 |
|---|---|
| tenant_id | 企业租户标识,所有业务数据强制隔离 |
| user_id | 被授权用户 |
| scope_type | TENANT、REGION、STORE、SELF、CUSTOM 等 |
| scope_object_id | 企业、区域、门店或业务对象 ID |
| grant_source | 岗位默认、角色授权、用户特别授权、项目临时授权 |
| start_date / end_date | 授权有效期 |
| effect | ALLOW 或 DENY,显式拒绝优先 |
public record DataScopeContext(
Long tenantId,
Long userId,
Set<Long> businessUnitIds,
Set<Long> regionIds,
Set<Long> storeIds,
Set<String> allowedMetrics,
Set<String> allowedFields,
LocalDate earliestDataDate,
LocalDate latestDataDate,
DataScopeType scopeType
) {}
public record AgentExecutionContext(
Long tenantId,
Long userId,
String agentCode,
Set<String> allowedSkills,
Set<String> allowedTools,
DataScopeContext dataScope,
ModelPolicy modelPolicy,
ApprovalPolicy approvalPolicy,
String traceId
) {}
文档与切片必须携带租户、组织、区域、门店、密级和允许角色等元数据,检索前先做权限过滤。
{
"tenantId": 1001,
"documentId": "DOC-001",
"regionId": 3001,
"storeId": 4001,
"securityLevel": "INTERNAL",
"allowedRoles": ["BOSS", "REGION_MANAGER"]
}
谁 在什么时间 使用哪个 Agent 执行哪个 Skill 调用哪个 Tool 查询了哪些数据范围和指标 返回多少条记录 使用哪个模型 生成或修改了什么业务对象 是否经过用户确认和审批 是否发生越权尝试
第一期先验证“真实数据、权限隔离、标准 Skill、可控执行”四个核心闭环。
| 岗位 | Agent | 建议首批 Skill | 数据范围 |
|---|---|---|---|
| Boss | 经营决策助手 | 经营日报、异常诊断、经营方案、管理层报告 | TENANT |
| 市场总监 | 市场策略助手 | 营销方案、竞品调研、用户画像、活动复盘 | TENANT / REGION |
| 运营总监 | 运营执行助手 | 门店诊断、活动草稿、任务生成、执行复盘 | TENANT / REGION |
| 店长 | 门店运营助手 | 单店诊断、本店活动草稿、库存风险、任务复盘 | STORE |