Skip to main content

qiaotong-agent-kit

qiaotong-agent-kit 是面向桥通软件的 Agent 工具层。当前源码版本为 0.22.2,提供模型读取、受控写入,以及集成的 qiaotong_agent_kit.cad 图纸解析和主梁编译能力。

0.22.2 在规划自定义线圈截面时把横向坐标移至左缘为零,与桥通原生保存坐标系一致,避免带负坐标的图片识别截面在回读时被误判并回滚。

0.22.0 将 CAD 实现、测试与文档并入本包。安装 qiaotong-agent-kit[cad] 即可使用 DXF 索引、自定义截面、跨度与具名图纸规则编译;DWG 可通过本机 ODA 转换。QPyIDE Agent 使用 create_bridge_from_cad 完成对话翻模,宿主负责批准、事务回读及保存。详见 CAD 翻模说明。

0.22.1 在缺少单位说明时,根据具名截面视图中的横向、竖向尺寸及半幅标注推断唯一合理的单位;图内说明仍优先,冲突或多解时保留待核定状态。

0.21.0 新增 create_custom_section、create_parameter_section、create_tapered_section 和 create_frame_mesh,共 69 个模型操作。网格导入最多 5000 个创建对象,在单个原生事务中排序、执行、回读和撤销;普通批次仍限制为 100 个操作。CAD 默认采用自定义线圈截面,保留外圈、孔洞和倒角;非闭合轮廓由 CAD 界面询问并核定正厚度后转为自定义线宽截面。可选参数截面创建支持矩形和无倒角的对称混凝土箱梁。

自定义线圈回读核对轮廓、孔洞、参考点、面积与惯性矩;自定义线宽核对每条中心线及厚度、参考点、面积,并要求原生抗扭、抗弯及剪切特性均为有限正值。线宽接头的本地条带算法与桥通原生算法不同,原生惯性矩用于模型,差异在 line_width_checks 中记录。质心参考点核验考虑原生属性接口保留 4 位小数的输出精度。CAD 编译只输出明确模型对象,不直接提交模型或执行模型生成的任意脚本。

环境要求

  • Python 3.10 或更高版本(低于 Python 4)
  • qtmodel>=2.8.2,<2.10.0
  • 需要 MCP 服务时安装可选依赖 mcp

安装基础库:

python -m pip install qiaotong-agent-kit

安装 MCP 支持:

python -m pip install "qiaotong-agent-kit[mcp]"

功能范围

模型读取包括:

  • 模型摘要、工程信息和规范配置;
  • 节点、单元、截面、材料和板厚;
  • 边界、节点局部坐标系和节点/单元荷载;
  • 结构组、施工阶段、荷载工况和荷载组合;
  • 服务端筛选、游标分页和可重绑定的冻结节点选择集。

模型写入采用统一 operation 注册表,覆盖节点、材料、板厚、参数截面、梁/杆/索/板 单元、边界、局部坐标系及荷载的创建、修改和删除。所有提交遵循:

  1. 查询 operation 的精确 Schema;
  2. 生成写入计划并绑定 model_revision;宿主通过 ModelReviewSession.prepare 发起有效的纯创建请求时,无工程首页会先自动新建空白工程并进入前处理;底层 plan_bridge_model_batch 仍保持只读;
  3. 用户确认后提交计划;
  4. 整批作为一条桥通原生命令执行,失败自动 Undo;
  5. 成功后可使用返回的 undo_transaction 撤回最新事务。

Python 调用

from qiaotong_agent_kit import QiaotongToolService

service = QiaotongToolService()

status = service.invoke("get_connection_status")
summary = service.invoke("get_bridge_model_summary")

nodes = service.invoke("query_bridge_nodes", {
    "bbox": [0.0, -5.0, -5.0, 100.0, 5.0, 5.0],
    "limit": 20,
})

模型写入示例:

operation = {
    "operation": "create_node",
    "node_id": 101,
    "x": 10.0,
    "y": 0.0,
    "z": 0.0,
}

