Skip to content

Latest commit

 

History

History
72 lines (57 loc) · 2.99 KB

File metadata and controls

72 lines (57 loc) · 2.99 KB

Agents

Blueprint uses an ADK-style sequential multi-agent workflow (implemented in backend/agents/orchestrator.py). Each agent consumes the prior agent’s output and writes structured data into the Hardware IR.

Pipeline overview

  1. Safety guardrails → 1. Intent Parser → 2. Requirements → 3. Component Selection → 4. Wiring/Netlist (+ repair loop) → 5. BOM → 6. Mechanical/Fabrication → 7. Assembly Instructions → 8. Mechanical render enrichment

Agent responsibilities

Safety Guardrail (pre-check)

Input: Prompt Output: Either a normal pipeline run, or a safety-blocked Hardware IR Goal: Block high-risk categories early (weapons, medical, mains AC, automotive control, high-power battery packs).

Intent Parser Agent

Input: Prompt (+ optional image)
Output: ProjectOverview
Goal: Convert intent into a concise, high-level project summary.

Requirements Agent

Input: Prompt + ProjectOverview
Output: FunctionalRequirements
Goal: Extract functional requirements, power needs, constraints, and missing info.

Component Selection Agent

Input: Requirements + seed component database
Output: ComponentInstance[]
Goal: Choose compatible parts and instantiate the BOM with pinouts.

Wiring/Netlist Agent

Input: Components + requirements
Output: ConnectionNet[] + PinMappingEntry[]
Goal: Wire pins into power, ground, and signal nets.

If validation produces CRITICAL issues, the orchestrator runs a one-step auto-correction prompt and re-validates.

BOM Agent

Input: Component list
Output: Updated ProjectOverview.estimated_cost
Goal: Calculate total cost from unit prices and quantities (deterministic step).

Mechanical/Fabrication Agent

Input: Overview + components
Output: MechanicalNotes
Goal: Suggest enclosure type, mounting, and fabrication details.

The agent may also emit render_dimensions, component_placements, and spatial_relationships for the 3D viewer.

Assembly Instruction Agent

Input: Overview + components + nets + mechanical notes
Output: AssemblyStep[]
Goal: Produce step-by-step build instructions with safety flags.

State transitions

flowchart LR
  A[Prompt] --> B[ProjectOverview]
  B --> C[FunctionalRequirements]
  C --> D[ComponentInstance[]]
  D --> E[ConnectionNet[] + PinMappingEntry[]]
  E --> F[Validation + repair loop]
  F --> G[MechanicalNotes]
  G --> H[AssemblyStep[]]
  H --> I[Hardware IR]
Loading

Notes

  • Agents run sequentially for determinism and traceability.
  • Validation can trigger a repair loop that re-invokes the wiring agent.
  • If a live LLM provider isn’t configured (or generation fails), the backend uses a deterministic simulation fallback backed by the example projects.
  • The pipeline is designed to swap models or add agents without rewriting the core IR schema.
  • External agents can call or listen to Blueprint through the A2A layer documented in docs/a2a.md.