Skip to main content

DevAgent

AI-assisted industrial HMI engineering for Ignition Perspective

DevAgent turns customer plant information into reviewable 2D/3D HMI concepts, validated industrial engineering models, and reproducible native Ignition Perspective candidates.

Quick start · Architecture · Creator workflow · Ignition handoff · Verification

Current scope: engineering and isolated-lab candidates. Authenticated Gateway import, native Perspective runtime FAT, real OPC UA/PLC mapping validation, and production release have not been qualified. Production is HOLD.

Capabilities

Area What it provides
AI-first Creator Connect your own supported cloud or local model (BYOM); review proposals before applying them.
Engineering validation Check equipment identities, signal roles, topology, provenance, and requirements using deterministic rules.
2D + 3D design Explore Original V8 2D Flow and Original R9 Four Spirals demos, or generate a customer-specific preview.
Equipment diagnostics Inspect declared motor, VFD, photoeye, fault, quality, and timestamp fields. Missing mappings remain explicit.
Ignition handoff Generate a guarded, read-only native Perspective project candidate from a genuine authorized reference export.
Simulation + FAT Run isolated synthetic OPC UA tests and generate traceable engineering evidence.

Architecture

   CUSTOMER INPUTS
   Requirements | Equipment | Connections | PLC / tag exports
                           |
                           v
                  BYOM AI AGENT
                  Proposal + review
                           |
                           v
              ENGINEERING VALIDATION
         Equipment | Signals | Topology | Safety
                           |
            +--------------+---------------+
            |              |               |
            v              v               v
       2D HMI         3D HMI         Native Ignition
       preview        preview        project candidate
            |              |               |
            +--------------+---------------+
                           |
                           v
               ISOLATED LAB + OFFLINE FAT
                           |
                    Gateway import
                    and runtime tests
                    [NOT YET QUALIFIED]
                           |
                           v
              Real OPC UA source validation
              Independent FAT / site approval
                           |
                           v
                APPROVED PRODUCTION RELEASE
                         [HOLD]

Engineering rule: AI proposes; deterministic checks validate; simulation and a real test Gateway supply separate evidence; an authorized engineer approves. A synthetic PASS cannot establish physical PLC correctness.

Quick start

Install and run (Ubuntu / Linux)

Requires Python 3.13. Install the published package from PyPI, then launch the local Creator:

python3.13 -m pip install --no-cache-dir --index-url https://pypi.org/simple/ devagent-ignition==0.1.1
devagent start

Open http://127.0.0.1:8895/ in your browser. No GitHub clone is required. If port 8895 is in use, run devagent start --port 8962 and open http://127.0.0.1:8962/.

If devagent is not found, make sure the Python 3.13 environment you installed into is activated and its bin directory is on your PATH. Use a dedicated virtual environment if you also have devagent-ai installed, since both packages provide a devagent executable.

Develop or verify from source

Requirements: Linux/Ubuntu, Git, and Python 3.13. Optional browser and OPC UA tests have additional dependencies.

git clone https://github.com/tomha85/devagent-ignition.git
cd devagent-ignition

sha256sum -c SHA256SUMS.txt
python3 -m unittest discover -s tests -q
python3 devagent_hmi.py preflight

# Start the local HMI Creator on port 8895.
./start.sh

Open http://127.0.0.1:8895/ on the same computer.

Choose another local port if 8895 is occupied:

DEVAGENT_SPATIAL_PORT=8962 ./start.sh

The local Creator does not automatically connect to an Ignition Gateway or modify PLCs. Use python3 devagent_hmi.py --help to explore CLI commands.

Creator workflow

  1. Connect AI (optional). Choose your own supported provider/model and test the connection. Review all generated drafts; AI responses are not verified engineering facts.
  2. Describe the site. Enter plant requirements and provide available equipment, tag, and connection files. See sample customer inputs.
  3. Choose a starting point. Select 2D Flow, 3D Flow, or New Project. The Original V8/R9 options are source-backed demos, not a representation of your plant.
  4. Analyze and validate. Resolve contract errors and review any inferred or missing equipment and signal relationships.
  5. Generate a preview. Navigate floors, select equipment, and inspect only available diagnostics.
  6. Review evidence. Keep synthetic testing separate from real PLC data and qualify the application in an isolated Gateway before production consideration.

Validate a model without launching the UI:

python3 devagent_hmi.py validate --model examples/warehouse.json

Other included samples: single floor, warehouse, and water treatment.

BYOM and data handling

DevAgent supports multiple cloud and local provider adapters, including compatible Ollama/vLLM endpoints. A successful model connection test establishes connectivity, not engineering correctness. Follow your organization's rules before sending plant documents, tag exports, or operational data to an external provider.

See AI provider setup for connection details and security limitations.

Native Ignition handoff

DevAgent includes a Native Ignition Perspective compiler for guarded, read-only offline project candidates. Automated authenticated Gateway deployment: Not implemented; real Gateway runtime FAT and production release remain HOLD.

