@agent-native/core 0.182.0 → 0.182.1-nightly-20260916202735
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/corpus/README.md +1 -1
- package/corpus/templates/analytics/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/analytics/.mcp.json +8 -0
- package/corpus/templates/analytics/changelog/2026-09-16-dashboards-open-without-background-synchronization-scans-dur.md +6 -0
- package/corpus/templates/analytics/server/plugins/collab.ts +2 -0
- package/corpus/templates/assets/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/assets/.mcp.json +8 -0
- package/corpus/templates/brain/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/brain/.mcp.json +8 -0
- package/corpus/templates/calendar/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/calendar/.mcp.json +8 -0
- package/corpus/templates/chat/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/chat/.mcp.json +8 -0
- package/corpus/templates/clips/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/clips/.mcp.json +8 -0
- package/corpus/templates/clips/desktop/.mcp.json +8 -0
- package/corpus/templates/content/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/content/.mcp.json +8 -0
- package/corpus/templates/crm/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/crm/.mcp.json +8 -0
- package/corpus/templates/design/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/design/.mcp.json +8 -0
- package/corpus/templates/design/changelog/2026-09-16-design-files-avoid-cold-start-scans-and-open-faster-after-id.md +6 -0
- package/corpus/templates/dispatch/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/dispatch/.mcp.json +8 -0
- package/corpus/templates/factory/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/factory/.mcp.json +8 -0
- package/corpus/templates/forms/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/forms/.mcp.json +8 -0
- package/corpus/templates/mail/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/mail/.mcp.json +8 -0
- package/corpus/templates/plan/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/plan/.mcp.json +8 -0
- package/corpus/templates/slides/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/slides/.mcp.json +8 -0
- package/corpus/templates/slides/server/plugins/collab.ts +3 -0
- package/corpus/templates/tasks/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/corpus/templates/tasks/.mcp.json +8 -0
- package/dist/automation/index.d.ts +1 -1
- package/dist/cli/create.js +10 -5
- package/dist/collab/storage.d.ts +1 -3
- package/dist/collab/storage.js +2 -9
- package/dist/collab/ydoc-manager.d.ts +2 -2
- package/dist/collab/ydoc-manager.js +45 -11
- package/dist/deploy/build.js +1 -1
- package/dist/file-upload/actions/upload-image.d.ts +1 -1
- package/dist/notifications/routes.d.ts +1 -1
- package/dist/observability/routes.d.ts +8 -8
- package/dist/org/handlers.d.ts +1 -1
- package/dist/provider-api/actions/provider-api.d.ts +4 -4
- package/dist/resources/handlers.d.ts +1 -1
- package/dist/server/collab-plugin.d.ts +18 -5
- package/dist/server/collab-plugin.js +173 -63
- package/dist/templates/chat/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/dist/templates/chat/.mcp.json +8 -0
- package/dist/templates/default/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/dist/templates/default/.mcp.json +8 -0
- package/dist/templates/workspace-core/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/dist/templates/workspace-root/package.json +1 -1
- package/dist/templates/workspace-root/pnpm-workspace.yaml +18 -0
- package/package.json +4 -4
- package/src/templates/chat/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/src/templates/chat/.mcp.json +8 -0
- package/src/templates/default/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/src/templates/default/.mcp.json +8 -0
- package/src/templates/workspace-core/.agents/skills/shadcn-ui/SKILL.md +65 -6
- package/src/templates/workspace-root/package.json +1 -1
- package/src/templates/workspace-root/pnpm-workspace.yaml +18 -0
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: shadcn-ui
|
|
3
3
|
description: >-
|
|
4
|
-
|
|
5
|
-
when adding
|
|
6
|
-
|
|
7
|
-
file that happens to import a shadcn component.
|
|
4
|
+
Project-aware shadcn/ui components, registry MCP, theming, and design-system
|
|
5
|
+
lint feedback. Use when adding or changing React/Tailwind UI, a primitive,
|
|
6
|
+
theme, registry, or component contract in an Agent-Native app.
|
|
8
7
|
scope: dev
|
|
9
8
|
source: https://ui.shadcn.com/docs/skills
|
|
10
9
|
local-changes: >-
|
|
@@ -16,11 +15,18 @@ metadata:
|
|
|
16
15
|
|
|
17
16
|
# shadcn/ui
|
|
18
17
|
|
|
19
|
-
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
18
|
+
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
19
|
+
app, so always inspect the local project before adding, importing, or rewriting
|
|
20
|
+
them. When `@shadcn/lint` is configured, treat its feedback as implementation
|
|
21
|
+
guidance, not cosmetic noise. The framework repository runs it through the root
|
|
22
|
+
Oxlint configuration; generated workspaces carry this skill and the MCP
|
|
23
|
+
workflow, but do not automatically inherit that repository-only lint setup.
|
|
20
24
|
|
|
21
25
|
## First Steps
|
|
22
26
|
|
|
23
|
-
1. Work from the app root that owns `components.json`.
|
|
27
|
+
1. Work from the app root that owns `components.json`. In this monorepo, that is
|
|
28
|
+
the selected app/template directory (usually under `templates/`), not the
|
|
29
|
+
repository root.
|
|
24
30
|
2. In an Agent-Native app, inspect `app/design-system.ts` and
|
|
25
31
|
`ToolkitProvider` before choosing a primitive. A registered company design
|
|
26
32
|
system takes precedence over the default shadcn adapter.
|
|
@@ -29,6 +35,59 @@ This skill keeps shadcn/ui work project-aware. Components are source files in th
|
|
|
29
35
|
5. Check `app/components/ui/` or the resolved `ui` path before importing a component.
|
|
30
36
|
6. For unfamiliar components, run `pnpm dlx shadcn@latest docs <component>` and read the returned docs or examples before coding.
|
|
31
37
|
|
|
38
|
+
## MCP Registry Workflow
|
|
39
|
+
|
|
40
|
+
Each first-party app keeps the official shadcn MCP configuration in `.mcp.json`
|
|
41
|
+
next to its `components.json`. Start the agent from that app root so the MCP
|
|
42
|
+
server resolves the correct aliases, local UI directory, and Tailwind theme.
|
|
43
|
+
Do not add a single repository-root server: the root is a workspace, not a
|
|
44
|
+
shadcn project, and would make installs target the wrong project.
|
|
45
|
+
|
|
46
|
+
- Use the shadcn MCP to search, inspect, and install registry items when it is
|
|
47
|
+
connected. Prefer the app's configured registries over copied source.
|
|
48
|
+
- Use `pnpm dlx shadcn@latest info --json` for project context; the MCP has no
|
|
49
|
+
equivalent project-info tool.
|
|
50
|
+
- If the MCP is unavailable, use the equivalent `pnpm dlx shadcn@latest`
|
|
51
|
+
command from the same app root and continue following this skill.
|
|
52
|
+
- Keep registry URLs and aliases in that app's `components.json`. Never put
|
|
53
|
+
registry credentials in MCP config or checked-in source.
|
|
54
|
+
|
|
55
|
+
## Design-System Lint Feedback
|
|
56
|
+
|
|
57
|
+
In the framework repository, `pnpm lint` runs Oxlint with `@shadcn/lint` for the
|
|
58
|
+
scoped template UI paths. Run it after UI changes and fix every `shadcn/*`
|
|
59
|
+
finding before handing off. Template packages use the workspace lint
|
|
60
|
+
configuration; do not create a second local lint configuration just for one
|
|
61
|
+
app.
|
|
62
|
+
|
|
63
|
+
Before claiming that shadcn lint ran in another workspace, inspect its root
|
|
64
|
+
`package.json` and `.oxlintrc.json`. The generic generated workspace currently
|
|
65
|
+
exposes `pnpm lint` as formatting-only and does not ship `@shadcn/lint` or the
|
|
66
|
+
framework repository's Oxlint config. In that scaffold, use this skill plus the
|
|
67
|
+
connected shadcn MCP (or the CLI fallback) for design-system guidance, and do
|
|
68
|
+
not report `shadcn/*` checks as having run. If the workspace owner adopts the
|
|
69
|
+
linter, add the dependency, scoped config, and lint script together.
|
|
70
|
+
|
|
71
|
+
The Plan template is intentionally excluded from this rollout. Its files remain
|
|
72
|
+
under `templates/plan/**`, but the root Oxlint ignore list keeps them out of the
|
|
73
|
+
shadcn checks until that template has a separate lint baseline.
|
|
74
|
+
|
|
75
|
+
- `no-restyle`: use the component's `variant`, `size`, and semantic props; put
|
|
76
|
+
layout on a parent and add a component variant only when the design system
|
|
77
|
+
genuinely needs a new treatment.
|
|
78
|
+
- `no-raw-colors`: use the theme tokens in the app's `global.css`, not raw
|
|
79
|
+
Tailwind palette classes or hard-coded color attributes.
|
|
80
|
+
- `no-arbitrary-values`: use the theme scale or a declared token instead of
|
|
81
|
+
one-off bracket values.
|
|
82
|
+
- `no-inline-styles`: use classes or CSS custom properties for dynamic layout;
|
|
83
|
+
keep intentional editor/export exceptions scoped to their owning subsystem.
|
|
84
|
+
- `no-unknown-classes` and `require-static-classes`: use classes Tailwind can
|
|
85
|
+
generate and keep class strings statically discoverable.
|
|
86
|
+
|
|
87
|
+
The local primitive source is the contract boundary. Product code should consume
|
|
88
|
+
its props and variants; update `packages/toolkit/src/ui/` or an app's
|
|
89
|
+
`components/ui/` only when the design-system contract itself changes.
|
|
90
|
+
|
|
32
91
|
## Agent-Native Adapter Rule
|
|
33
92
|
|
|
34
93
|
Pages, routes, and domain components import controls through the app's local UI
|
|
@@ -2,7 +2,25 @@ packages:
|
|
|
2
2
|
- "packages/*"
|
|
3
3
|
- "apps/*"
|
|
4
4
|
|
|
5
|
+
minimumReleaseAge: 1440
|
|
6
|
+
minimumReleaseAgeExclude:
|
|
7
|
+
- "@bacons/apple-targets"
|
|
8
|
+
- "@agent-native/core"
|
|
9
|
+
- "@modelcontextprotocol/client"
|
|
10
|
+
- "@modelcontextprotocol/core"
|
|
11
|
+
- "@modelcontextprotocol/node"
|
|
12
|
+
- "@modelcontextprotocol/server"
|
|
13
|
+
- "dom-to-pptx"
|
|
14
|
+
- "fast-xml-parser"
|
|
15
|
+
- "typescript"
|
|
16
|
+
- "@typescript/typescript6"
|
|
17
|
+
- "@typescript/typescript-*"
|
|
18
|
+
|
|
5
19
|
overrides:
|
|
20
|
+
# @sentry/vite-plugin's range can resolve a newly published bundler tarball
|
|
21
|
+
# before the registry has made it fetchable. Keep fresh workspaces on the
|
|
22
|
+
# version already verified by this repository until Sentry is upgraded.
|
|
23
|
+
"@sentry/bundler-plugins": "10.73.0"
|
|
6
24
|
"@assistant-ui/store": ">=0.2.9 <0.2.14"
|
|
7
25
|
"@assistant-ui/tap": "^0.5.14"
|
|
8
26
|
better-auth: "1.7.4"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-native/core",
|
|
3
|
-
"version": "0.182.
|
|
3
|
+
"version": "0.182.1-nightly-20260916202735",
|
|
4
4
|
"description": "The agentic application framework for building autonomous agents with intuitive UIs",
|
|
5
5
|
"homepage": "https://github.com/BuilderIO/agent-native#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -405,7 +405,7 @@
|
|
|
405
405
|
"provenance": true
|
|
406
406
|
},
|
|
407
407
|
"dependencies": {
|
|
408
|
-
"@amplitude/analytics-browser": "
|
|
408
|
+
"@amplitude/analytics-browser": "2.44.1",
|
|
409
409
|
"@anthropic-ai/sdk": "^0.90.0",
|
|
410
410
|
"@anthropic-ai/tokenizer": "0.0.4",
|
|
411
411
|
"@assistant-ui/react": "^0.12.19",
|
|
@@ -485,9 +485,9 @@
|
|
|
485
485
|
"yaml": "^2.9.0",
|
|
486
486
|
"yjs": "^13.6.32",
|
|
487
487
|
"zod": "^4.3.6",
|
|
488
|
-
"@agent-native/
|
|
488
|
+
"@agent-native/toolkit": "^0.20.3",
|
|
489
489
|
"@agent-native/recap-cli": "0.5.33",
|
|
490
|
-
"@agent-native/
|
|
490
|
+
"@agent-native/agentkit": "^0.2.3"
|
|
491
491
|
},
|
|
492
492
|
"devDependencies": {
|
|
493
493
|
"@ai-sdk/anthropic": "^3.0.71",
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: shadcn-ui
|
|
3
3
|
description: >-
|
|
4
|
-
|
|
5
|
-
when adding
|
|
6
|
-
|
|
7
|
-
file that happens to import a shadcn component.
|
|
4
|
+
Project-aware shadcn/ui components, registry MCP, theming, and design-system
|
|
5
|
+
lint feedback. Use when adding or changing React/Tailwind UI, a primitive,
|
|
6
|
+
theme, registry, or component contract in an Agent-Native app.
|
|
8
7
|
scope: dev
|
|
9
8
|
source: https://ui.shadcn.com/docs/skills
|
|
10
9
|
local-changes: >-
|
|
@@ -16,11 +15,18 @@ metadata:
|
|
|
16
15
|
|
|
17
16
|
# shadcn/ui
|
|
18
17
|
|
|
19
|
-
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
18
|
+
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
19
|
+
app, so always inspect the local project before adding, importing, or rewriting
|
|
20
|
+
them. When `@shadcn/lint` is configured, treat its feedback as implementation
|
|
21
|
+
guidance, not cosmetic noise. The framework repository runs it through the root
|
|
22
|
+
Oxlint configuration; generated workspaces carry this skill and the MCP
|
|
23
|
+
workflow, but do not automatically inherit that repository-only lint setup.
|
|
20
24
|
|
|
21
25
|
## First Steps
|
|
22
26
|
|
|
23
|
-
1. Work from the app root that owns `components.json`.
|
|
27
|
+
1. Work from the app root that owns `components.json`. In this monorepo, that is
|
|
28
|
+
the selected app/template directory (usually under `templates/`), not the
|
|
29
|
+
repository root.
|
|
24
30
|
2. In an Agent-Native app, inspect `app/design-system.ts` and
|
|
25
31
|
`ToolkitProvider` before choosing a primitive. A registered company design
|
|
26
32
|
system takes precedence over the default shadcn adapter.
|
|
@@ -29,6 +35,59 @@ This skill keeps shadcn/ui work project-aware. Components are source files in th
|
|
|
29
35
|
5. Check `app/components/ui/` or the resolved `ui` path before importing a component.
|
|
30
36
|
6. For unfamiliar components, run `pnpm dlx shadcn@latest docs <component>` and read the returned docs or examples before coding.
|
|
31
37
|
|
|
38
|
+
## MCP Registry Workflow
|
|
39
|
+
|
|
40
|
+
Each first-party app keeps the official shadcn MCP configuration in `.mcp.json`
|
|
41
|
+
next to its `components.json`. Start the agent from that app root so the MCP
|
|
42
|
+
server resolves the correct aliases, local UI directory, and Tailwind theme.
|
|
43
|
+
Do not add a single repository-root server: the root is a workspace, not a
|
|
44
|
+
shadcn project, and would make installs target the wrong project.
|
|
45
|
+
|
|
46
|
+
- Use the shadcn MCP to search, inspect, and install registry items when it is
|
|
47
|
+
connected. Prefer the app's configured registries over copied source.
|
|
48
|
+
- Use `pnpm dlx shadcn@latest info --json` for project context; the MCP has no
|
|
49
|
+
equivalent project-info tool.
|
|
50
|
+
- If the MCP is unavailable, use the equivalent `pnpm dlx shadcn@latest`
|
|
51
|
+
command from the same app root and continue following this skill.
|
|
52
|
+
- Keep registry URLs and aliases in that app's `components.json`. Never put
|
|
53
|
+
registry credentials in MCP config or checked-in source.
|
|
54
|
+
|
|
55
|
+
## Design-System Lint Feedback
|
|
56
|
+
|
|
57
|
+
In the framework repository, `pnpm lint` runs Oxlint with `@shadcn/lint` for the
|
|
58
|
+
scoped template UI paths. Run it after UI changes and fix every `shadcn/*`
|
|
59
|
+
finding before handing off. Template packages use the workspace lint
|
|
60
|
+
configuration; do not create a second local lint configuration just for one
|
|
61
|
+
app.
|
|
62
|
+
|
|
63
|
+
Before claiming that shadcn lint ran in another workspace, inspect its root
|
|
64
|
+
`package.json` and `.oxlintrc.json`. The generic generated workspace currently
|
|
65
|
+
exposes `pnpm lint` as formatting-only and does not ship `@shadcn/lint` or the
|
|
66
|
+
framework repository's Oxlint config. In that scaffold, use this skill plus the
|
|
67
|
+
connected shadcn MCP (or the CLI fallback) for design-system guidance, and do
|
|
68
|
+
not report `shadcn/*` checks as having run. If the workspace owner adopts the
|
|
69
|
+
linter, add the dependency, scoped config, and lint script together.
|
|
70
|
+
|
|
71
|
+
The Plan template is intentionally excluded from this rollout. Its files remain
|
|
72
|
+
under `templates/plan/**`, but the root Oxlint ignore list keeps them out of the
|
|
73
|
+
shadcn checks until that template has a separate lint baseline.
|
|
74
|
+
|
|
75
|
+
- `no-restyle`: use the component's `variant`, `size`, and semantic props; put
|
|
76
|
+
layout on a parent and add a component variant only when the design system
|
|
77
|
+
genuinely needs a new treatment.
|
|
78
|
+
- `no-raw-colors`: use the theme tokens in the app's `global.css`, not raw
|
|
79
|
+
Tailwind palette classes or hard-coded color attributes.
|
|
80
|
+
- `no-arbitrary-values`: use the theme scale or a declared token instead of
|
|
81
|
+
one-off bracket values.
|
|
82
|
+
- `no-inline-styles`: use classes or CSS custom properties for dynamic layout;
|
|
83
|
+
keep intentional editor/export exceptions scoped to their owning subsystem.
|
|
84
|
+
- `no-unknown-classes` and `require-static-classes`: use classes Tailwind can
|
|
85
|
+
generate and keep class strings statically discoverable.
|
|
86
|
+
|
|
87
|
+
The local primitive source is the contract boundary. Product code should consume
|
|
88
|
+
its props and variants; update `packages/toolkit/src/ui/` or an app's
|
|
89
|
+
`components/ui/` only when the design-system contract itself changes.
|
|
90
|
+
|
|
32
91
|
## Agent-Native Adapter Rule
|
|
33
92
|
|
|
34
93
|
Pages, routes, and domain components import controls through the app's local UI
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: shadcn-ui
|
|
3
3
|
description: >-
|
|
4
|
-
|
|
5
|
-
when adding
|
|
6
|
-
|
|
7
|
-
file that happens to import a shadcn component.
|
|
4
|
+
Project-aware shadcn/ui components, registry MCP, theming, and design-system
|
|
5
|
+
lint feedback. Use when adding or changing React/Tailwind UI, a primitive,
|
|
6
|
+
theme, registry, or component contract in an Agent-Native app.
|
|
8
7
|
scope: dev
|
|
9
8
|
source: https://ui.shadcn.com/docs/skills
|
|
10
9
|
local-changes: >-
|
|
@@ -16,11 +15,18 @@ metadata:
|
|
|
16
15
|
|
|
17
16
|
# shadcn/ui
|
|
18
17
|
|
|
19
|
-
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
18
|
+
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
19
|
+
app, so always inspect the local project before adding, importing, or rewriting
|
|
20
|
+
them. When `@shadcn/lint` is configured, treat its feedback as implementation
|
|
21
|
+
guidance, not cosmetic noise. The framework repository runs it through the root
|
|
22
|
+
Oxlint configuration; generated workspaces carry this skill and the MCP
|
|
23
|
+
workflow, but do not automatically inherit that repository-only lint setup.
|
|
20
24
|
|
|
21
25
|
## First Steps
|
|
22
26
|
|
|
23
|
-
1. Work from the app root that owns `components.json`.
|
|
27
|
+
1. Work from the app root that owns `components.json`. In this monorepo, that is
|
|
28
|
+
the selected app/template directory (usually under `templates/`), not the
|
|
29
|
+
repository root.
|
|
24
30
|
2. In an Agent-Native app, inspect `app/design-system.ts` and
|
|
25
31
|
`ToolkitProvider` before choosing a primitive. A registered company design
|
|
26
32
|
system takes precedence over the default shadcn adapter.
|
|
@@ -29,6 +35,59 @@ This skill keeps shadcn/ui work project-aware. Components are source files in th
|
|
|
29
35
|
5. Check `app/components/ui/` or the resolved `ui` path before importing a component.
|
|
30
36
|
6. For unfamiliar components, run `pnpm dlx shadcn@latest docs <component>` and read the returned docs or examples before coding.
|
|
31
37
|
|
|
38
|
+
## MCP Registry Workflow
|
|
39
|
+
|
|
40
|
+
Each first-party app keeps the official shadcn MCP configuration in `.mcp.json`
|
|
41
|
+
next to its `components.json`. Start the agent from that app root so the MCP
|
|
42
|
+
server resolves the correct aliases, local UI directory, and Tailwind theme.
|
|
43
|
+
Do not add a single repository-root server: the root is a workspace, not a
|
|
44
|
+
shadcn project, and would make installs target the wrong project.
|
|
45
|
+
|
|
46
|
+
- Use the shadcn MCP to search, inspect, and install registry items when it is
|
|
47
|
+
connected. Prefer the app's configured registries over copied source.
|
|
48
|
+
- Use `pnpm dlx shadcn@latest info --json` for project context; the MCP has no
|
|
49
|
+
equivalent project-info tool.
|
|
50
|
+
- If the MCP is unavailable, use the equivalent `pnpm dlx shadcn@latest`
|
|
51
|
+
command from the same app root and continue following this skill.
|
|
52
|
+
- Keep registry URLs and aliases in that app's `components.json`. Never put
|
|
53
|
+
registry credentials in MCP config or checked-in source.
|
|
54
|
+
|
|
55
|
+
## Design-System Lint Feedback
|
|
56
|
+
|
|
57
|
+
In the framework repository, `pnpm lint` runs Oxlint with `@shadcn/lint` for the
|
|
58
|
+
scoped template UI paths. Run it after UI changes and fix every `shadcn/*`
|
|
59
|
+
finding before handing off. Template packages use the workspace lint
|
|
60
|
+
configuration; do not create a second local lint configuration just for one
|
|
61
|
+
app.
|
|
62
|
+
|
|
63
|
+
Before claiming that shadcn lint ran in another workspace, inspect its root
|
|
64
|
+
`package.json` and `.oxlintrc.json`. The generic generated workspace currently
|
|
65
|
+
exposes `pnpm lint` as formatting-only and does not ship `@shadcn/lint` or the
|
|
66
|
+
framework repository's Oxlint config. In that scaffold, use this skill plus the
|
|
67
|
+
connected shadcn MCP (or the CLI fallback) for design-system guidance, and do
|
|
68
|
+
not report `shadcn/*` checks as having run. If the workspace owner adopts the
|
|
69
|
+
linter, add the dependency, scoped config, and lint script together.
|
|
70
|
+
|
|
71
|
+
The Plan template is intentionally excluded from this rollout. Its files remain
|
|
72
|
+
under `templates/plan/**`, but the root Oxlint ignore list keeps them out of the
|
|
73
|
+
shadcn checks until that template has a separate lint baseline.
|
|
74
|
+
|
|
75
|
+
- `no-restyle`: use the component's `variant`, `size`, and semantic props; put
|
|
76
|
+
layout on a parent and add a component variant only when the design system
|
|
77
|
+
genuinely needs a new treatment.
|
|
78
|
+
- `no-raw-colors`: use the theme tokens in the app's `global.css`, not raw
|
|
79
|
+
Tailwind palette classes or hard-coded color attributes.
|
|
80
|
+
- `no-arbitrary-values`: use the theme scale or a declared token instead of
|
|
81
|
+
one-off bracket values.
|
|
82
|
+
- `no-inline-styles`: use classes or CSS custom properties for dynamic layout;
|
|
83
|
+
keep intentional editor/export exceptions scoped to their owning subsystem.
|
|
84
|
+
- `no-unknown-classes` and `require-static-classes`: use classes Tailwind can
|
|
85
|
+
generate and keep class strings statically discoverable.
|
|
86
|
+
|
|
87
|
+
The local primitive source is the contract boundary. Product code should consume
|
|
88
|
+
its props and variants; update `packages/toolkit/src/ui/` or an app's
|
|
89
|
+
`components/ui/` only when the design-system contract itself changes.
|
|
90
|
+
|
|
32
91
|
## Agent-Native Adapter Rule
|
|
33
92
|
|
|
34
93
|
Pages, routes, and domain components import controls through the app's local UI
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: shadcn-ui
|
|
3
3
|
description: >-
|
|
4
|
-
|
|
5
|
-
when adding
|
|
6
|
-
|
|
7
|
-
file that happens to import a shadcn component.
|
|
4
|
+
Project-aware shadcn/ui components, registry MCP, theming, and design-system
|
|
5
|
+
lint feedback. Use when adding or changing React/Tailwind UI, a primitive,
|
|
6
|
+
theme, registry, or component contract in an Agent-Native app.
|
|
8
7
|
scope: dev
|
|
9
8
|
source: https://ui.shadcn.com/docs/skills
|
|
10
9
|
local-changes: >-
|
|
@@ -16,11 +15,18 @@ metadata:
|
|
|
16
15
|
|
|
17
16
|
# shadcn/ui
|
|
18
17
|
|
|
19
|
-
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
18
|
+
This skill keeps shadcn/ui work project-aware. Components are source files in the
|
|
19
|
+
app, so always inspect the local project before adding, importing, or rewriting
|
|
20
|
+
them. When `@shadcn/lint` is configured, treat its feedback as implementation
|
|
21
|
+
guidance, not cosmetic noise. The framework repository runs it through the root
|
|
22
|
+
Oxlint configuration; generated workspaces carry this skill and the MCP
|
|
23
|
+
workflow, but do not automatically inherit that repository-only lint setup.
|
|
20
24
|
|
|
21
25
|
## First Steps
|
|
22
26
|
|
|
23
|
-
1. Work from the app root that owns `components.json`.
|
|
27
|
+
1. Work from the app root that owns `components.json`. In this monorepo, that is
|
|
28
|
+
the selected app/template directory (usually under `templates/`), not the
|
|
29
|
+
repository root.
|
|
24
30
|
2. In an Agent-Native app, inspect `app/design-system.ts` and
|
|
25
31
|
`ToolkitProvider` before choosing a primitive. A registered company design
|
|
26
32
|
system takes precedence over the default shadcn adapter.
|
|
@@ -29,6 +35,59 @@ This skill keeps shadcn/ui work project-aware. Components are source files in th
|
|
|
29
35
|
5. Check `app/components/ui/` or the resolved `ui` path before importing a component.
|
|
30
36
|
6. For unfamiliar components, run `pnpm dlx shadcn@latest docs <component>` and read the returned docs or examples before coding.
|
|
31
37
|
|
|
38
|
+
## MCP Registry Workflow
|
|
39
|
+
|
|
40
|
+
Each first-party app keeps the official shadcn MCP configuration in `.mcp.json`
|
|
41
|
+
next to its `components.json`. Start the agent from that app root so the MCP
|
|
42
|
+
server resolves the correct aliases, local UI directory, and Tailwind theme.
|
|
43
|
+
Do not add a single repository-root server: the root is a workspace, not a
|
|
44
|
+
shadcn project, and would make installs target the wrong project.
|
|
45
|
+
|
|
46
|
+
- Use the shadcn MCP to search, inspect, and install registry items when it is
|
|
47
|
+
connected. Prefer the app's configured registries over copied source.
|
|
48
|
+
- Use `pnpm dlx shadcn@latest info --json` for project context; the MCP has no
|
|
49
|
+
equivalent project-info tool.
|
|
50
|
+
- If the MCP is unavailable, use the equivalent `pnpm dlx shadcn@latest`
|
|
51
|
+
command from the same app root and continue following this skill.
|
|
52
|
+
- Keep registry URLs and aliases in that app's `components.json`. Never put
|
|
53
|
+
registry credentials in MCP config or checked-in source.
|
|
54
|
+
|
|
55
|
+
## Design-System Lint Feedback
|
|
56
|
+
|
|
57
|
+
In the framework repository, `pnpm lint` runs Oxlint with `@shadcn/lint` for the
|
|
58
|
+
scoped template UI paths. Run it after UI changes and fix every `shadcn/*`
|
|
59
|
+
finding before handing off. Template packages use the workspace lint
|
|
60
|
+
configuration; do not create a second local lint configuration just for one
|
|
61
|
+
app.
|
|
62
|
+
|
|
63
|
+
Before claiming that shadcn lint ran in another workspace, inspect its root
|
|
64
|
+
`package.json` and `.oxlintrc.json`. The generic generated workspace currently
|
|
65
|
+
exposes `pnpm lint` as formatting-only and does not ship `@shadcn/lint` or the
|
|
66
|
+
framework repository's Oxlint config. In that scaffold, use this skill plus the
|
|
67
|
+
connected shadcn MCP (or the CLI fallback) for design-system guidance, and do
|
|
68
|
+
not report `shadcn/*` checks as having run. If the workspace owner adopts the
|
|
69
|
+
linter, add the dependency, scoped config, and lint script together.
|
|
70
|
+
|
|
71
|
+
The Plan template is intentionally excluded from this rollout. Its files remain
|
|
72
|
+
under `templates/plan/**`, but the root Oxlint ignore list keeps them out of the
|
|
73
|
+
shadcn checks until that template has a separate lint baseline.
|
|
74
|
+
|
|
75
|
+
- `no-restyle`: use the component's `variant`, `size`, and semantic props; put
|
|
76
|
+
layout on a parent and add a component variant only when the design system
|
|
77
|
+
genuinely needs a new treatment.
|
|
78
|
+
- `no-raw-colors`: use the theme tokens in the app's `global.css`, not raw
|
|
79
|
+
Tailwind palette classes or hard-coded color attributes.
|
|
80
|
+
- `no-arbitrary-values`: use the theme scale or a declared token instead of
|
|
81
|
+
one-off bracket values.
|
|
82
|
+
- `no-inline-styles`: use classes or CSS custom properties for dynamic layout;
|
|
83
|
+
keep intentional editor/export exceptions scoped to their owning subsystem.
|
|
84
|
+
- `no-unknown-classes` and `require-static-classes`: use classes Tailwind can
|
|
85
|
+
generate and keep class strings statically discoverable.
|
|
86
|
+
|
|
87
|
+
The local primitive source is the contract boundary. Product code should consume
|
|
88
|
+
its props and variants; update `packages/toolkit/src/ui/` or an app's
|
|
89
|
+
`components/ui/` only when the design-system contract itself changes.
|
|
90
|
+
|
|
32
91
|
## Agent-Native Adapter Rule
|
|
33
92
|
|
|
34
93
|
Pages, routes, and domain components import controls through the app's local UI
|
|
@@ -2,7 +2,25 @@ packages:
|
|
|
2
2
|
- "packages/*"
|
|
3
3
|
- "apps/*"
|
|
4
4
|
|
|
5
|
+
minimumReleaseAge: 1440
|
|
6
|
+
minimumReleaseAgeExclude:
|
|
7
|
+
- "@bacons/apple-targets"
|
|
8
|
+
- "@agent-native/core"
|
|
9
|
+
- "@modelcontextprotocol/client"
|
|
10
|
+
- "@modelcontextprotocol/core"
|
|
11
|
+
- "@modelcontextprotocol/node"
|
|
12
|
+
- "@modelcontextprotocol/server"
|
|
13
|
+
- "dom-to-pptx"
|
|
14
|
+
- "fast-xml-parser"
|
|
15
|
+
- "typescript"
|
|
16
|
+
- "@typescript/typescript6"
|
|
17
|
+
- "@typescript/typescript-*"
|
|
18
|
+
|
|
5
19
|
overrides:
|
|
20
|
+
# @sentry/vite-plugin's range can resolve a newly published bundler tarball
|
|
21
|
+
# before the registry has made it fetchable. Keep fresh workspaces on the
|
|
22
|
+
# version already verified by this repository until Sentry is upgraded.
|
|
23
|
+
"@sentry/bundler-plugins": "10.73.0"
|
|
6
24
|
"@assistant-ui/store": ">=0.2.9 <0.2.14"
|
|
7
25
|
"@assistant-ui/tap": "^0.5.14"
|
|
8
26
|
better-auth: "1.7.4"
|