// tomko.ai / Civil

Civil 0.5

Civil is learning civil engineering one competency at a time. It starts with utility engineering.

Give Civil a utility drawing. It turns the pipes, structures, notes and standards citations it can support into engineering records an engineer can check, while keeping the source behind every value and leaving unsupported information unresolved instead of guessing.

Overview

Utility engineering is the first job we are teaching Civil. Each release adds another part of that job.

Civil 0.5 can already read parts of a utility drawing, build engineering records from them, and keep the source behind what it finds. It still does not understand the whole drawing or utility network. That is what the next releases are for.

Utility engineering

Capabilities

Reading the drawing

Reads the DWG file directly, with no export or conversion step. Civil separates existing conditions from proposed design, and drafting and administrative content from design content.

Pipe runs and structures

When Civil resolves a pipe run, it produces one record for that run, carrying diameter, material, grade, length, chainages and endpoint inverts. Each field is filled in only when the drawing supports it, and left blank with a reason when it does not. Structures are kept separate from pipes, and a structure record carries the inverts Civil could establish, each with its elevation, direction and design state. Watermain is handled as a pressure system, with no flow direction and no upstream or downstream.

watermain · proposed
length_m38.2from run annotation
grade_pct2.1from run annotation
pipe_diameter_mm—no supported association to a diameter annotation

A diameter label may be present elsewhere on the drawing, but Civil’s current method could not tie it to this run, so the field stays blank with its reason.

Notes and standards citations

Where Civil can resolve a numbered item in a note block, that item becomes its own record with its verbatim text. Civil scans drawing objects that contain text for standard references, and records each citation against the text it appears in. Civil identifies the cited standard; it does not read the standard’s content.

citation inventory
STD-12resolvedTrench Restoration Detail
STD-12.1unresolved—

resolved means Civil identified the standard and can show you its title. It does not mean the clause was read, and it does not mean the design complies. Civil puts the citation and the title side by side. It does not compare them. Whether a detail titled Trench Restoration belongs against the note that cites it is the engineer’s call. Civil reports two facts and leaves that judgment where it belongs.

Note 7 · General Notes · Sheet 3

“All trench backfill within the road right-of-way shall be compacted to 95% Standard Proctor Density.”

Sources, gaps and review output

Every record keeps the source behind each field. Anything Civil picked up but could not resolve becomes a gap record, written for a reviewer, that says what evidence would resolve it. Review spreadsheets cover runs, watermain, structures and gaps.

storm sewer · proposed

No structure could be found at one or both ends of this pipe.

Missing: a structure label at the pipe end.

Something Civil picked up but could not resolve is reported, not dropped.

How it works

1 · Input

The drawing

Native DWG. Civil opens the drawing file itself and reads its objects, their text, their layers and where they sit relative to each other.

Today it relies mostly on labels, notes and sheet layout, not on reading the linework as engineering geometry.

2 · Processing

Building the records

Civil 0.5 builds its records with fixed rules. No general-purpose AI model runs in that step, and none supplies an engineering value. If the drawing does not support a value, Civil leaves it blank instead of guessing.

That is a rule about missing values. It does not mean every record Civil produces is correctly classified.

3 · Output

Engineering records

A record for each pipe run, structure, note and citation.

4 · Output

Review output

A gap list with a coded and a plain-language reason for each item Civil picked up but could not resolve, a citation list showing whether each citation was resolved, and review spreadsheets.

Design principles

  • Sources. Every field records where it came from: the drawing object, its layer, its text, and the rule that produced the value. You can check a number without trusting Civil.
  • Repeatability. In release testing, running Civil 0.5 again on the same drawings produced exactly the same output. Every record is stamped with the release that made it.
  • Gaps are reported. Something Civil picked up but could not resolve comes back as a gap record with a plain-language reason. It is not dropped quietly.
  • Says what it cannot support. Civil states what it did and what it did not do. Where something has not been independently measured, it says so rather than reporting a rate.

Limits

Reconstruction

  • It does not find pipes from the drawing geometry. It works from what the drawing says. A structure drawn as a symbol with no text label is outside what it reads today.
  • It does not trace the network. It records which runs meet a structure. It does not follow flow to an outlet, and it does not report a break in continuity.
  • It can mistake other things for pipes. Non-pipe features, and service and construction notes, have been counted as pipes.
  • Its gap list does not show everything it missed. If a real pipe run is labelled in a way Civil does not recognise, Civil never picks it up, so it never reaches the gap list either.

Measurement

  • It makes no completeness claim. Nobody has independently measured how much Civil finds or how accurate it is, so Civil 0.5 publishes no recall, precision, accuracy or error rate. A number Civil shows you is its output, not a measured result.
  • It has not been shown to generalise. Three drawings from two projects, all of which shaped its development. No unseen project has been run and graded.
  • Civil 0.5 has not yet been validated by a customer. Customer evaluation is still open.

Engineering review

  • It does not check your design against municipal criteria. Civil can tell you which standards a drawing cites. It does not read them, and it does not judge whether the design complies.
  • It does not do servicing, hydraulics, utility conflicts or constructability.
  • And it never signs anything. Civil is not CAD, not design software, and not engineering sign-off. Engineering judgment stays with the engineer.

History

0.1

Read and extract.

Open the DWG, find the utility content, standardise the terms it uses, and attach a source to everything.

0.2

Assemble engineering objects.

Treat each pipe run and structure as one record, with a source for every field and a list of gaps.

0.3

Reconstruct the proposed design.

Separate proposed from existing. Add chainages, proposed endpoint inverts, the first watermain record, and a first, limited consistency check.

0.4

Try to make it reviewable.

Civil 0.4 tried to put review findings directly on the drawing. The reviewing engineer rejected the approach because he reviews plotted sheets, not model space. It did not ship. Some of the underlying work carried into 0.5.

0.5

Make the records checkable.

Records that keep their sources, explicit gaps, notes rebuilt as records of their own, and a citation list that says which citations it resolved.

Roadmap

Only 0.5 exists today

0.6

Understand the drawing geometry.

Find engineering objects in the drawing itself, not just in the annotations around them.

0.7

Trace the utility network.

Connect pipes and structures so Civil can trace a system through the drawing.

0.8

Quantify reconstruction performance.

Measure what Civil found, what it missed, and how accurate the reconstruction is.

0.9

Start checking the design.

Once Civil understands enough of the drawing, begin checking the design against municipal standards and design criteria.

1.0

Utility engineering.

Civil understands a utility design well enough to reason about it: reconstruct the proposed system, connect evidence across the design, apply relevant engineering criteria, identify inconsistencies and unanswered questions, and explain its conclusions and uncertainty for engineering review.

2.0

The next civil-engineering competency.

Start teaching Civil another part of civil engineering. We have not chosen which one yet.