# migo-ovo/plc-skill architecture

> Architecture diagram of the GitHub repository migo-ovo/plc-skill, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/migo-ovo/plc-skill
- Repository: https://github.com/migo-ovo/plc-skill

## Overview

PLC Skill is an agent-facing knowledge base for designing, reviewing, and troubleshooting PLC logic. Its documented workflow starts with SKILL.md, classifies the request, loads cross-vendor engineering guidance, and then uses vendor-specific guidance when a platform is identifiable. Templates support reusable output patterns. The graph emphasizes these product capabilities; unsampled reference and template contents are represented by their documented directories rather than inferred internal links.

Main entry points: [`SKILL.md`](https://github.com/migo-ovo/plc-skill/blob/main/SKILL.md) (Skill Entry), [`references/vendors/vendor-routing.md`](https://github.com/migo-ovo/plc-skill/blob/main/references/vendors/vendor-routing.md) (Vendor Routing), [`templates/common/template-map.md`](https://github.com/migo-ovo/plc-skill/blob/main/templates/common/template-map.md) (Template Map), [`references/common/task-router.md`](https://github.com/migo-ovo/plc-skill/blob/main/references/common/task-router.md) (Task Router)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Agent Entry and Routing"]
  node_skill["Skill Entry<br/>[SKILL.md]"]
  node_task_router["Task Router<br/>[task-router.md]"]
  node_vendor_router["Vendor Routing<br/>[vendor-routing.md]"]
end

subgraph group_common["Common PLC Guidance"]
  node_priority["Knowledge Priority"]
  node_common_guidance["Common Guidance"]
end

subgraph group_vendors["Vendor Knowledge"]
  node_vendor_map["Vendor Module Map"]
  node_vendor_guidance["Vendor Guidance"]
end

subgraph group_generation["Generation Resources"]
  node_templates_map["Template Map<br/>[template-map.md]"]
  node_templates["Control Templates"]
  node_examples["Behavior Examples"]
end

node_agent(("AI Agent"))

node_agent -->|"uses"| node_skill
node_skill -->|"classifies tasks"| node_task_router
node_skill -->|"loads common layer"| node_common_guidance
node_skill -->|"routes vendors"| node_vendor_router
node_vendor_router -.->|"selects vendor files"| node_vendor_guidance
node_skill -.->|"consults evidence order"| node_priority
node_skill -->|"uses generation templates"| node_templates_map
node_templates_map -.->|"maps templates"| node_templates
node_skill -.->|"provides examples"| node_examples
node_vendor_router -.->|"routes modules"| node_vendor_map

click node_skill "https://github.com/migo-ovo/plc-skill/blob/main/SKILL.md"
click node_task_router "https://github.com/migo-ovo/plc-skill/blob/main/references/common/task-router.md"
click node_vendor_router "https://github.com/migo-ovo/plc-skill/blob/main/references/vendors/vendor-routing.md"
click node_priority "https://github.com/migo-ovo/plc-skill/blob/main/references/common/knowledge-priority.md"
click node_common_guidance "https://github.com/migo-ovo/plc-skill/tree/main/references/common"
click node_vendor_map "https://github.com/migo-ovo/plc-skill/blob/main/references/vendors/vendor-module-map.md"
click node_vendor_guidance "https://github.com/migo-ovo/plc-skill/tree/main/references/vendors"
click node_templates_map "https://github.com/migo-ovo/plc-skill/blob/main/templates/common/template-map.md"
click node_templates "https://github.com/migo-ovo/plc-skill/tree/main/templates/common"
click node_examples "https://github.com/migo-ovo/plc-skill/tree/main/examples"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_skill,node_task_router,node_vendor_router toneBlue
class node_priority,node_common_guidance toneAmber
class node_vendor_map,node_vendor_guidance toneMint
class node_templates_map,node_templates,node_examples toneRose
class node_agent toneIndigo
```

## Components

### Agent Entry and Routing

- [Skill Entry](https://github.com/migo-ovo/plc-skill/blob/main/SKILL.md): `SKILL.md`
- [Task Router](https://github.com/migo-ovo/plc-skill/blob/main/references/common/task-router.md): `references/common/task-router.md`
- [Vendor Routing](https://github.com/migo-ovo/plc-skill/blob/main/references/vendors/vendor-routing.md): `references/vendors/vendor-routing.md`

### Common PLC Guidance

- [Knowledge Priority](https://github.com/migo-ovo/plc-skill/blob/main/references/common/knowledge-priority.md): `references/common/knowledge-priority.md`
- [Common Guidance](https://github.com/migo-ovo/plc-skill/tree/main/references/common): `references/common`

### Vendor Knowledge

- [Vendor Module Map](https://github.com/migo-ovo/plc-skill/blob/main/references/vendors/vendor-module-map.md): `references/vendors/vendor-module-map.md`
- [Vendor Guidance](https://github.com/migo-ovo/plc-skill/tree/main/references/vendors): `references/vendors`

### Generation Resources

- [Template Map](https://github.com/migo-ovo/plc-skill/blob/main/templates/common/template-map.md): `templates/common/template-map.md`
- [Control Templates](https://github.com/migo-ovo/plc-skill/tree/main/templates/common): `templates/common`
- [Behavior Examples](https://github.com/migo-ovo/plc-skill/tree/main/examples): `examples`

### Other components

- **AI Agent**

## Connections

- AI Agent → Skill Entry: uses (evidence: `README.md`)
- Skill Entry → Task Router: classifies tasks (evidence: `README.md`)
- Skill Entry → Common Guidance: loads common layer (evidence: `README.md`)
- Skill Entry → Vendor Routing: routes vendors (evidence: `README.md`)
- Vendor Routing → Vendor Guidance: selects vendor files (evidence: `README.md`)
- Skill Entry → Knowledge Priority: consults evidence order (evidence: `README.md`)
- Skill Entry → Template Map: uses generation templates (evidence: `README.md`)
- Template Map → Control Templates: maps templates (evidence: `README.md`)
- Skill Entry → Behavior Examples: provides examples (evidence: `README.md`)
- Vendor Routing → Vendor Module Map: routes modules