DevAgent can compile an offline, read-only Perspective candidate. It does not yet provide a qualified one-click customer deployment or automatically create real OPC UA connections and Gateway tag providers.

The engineering handoff is:

  1. Obtain an authorized, genuine Ignition Perspective project export for the template envelope.
  2. Validate the customer model and prepare an engineer-reviewed, lab-scoped binding manifest.
  3. Compile and verify the native candidate against the reference ZIP and source hashes.
  4. Import only into an approved, backed-up isolated test Gateway.
  5. Verify actual Perspective rendering, floor/equipment interactions, tag quality, and OPC-to-HMI FAT.
  6. Validate real source identity and site behavior independently before requesting production approval.

Create a pending binding manifest (tag paths are intentionally empty):

python3 devagent_hmi.py v07-binding-skeleton \
  --model examples/warehouse.json \
  --out /tmp/devagent-pending-lab-bindings.json

The manifest is not preapproved. An engineer must review its model identity, decisions, and any lab paths before compilation. Discover the exact compiler flags with:

python3 devagent_hmi.py v083-native-compile --help
python3 devagent_hmi.py v083-native-verify --help

Never infer OPC UA NodeIds, motor/VFD associations, PE IN/OUT semantics, speeds, fault states, or operating quality from a demo.

Read the native operator/deployment notes and native binding/FAT guide.

Verification

sha256sum -c SHA256SUMS.txt
python3 -m compileall -q devagent_spatial devagent_hmi.py tests
python3 -m unittest discover -s tests -q
python3 devagent_hmi.py preflight

GitHub Actions: .github/workflows/offline-ci.yml. Its CI jobs cover offline tests, static checks, a browser workflow, and isolated synthetic OPC UA tests. CI PASS is not a live Gateway FAT or site-acceptance result.

Current qualification boundaries

Gate State
Creator 2D/3D reference previews Implemented; local/browser validation
Native Perspective candidate and offline vendor parsing Offline PASS
Isolated synthetic OPC UA protocol checks Lab-only evidence
Authenticated Gateway project import and native rendering HOLD
Gateway-connected OPC -> tag -> HMI FAT HOLD
Real customer PLC mappings and SAT HOLD
Production release HOLD

Unavailable values must show NOT MAPPED, UNKNOWN, or a clear BAD/STALE quality indication, not fabricated operating states. START/STOP/RESET actions remain disabled in the unqualified native operator candidate.

Repository guide

Path Purpose
devagent_hmi.py, start.sh CLI and local Creator entry points
devagent_spatial/ Models, validators, native compiler, simulator, FAT infrastructure
assets/ Creator UI and HMI visualization
reference/ Preserved Original V8 and R9 reference sources
examples/, templates/, sample_customer_inputs/ Starter plant inputs
tests/, scripts/ Regression and engineering verification
.github/workflows/ Offline CI automation

For engineering detail, see the qualification record, native import milestone, and production acceptance gates. Historical milestones remain in separate documentation; this README is the starting point.


DevAgent's purpose: faster, more repeatable industrial HMI engineering with explicit signal provenance, deterministic verification, and evidence-based commissioning.

Metadata

Release files for devagent-ignition 0.1.7

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

Source distribution (sdist)

Source distribution for devagent-ignition 0.1.7
File Size Uploaded Provenance Actions
devagent_ignition-0.1.7.tar.gz 782.1 kB With provenance Details for devagent_ignition-0.1.7.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for devagent-ignition 0.1.7
File Interpreter ABI Platform Actions
devagent_ignition-0.1.7-py3-none-any.whl Python 3 none any Details for devagent_ignition-0.1.7-py3-none-any.whl

Total release size: 1.6 MB

Release files / devagent_ignition-0.1.7.tar.gz

Download URL devagent_ignition-0.1.7.tar.gz
Size 782.1 kB
Tags Source
SHA-256 checksum
How to use checksums
829b6e92572af7f125d297c239a26e67acccb30f516c7747a8d89fbb53bf7aae
BLAKE2b-256 checksum
How to use checksums
6a2fdf7748727a2066c8d7ac9aa5debb24ed7e11acf61fa5533355ebf5ea4a52
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 Oct 28, 2026.

Transparency log

Release files / devagent_ignition-0.1.7-py3-none-any.whl

Download URL devagent_ignition-0.1.7-py3-none-any.whl
Size 863.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
84d08faf3e6de9413e7030fcf873fa1ae0dd814de1d14801d8a2413cc422fee7
BLAKE2b-256 checksum
How to use checksums
15176b4af7c777b4a18a2e782e3dde700a4388d80a7bf259d06723796d0372a8
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 Oct 28, 2026.

Transparency log

Security for devagent-ignition 0.1.7

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

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for devagent_ignition-0.1.7.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 Oct 28, 2026.

Transparency log

A 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.

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