bookworm-smart-assistant/docs/AI-Universal-Control-Plane-Architecture-v1.8.md
Bookworm Admin b7a8e29d21 release: v6.7.0 - OTA E2E test release
- VERSION file as authoritative version source
- export.mjs reads VERSION with package.json fallback
- bw-ota.ps1 DryRun mode for safe testing
- auto-setup.ps1 bumped to v3.2.0 (Phase 8 OTA)
2026-04-27 17:59:44 +08:00

902 lines
34 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# AI Universal Control Plane
**屠龙刀框架架构 v1.8 (单刃执行 + 全刀蓝图)**
> 接纳 v1.7 单刃聚焦执行节奏, 但**系统框架必须从第一天起就能无缝扩展为屠龙刀**.
> 关键原则: **PoC 30 人日只交付 1/N, 但架构必须为 N 设计.**
| 字段 | 内容 |
|---|---|
| 文档类型 | 架构白皮书 (与 v1.7 路线图互补, 同等权威) |
| 版本 | v1.8 |
| 日期 | 2026-04-25 |
| 父版本 | v1.6 屠龙刀 (战略保留) + v1.7 利剑节奏 (执行采纳) |
| 核心承诺 | **架构层面 100% 屠龙刀蓝图, 实施层面 24 月渐进展开, 任何一刃随时可激活** |
| 设计哲学 | "Build for thousand, ship for ten" — 为千刃而建, 先发十刃 |
---
## 0. 核心矛盾的解法
### 0.1 v1.6 vs v1.7 的二元对立
```
v1.6 (屠龙刀): 三刃齐挥 → 战略发散 / 工程崩盘 / 安全打开 / 商业不通
v1.7 (利剑): 单刃聚焦 → 战略清晰 / 工程务实 / 安全收敛 / 商业可验
```
### 0.2 v1.8 的解 (打破二元对立)
```
v1.8 = 屠龙刀架构 × 利剑实施
┌──────────────────────────────────────────────────────┐
│ 架构层 (Architecture, 24 月恒定) │
│ ┌────────────────────────────────────────────────┐ │
│ │ 性价比刀刃 接口 (CostKiller Interface) │ │
│ │ 个性化刀刃 接口 (Customization Interface) │ │
│ │ 兼容性刀刃 接口 (Compatibility Interface) │ │
│ │ + 反向兼容竞品 接口 (RivalAdapter Interface) │ │
│ │ + ISV 商店 接口 (ISVMarket Interface) │ │
│ │ + OSS Core 接口 (OSSCore Interface) │ │
│ │ + 国际市场 接口 (Locale Interface) │ │
│ └────────────────────────────────────────────────┘ │
│ 统一接口契约, 不变. 即使只实现 1 个, 接口为 N 准备 │
└────────────────────┬─────────────────────────────────┘
│ 接口 ↔ 实现 解耦
┌────────────────────▼─────────────────────────────────┐
│ 实施层 (Implementation, 24 月渐进) │
│ │
│ Phase 0 (4 周): 实现 5% 刀刃 (汇川+信捷 MCP) │
│ Phase 0.5 (3 月): 实现 10% (3 工厂 + ISV 访谈) │
│ Phase 1 (6 月): 实现 25% (5 协议 + 5 客户) │
│ Phase 2 (6 月): 实现 50% (OSS Core 发布) │
│ Phase 3 (12 月): 实现 80% (Pro + ISV) │
│ Phase 4 (24 月+): 实现 100% (反向兼容 + 国际) │
│ │
│ 每个 Phase 只做新功能, 不重构架构. 接口稳定. │
└──────────────────────────────────────────────────────┘
```
### 0.3 关键洞察
**v1.6 失败不在战略, 在执行节奏.**
**v1.7 务实不在战略, 在阶段交付.**
**v1.8 兼得: 架构敢想, 实施敢砍.**
---
## 1. 屠龙刀框架架构 (24 月恒定, 不变)
### 1.1 七层抽象 (从一开始就定义)
```
┌─────────────────────────────────────────────────────────┐
│ L7 商业模式层 (Business Model) │
│ - OSSCore (Apache 2.0, 免费) │
│ - ProEdition (商业 License, 工业 Pro) │
│ - ISVMarket (Skill 商店 + MCP 商店) │
│ - Locale (中国 / 东南亚 / 全球) │
└────────────────┬────────────────────────────────────────┘
┌────────────────▼────────────────────────────────────────┐
│ L6 用户交互层 (User Interface) │
│ - NLU (自然语言) │
│ - ChatUI (Web / 钉钉 / 企微 / Slack) │
│ - OpenAPI / WebSocket / GraphQL │
│ - CLI / IDE 插件 │
└────────────────┬────────────────────────────────────────┘
┌────────────────▼────────────────────────────────────────┐
│ L5 大脑决策层 (Brain) │
│ - LLMRouter (13+ 厂商抽象, 可热切换) │
│ - JudgeConsensus (双裁判 → N 裁判可扩展) │
│ - SkillRuntime (94+ Skill 自由扩展) │
│ - PolicyEngine (deny-overrides + 优先级) │
│ - CapabilityGraph (能力图谱) │
│ - SagaStore (持久化 + 补偿) │
│ - AuditLog (Merkle chain + RFC 3161) │
│ - DataSovereignty (数据主权路由) │
└────────────────┬────────────────────────────────────────┘
┌────────────────▼────────────────────────────────────────┐
│ L4 协议适配层 (MCP Cluster, 18+ 协议接口) │
│ IndustrialProtocols / DesktopProtocols / │
│ MobileProtocols / VisionProtocols / RivalAdapters │
└────────────────┬────────────────────────────────────────┘
┌────────────────▼────────────────────────────────────────┐
│ L3 安全网关层 (Edge Gateway) │
│ bump-in-wire / TPM / HMAC heartbeat / mTLS │
└────────────────┬────────────────────────────────────────┘
┌────────────────▼────────────────────────────────────────┐
│ L2 传输层 (Transport) │
│ Headscale + 国内 DERP / WireGuard / mTLS │
└────────────────┬────────────────────────────────────────┘
┌────────────────▼────────────────────────────────────────┐
│ L1 物理设备层 (Physical Devices) │
│ PLC / SCADA / 机器人 / HMI / 摄像头 / 仪器 │
│ + 急停硬件回路 (永远独立, 不接软件) │
└─────────────────────────────────────────────────────────┘
```
### 1.2 七大核心接口 (从 v1.0 到 v3.0 不变)
#### 接口 1: ProtocolAdapter (协议刀刃)
```typescript
// L4 协议适配统一接口 — Phase 0 起就定义, 为 18+ 协议留位
interface ProtocolAdapter {
readonly id: string; // 唯一 ID, 如 'huichuan-h5u'
readonly vendor: string; // 'huichuan' / 'siemens' / 'ignition' (反向兼容)
readonly category: ProtocolCategory; // industrial / desktop / mobile / vision / rival
readonly capabilities: Capability[]; // 暴露的能力
connect(config: ConnectionConfig): Promise<Session>;
disconnect(session: Session): Promise<void>;
introspect(session: Session): Promise<CapabilityInfo>; // 协议反查
read(session: Session, address: string): Promise<Reading>;
write(session: Session, address: string, value: any): Promise<WriteResult>;
// 健康检查
healthCheck(): Promise<HealthStatus>;
}
// Phase 0 实现 2 个 (汇川 + 信捷)
// Phase 1 扩展到 6 个 (+ 西门子 + 三菱 + 欧姆龙 + 罗克韦尔)
// Phase 2 扩展到 12 个 (+ MQTT + BACnet + ONVIF + ADB + ...)
// Phase 4 扩展到 18+ (+ Ignition / 卡奥斯 / 华为盘古 反向兼容)
// 接口不变, 仅实现增加.
```
#### 接口 2: LLMProvider (LLM 抽象)
```typescript
// Phase 0 起就实现, 即使只接 2 家
interface LLMProvider {
readonly id: string;
readonly family: ModelFamily; // qwen / glm / deepseek / claude / gpt / gemini / ...
readonly vendor: string;
readonly architecture: string; // 异构 enforce 用
readonly hosting: 'cloud' | 'self_hosted' | 'edge';
readonly compliance: ComplianceTags[]; // ['china_compliant', 'data_export_blocked']
chat(req: ChatRequest): Promise<ChatResponse>;
toolCall(req: ToolCallRequest): Promise<ToolCallResponse>;
healthCheck(): Promise<HealthStatus>;
estimateCost(tokens: TokenUsage): CostEstimate;
}
// Phase 0: Qwen3-Max + DeepSeek-R1 (双裁判异构)
// Phase 1: + GLM-4.6 + Kimi K2
// Phase 2: + ERNIE / Doubao / Hunyuan / 自部署 OpenAI 兼容
// Phase 3: + Claude / GPT-5 / Gemini / Grok (合规场景)
// 接口不变. 添加新 LLM = 写一个 Adapter, 不改大脑代码.
```
#### 接口 3: JudgeConsensus (裁判共识)
```typescript
// Phase 0 起设计为 N 裁判可扩展, 即使只用 2 个
interface JudgeConsensus {
readonly minJudges: number; // Phase 0 = 2, Phase 4 可扩 3-5
readonly heterogeneityRules: HeterogeneityRule[];
// 接口为 N 裁判设计, 当前只调 2 个
evaluate(plan: Plan, judges: LLMProvider[]): Promise<ConsensusResult>;
// 扩展点: SMT/TLA+ 形式验证作为第 N+1 裁判
registerVerifier(verifier: FormalVerifier): void;
}
// Phase 0: 2 LLM 异构裁判
// Phase 4: + 形式验证 (SMV / TLA+) 作为第 3 裁判
// Phase 5: + 行业专家 KB (作为第 4 裁判, RAG 增强)
// 接口不变.
```
#### 接口 4: PolicyEngine (策略引擎)
```typescript
// Phase 0 起完整, 不留 TODO
interface PolicyEngine {
// deny-overrides 语义, Phase 0 锁定
evaluate(action: Action, context: Context): PolicyDecision;
// 扩展点: 自定义策略加载
loadPolicies(source: PolicySource): Promise<void>;
registerPlugin(plugin: PolicyPlugin): void;
// Phase 1+: 组合升格策略 (combo-soft-param-uplift)
// Phase 4+: 跨工厂联邦策略 (federation policies)
// 接口不变, 实现扩展.
}
```
#### 接口 5: SkillRuntime (Skill 执行)
```typescript
// Phase 0 起为 ISV 商店准备, 即使商店 Phase 3 才上线
interface SkillRuntime {
// 当前 Phase 0: 平台内置 5 个 Skill (巡检 / 告警 / 推送 / ...)
// Phase 3+: 加载 ISV 第三方 Skill, 同接口
registerSkill(skill: SkillDescriptor): void;
invoke(skillId: string, args: any, ctx: SkillContext): Promise<SkillResult>;
// 扩展点: 沙箱隔离 (Phase 3 ISV 商店启用)
setSandbox(sandbox: SandboxProvider): void;
// 扩展点: 资源限制
setResourceLimits(limits: ResourceLimits): void;
}
```
#### 接口 6: DataSovereignty (数据主权)
```typescript
// Phase 0 起就强制使用, 即使只有 2 个 LLM 也走数据分级
interface DataSovereigntyRouter {
classify(data: any): DataClassification; // general / personal / important / core
route(prompt: Prompt, classification: DataClassification): LLMProvider[];
// Phase 1+: 自动 PII 扫描 + 工艺秘方扫描
registerScanner(scanner: SensitivityScanner): void;
// Phase 2+: 数据出境 CAC 申报自动化
enableExportCompliance(provider: ComplianceProvider): void;
}
```
#### 接口 7: AuditLog (审计日志)
```typescript
// Phase 0 起 Merkle chain 闭环, Phase 1+ 加 RFC 3161 anchor
interface AuditLog {
append(record: AuditRecord): Promise<AuditEntry>; // Merkle chain
query(filter: AuditFilter): Promise<AuditEntry[]>;
verify(entryId: string): Promise<VerificationResult>;
// Phase 1+: RFC 3161 时间戳锚定
registerTSA(tsa: TimestampAuthority): void;
// Phase 2+: WORM 对象存储集成
registerWORM(worm: WORMStorage): void;
}
```
### 1.3 接口稳定性承诺
```yaml
interface_stability:
v1.0_to_v3.0:
promise: 主版本号内不破坏向后兼容
breaking_change_policy: 跨主版本号 (v2.0 / v3.0) 才允许
deprecation_window: ≥ 12 月通知期
reason: |
ISV 基于这些接口写 Skill / Adapter / Plugin.
接口频繁变 = ISV 生态死亡.
enforcement:
- 每个 PR 跑接口快照 diff 测试
- 任何 breaking change 必须 RFC 流程 + 4 人 review
- 接口变更需提供 migration codemod
```
---
## 2. Phase 0 实施: 5% 屠龙刀, 100% 框架
### 2.1 PoC 4 周, 30 人日, 但接口完整
```yaml
phase_0_implementation:
scope: 5% 功能, 100% 框架
# 协议适配层: 实现 2 个 (18+ 接口位留)
protocol_adapters:
implemented:
- HuichuanH5UAdapter (Modbus TCP)
- XinjeXDHAdapter (Modbus TCP)
interface_ready_but_empty:
- SiemensS7Adapter (Phase 1 实现)
- MitsubishiMCAdapter (Phase 1)
- OmronFINSAdapter (Phase 1)
- RockwellEthernetIPAdapter (Phase 1)
- 12 其他协议 (Phase 2-3)
- IgnitionRivalAdapter (Phase 4 反向兼容)
- KaosRivalAdapter (Phase 4)
- HuaweiPanguRivalAdapter (Phase 4)
# LLM 提供商: 实现 2 个 (16+ 接口位留)
llm_providers:
implemented:
- QwenProvider (Qwen3-Max)
- DeepSeekProvider (DeepSeek-R1)
interface_ready_but_empty:
- GLMProvider (Phase 1)
- KimiProvider (Phase 1)
- 8 其他国内 LLM (Phase 2)
- ClaudeProvider / OpenAIProvider / GeminiProvider / GrokProvider (Phase 3)
# 裁判共识: N 裁判接口, 当前 N=2
judge_consensus:
implementation: TwoJudgeConsensus (异构强制)
extension_points:
- registerVerifier(formal_verifier) # Phase 4
- registerJudge(expert_kb_rag) # Phase 5
# 策略引擎: 完整, 不留 TODO
policy_engine:
implementation: DenyOverridesEngine (Phase 0 完整)
enabled_policies:
- read-only-anytime
- soft-param-business-hours
- hard-action-strict (双裁判 + 物理钥匙)
- registry-downgrade-block
plugins_ready_but_unused:
- combo-soft-param-uplift (Phase 1 启用)
- federation-policies (Phase 4)
# Skill Runtime: 沙箱接口预留
skill_runtime:
implementation: InProcessSkillRuntime (Phase 0 内置 5 Skill)
sandbox_interface: SandboxProvider 接口已定义, 实现 Phase 3
resource_limits: 接口已定义, enforce Phase 3
# 数据主权: 强制启用 (即使只有 2 LLM 也分级)
data_sovereignty:
implementation: ChinaCompliantRouter (Phase 0 强制)
classifications: [general, personal, important, core]
routing_rules:
core: local_only # 强制本地
important: domestic_only
personal: domestic_with_anonymize
general: any
# 审计日志: Merkle chain 完整, TSA 接口预留
audit_log:
implementation: MerkleChainAuditLog
tsa_provider_interface: 接口已定义, RFC 3161 实现 Phase 1
worm_storage_interface: 接口已定义, MinIO 集成 Phase 2
```
### 2.2 代码组织 (从 Day 1 就为屠龙刀准备)
```
bookworm-aiocp/
├── packages/
│ ├── core/ # OSSCore (Apache 2.0)
│ │ ├── interfaces/ # 七大核心接口 (Day 1 完整)
│ │ │ ├── ProtocolAdapter.ts
│ │ │ ├── LLMProvider.ts
│ │ │ ├── JudgeConsensus.ts
│ │ │ ├── PolicyEngine.ts
│ │ │ ├── SkillRuntime.ts
│ │ │ ├── DataSovereignty.ts
│ │ │ └── AuditLog.ts
│ │ ├── brain/ # L5 大脑实现
│ │ ├── transport/ # L2 传输层
│ │ └── edge/ # L3 边缘网关
│ │
│ ├── adapters/ # L4 协议适配
│ │ ├── industrial/
│ │ │ ├── huichuan-h5u/ # Phase 0 实现
│ │ │ ├── xinje-xdh/ # Phase 0 实现
│ │ │ ├── siemens-s7/ # Phase 1 (空 stub + 接口)
│ │ │ ├── mitsubishi-mc/ # Phase 1
│ │ │ ├── omron-fins/ # Phase 1
│ │ │ ├── rockwell-eip/ # Phase 1
│ │ │ └── ... # 18 个目录全部预创建, 仅 README 说明 Phase
│ │ ├── desktop/
│ │ ├── mobile/
│ │ ├── vision/
│ │ └── rival/ # Phase 4 反向兼容
│ │ ├── ignition/ # Phase 4 (接口位留)
│ │ ├── kaos/ # Phase 4
│ │ ├── huawei-pangu/ # Phase 4
│ │ └── tpt2/ # Phase 4
│ │
│ ├── llm-providers/
│ │ ├── qwen/ # Phase 0
│ │ ├── deepseek/ # Phase 0
│ │ ├── glm/ # Phase 1 stub
│ │ ├── kimi/ # Phase 1 stub
│ │ ├── claude/ # Phase 3 stub
│ │ ├── openai/ # Phase 3 stub
│ │ └── ... # 16 个目录全部预创建
│ │
│ ├── skills/ # Phase 0 内置 5 个
│ │ ├── inspect-line/
│ │ ├── notify-foreman/
│ │ ├── read-status/
│ │ ├── voice-confirm/
│ │ └── archive-event/
│ │
│ ├── isv-store/ # Phase 3 启用, Phase 0 仅接口骨架
│ │ ├── sandbox/ # 沙箱接口 (Phase 0 定义)
│ │ ├── manifest/ # capability manifest 定义
│ │ └── registry/ # 注册逻辑骨架
│ │
│ ├── pro/ # Phase 3+ 商业版 (单独 repo, 商业 license)
│ │ ├── hsm-air-gap/
│ │ ├── federation/
│ │ ├── auto-learn/
│ │ ├── secret-version/ # 涉密版
│ │ └── compliance-evidence/ # 等保 33 项证据自动化
│ │
│ ├── i18n/ # Phase 4 国际化
│ │ ├── zh-CN/ # Phase 0 默认
│ │ ├── en-US/ # Phase 1 stub
│ │ ├── vi-VN/ # Phase 4 (东南亚)
│ │ ├── th-TH/ # Phase 4
│ │ └── ...
│ │
│ └── docs/ # 文档
│ ├── architecture/
│ ├── adapters/ # 18 协议各一份模板, Phase 0 写 2 份
│ └── extension-guide/ # 如何写新 Adapter / LLM / Skill
├── tools/
│ ├── interface-snapshot/ # 接口稳定性测试
│ ├── policy-static-check/
│ ├── llm-conformance/ # LLM Adapter 一致性测试
│ └── adapter-conformance/
└── README.md
```
**核心实践**: 18 协议目录在 Day 1 全部预创建, Phase 0 只在 2 个目录有代码, 其他 16 个目录有 README 说明"Phase X 实现". 这样:
- 后续添加协议**不改主仓结构**, 仅填空
- 接口契约从 Day 1 就完整, 不会有 Phase 1 才发现接口缺设计的尴尬
- ISV 看代码结构就知道扩展点在哪
- OSS 公开后, 社区贡献者可立即认领空 stub
---
## 3. 三刃接口的渐进展开
### 3.1 第一刃 — 性价比 (CostKiller)
```yaml
phase_progression:
phase_0_4w:
interface: 完整定义 CostModel / PricingTier / RebateCalculator
implementation: 仅 OSSCore Apache 2.0, 不收费
proof: |
¥0 软件 License (OSS Core)
¥0 平台抽成 (集成商自由)
用户付的: LLM 厂商 API 费 + 自购硬件
phase_0.5_3m:
interface: 添加 ROITracker 接口
implementation: 3 工厂 PoC 收集真实成本数据
proof: 真实 ROI 数据, 修订 v1.7.1
phase_1_6m:
interface: 启用 PricingTier (轻量 / 标准 / 高合规)
implementation: 商业 License 系统 + 设备数计数
proof: 1-3 付费客户实测毛利
phase_2_6m:
interface: 启用 RebateCalculator (ISV 三级返点)
implementation: ISV 商店 + 自动分润
proof: ¥800/设备/年 模型 PMF 验证
phase_3+_12m:
interface: 启用 InternationalPricing (东南亚 / 一带一路)
implementation: 多币种 / 多税务 / 渠道商管理
proof: 5+ 国际客户
```
### 3.2 第二刃 — 个性化 (Customization)
```yaml
phase_progression:
phase_0_4w:
interface: SkillSDK / ConfigSchema / PluginRegistry 完整定义
implementation: 内置 5 Skill + YAML 配置
proof: 用户可改 LLM / Zone / 通道 (5 分钟)
phase_1_6m:
interface: 启用 Skill 商店接口 (但商店未上线)
implementation: 平台内 ISV 提交 Skill (PR 模式)
proof: 2 个 ISV Skill 通过 PR 审核合并
phase_2_6m:
interface: 启用 SandboxProvider (沙箱)
implementation: 完整沙箱 + capability manifest 静态扫描
proof: ISV 商店内测 (邀请制)
phase_3_12m:
interface: 启用 ForkSupport / fork 后远程升级
implementation: 用户 fork 后仍能选择性接收 OSS 安全补丁
proof: 5+ 用户 fork 实战使用
phase_4+:
interface: 启用 EnterpriseDSL (企业级 Skill 定制语言)
implementation: 大客户专属定制
proof: 大客户深度个性化交付
```
### 3.3 第三刃 — 兼容性 (Compatibility)
```yaml
phase_progression:
phase_0_4w:
protocols: 2 (汇川 + 信捷)
llm_providers: 2 (Qwen + DeepSeek)
os: Linux (树莓派) + Windows (Edge Agent)
phase_1_6m:
protocols: 6 (+ 西门子 / 三菱 / 欧姆龙 / 罗克韦尔)
llm_providers: 4 (+ GLM / Kimi)
os: + macOS
phase_2_6m:
protocols: 12 (+ MQTT / BACnet / ONVIF / ADB / SSH / VNC)
llm_providers: 8 (+ ERNIE / Doubao / Hunyuan / 自部署)
os: + Android (Termux)
phase_3_12m:
protocols: 16 (+ KNX / SCPI / Modbus RTU / FANUC)
llm_providers: 13 (+ Claude / GPT-5 / Gemini / Grok / MiniMax)
rival_adapters: 0 (推迟)
phase_4_24m+:
protocols: 18+ (+ 国密 + 罕见协议)
llm_providers: 16+ (+ 自部署 + 任意 OpenAI 兼容)
rival_adapters: 5 (Ignition / 卡奥斯 / 华为 / TPT-2 / AISCADA)
locale: 中国 + 东南亚 + 全球
```
---
## 4. 反向兼容刀刃 (Phase 4, 但接口 Day 1 就在)
### 4.1 接口先行
```typescript
// Phase 0 就定义, 仅在 Phase 4 实现
interface RivalAdapter extends ProtocolAdapter {
readonly rivalProduct: 'ignition' | 'kaos' | 'pangu' | 'tpt2' | 'aiscada';
readonly trustLevel: 'verified_mtls' | 'channel_only' | 'unverified';
readonly compatibilityTested: boolean; // 必须经第三方测试
// 强制单向数据流: 仅读, 不写
readonly capabilities: ReadOnlyCapability[];
// 数据源信任校验
validateSource(data: any): TrustValidation;
// 多源交叉校验 (>= 2 独立通道)
crossValidate(data: any, otherSources: DataSource[]): CrossValidationResult;
}
```
### 4.2 Phase 4 启用条件
```yaml
phase_4_rival_adapter_prerequisites:
- OSS Core 已发布 ≥ 6 月
- 至少 30 家付费客户稳定运行
- 第三方安全审计通过 SLSA L3
- 红队评分 ≥ 70 (越高越安全, 反向后)
- 独立法务审查 (反向兼容是否触犯竞品 ToS)
- 至少 2 家工厂客户主动要求该兼容功能
failure_to_meet_prerequisite:
- 推迟到 Phase 5
- 不强行做, 不为做而做
```
---
## 5. ISV 商店刀刃 (Phase 3, 但接口 Day 1 就在)
### 5.1 ISV 接口契约 (从 Day 1)
```typescript
// ISV 看到这个接口就知道未来怎么写 Skill
interface ISVSkillManifest {
id: string; // com.acme.line-monitor
version: string;
isv: ISVIdentity; // 必须 isv-key 签名
// capability manifest — 关键安全边界
required_mcp_capabilities: string[]; // ['opcua-mcp.read_*', 'hikvision-mcp.snapshot']
required_llm_use_cases: string[]; // ['classify', 'summarize']
network_access:
type: 'none' | 'allowlist'
allowlist?: string[] // 仅这些域名可访问
resource_limits:
cpu_quota: number // 0.5 core
memory_quota: number // 512 MB
timeout_ms: number // 30000
audit:
log_every_call: true // 强制
quarantine_on_anomaly: true
}
```
### 5.2 ISV 沙箱实现进度
| Phase | 实现 |
|---|---|
| Phase 0 | 接口完整定义, 内部 Skill 不走沙箱 |
| Phase 1 | 沙箱 stub (子进程隔离, 无完整资源限制) |
| Phase 2 | 完整沙箱 (cgroup + seccomp + 网络白名单) |
| Phase 3 | ISV 商店上线 + 第三方安全审计流程 |
| Phase 4+ | 商店成熟, 80/20 分润运营 |
---
## 6. OSS Core 刀刃 (Phase 2, 但代码 Day 1 就 OSS-ready)
### 6.1 Day 1 OSS-ready 实践
```yaml
oss_readiness_from_day_1:
license:
all_files_have_apache_2_0_header: true
no_proprietary_dependencies: enforced_in_ci
documentation:
every_module_has_readme: true
architecture_docs_in_chinese_and_english: true
extension_guide_per_interface: true
testing:
unit_test_coverage: ≥ 70%
interface_conformance_tests: required
security:
sigstore_signed_commits: required from day_1
dependabot_enabled: true
sbom_per_release: required
community_readiness:
code_of_conduct: present
contributing_md: present
issue_templates: present
pr_templates: present
dco_check: enabled
note: |
Phase 0-2 期间仓库私有 (GitHub private repo).
Phase 2 末转 public, 已有 6 月清晰提交历史 + 完整文档.
避免"突然公开" → 历史脏 + 没文档 → 社区差评.
```
### 6.2 OSS 公开发布渐进式 (Phase 2)
```yaml
oss_public_release_stages:
stage_1_private_to_invite_only:
duration: 6 weeks
audience: 20 邀请客户 + 10 ISV
license: Apache 2.0 (private repo, NDA)
feedback_loop: weekly
stage_2_invite_to_public_beta:
duration: 8 weeks
audience: GitHub public + Hacker News + 工业自动化社区
license: Apache 2.0
target: 1k stars, 50 contributors
stage_3_v1_release:
duration: 4 weeks
audience: 媒体宣传 + 行业大会演讲 + 培训
target: 5k stars, 100 ISV signups
```
---
## 7. 国际化刀刃 (Phase 4, 但 i18n Day 1 就在)
### 7.1 i18n 框架从 Day 1
```typescript
// 即使 Phase 0 只有中文, 接口已为多语言准备
interface LocaleProvider {
readonly locale: string; // 'zh-CN' / 'en-US' / 'vi-VN' / ...
readonly currency: string; // 'CNY' / 'USD' / 'VND'
readonly compliance: ComplianceTags[]; // ['china_pipl', 'gdpr', 'vietnam_pdpd']
readonly llm_provider_filter: LLMProviderFilter; // 不同地区可用的 LLM
readonly tax_calculator: TaxCalculator;
}
// Phase 0: 仅 zh-CN
// Phase 1: + en-US (国际客户咨询)
// Phase 4: + vi-VN, th-TH, id-ID, es-MX (东南亚 + 墨西哥)
```
### 7.2 东南亚优先 (Phase 4 突破点)
按市场专家建议, 东南亚中国系工厂是 v1.6/v1.7 的破局点:
```yaml
southeast_asia_strategy:
rationale:
- 越南/泰国/墨西哥的中国系工厂数字化需求强
- 用中国 PLC (汇川/信捷/三菱日产) + 海外 LLM (Claude/GPT)
- 无信创合规约束 (海外可用 Claude / GPT-5)
- 竞品几乎不覆盖 (卡奥斯/华为不出海)
phase_4_goal:
- 5+ 东南亚中国系工厂客户
- 越南/泰国/墨西哥 i18n 完成
- 海外支付通道 (Stripe / Wise)
```
---
## 8. 安全防御 Day 1 就到位 (不给红队机会)
### 8.1 即使 Phase 0 只 2 用户, 安全也是企业级
```yaml
day_1_security:
configuration_signing:
devices_yaml: ed25519 (Phase 0 强制)
policies_yaml: ed25519 (Phase 0 强制)
llm_providers_yaml: ed25519 (Phase 0 强制) # v1.6 红队 #1 修复
judge_llm_config: ed25519 + system prompt hash pin (Phase 0 强制)
supply_chain:
sigstore_signed_commits: from day_1
pinned_dependencies: lock 文件 SHA256 (Phase 0 强制)
slsa_level: L3 (Phase 1 末达到, Phase 0 准备)
judge_consensus:
heterogeneity_enforce: hard_block_on_startup (Phase 0) # 接受红队 #2 建议
approve_threshold: max_individual_risk < 0.30
divergence_threshold: |score_a - score_b| < 0.20 # v1.4 修订接受
llm_endpoint:
whitelist_only: true # 红队 #3 修复
no_user_added_relay: Phase 0 起禁用
pii_scanner_enabled: Phase 1 起
data_sovereignty:
enforce_from_day_1: true
important_data_never_overseas: hardcoded
policies_yaml:
signed_required: true # 红队 #5 修复
runtime_enforce_invariant: 异构裁判检查代码硬编码
integrity_check_on_load: true
```
### 8.2 红队评分预期 (Day 1 即合格)
| 阶段 | 红队评分 (越低越安全) | 备注 |
|---|---|---|
| v1.6 屠龙刀实评 | 38 | 攻击面太大 |
| v1.7 单刃 | 55 | OSS 推迟 + 4 P0 加固 |
| **v1.8 Day 1** | **45-50** | 接口安全 + Day 1 加固 |
| v1.8 Phase 1 末 | 35-40 | SLSA L3 + 沙箱 stub |
| v1.8 Phase 2 末 (OSS 发布) | 30-35 | 第三方审计通过 |
| v1.8 Phase 3 末 | 25-30 | ISV 商店成熟 + 商业客户验证 |
---
## 9. 工作量重新分配 (诚实)
### 9.1 v1.8 vs v1.7 对比
| Phase | v1.7 (利剑) | v1.8 (屠龙刀框架 + 利剑实施) | 增量 |
|---|---|---|---|
| Phase 0 PoC | 30 人日 | **45 人日** (+15 接口设计 + 18 协议目录骨架 + 安全 Day 1) |
| Phase 0.5 客户验证 | 90 人日 | 90 人日 |
| Phase 1 客户验证 | 240 人日 | 240 人日 |
| Phase 2 OSS Core | 360 人日 | 360 人日 |
| Phase 3 Pro + ISV | 720 人日 | 720 人日 |
| Phase 4 反向兼容 + 国际化 (新增) | — | 480 人日 |
| **合计** | 1440 | **1935** |
### 9.2 关键: Phase 0 +15 人日的价值
```
+15 人日花在哪:
- 七大核心接口完整定义 (TypeScript 类型 + 文档): 5 人日
- 18 协议目录骨架 + README + 接口位留: 3 人日
- 16 LLM Adapter 接口骨架: 2 人日
- ISV Skill 商店接口骨架 + 沙箱接口: 3 人日
- 反向兼容竞品接口 + i18n 接口骨架: 2 人日
回报:
- Phase 1+ 添加新协议 = 填空, 不改主结构 (节省 50+ 人日)
- Phase 2 OSS 发布时, 仓库结构清晰, 文档完整 (节省 80+ 人日)
- Phase 3 ISV 商店上线时, 接口已稳定 (节省 60+ 人日)
- Phase 4 反向兼容时, 接口已为之准备 (节省 40+ 人日)
ROI: +15 人日投入, 节省 230+ 人日, 净收益 215 人日.
```
---
## 10. 评分预期 (诚实)
| 维度 | v1.6 屠龙刀 | v1.7 利剑 | **v1.8 框架+利剑** |
|---|---|---|---|
| 架构稳健性 | 78 | 82 | **88** (七大接口 Day 1 完整 + 安全 Day 1) |
| 市场可行性 | 70 | 75 | **77** (路径清晰 + 长期屠龙刀蓝图清晰) |
| 算法稳健性 | 80 | 80 | **82** (异构强制 + 数据主权 Day 1) |
| 红队安全 | 38 | 55 (OSS 推迟) | **65** (接口安全 + Day 1 加固, 比 v1.7 好) |
| 工程可执行 | 62 | 80 | **80** (+15 人日合理) |
| **综合** | **74** | **78-80** | **≈ 82-84 (B / B+ 临界)** |
**v1.8 比 v1.7 高 4 分**, 因为:
1. 长期蓝图更清晰 (投资人 + 团队信心)
2. ISV 看接口就知道扩展点 (生态吸引力)
3. 安全 Day 1 就到位 (红队评分提升)
4. Phase 1+ 节省 200+ 人日 (执行效率)
---
## 11. 战略一句话总结
> **v1.6 错在: 想 8 周做出 18 协议屠龙刀, 工程崩盘.**
> **v1.7 错在: 砍到只剩单刃, 投资人 / 团队 / ISV 看不到长期愿景.**
> **v1.8 取中: 架构 = 屠龙刀蓝图 (Day 1 完整七接口), 实施 = 利剑节奏 (4 周 30+ 人日聚焦).**
>
> **本质**: 不是"打几把刀", 而是"做一个永远能扩刀的刀架".
> 刀架建好了, 第一把刀只 5%, 但第二把第三把不需要重做刀架.
>
> 24 月后, 刀架上挂着 18 把刀, 每把都是真的屠龙刀.
---
## 12. 修订记录
| 版本 | 日期 | 变更 | 自评 | 实评 |
|---|---|---|---|---|
| v1.0-v1.5 | 2026-04-25 | 多轮工程修复 | 56.6 → 76 | — |
| v1.6 屠龙刀 | 2026-04-25 | 三刃齐挥 | 83-86 | 74 |
| v1.7 利剑 | 2026-04-25 | 单刃聚焦 | 78-80 | — |
| **v1.8** | **2026-04-25** | **屠龙刀框架 + 利剑实施 (七大接口 Day 1 + 渐进展开)** | **82-84** | **PoC 验证后回填** |
---
## 13. 立即下一步
### 今天
1. 创始人 + 技术合伙人评审 v1.8 的"屠龙刀框架 + 利剑实施"是否真的可行
2. 确认接口设计的 +15 人日是否值得 (vs 短期 PoC)
### 本周
3. **Day 1-3 spike**: 七大核心接口的 TypeScript 类型定义草稿
4. **Day 4-5**: 18 协议目录骨架创建 + README 模板
5. **Day 6-7**: Phase 0 项目脚手架 (monorepo + workspaces + CI)
### 本月
6. Phase 0 PoC 启动 (4 周, 45 人日)
- Week 1: 接口完整 + Headscale + 2 LLM Adapter
- Week 2: 汇川 H5U MCP server (真机调试)
- Week 3: 信捷 XDH MCP server + Edge Gateway
- Week 4: Policy Engine + Audit Log + 1 业务 Skill + 演示视频
7. 同步: 客户开发 (40 家) + ISV 名单 (10 家)
---
> **v1.8 终极承诺**:
>
> **架构敢想屠龙刀, 实施敢砍到 5%. 5% 永远在屠龙刀骨架上, 不是孤立的小作品.**
>
> 24 月后回头看, 第一刃 (汇川 MCP) 与第十八刃 (Ignition 反向兼容) 共享同一接口契约.
> 这才是真正的"无缝可扩展", 不是嘴上说说.