Connect shadcn/ui to Windsurf
Give Windsurf governed access to shadcn/ui’s 7 tools through Runlayer, with identity, policy, scanning, and audit on every call.
Set up
Add shadcn/ui to Windsurf in four steps
Admins approve the server once. Everyone in Windsurf then gets it through the same governed connection.
- 1
Approve shadcn/ui in Runlayer
Add shadcn/ui from the catalog and choose who can use it and which of its tools are allowed.
- 2
Connect Windsurf to Runlayer
Install the Runlayer CLI so Windsurf can reach shadcn/ui, which runs on the user’s machine. Auto Sync can then write shadcn/ui into Windsurf on macOS, Windows, and Linux.
Windsurf setup guide - 3
Sign in to shadcn/ui
Sign in the way shadcn/ui requires. Runlayer holds the credentials so they stay out of the client’s configuration.
- 4
Use shadcn/ui from Windsurf
shadcn/ui’s approved tools appear in Windsurf. Every call is checked against policy and recorded.
Tools
7 shadcn/ui tools in Windsurf
Runlayer policy decides which of these Windsurf users can call.
Get project registries
Get configured registry names from components.json - Returns error if no components.json exists (use init_project to create one)
List items in registries
List items from registries (requires components.json - use init_project if missing)
Search items in registries
Search for components in registries using fuzzy matching (requires components.json).
View items in registries
View detailed information about specific registry items including the name, description, type and files content.
Get item examples from registries
Find usage examples and demos with their complete code.
Get add command for items
Get the shadcn CLI add command for specific items in a registry.
Get audit checklist
Make sure to run the tool after all required steps have been completed.
Control
What Runlayer can see and stop in Windsurf
Some controls apply to every client at the gateway. Others depend on what Windsurf exposes to Runlayer.
Gateway policy (available)
Every shadcn/ui call from Windsurf passes through Runlayer, where your policies can allow, alert, mask, or block it.
Audit trail (available)
Each call is recorded with the user, Windsurf as the client, the tool, and the policy and scanner decisions.
Client hooks (available)
Capture supported prompts, reasoning, local and MCP tool calls, responses, and scanner decisions in real time.
Stop a call before it runs (available)
Runlayer can deny a tool call before Windsurf runs it.
Block output after it runs (not available)
Windsurf ignores Runlayer after a tool runs, so Runlayer cannot block its output. The gateway still applies policy to the call.
Redact output in place (not available)
Windsurf has no way to receive replacement output, so Runlayer cannot mask it. The gateway still applies policy to the call.
In Windsurf
- Enforcement needs Windsurf 1.12.31 or newer.
- When Runlayer denies a call, Windsurf shows the reason to the user; Runlayer cannot adjust the call’s inputs.
Frequently asked questions
Connect more
