# windmill-labs/windmill-claude-plugin architecture

> Architecture diagram of the GitHub repository windmill-labs/windmill-claude-plugin, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/windmill-labs/windmill-claude-plugin
- Repository: https://github.com/windmill-labs/windmill-claude-plugin

## Overview

This repository packages Windmill-specific guidance for Claude Code and Cursor. The user workflow is to invoke an editor assistant, which consults the shared skills to create or manage Windmill scripts, flows, and related platform artifacts. The graph reflects README-documented capabilities and shared-skill consumption; source excerpts were unavailable, so it does not infer internal calls among skills.

Main entry points: [`plugins/windmill/.claude-plugin/plugin.json`](https://github.com/windmill-labs/windmill-claude-plugin/blob/main/plugins/windmill/.claude-plugin/plugin.json) (Claude Code plugin), [`plugins/windmill/.cursor-plugin/plugin.json`](https://github.com/windmill-labs/windmill-claude-plugin/blob/main/plugins/windmill/.cursor-plugin/plugin.json) (Cursor plugin), [`plugins/windmill/skills`](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills) (Script guidance), [`plugins/windmill/skills/write-flow`](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/write-flow) (Flow guidance)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_integration["Editor integrations"]
  node_claude["Claude Code plugin<br/>[plugin.json]"]
  node_cursor["Cursor plugin<br/>[plugin.json]"]
end

subgraph group_guidance["Windmill guidance"]
  node_scripts["Script guidance"]
  node_flows["Flow guidance"]
  node_workflow_code["Workflow as code"]
  node_cli["CLI commands"]
  node_triggers["Triggers"]
  node_schedules["Schedules"]
  node_resources["Resources"]
  node_raw_apps["Raw apps"]
  node_preview["Preview"]
end

node_developer(("Developer"))

node_developer -->|"uses"| node_claude
node_developer -->|"uses"| node_cursor
node_claude -->|"consumes shared skills"| node_scripts
node_cursor -->|"consumes shared skills"| node_scripts
node_claude -->|"consumes shared skills"| node_flows
node_cursor -->|"consumes shared skills"| node_flows
node_claude -->|"consumes shared skills"| node_workflow_code
node_cursor -->|"consumes shared skills"| node_workflow_code
node_claude -->|"consumes shared skills"| node_cli
node_cursor -->|"consumes shared skills"| node_cli
node_claude -->|"consumes shared skills"| node_triggers
node_cursor -->|"consumes shared skills"| node_triggers
node_claude -->|"consumes shared skills"| node_schedules
node_cursor -->|"consumes shared skills"| node_schedules
node_claude -->|"consumes shared skills"| node_resources
node_cursor -->|"consumes shared skills"| node_resources
node_claude -->|"consumes shared skills"| node_raw_apps
node_cursor -->|"consumes shared skills"| node_raw_apps
node_claude -->|"consumes shared skills"| node_preview
node_cursor -->|"consumes shared skills"| node_preview

click node_claude "https://github.com/windmill-labs/windmill-claude-plugin/blob/main/plugins/windmill/.claude-plugin/plugin.json"
click node_cursor "https://github.com/windmill-labs/windmill-claude-plugin/blob/main/plugins/windmill/.cursor-plugin/plugin.json"
click node_scripts "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills"
click node_flows "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/write-flow"
click node_workflow_code "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/write-workflow-as-code"
click node_cli "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/cli-commands"
click node_triggers "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/triggers"
click node_schedules "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/schedules"
click node_resources "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/resources"
click node_raw_apps "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/raw-app"
click node_preview "https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/preview"

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_claude,node_cursor toneBlue
class node_scripts,node_flows,node_workflow_code,node_cli,node_triggers,node_schedules,node_resources,node_raw_apps,node_preview toneAmber
class node_developer toneIndigo
```

## Components

### Editor integrations

- [Claude Code plugin](https://github.com/windmill-labs/windmill-claude-plugin/blob/main/plugins/windmill/.claude-plugin/plugin.json): `plugins/windmill/.claude-plugin/plugin.json`
- [Cursor plugin](https://github.com/windmill-labs/windmill-claude-plugin/blob/main/plugins/windmill/.cursor-plugin/plugin.json): `plugins/windmill/.cursor-plugin/plugin.json`

### Windmill guidance

- [Script guidance](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills): `plugins/windmill/skills`
- [Flow guidance](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/write-flow): `plugins/windmill/skills/write-flow`
- [Workflow as code](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/write-workflow-as-code): `plugins/windmill/skills/write-workflow-as-code`
- [CLI commands](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/cli-commands): `plugins/windmill/skills/cli-commands`
- [Triggers](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/triggers): `plugins/windmill/skills/triggers`
- [Schedules](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/schedules): `plugins/windmill/skills/schedules`
- [Resources](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/resources): `plugins/windmill/skills/resources`
- [Raw apps](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/raw-app): `plugins/windmill/skills/raw-app`
- [Preview](https://github.com/windmill-labs/windmill-claude-plugin/tree/main/plugins/windmill/skills/preview): `plugins/windmill/skills/preview`

### Other components

- **Developer**

## Connections

- Developer → Claude Code plugin: uses
- Developer → Cursor plugin: uses
- Claude Code plugin → Script guidance: consumes shared skills
- Cursor plugin → Script guidance: consumes shared skills
- Claude Code plugin → Flow guidance: consumes shared skills
- Cursor plugin → Flow guidance: consumes shared skills
- Claude Code plugin → Workflow as code: consumes shared skills
- Cursor plugin → Workflow as code: consumes shared skills
- Claude Code plugin → CLI commands: consumes shared skills
- Cursor plugin → CLI commands: consumes shared skills
- Claude Code plugin → Triggers: consumes shared skills
- Cursor plugin → Triggers: consumes shared skills
- Claude Code plugin → Schedules: consumes shared skills
- Cursor plugin → Schedules: consumes shared skills
- Claude Code plugin → Resources: consumes shared skills
- Cursor plugin → Resources: consumes shared skills
- Claude Code plugin → Raw apps: consumes shared skills
- Cursor plugin → Raw apps: consumes shared skills
- Claude Code plugin → Preview: consumes shared skills
- Cursor plugin → Preview: consumes shared skills
