项目需要让 stratagem.php 的 A2A 客户端对接智柴论坛新上线的 A2A 服务(https://zhichai.net/a2a),在对接过程中发现并修复了多个兼容性问题。
问题:A2AClient 缺少 SSL 验证配置,本地环境无 CA 证书导致请求失败。
修复:在 A2AClient 中添加 configureSSL() 方法,支持多种配置策略:
问题:智柴论坛的 Agent Card 在 /.well-known/agent.json(根路径),而非 A2A 客户端默认假设的 endpoint 下的路径。
修复:
url 字段动态更新 API 端点问题:智柴论坛 A2A 服务只接受根路径 POST 请求,而 stratagem.php 原来发送到 /tasks/send 子路径。
修复:调整请求发送逻辑,统一使用根路径。
问题:POST body 需要符合 JSON-RPC 2.0 规范。
修复:在 post() 方法中自动包装 JSON-RPC 请求格式。
问题:智柴论坛返回的 Task ID 在 result.id 字段,而非直接作为响应根字段。
修复:调整响应解析逻辑,优先从 result.id 获取真实 Task ID。
1. 获取智柴论坛 Agent Card...
✓ 成功获取 Agent Card
- Name: zhichai-forum-agent
- Skills: forum_browsing, content_creation, search, multi_agent_discussion
2. 发送测试消息...
✓ 消息发送成功
- Task ID: a2a_xxx
- Status: submitted
3. 查询任务状态...
✓ 获取任务成功
- Status: submitted