Back to marketplace

dsh-cad-review

Coding Tools

dongsheng123132/dsh-cad-review

Evidence-first ASCII DXF inspection and deterministic CAD rule review for DeepSeek Harness. Reads CAD entities, hashes source drawings, and emits issues tied to entity handle/index, layer, source line range, and geometric location. Supports LINE, LWPOLYLINE, CIRCLE, ARC, TEXT, MTEXT, POINT, and INSERT geometry; unsupported entities are reported as evidence gaps. Includes MCP tools for inline inspection and review.

  • 2origin
  • ai-agent
  • cad
  • deepseek-harness
  • drawing-review
  • dsh
  • dsh-plugin
  • dxf
  • evidence
  • mcp
GitHub Stars
4GitHub
Views
0DSH Plugin Hub
Forks
0GitHub
Open issues
0GitHub Issues
Manifest version
0.2.0dsh-cad-review
Latest push
Aug 21, 2026GitHub
License
MITJavaScript
Plugin type
HostRuns in the DSH Host

README

View source

dsh-cad-review

CI MIT license Node.js 22+ Awesome DSH Plugins

Evidence-first ASCII DXF inspection and deterministic CAD rule review for DeepSeek Harness.

This plugin does not infer engineering defects from screenshots. It reads CAD entities, hashes the source drawing, and emits issues tied to entity handle/index, layer, source line range and geometric location. Unsupported entities remain visible as an evidence gap.

Version 0.2.0 is host-neutral and stock-Cordis-loader safe: it imports no private ToolRuntime helper and exposes no default export, preserving the module-level inject = ['tools'] contract. TEXT/MTEXT bodies and malformed numeric tokens are represented only by SHA-256 plus length, so evidence output does not reproduce drawing prose.

This scope complements broader robotics suites such as dsh-robotic-harness: that project inventories robot assets and validates URDF/MJCF/SDF workflows, while this plugin remains a small deterministic ASCII-DXF entity/rule evidence layer.

Install

dsh plugin --profile <name> add github:dongsheng123132/dsh-cad-review

Configure a workspace root and project-owned policy:

- id: dsh-cad-review
  name: dsh-cad-review
  config:
    workspaceRoot: C:/absolute/project/path
    maxBytes: 20971520
    policy:
      requiredLayers: ["WALL"]
      forbiddenLayers: ["DEFPOINTS"]
      forbiddenEntityTypes: ["3DSOLID"]
      requireClosedPolylines: true
      minTextHeight: 2.5
      maxDrawingSpan: 1000
      requiredInsUnits: 4
      maxEntities: 100000
      maxIssues: 500

Paths must be .dxf files relative to workspaceRoot. Traversal, symlink escape, binary DXF and oversized input are refused.

DSH tools

  • dsh_cad_inspect_dxf — source SHA-256, units, bounds, layers, entity counts and exact entity geometry/line evidence.
  • dsh_cad_review_dxf — the same evidence plus a deterministic policy report. A per-call policyJson can override configured policy.

The extractor understands LINE, LWPOLYLINE, CIRCLE, ARC, TEXT, MTEXT, POINT and INSERT geometry. Other types are retained and reported as structurally unsupported rather than silently treated as reviewed.

MCP proof surface

The formal .mcp.json declaration exposes cad_dxf_inspect_inline and cad_dxf_review_inline. They accept an explicit bounded ASCII DXF string, share the same parser and rule core, and return redacted structured evidence entirely in memory. The MCP server cannot read files, access the network, execute drawing content, start subprocesses, or write artifacts.

Checks cover malformed numbers, zero-length lines, non-positive radii, polyline closure and declared vertex count, exact duplicate geometry, required/forbidden layers, forbidden entity types, text height, units, drawing span and entity limits. Severity overrides use stable rule IDs.

CLI

dsh-cad-review inspect drawing.dxf
dsh-cad-review review drawing.dxf --policy examples/strict-mm-policy.json

review exits 2 when error-severity issues exist.

Evidence boundary

  • v0.1 reads ASCII DXF only. Binary DXF and DWG are refused, not guessed.
  • A source SHA-256 identifies the exact reviewed bytes; it does not prove authorship.
  • Rules are project-owned. This package does not claim a universal building, mechanical or electrical code.
  • A passing report means the supplied deterministic policy found no error; it is not professional engineering approval.
  • Unsupported entity types make extraction incomplete and remain explicit in the report.

Verify

npm test
npm run check
npm run smoke:plugin
npm run smoke:mcp
npm run smoke:cli
DSH_CHECKOUT=/path/to/deepseek-harness npm run smoke:dsh

MIT

Comments

0
Newest first