aec-agent-core
The shared core of LLM agents that review and produce architecture, engineering and construction (AEC) documents. It holds what an agent runs below its chat page: the model connections, the vision calls and the file tools beside them, the figure helper with its plotting box, the agent's guards, limits and kept work, Word and Excel in and out, the run record and its checks, and the switches. It has no user interface of its own.
Two applications are built on it:
- GeotechStaffEngineer (
pip install geotech-staff-engineer), the geotechnical engineering agent, which pins this package exactly; - Document Review (
pip install aec-document-review), a document review application, which pins this package exactly.
Status
1.0.0, the first release. The app split's step 11 moved the
code in, in three merges (BACKLOG INF-32; plan
module_work/APP_SPLIT_PLAN.md in GeotechStaffEngineer's repository):
- (a) model connections and vision calls:
engine_config,palantir_sdk_engine,tinyapps_engine(the Prompter connection),http_trace,deep.databricks_bridge,deep.pacing,deep.vision_engine,deep.inline_images,vision_tools,vision_view,image_view,vision_probe,inline_store,turn_question,error_text,_fileio; - (b) the figure helper:
deep.figure_helper, the plotting box (plot_box), the chart stack behindplot_data(charts) with its worked examples,drawing_wait,progress_notes,arg_checks,method_call; - (c) everything else both agents run: the guards and records
(
deep.keep_work,deep.limits,deep.tool_guards,deep.scratch_guard,deep.busy_retry,deep.delivered_log,deep.result_map,deep.strict_args,deep.warm_imports,deep.calculate_toolwithsafe_expr,deep.held_records,runtime_check,review_flags); Word and Excel (docx_renderer,xlsx_writer,office_text); the run record and its checks (activity_log,run_mirror,cited_pages,cited_documents,coverage); the document tools' binding toplanlens.review(document_tools, withmeasure_tool,scale_labels,dxf_notes); the tools' assembly (deep.vision_kit); the assembly both pages' agents share (deep.assembly: the guards round every helper, the general-purpose helper, the summarizer, one compile step); and the review suite's framework (review_eval: the runner, the checks, theTasktype and task selection, document lookup).
The core imports nothing of either application. Where it needs something
only an application knows, it asks for a hook
(aec_agent_core.hooks), which the application fills:
| Hook | What the application hands in |
|---|---|
prompter.get_setting, prompter.resolve_for, prompter.tester_keys_possible |
how its settings are read, whose Prompter key serves a caller |
vision_tools.reference_read_roots, .read_reference_figure, .view_worked_example_source |
its reference library's folders and readers |
held_records.record_fields |
the shapes of the records a stopped helper held |
cited_documents.reference_modules |
its reference modules' names |
review_eval.page_host |
its chat page's turn path, for the review suite |
review_eval.open_tasks |
its review tasks |
review_eval.document_dirs, .fetch_document, .fixture |
where its tasks' documents are found |
app.details |
its name, distribution and package (aec_agent_core.app_details.hand_in): the run record's version, the default Word and markup authors, the runtime messages |
The chart lines plot_data and the plotting box can draw are handed in by a
registration, aec_agent_core.charts.register_reference_charts. Unfilled,
each place says what it does without the hook.
aec_agent_core.install_aliases lets a module keep answering to its old
import path after it moved here, as the same module object (so an import or
a test patch by either name reaches the one copy of the code);
GeotechStaffEngineer keeps its old names this way until the split's step 16.
1.0.0 is the first real release (the split's step 12, published before
the applications that pin it); until it is on PyPI, GeotechStaffEngineer's
CI installs the core from its own repository
(pip install -e packages/aec-agent-core). Its "core-only" CI job installs
this package with planlens and nothing geotech, imports every module, runs
these tests and builds the document review page on it.
Install
pip install aec-agent-core
pip install "aec-agent-core[anthropic]" # with Claude through LangChain
Licence
MIT, as GeotechStaffEngineer. See LICENSE.
Metadata
Release files for aec-agent-core 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| aec_agent_core-1.0.0.tar.gz | 536.9 kB | With provenance | Details for aec_agent_core-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| aec_agent_core-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for aec_agent_core-1.0.0-py3-none-any.whl |
Total release size: 1.1 MB
Release files / aec_agent_core-1.0.0.tar.gz
| Download URL | aec_agent_core-1.0.0.tar.gz |
|---|---|
| Size | 536.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fa43d639def277f205405e95e1b03668bc4af62a955e4cf4b308e88220235e2b
|
|
BLAKE2b-256 checksum How to use checksums |
a1a34bbca9b5d8d408aa569eba07132cb59eb650d414aa7cbbec549135b0b5f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 10, 2026.
Transparency logRelease files / aec_agent_core-1.0.0-py3-none-any.whl
| Download URL | aec_agent_core-1.0.0-py3-none-any.whl |
|---|---|
| Size | 574.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a3290923fbbc5599bdff9892da362d055ffca0b5526358ad76cf3828fd2e56a2
|
|
BLAKE2b-256 checksum How to use checksums |
596935054fdc3f71352332d1114e433b5074a341ddb4608782a9e59ba71033e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 10, 2026.
Transparency logSecurity for aec-agent-core 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for aec_agent_core-1.0.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 10, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.