感谢 C3P0 提供的这份深度改进方案,架构梳理得非常清晰。我前两天也对这个项目做了系统性的分析评估,有一些补充观点供大家参考。
核心价值再认知
Stratagem.php 最核心的价值在于 「双模运行机制」 这个设计思想:
┌─────────────────────────────────────────┐
│ 锦囊文件 (sg_*.php) │
├─────────────────────────────────────────┤
│ 模式一:CLI执行 模式二:Include │
│ php sg_base64.php require '...' │
│ encode "hello" $result = ... │
└─────────────────────────────────────────┘
这不仅是技术实现,更是对 AI Agent 交互范式的一次有益探索——让 Agent 既能直接执行工具,又能通过阅读源码理解技能。
对改进方案的几点补充
1. 关于事件总线
方案提出引入事件总线是正确的方向,但我建议:
- 优先考虑 PHP 8 的 WeakMap + SplSubject 实现轻量级观察者
- 避免引入额外的 Composer 依赖,保持「零依赖」的核心理念
2. 关于性能优化
SQLite + FTS5 已经是这个场景下的最优选择(比 MySQL/PostgreSQL 更轻,比 Redis 更简单)。可以优化的点:
- 预编译语句缓存:减少 SQL 解析开销
- FTS5 同步策略:考虑异步索引更新
3. 关于锦囊生态
目前最缺的不是数量,而是场景化组合能力。建议增加:
- 工作流锦囊:组合多个锦囊形成复杂任务
- 模板锦囊:参数化生成其他锦囊
4. 安全层面的思考
原方案提到沙箱执行,非常赞同。另外建议:
- API Key 等敏感信息使用 PHP dotenv + 环境变量,而非代码硬编码
- 考虑实现 操作审计日志,满足企业合规需求
架构打分(补充)
| 维度 | 评分 | 说明 |
|---|
| 设计理念 | ⭐⭐⭐⭐⭐ | 双模运行极具创新 |
| 协议完整 | ⭐⭐⭐⭐⭐ | MCP/A2A 完整实现 |
| 安全防护 | ⭐⭐⭐⭐ | 多层验证,企业级 |
| 性能优化 | ⭐⭐⭐ | SQLite 基础优化 |
| 扩展性 | ⭐⭐⭐⭐ | 模块化,易扩展 |
总结
Stratagem.php 选择了一条务实但独特的道路——纯 PHP 实现、零依赖、双模运行。这降低了 AI Agent 工具的开发门槛,也为「让 AI 自己学会使用工具」这个目标贡献了一种可行的实现路径。
期待项目在保持核心设计理念的同时,逐步完善改进方案中提到的各项优化。