System Vision: AI-Native Hardware Design Platform
The definitive architectural blueprint for MetaForge
Table of Contents
- What MetaForge Is
- High-Level Architecture
- Architectural Principles
- Layer Details
- Data Flow
- Strategic Positioning
- Terminology
- Related Documents
What MetaForge Is
MetaForge is an AI-Native Hardware Design Platform built on five foundational pillars:
| Pillar | Role |
|---|---|
| Digital Twin | Single source of truth — begins as a Digital Thread (L1) and evolves through synchronization and simulation layers to a full Digital Twin per ISO/IEC 30173:2025 |
| Domain Agents | Deterministic skill-based specialists for each engineering discipline |
| MCP Tool Infrastructure | Protocol-based execution layer for all external tools |
| Orchestrator | Dependency engine, event bus, and DAG-based workflow coordination |
| IDE Assistants | Human-in-the-loop interface embedded in CAD, PCB, firmware, and simulation tools |
This is not just agents, just MCP, just skills, or just workflow. It is the integrated whole.
Digital Twin Evolution Layers
The Digital Twin is delivered incrementally across four layers:
| Layer | Name | Phase | Description |
|---|---|---|---|
| L1 | Digital Thread | P1 (MVP) | Artifact graph, traceability, versioning, constraints |
| L2 | Operational Twin | P2 | Post-manufacturing: test telemetry, TSDB, field data ingestion |
| L3 | Live Twin | P3 | Real-time device synchronization via MQTT/OPC-UA |
| L4 | Simulation Twin | P3-P4 | Behavioral models, what-if analysis, predictive simulation |
See Digital Twin Evolution for the full architecture.
High-Level Architecture
IDE Assistants and Domain Agents operate on the Digital Twin concurrently. Assistants surface previews and diffs to the engineer while agents read context, execute tools, and write artifacts — all against the same shared artifact graph. The Orchestrator coordinates both tracks and routes change proposals back through the approval loop.
flowchart TD
HUMAN(("Engineer")) -->|"design intent"| UI["IDE / CLI"]
UI -->|"structured request"| GW["Gateway · Assistant API"]
GW --> ORCH
subgraph ORCH["Orchestrator"]
direction LR
EB["Event Bus"] ---|publish / subscribe| DEP["Dependency Engine"]
DEP ---|resolve order| SCHED["Scheduler · DAG"]
end
ORCH -->|"coordinate"| ASSIST
ORCH -->|"dispatch tasks"| AGENTS
subgraph ASSIST["IDE Assistants — concurrent"]
direction LR
A_CAD["CAD"]
A_PCB["PCB"]
A_FW["Firmware"]
A_SIM["Simulation"]
end
subgraph TWIN["Digital Twin — Single Source of Truth"]
direction LR
GRAPH["Artifact Graph"]
VER["Versioning"]
CONST["Constraint Engine"]
end
subgraph AGENTS["Domain Agents — concurrent"]
direction LR
ME["Mechanical"]
EE["Electronics"]
FW["Firmware"]
SIM["Simulation"]
end
ASSIST <-->|"read state · show diffs · propose changes"| TWIN
AGENTS <-->|"read context · write artifacts · validate constraints"| TWIN
AGENTS -->|"invoke skills"| SR["Skill Registry<br/>Loader · Schema Validator · MCP Bridge"]
SR -->|"MCP protocol"| MCP["MCP Layer<br/>Client · Protocol · Tool Registry"]
MCP -->|"execute"| TOOLS
subgraph TOOLS["External Tools"]
direction LR
T1["FreeCAD"]
T2["KiCad"]
T3["SPICE"]
T4["CalculiX"]
T5["Supplier APIs"]
end
TOOLS -.->|"results"| MCP
MCP -.->|"structured output"| SR
SR -.->|"skill output"| AGENTS
TWIN -.->|"change proposal"| ORCH
ORCH -.->|"approval request"| GW
GW -.->|"diff preview"| UI
UI -.->|"approve / reject"| GW
GW -.->|"commit"| TWIN
style TWIN fill:#2C3E50,color:#fff,stroke:#E67E22,stroke-width:3px
style ORCH fill:#8e44ad,color:#fff
style GW fill:#2C3E50,color:#fff
style HUMAN fill:#E67E22,color:#fff
style ASSIST fill:#3498db,color:#fff,stroke:#3498db
style AGENTS fill:#3498db,color:#fff,stroke:#3498db
style MCP fill:#e67e22,color:#fff
Data flow key:
| Arrow style | Meaning |
|---|---|
Solid (-->) |
Request / command path flowing down into the system |
Bidirectional (<-->) |
Concurrent read/write — assistants and agents access the Twin simultaneously |
Dotted (-.->) |
Results and approval signals flowing back up to the engineer |
Architectural Principles
1. Twin Owns Semantic Truth
The Semantic Digital Twin owns all design state. Entities, constraints, relationships, and versions live in the twin’s graph — this is the authoritative representation. Files are projections of twin state, not the source of truth. When an agent modifies a design, it proposes a semantic mutation to the twin; the twin then projects updated artifacts (CAD files, schematics, BOMs) through the MCP execution layer.
2. Files Are Projections
Design files (STEP, KiCad, Gerbers) are generated outputs of the semantic twin, not primary data. The twin maintains the semantic model; MCP adapters project it into tool-specific file formats. This means:
- The twin can exist without files (semantic iterations happen without artifact projection)
- Files are always regenerable from twin state
- Drift detection ensures file-world stays synchronized with twin-world — the Assistant Mode layer provides bidirectional sync via
watchfileschange detection (file → graph) and MCP projection (graph → file), with a periodic reconciler to catch offline edits
3. Skills Are Pure
Skills must produce structured, reproducible outputs given the same inputs. Skills are deterministic capability modules invoked by agents — they are not autonomous. A skill must never:
- Trigger another agent
- Emit events
- Call MCP directly
- Persist state
Only agents orchestrate, decide, emit mutation proposals, and trigger projection. Skills are the analytical capabilities agents use to reason about engineering problems.
4. Tool Isolation
All external tools are accessed exclusively through the MCP protocol layer. No agent directly invokes a tool binary. This ensures:
- Consistent error handling
- Execution logging and tracing
- Tool version management
- Container-based isolation
5. Extensibility
Tools and skills are auto-discoverable via their respective registries. Adding a new tool or skill requires:
- A schema definition
- A handler implementation
- Registration in the appropriate registry
- No core platform changes
6. Human-In-The-Loop
IDE Assistants mediate all changes to the Digital Twin. No autonomous modification of design artifacts without human review and approval. The assistant layer provides:
- Change previews and diffs
- Approval workflows
- Context-aware suggestions
- Domain-specific UI integration
7. Event-Driven Coordination
All state changes flow through an event bus. Components subscribe to relevant events rather than polling or directly calling each other. This enables:
- Decoupled multi-agent coordination
- Safe cross-domain propagation
- Complete audit trail
- Reactive UI updates
8. Everything Versioned
Both semantic state and artifact state maintain independent version histories linked through Git commits. The dual state machine ensures that semantic evolution can proceed independently of file projection, while maintaining traceability between the two.
Layer Details
Digital Twin Core
The Digital Twin begins as a Digital Thread (L1) — a versioned, constraint-aware artifact graph — and evolves through synchronization (L3) and simulation (L4) layers into a full Digital Twin per ISO/IEC 30173:2025.
| Component | Responsibility |
|---|---|
| Artifact Graph | DAG of all design artifacts and their relationships |
| Versioning Engine | Git-like branching and merging for design state |
| Constraint Engine | Validates cross-domain constraints (thermal, electrical, mechanical) |
| Validation Engine | Schema validation for all artifact types |
| API | CRUD + query interface for all twin state |
Orchestrator
The Orchestrator coordinates multi-agent workflows through event-driven execution.
| Component | Responsibility |
|---|---|
| Event Bus | Pub/sub for design change events |
| Dependency Engine | Resolves inter-agent and inter-skill dependencies |
| Workflow DAG | Defines execution order for complex workflows |
| Iteration Controller | Manages design iteration loops (propose-validate-refine) |
| Scheduler | Queues and prioritizes agent execution |
Domain Agents
Each domain agent encapsulates engineering expertise as a collection of skills.
| Agent | Domain | Key Skills |
|---|---|---|
| Mechanical | CAD, FEA, thermal, tolerance | validate_stress, generate_mesh, check_tolerance |
| Electronics | Schematic, PCB, power/signal integrity | run_erc, run_drc, check_power_budget |
| Firmware | Drivers, RTOS, HAL, application | generate_hal, scaffold_driver, configure_rtos |
| Simulation | SPICE, FEA, CFD, virtual prototyping | run_spice, run_fea, run_cfd |
Skill Registry
Skills are the atomic units of domain expertise — deterministic, schema-validated, independently testable.
| Component | Responsibility |
|---|---|
| Registry | Central catalog of all available skills |
| Loader | Dynamic skill loading and initialization |
| Schema Validator | Validates skill inputs/outputs against schemas |
| Skill Base | Abstract base class for all skills |
| MCP Bridge | Translates skill tool calls to MCP protocol |
MCP Layer
The MCP (Model Context Protocol) layer provides standardized tool access.
| Component | Responsibility |
|---|---|
| Client | MCP client implementation |
| Protocol | Wire protocol handling |
| Tool Registry | Available tool catalog with capabilities |
| Execution Engine | Tool invocation, timeout, retry |
| Server | MCP server for each tool adapter |
IDE Assistants
IDE-embedded assistants provide contextual AI assistance within engineering tools.
| Assistant | IDE | Capabilities |
|---|---|---|
| CAD Extension | FreeCAD, SolidWorks | Geometry suggestions, constraint checking |
| PCB Extension | KiCad | Component placement, routing suggestions |
| VS Code Extension | VS Code | Firmware scaffolding, pin mapping |
| Simulation Assistant | Standalone | Simulation setup, result interpretation |
Data Flow
sequenceDiagram
participant User as Engineer (IDE)
participant Assist as IDE Assistant
participant Orch as Orchestrator
participant Twin as Digital Twin
participant Agent as Domain Agent
participant Skill as Skill Registry
participant MCP as MCP Layer
participant Tool as External Tool
User->>Assist: Design intent
Assist->>Orch: Structured request
Orch->>Twin: Query current state
Twin-->>Orch: Artifact graph + constraints
Orch->>Agent: Execute with context
Agent->>Skill: Invoke skill
Skill->>MCP: Tool call (MCP protocol)
MCP->>Tool: Execute tool
Tool-->>MCP: Result
MCP-->>Skill: Structured result
Skill-->>Agent: Skill output
Agent->>Twin: Propose state change
Twin->>Twin: Validate constraints
Twin-->>Orch: Change proposal
Orch-->>Assist: Change preview
Assist-->>User: Show diff + approval
User->>Assist: Approve
Assist->>Twin: Commit change
Strategic Positioning
MetaForge is positioned as:
Open AI-Native Hardware Infrastructure — not “AI Agents for fun.”
This attracts serious engineers — mechanical engineers, PCB designers, firmware developers, and open-source tool developers.
Terminology
| Term | Definition | ISO Reference | MetaForge Layer |
|---|---|---|---|
| Digital Thread | Traceability infrastructure linking lifecycle data end-to-end | ISO/IEC/IEEE 15288, NIST | L1: digital_twin/thread/ |
| Digital Twin | Computational model synchronized with a physical asset including behavioral simulation | ISO/IEC 30173:2025 | L1-L4: Full digital_twin/ |
| Twin Model | Type definition for a class of devices (schema, behavioral equations, constraints) | ISO 23247 | digital_twin/models/ |
| Twin Instance | Runtime representation of a specific deployed physical device | ISO/IEC 30173:2025 | digital_twin/sync/ |
| Behavioral Model | Mathematical model that predicts device behavior (thermal, electrical, mechanical) | — | digital_twin/simulation/ |
| Synchronization Rate | Frequency at which physical state is reflected in the digital twin | ISO/IEC 30173:2025 | Configurable per instance |
Related Documents
| Document | Description |
|---|---|
| Architecture Overview | Detailed component architecture and data flows |
| Repository Structure | Production-ready modular repository layout |
| Digital Twin Evolution | Full Digital Twin architecture: sync, simulation, phased delivery |
| Graph Schema | Complete graph schema for all Digital Twin layers |
| Execution Roadmap | 12-18 month phased execution plan |
| Governance | Open source management strategy |
| Agent System | Domain agent specifications |
| Tool Adapters | MCP-based tool integration |
| System Observability | Three-pillar observability: logs, metrics, traces (OpenTelemetry, Prometheus, Grafana) |
| AI Memory & Knowledge | Knowledge Layer: pgvector embeddings, RAG retrieval, session memory |
| Assistant Mode | Dual-mode operation — human edits (Assistant Mode) and AI workflows (Autonomous Mode) sharing the same Design Graph |
| ADR-003: Client Surface Strategy | Web dashboard + CAD plugins — why not a desktop app |
| ADR-004: Digital Twin Standards | AAS alignment, standards adoption strategy |
Document Version: v1.1 Last Updated: 2026-02-28 Status: Technical Program Document
| ← Architecture | Repository Structure → |