用于 API 集成、契约对齐和问题排查的协议参考文档。
- 入口:
POST /api/v1/agent/run - 当前内部编排为能力驱动,并通过 LangGraph ReAct agent 执行。
- 执行链路:
detect_structure_type -> extract_draft_params -> build_model -> validate_model -> run_analysis -> run_code_check -> generate_report
当前架构说明:
- 对外产品交互使用 chat-first 请求形态
- skill 与 tool 都是可选能力层
- 当前 LangGraph agent 设计见
docs/agent-architecture_CN.md
结果侧关键可观测字段:
traceIdstartedAtcompletedAtdurationMsmetricstoolCalls
最小请求示例:
{
"message": "执行静力分析并生成报告",
"context": {
"modelFormat": "structuremodel-v1",
"model": {
"schema_version": "1.0.0",
"unit_system": "SI",
"nodes": [],
"elements": [],
"materials": [],
"sections": [],
"load_cases": [],
"load_combinations": []
}
}
}入口:
POST /api/v1/chat/messagePOST /api/v1/chat/stream
说明:
chat/message与chat/stream不再接收公开mode字段。- chat 请求统一为单入口,由后端自行决定本轮继续对话还是触发 tool。
典型流式事件顺序:
startinteraction_update(可选)resultdone
异常路径事件:error。
核心接口:
POST /validatePOST /convertPOST /analyzePOST /code-checkGET /schema/convertersGET /enginesGET /engines/:idPOST /engines/:id/check
内置 engine id:
| Engine id | Adapter | 说明 |
|---|---|---|
builtin-opensees |
builtin-opensees |
OpenSeesPy 支持的分析技能 |
builtin-pkpm |
builtin-pkpm |
需要本机 PKPM/SATWE 运行环境与 JWSCYCLE.exe |
builtin-yjk |
builtin-yjk |
需要本机 YJK 8.0 运行环境与有效授权 |
最小结构:
{
"schema_version": "1.0.0",
"unit_system": "SI",
"nodes": [],
"elements": [],
"materials": [],
"sections": [],
"load_cases": [],
"load_combinations": []
}实践规则:
- 字段名必须严格匹配。
- 单元引用必须与节点/材料/截面 ID 对齐。
- 建议优先执行
validate_model再执行run_analysis。
StructureClaw 1.0 使用运行时 settings.json 作为用户配置文件。配置解析可概括为以下顺序:
settings.json- 部分环境变量兜底
- 内置默认值
当对应配置缺失时,后端会读取 PORT、FRONTEND_PORT、NODE_ENV 作为兜底;SCLAW_DATA_DIR 会改变用于查找 settings.json 和数据文件的运行基础目录。
Admin settings 接口:
GET /api/v1/admin/settingsPUT /api/v1/admin/settings
Settings section:
serverllmdatabaselogginganalysisstoragecorsagentpkpmyjk
返回字段会同时带上 value 和 source,便于 UI 展示当前有效值来自 runtime settings 还是默认值。
GET /api/v1/agent/skillhub/searchGET /api/v1/agent/skillhub/installedPOST /api/v1/agent/skillhub/installPOST /api/v1/agent/skillhub/enablePOST /api/v1/agent/skillhub/disablePOST /api/v1/agent/skillhub/uninstallGET /api/v1/admin/skillsPOST /api/v1/admin/skills/reloadGET /api/v1/admin/skills/:id
用户运行目录下的扩展目录:
skills/<name>/skill.yamlskills/<name>/intent.md、draft.md、analysis.md、design.md等阶段文件skills/<name>/handler.js,用于可执行 handlertools/<name>/tool.yamltools/<name>/tool.js
当 id 冲突时,内置 skill 优先。用户 tool 会在图构建时追加到已注册工具集合。
优先级规则:
- 用户手动开关(skill/tool enable/disable)优先级最高。
- 手动开关覆盖自动激活、默认集合与策略建议。
- 用户手动关闭的 skill 或 tool 必须立即失效,不允许被编排器调用。
契约与分组回归通过 node tests/runner.mjs ... 执行(不再挂在 sclaw 上)。列出全部校验名:node tests/runner.mjs validate --list。
Agent 编排与协议:
node tests/runner.mjs validate validate-agent-orchestrationnode tests/runner.mjs validate validate-agent-base-chat-fallbacknode tests/runner.mjs validate validate-agent-tools-contractnode tests/runner.mjs validate validate-agent-api-contractnode tests/runner.mjs validate validate-agent-capability-matrix
SkillHub:
node tests/runner.mjs validate validate-agent-skillhub-clinode tests/runner.mjs validate validate-agent-skillhub-contractnode tests/runner.mjs validate validate-agent-skillhub-repository-down
Chat 与消息:
node tests/runner.mjs validate validate-chat-stream-contractnode tests/runner.mjs validate validate-chat-message-routing
分析与运行时:
node tests/runner.mjs validate validate-analyze-contractnode tests/runner.mjs validate validate-opensees-runtime-and-routing
转换器:
node tests/runner.mjs validate validate-converter-api-contractnode tests/runner.mjs validate validate-convert-batchnode tests/runner.mjs validate validate-convert-passratenode tests/runner.mjs validate validate-convert-roundtripnode tests/runner.mjs validate validate-midas-text-converter
校核、报告与 Schema:
node tests/runner.mjs validate validate-code-check-traceabilitynode tests/runner.mjs validate validate-report-narrative-contractnode tests/runner.mjs validate validate-schema-migration
回归:
node tests/runner.mjs validate validate-static-regressionnode tests/runner.mjs validate validate-static-3d-regressionnode tests/runner.mjs validate validate-structure-examples
开发启动守卫:
node tests/runner.mjs validate validate-dev-startup-guards
回归入口:
node tests/runner.mjs backend-regressionnode tests/runner.mjs analysis-regression
- 操作手册:
docs/handbook_CN.md - Agent 架构:
docs/agent-architecture_CN.md - 英文操作手册:
docs/handbook.md - 英文协议参考:
docs/reference.md - 技能加载机制:
docs/schema/skill-loading_CN.md - 技能加载机制(英文):
docs/schema/skill-loading.md - 通用工具规格:
docs/schema/utility-tools_CN.md - 通用工具规格(英文):
docs/schema/utility-tools.md - 英文 Agent 架构:
docs/agent-architecture.md