schema = service.invoke(
    "get_bridge_model_write_operation_schema",
    {"operation": operation["operation"]},
)

plan = service.invoke(
    "plan_bridge_model_batch",
    {"operations": [operation]},
)

receipt = service.invoke("commit_bridge_model_batch", {
    "plan_id": plan["plan_id"],
    "model_revision": plan["model_revision"],
    "confirm_commit": True,
})

撤回最新事务:

service.invoke("undo_bridge_model_transaction", {
    "transaction": receipt["undo_transaction"],
    "confirm_undo": True,
})

MCP 服务

默认模型读写服务:

qiaotong-model-mcp

只读服务:

qiaotong-readonly-mcp

通用 MCP 宿主配置示例:

{
  "command": "python",
  "args": ["-m", "qiaotong_agent_kit.interfaces.mcp_server"]
}

当前模型模式和完整模式均只发布模型读写工具。只读模式不发布 commit_bridge_model_batch 和 undo_bridge_model_transaction。

包结构

qiaotong_agent_kit/
├─ application/
│  ├─ bridge_model.py       # 模型查询、写入事务和桥通适配门面
│  └─ service.py            # Agent 工具目录与调用服务
├─ contracts/
│  └─ tool_schema.py        # 与 MCP 框架无关的工具元数据
├─ infrastructure/
│  └─ qiaotong_api/         # 外部桥通 API 连接与 qtmodel 版本兼容性
├─ interfaces/
│  ├─ cli.py                # JSON-lines 命令行接口
│  └─ mcp_server.py         # MCP stdio 服务
├─ model_write/
│  ├─ operations/           # 单项模型写 operation
│  ├─ registry.py           # operation 注册、规划与排序
│  └─ references.py         # 批内引用协议
└─ support/
   └─ privacy.py            # 输出和错误信息脱敏

infrastructure/qiaotong_api 是 Agent Kit 的基础设施边界,不是外部 qtmodel 包的副本。使用这个名称可以避免 qiaotong_agent_kit.infrastructure.qtmodel 与顶层 qtmodel 运行库产生导入和认知混淆。

依赖原则

基础安装只声明源码直接使用的 qtmodel。MCP 相关包仅在安装 [mcp] extra 时引入。包内不再携带规则资源、DXF 解析器或与某个特定宿主软件绑定的逻辑。

Metadata

Release files for qiaotong-agent-kit 0.22.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for qiaotong-agent-kit 0.22.2
File Size Uploaded
qiaotong_agent_kit-0.22.2.tar.gz 214.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for qiaotong-agent-kit 0.22.2
File Interpreter ABI Platform
qiaotong_agent_kit-0.22.2-py3-none-any.whl Python 3 none any Details

Total release size: 392.4 kB

Release files / qiaotong_agent_kit-0.22.2.tar.gz

Download URL qiaotong_agent_kit-0.22.2.tar.gz
Size 214.7 kB
Tags Source
SHA-256 checksum
How to use checksums
4838309e25087130d9c7e7b66984670c22622ebed4985d609fa930ae4a5bbfaf
BLAKE2b-256 checksum
How to use checksums
83ff20a91930791b4bd8c2d43669b76edf43a0b6f0e47ca91c215c5fa692f17d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / qiaotong_agent_kit-0.22.2-py3-none-any.whl

Download URL qiaotong_agent_kit-0.22.2-py3-none-any.whl
Size 177.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
785bc65016ddefd85f69830790a2c72b55e87ed3c535676b60baf5a49e78ab8d
BLAKE2b-256 checksum
How to use checksums
165e1af326d847e7d14a5b9d8f3af9c86ae57dbb49a42244ffbc29f38d95fcd5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

0.23.0

2 release files

This release

0.22.2 This release

2 release files

0.22.0

2 release files

0.21.0

2 release files

0.20.0

2 release files

0.18.0

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.5.0

2 release files

0.4.0

1 release file

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page