create-stencil-components 1.0.7 → 1.0.9

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.
Files changed (74) hide show
  1. package/dist/templates/base/.agents/skills/link-workspace-packages/SKILL.md +127 -0
  2. package/dist/templates/base/.agents/skills/monitor-ci/SKILL.md +301 -0
  3. package/dist/templates/base/.agents/skills/monitor-ci/references/fix-flows.md +108 -0
  4. package/dist/templates/base/.agents/skills/monitor-ci/scripts/ci-poll-decide.mjs +356 -0
  5. package/dist/templates/base/.agents/skills/monitor-ci/scripts/ci-state-update.mjs +152 -0
  6. package/dist/templates/base/.agents/skills/nx-generate/SKILL.md +166 -0
  7. package/dist/templates/base/.agents/skills/nx-import/SKILL.md +238 -0
  8. package/dist/templates/base/.agents/skills/nx-import/references/ESLINT.md +109 -0
  9. package/dist/templates/base/.agents/skills/nx-import/references/GRADLE.md +12 -0
  10. package/dist/templates/base/.agents/skills/nx-import/references/JEST.md +223 -0
  11. package/dist/templates/base/.agents/skills/nx-import/references/NEXT.md +214 -0
  12. package/dist/templates/base/.agents/skills/nx-import/references/TURBOREPO.md +62 -0
  13. package/dist/templates/base/.agents/skills/nx-import/references/VITE.md +393 -0
  14. package/dist/templates/base/.agents/skills/nx-plugins/SKILL.md +9 -0
  15. package/dist/templates/base/.agents/skills/nx-run-tasks/SKILL.md +58 -0
  16. package/dist/templates/base/.agents/skills/nx-workspace/SKILL.md +284 -0
  17. package/dist/templates/base/.agents/skills/nx-workspace/references/AFFECTED.md +27 -0
  18. package/dist/templates/base/.claude/settings.json +13 -0
  19. package/dist/templates/base/.codex/agents/ci-monitor-subagent.toml +46 -0
  20. package/dist/templates/base/.codex/config.toml +10 -0
  21. package/dist/templates/base/.cursor/agents/ci-monitor-subagent.md +51 -0
  22. package/dist/templates/base/.gemini/commands/monitor-ci.toml +298 -0
  23. package/dist/templates/base/.gemini/settings.json +8 -11
  24. package/dist/templates/base/.github/agents/ci-monitor-subagent.agent.md +49 -0
  25. package/dist/templates/base/.github/prompts/monitor-ci.prompt.md +301 -0
  26. package/dist/templates/base/.github/skills/link-workspace-packages/SKILL.md +127 -0
  27. package/dist/templates/base/.github/skills/monitor-ci/SKILL.md +301 -0
  28. package/dist/templates/base/.github/skills/monitor-ci/references/fix-flows.md +108 -0
  29. package/dist/templates/base/.github/skills/monitor-ci/scripts/ci-poll-decide.mjs +356 -0
  30. package/dist/templates/base/.github/skills/monitor-ci/scripts/ci-state-update.mjs +152 -0
  31. package/dist/templates/base/.github/skills/nx-generate/SKILL.md +166 -0
  32. package/dist/templates/base/.github/skills/nx-import/SKILL.md +238 -0
  33. package/dist/templates/base/.github/skills/nx-import/references/ESLINT.md +109 -0
  34. package/dist/templates/base/.github/skills/nx-import/references/GRADLE.md +12 -0
  35. package/dist/templates/base/.github/skills/nx-import/references/JEST.md +223 -0
  36. package/dist/templates/base/.github/skills/nx-import/references/NEXT.md +214 -0
  37. package/dist/templates/base/.github/skills/nx-import/references/TURBOREPO.md +62 -0
  38. package/dist/templates/base/.github/skills/nx-import/references/VITE.md +393 -0
  39. package/dist/templates/base/.github/skills/nx-plugins/SKILL.md +9 -0
  40. package/dist/templates/base/.github/skills/nx-run-tasks/SKILL.md +58 -0
  41. package/dist/templates/base/.github/skills/nx-workspace/SKILL.md +284 -0
  42. package/dist/templates/base/.github/skills/nx-workspace/references/AFFECTED.md +27 -0
  43. package/dist/templates/base/.opencode/agents/ci-monitor-subagent.md +50 -0
  44. package/dist/templates/base/.opencode/commands/monitor-ci.md +301 -0
  45. package/dist/templates/base/.opencode/skills/link-workspace-packages/SKILL.md +127 -0
  46. package/dist/templates/base/.opencode/skills/monitor-ci/SKILL.md +301 -0
  47. package/dist/templates/base/.opencode/skills/monitor-ci/references/fix-flows.md +108 -0
  48. package/dist/templates/base/.opencode/skills/monitor-ci/scripts/ci-poll-decide.mjs +356 -0
  49. package/dist/templates/base/.opencode/skills/monitor-ci/scripts/ci-state-update.mjs +152 -0
  50. package/dist/templates/base/.opencode/skills/nx-generate/SKILL.md +166 -0
  51. package/dist/templates/base/.opencode/skills/nx-import/SKILL.md +238 -0
  52. package/dist/templates/base/.opencode/skills/nx-import/references/ESLINT.md +109 -0
  53. package/dist/templates/base/.opencode/skills/nx-import/references/GRADLE.md +12 -0
  54. package/dist/templates/base/.opencode/skills/nx-import/references/JEST.md +223 -0
  55. package/dist/templates/base/.opencode/skills/nx-import/references/NEXT.md +214 -0
  56. package/dist/templates/base/.opencode/skills/nx-import/references/TURBOREPO.md +62 -0
  57. package/dist/templates/base/.opencode/skills/nx-import/references/VITE.md +393 -0
  58. package/dist/templates/base/.opencode/skills/nx-plugins/SKILL.md +9 -0
  59. package/dist/templates/base/.opencode/skills/nx-run-tasks/SKILL.md +58 -0
  60. package/dist/templates/base/.opencode/skills/nx-workspace/SKILL.md +284 -0
  61. package/dist/templates/base/.opencode/skills/nx-workspace/references/AFFECTED.md +27 -0
  62. package/dist/templates/base/AGENTS.md +46 -36
  63. package/dist/templates/base/CLAUDE.md +15 -5
  64. package/dist/templates/base/package.json +3 -3
  65. package/dist/templates/variants/all/packages/components-{{PROJECT_NAME_KEBAB}}-core/package.json +3 -3
  66. package/dist/templates/variants/all/packages/components-{{PROJECT_NAME_KEBAB}}-react/package.json +2 -2
  67. package/dist/templates/variants/all/packages/components-{{PROJECT_NAME_KEBAB}}-react/tsconfig.json +5 -1
  68. package/dist/templates/variants/angular/packages/components-{{PROJECT_NAME_KEBAB}}-core/package.json +2 -2
  69. package/dist/templates/variants/react/packages/components-{{PROJECT_NAME_KEBAB}}-core/package.json +2 -2
  70. package/dist/templates/variants/react/packages/components-{{PROJECT_NAME_KEBAB}}-react/package.json +2 -2
  71. package/dist/templates/variants/react/packages/components-{{PROJECT_NAME_KEBAB}}-react/tsconfig.json +5 -1
  72. package/dist/templates/variants/vue/packages/components-{{PROJECT_NAME_KEBAB}}-core/package.json +1 -1
  73. package/dist/templates/variants/web-components/packages/components-{{PROJECT_NAME_KEBAB}}-core/package.json +1 -1
  74. package/package.json +1 -1
@@ -0,0 +1,9 @@
1
+ ---
2
+ name: nx-plugins
3
+ description: Find and add Nx plugins. USE WHEN user wants to discover available plugins, install a new plugin, or add support for a specific framework or technology to the workspace.
4
+ ---
5
+
6
+ ## Finding and Installing new plugins
7
+
8
+ - List plugins: `pnpm nx list`
9
+ - Install plugins `pnpm nx add <plugin>`. Example: `pnpm nx add @nx/react`.
@@ -0,0 +1,58 @@
1
+ ---
2
+ name: nx-run-tasks
3
+ description: Helps with running tasks in an Nx workspace. USE WHEN the user wants to execute build, test, lint, serve, or run any other tasks defined in the workspace.
4
+ ---
5
+
6
+ You can run tasks with Nx in the following way.
7
+
8
+ Keep in mind that you might have to prefix things with npx/pnpx/yarn if the user doesn't have nx installed globally. Look at the package.json or lockfile to determine which package manager is in use.
9
+
10
+ For more details on any command, run it with `--help` (e.g. `nx run-many --help`, `nx affected --help`).
11
+
12
+ ## Understand which tasks can be run
13
+
14
+ You can check those via `nx show project <projectname> --json`, for example `nx show project myapp --json`. It contains a `targets` section which has information about targets that can be run. You can also just look at the `package.json` scripts or `project.json` targets, but you might miss out on inferred tasks by Nx plugins.
15
+
16
+ ## Run a single task
17
+
18
+ ```
19
+ nx run <project>:<task>
20
+ ```
21
+
22
+ where `project` is the project name defined in `package.json` or `project.json` (if present).
23
+
24
+ ## Run multiple tasks
25
+
26
+ ```
27
+ nx run-many -t build test lint typecheck
28
+ ```
29
+
30
+ You can pass a `-p` flag to filter to specific projects, otherwise it runs on all projects. You can also use `--exclude` to exclude projects, and `--parallel` to control the number of parallel processes (default is 3).
31
+
32
+ Examples:
33
+
34
+ - `nx run-many -t test -p proj1 proj2` — test specific projects
35
+ - `nx run-many -t test --projects=*-app --exclude=excluded-app` — test projects matching a pattern
36
+ - `nx run-many -t test --projects=tag:api-*` — test projects by tag
37
+
38
+ ## Run tasks for affected projects
39
+
40
+ Use `nx affected` to only run tasks on projects that have been changed and projects that depend on changed projects. This is especially useful in CI and for large workspaces.
41
+
42
+ ```
43
+ nx affected -t build test lint
44
+ ```
45
+
46
+ By default it compares against the base branch. You can customize this:
47
+
48
+ - `nx affected -t test --base=main --head=HEAD` — compare against a specific base and head
49
+ - `nx affected -t test --files=libs/mylib/src/index.ts` — specify changed files directly
50
+
51
+ ## Useful flags
52
+
53
+ These flags work with `run`, `run-many`, and `affected`:
54
+
55
+ - `--skipNxCache` — rerun tasks even when results are cached
56
+ - `--verbose` — print additional information such as stack traces
57
+ - `--nxBail` — stop execution after the first failed task
58
+ - `--configuration=<name>` — use a specific configuration (e.g. `production`)
@@ -0,0 +1,284 @@
1
+ ---
2
+ name: nx-workspace
3
+ description: "Explore and understand Nx workspaces. USE WHEN answering questions about the workspace, projects, or tasks. ALSO USE WHEN an nx command fails or you need to check available targets/configuration before running a task. EXAMPLES: 'What projects are in this workspace?', 'How is project X configured?', 'What depends on library Y?', 'What targets can I run?', 'Cannot find configuration for task', 'debug nx task failure'."
4
+ ---
5
+
6
+ # Nx Workspace Exploration
7
+
8
+ This skill provides read-only exploration of Nx workspaces. Use it to understand workspace structure, project configuration, available targets, and dependencies.
9
+
10
+ Keep in mind that you might have to prefix commands with `npx`/`pnpx`/`yarn` if nx isn't installed globally. Check the lockfile to determine the package manager in use.
11
+
12
+ ## Listing Projects
13
+
14
+ Use `nx show projects` to list projects in the workspace.
15
+
16
+ The project filtering syntax (`-p`/`--projects`) works across many Nx commands including `nx run-many`, `nx release`, `nx show projects`, and more. Filters support explicit names, glob patterns, tag references (e.g. `tag:name`), directories, and negation (e.g. `!project-name`).
17
+
18
+ ```bash
19
+ # List all projects
20
+ nx show projects
21
+
22
+ # Filter by pattern (glob)
23
+ nx show projects --projects "apps/*"
24
+ nx show projects --projects "shared-*"
25
+
26
+ # Filter by tag
27
+ nx show projects --projects "tag:publishable"
28
+ nx show projects -p 'tag:publishable,!tag:internal'
29
+
30
+ # Filter by target (projects that have a specific target)
31
+ nx show projects --withTarget build
32
+
33
+ # Combine filters
34
+ nx show projects --type lib --withTarget test
35
+ nx show projects --affected --exclude="*-e2e"
36
+ nx show projects -p "tag:scope:client,packages/*"
37
+
38
+ # Negate patterns
39
+ nx show projects -p '!tag:private'
40
+ nx show projects -p '!*-e2e'
41
+
42
+ # Output as JSON
43
+ nx show projects --json
44
+ ```
45
+
46
+ ## Project Configuration
47
+
48
+ Use `nx show project <name> --json` to get the full resolved configuration for a project.
49
+
50
+ **Important**: Do NOT read `project.json` directly - it only contains partial configuration. The `nx show project --json` command returns the full resolved config including inferred targets from plugins.
51
+
52
+ You can read the full project schema at `node_modules/nx/schemas/project-schema.json` to understand nx project configuration options.
53
+
54
+ ```bash
55
+ # Get full project configuration
56
+ nx show project my-app --json
57
+
58
+ # Extract specific parts from the JSON
59
+ nx show project my-app --json | jq '.targets'
60
+ nx show project my-app --json | jq '.targets.build'
61
+ nx show project my-app --json | jq '.targets | keys'
62
+
63
+ # Check project metadata
64
+ nx show project my-app --json | jq '{name, root, sourceRoot, projectType, tags}'
65
+ ```
66
+
67
+ ## Target Information
68
+
69
+ Targets define what tasks can be run on a project.
70
+
71
+ ```bash
72
+ # List all targets for a project
73
+ nx show project my-app --json | jq '.targets | keys'
74
+
75
+ # Get full target configuration
76
+ nx show project my-app --json | jq '.targets.build'
77
+
78
+ # Check target executor/command
79
+ nx show project my-app --json | jq '.targets.build.executor'
80
+ nx show project my-app --json | jq '.targets.build.command'
81
+
82
+ # View target options
83
+ nx show project my-app --json | jq '.targets.build.options'
84
+
85
+ # Check target inputs/outputs (for caching)
86
+ nx show project my-app --json | jq '.targets.build.inputs'
87
+ nx show project my-app --json | jq '.targets.build.outputs'
88
+
89
+ # Find projects with a specific target
90
+ nx show projects --withTarget serve
91
+ nx show projects --withTarget e2e
92
+ ```
93
+
94
+ ## Workspace Configuration
95
+
96
+ Read `nx.json` directly for workspace-level configuration.
97
+ You can read the full project schema at `node_modules/nx/schemas/nx-schema.json` to understand nx project configuration options.
98
+
99
+ ```bash
100
+ # Read the full nx.json
101
+ cat nx.json
102
+
103
+ # Or use jq for specific sections
104
+ cat nx.json | jq '.targetDefaults'
105
+ cat nx.json | jq '.namedInputs'
106
+ cat nx.json | jq '.plugins'
107
+ cat nx.json | jq '.generators'
108
+ ```
109
+
110
+ Key nx.json sections:
111
+
112
+ - `targetDefaults` - Default configuration applied to all targets of a given name
113
+ - `namedInputs` - Reusable input definitions for caching
114
+ - `plugins` - Nx plugins and their configuration
115
+ - ...and much more, read the schema or nx.json for details
116
+
117
+ ## Affected Projects
118
+
119
+ If the user is asking about affected projects, read the [affected projects reference](references/AFFECTED.md) for detailed commands and examples.
120
+
121
+ ## Common Exploration Patterns
122
+
123
+ ### "What's in this workspace?"
124
+
125
+ ```bash
126
+ nx show projects
127
+ nx show projects --type app
128
+ nx show projects --type lib
129
+ ```
130
+
131
+ ### "How do I build/test/lint project X?"
132
+
133
+ ```bash
134
+ nx show project X --json | jq '.targets | keys'
135
+ nx show project X --json | jq '.targets.build'
136
+ ```
137
+
138
+ ### "What depends on library Y?"
139
+
140
+ ```bash
141
+ # Use the project graph to find dependents
142
+ nx graph --print | jq '.graph.dependencies | to_entries[] | select(.value[].target == "Y") | .key'
143
+ ```
144
+
145
+ ## Programmatic Answers
146
+
147
+ When processing nx CLI results, use command-line tools to compute the answer programmatically rather than counting or parsing output manually. Always use `--json` flags to get structured output that can be processed with `jq`, `grep`, or other tools you have installed locally.
148
+
149
+ ### Listing Projects
150
+
151
+ ```bash
152
+ nx show projects --json
153
+ ```
154
+
155
+ Example output:
156
+
157
+ ```json
158
+ ["my-app", "my-app-e2e", "shared-ui", "shared-utils", "api"]
159
+ ```
160
+
161
+ Common operations:
162
+
163
+ ```bash
164
+ # Count projects
165
+ nx show projects --json | jq 'length'
166
+
167
+ # Filter by pattern
168
+ nx show projects --json | jq '.[] | select(startswith("shared-"))'
169
+
170
+ # Get affected projects as array
171
+ nx show projects --affected --json | jq '.'
172
+ ```
173
+
174
+ ### Project Details
175
+
176
+ ```bash
177
+ nx show project my-app --json
178
+ ```
179
+
180
+ Example output:
181
+
182
+ ```json
183
+ {
184
+ "root": "apps/my-app",
185
+ "name": "my-app",
186
+ "sourceRoot": "apps/my-app/src",
187
+ "projectType": "application",
188
+ "tags": ["type:app", "scope:client"],
189
+ "targets": {
190
+ "build": {
191
+ "executor": "@nx/vite:build",
192
+ "options": { "outputPath": "dist/apps/my-app" }
193
+ },
194
+ "serve": {
195
+ "executor": "@nx/vite:dev-server",
196
+ "options": { "buildTarget": "my-app:build" }
197
+ },
198
+ "test": {
199
+ "executor": "@nx/vite:test",
200
+ "options": {}
201
+ }
202
+ },
203
+ "implicitDependencies": []
204
+ }
205
+ ```
206
+
207
+ Common operations:
208
+
209
+ ```bash
210
+ # Get target names
211
+ nx show project my-app --json | jq '.targets | keys'
212
+
213
+ # Get specific target config
214
+ nx show project my-app --json | jq '.targets.build'
215
+
216
+ # Get tags
217
+ nx show project my-app --json | jq '.tags'
218
+
219
+ # Get project root
220
+ nx show project my-app --json | jq -r '.root'
221
+ ```
222
+
223
+ ### Project Graph
224
+
225
+ ```bash
226
+ nx graph --print
227
+ ```
228
+
229
+ Example output:
230
+
231
+ ```json
232
+ {
233
+ "graph": {
234
+ "nodes": {
235
+ "my-app": {
236
+ "name": "my-app",
237
+ "type": "app",
238
+ "data": { "root": "apps/my-app", "tags": ["type:app"] }
239
+ },
240
+ "shared-ui": {
241
+ "name": "shared-ui",
242
+ "type": "lib",
243
+ "data": { "root": "libs/shared-ui", "tags": ["type:ui"] }
244
+ }
245
+ },
246
+ "dependencies": {
247
+ "my-app": [{ "source": "my-app", "target": "shared-ui", "type": "static" }],
248
+ "shared-ui": []
249
+ }
250
+ }
251
+ }
252
+ ```
253
+
254
+ Common operations:
255
+
256
+ ```bash
257
+ # Get all project names from graph
258
+ nx graph --print | jq '.graph.nodes | keys'
259
+
260
+ # Find dependencies of a project
261
+ nx graph --print | jq '.graph.dependencies["my-app"]'
262
+
263
+ # Find projects that depend on a library
264
+ nx graph --print | jq '.graph.dependencies | to_entries[] | select(.value[].target == "shared-ui") | .key'
265
+ ```
266
+
267
+ ## Troubleshooting
268
+
269
+ ### "Cannot find configuration for task X:target"
270
+
271
+ ```bash
272
+ # Check what targets exist on the project
273
+ nx show project X --json | jq '.targets | keys'
274
+
275
+ # Check if any projects have that target
276
+ nx show projects --withTarget target
277
+ ```
278
+
279
+ ### "The workspace is out of sync"
280
+
281
+ ```bash
282
+ nx sync
283
+ nx reset # if sync doesn't fix stale cache
284
+ ```
@@ -0,0 +1,27 @@
1
+ ## Affected Projects
2
+
3
+ Find projects affected by changes in the current branch.
4
+
5
+ ```bash
6
+ # Affected since base branch (auto-detected)
7
+ nx show projects --affected
8
+
9
+ # Affected with explicit base
10
+ nx show projects --affected --base=main
11
+ nx show projects --affected --base=origin/main
12
+
13
+ # Affected between two commits
14
+ nx show projects --affected --base=abc123 --head=def456
15
+
16
+ # Affected apps only
17
+ nx show projects --affected --type app
18
+
19
+ # Affected excluding e2e projects
20
+ nx show projects --affected --exclude="*-e2e"
21
+
22
+ # Affected by uncommitted changes
23
+ nx show projects --affected --uncommitted
24
+
25
+ # Affected by untracked files
26
+ nx show projects --affected --untracked
27
+ ```
@@ -21,34 +21,34 @@ Always follow the standard Stencil component decorator pattern:
21
21
  import { Component, Host, h, Prop, State, Event, EventEmitter } from '@stencil/core';
22
22
 
23
23
  @Component({
24
- tag: 'my-component',
25
- styleUrl: 'my-component.scss',
26
- shadow: true,
24
+ tag: 'my-component',
25
+ styleUrl: 'my-component.scss',
26
+ shadow: true,
27
27
  })
28
28
  export class MyComponent {
29
- /** Public properties */
30
- @Prop() label: string;
31
-
32
- /** Internal state */
33
- @State() isActive: boolean = false;
34
-
35
- /** Custom events */
36
- @Event() clicked: EventEmitter<void>;
37
-
38
- private handleClick = () => {
39
- this.isActive = !this.isActive;
40
- this.clicked.emit();
41
- };
42
-
43
- render() {
44
- return (
45
- <Host>
46
- <button onClick={this.handleClick}>
47
- {this.label} - {this.isActive ? 'Active' : 'Inactive'}
48
- </button>
49
- </Host>
50
- );
51
- }
29
+ /** Public properties */
30
+ @Prop() label: string;
31
+
32
+ /** Internal state */
33
+ @State() isActive: boolean = false;
34
+
35
+ /** Custom events */
36
+ @Event() clicked: EventEmitter<void>;
37
+
38
+ private handleClick = () => {
39
+ this.isActive = !this.isActive;
40
+ this.clicked.emit();
41
+ };
42
+
43
+ render() {
44
+ return (
45
+ <Host>
46
+ <button onClick={this.handleClick}>
47
+ {this.label} - {this.isActive ? 'Active' : 'Inactive'}
48
+ </button>
49
+ </Host>
50
+ );
51
+ }
52
52
  }
53
53
  ```
54
54
 
@@ -65,12 +65,12 @@ export class MyComponent {
65
65
  - **Functional Components:** Use simple functional components (returning JSX) for UI-only elements that don't need the Stencil lifecycle.
66
66
  - **Reactivity:** Remember that Stencil only tracks changes to `@State` and `@Prop`. Arrays and objects must be reassigned (immutable patterns) to trigger a re-render:
67
67
 
68
- ```typescript
69
- // Correct
70
- this.items = [...this.items, newItem];
71
- // Incorrect
72
- this.items.push(newItem);
73
- ```
68
+ ```typescript
69
+ // Correct
70
+ this.items = [...this.items, newItem];
71
+ // Incorrect
72
+ this.items.push(newItem);
73
+ ```
74
74
 
75
75
  - **Performance:** Minimize use of `@Watch` to avoid unnecessary renders. Use the `render()` method efficiently.
76
76
 
@@ -108,11 +108,21 @@ export class MyComponent {
108
108
 
109
109
  ## General Guidelines for working with Nx
110
110
 
111
+ - For navigating/exploring the workspace, invoke the `nx-workspace` skill first - it has patterns for querying projects, targets, and dependencies
111
112
  - When running tasks (for example build, lint, test, e2e, etc.), always prefer running the task through `nx` (i.e. `nx run`, `nx run-many`, `nx affected`) instead of using the underlying tooling directly
113
+ - Prefix nx commands with the workspace's package manager (e.g., `pnpm nx build`, `npm exec nx test`) - avoids using globally installed CLI
112
114
  - You have access to the Nx MCP server and its tools, use them to help the user
113
- - When answering questions about the repository, use the `nx_workspace` tool first to gain an understanding of the workspace architecture where applicable.
114
- - When working in individual projects, use the `nx_project_details` mcp tool to analyze and understand the specific project structure and dependencies
115
- - For questions around nx configuration, best practices or if you're unsure, use the `nx_docs` tool to get relevant, up-to-date docs. Always use this instead of assuming things about nx configuration
116
- - If the user needs help with an Nx configuration or project graph error, use the `nx_workspace` tool to get any errors
115
+ - For Nx plugin best practices, check `node_modules/@nx/<plugin>/PLUGIN.md`. Not all plugins have this file - proceed without it if unavailable.
116
+ - NEVER guess CLI flags - always check nx_docs or `--help` first when unsure
117
+
118
+ ## Scaffolding & Generators
119
+
120
+ - For scaffolding tasks (creating apps, libs, project structure, setup), ALWAYS invoke the `nx-generate` skill FIRST before exploring or calling MCP tools
121
+
122
+ ## When to use nx_docs
123
+
124
+ - USE for: advanced config options, unfamiliar flags, migration guides, plugin configuration, edge cases
125
+ - DON'T USE for: basic generator syntax (`nx g @nx/react:app`), standard commands, things you already know
126
+ - The `nx-generate` skill handles generator discovery internally - don't call nx_docs just to look up generator syntax
117
127
 
118
128
  <!-- nx configuration end-->
@@ -6,11 +6,21 @@
6
6
 
7
7
  # General Guidelines for working with Nx
8
8
 
9
+ - For navigating/exploring the workspace, invoke the `nx-workspace` skill first - it has patterns for querying projects, targets, and dependencies
9
10
  - When running tasks (for example build, lint, test, e2e, etc.), always prefer running the task through `nx` (i.e. `nx run`, `nx run-many`, `nx affected`) instead of using the underlying tooling directly
11
+ - Prefix nx commands with the workspace's package manager (e.g., `pnpm nx build`, `npm exec nx test`) - avoids using globally installed CLI
10
12
  - You have access to the Nx MCP server and its tools, use them to help the user
11
- - When answering questions about the repository, use the `nx_workspace` tool first to gain an understanding of the workspace architecture where applicable.
12
- - When working in individual projects, use the `nx_project_details` mcp tool to analyze and understand the specific project structure and dependencies
13
- - For questions around nx configuration, best practices or if you're unsure, use the `nx_docs` tool to get relevant, up-to-date docs. Always use this instead of assuming things about nx configuration
14
- - If the user needs help with an Nx configuration or project graph error, use the `nx_workspace` tool to get any errors
13
+ - For Nx plugin best practices, check `node_modules/@nx/<plugin>/PLUGIN.md`. Not all plugins have this file - proceed without it if unavailable.
14
+ - NEVER guess CLI flags - always check nx_docs or `--help` first when unsure
15
15
 
16
- <!-- nx configuration end-->
16
+ ## Scaffolding & Generators
17
+
18
+ - For scaffolding tasks (creating apps, libs, project structure, setup), ALWAYS invoke the `nx-generate` skill FIRST before exploring or calling MCP tools
19
+
20
+ ## When to use nx_docs
21
+
22
+ - USE for: advanced config options, unfamiliar flags, migration guides, plugin configuration, edge cases
23
+ - DON'T USE for: basic generator syntax (`nx g @nx/react:app`), standard commands, things you already know
24
+ - The `nx-generate` skill handles generator discovery internally - don't call nx_docs just to look up generator syntax
25
+
26
+ <!-- nx configuration end-->
@@ -16,13 +16,13 @@
16
16
  "@commitlint/cli": "20.5.0",
17
17
  "@commitlint/config-conventional": "20.5.0",
18
18
  "@eslint/js": "10.0.1",
19
- "@nx/js": "22.6.4",
19
+ "@nx/js": "22.6.5",
20
20
  "eslint": "10.2.0",
21
21
  "eslint-config-prettier": "10.1.8",
22
22
  "eslint-plugin-prettier": "5.5.5",
23
23
  "eslint-plugin-sonarjs": "4.0.2",
24
24
  "husky": "9.1.7",
25
- "nx": "22.6.4",
25
+ "nx": "22.6.5",
26
26
  "rimraf": "6.1.3",
27
27
  "stylelint": "17.6.0",
28
28
  "stylelint-config-standard": "40.0.0",
@@ -30,7 +30,7 @@
30
30
  "stylelint-use-logical": "2.1.3",
31
31
  "ts-node": "10.9.2",
32
32
  "typescript": "6.0.2",
33
- "typescript-eslint": "8.58.0"
33
+ "typescript-eslint": "8.58.1"
34
34
  },
35
35
  "nx": {},
36
36
  "volta": {
@@ -68,13 +68,13 @@
68
68
  "tslib": "2.8.1"
69
69
  },
70
70
  "devDependencies": {
71
- "@stencil/angular-output-target": "1.3.0",
71
+ "@stencil/angular-output-target": "1.3.1",
72
72
  "@stencil/core": "4.43.3",
73
- "@stencil/react-output-target": "1.4.2",
73
+ "@stencil/react-output-target": "1.5.0",
74
74
  "@stencil/sass": "3.2.3",
75
75
  "@stencil/vue-output-target": "0.13.1",
76
76
  "@types/jest": "30.0.0",
77
- "@types/node": "25.5.2",
77
+ "@types/node": "25.6.0",
78
78
  "jest": "30.3.0",
79
79
  "jest-cli": "30.3.0",
80
80
  "puppeteer": "24.40.0",
@@ -35,12 +35,12 @@
35
35
  "tslib": "2.8.1"
36
36
  },
37
37
  "peerDependencies": {
38
- "@stencil/react-output-target": "1.2.0",
38
+ "@stencil/react-output-target": "1.5.0",
39
39
  "@{{ORGANIZATION_NAME}}/components-{{PROJECT_NAME_KEBAB}}-core": "*",
40
40
  "react": ">=18"
41
41
  },
42
42
  "devDependencies": {
43
- "@types/node": "25.5.2",
43
+ "@types/node": "25.6.0",
44
44
  "@types/react": ">=18"
45
45
  },
46
46
  "license": "MIT",
@@ -24,7 +24,11 @@
24
24
  "removeComments": false,
25
25
  "rootDir": "src",
26
26
  "sourceMap": false,
27
- "target": "es2022"
27
+ "target": "es2022",
28
+ "types": [
29
+ "node",
30
+ "react"
31
+ ]
28
32
  },
29
33
  "include": [
30
34
  "src"
@@ -68,11 +68,11 @@
68
68
  "tslib": "2.8.1"
69
69
  },
70
70
  "devDependencies": {
71
- "@stencil/angular-output-target": "1.3.0",
71
+ "@stencil/angular-output-target": "1.3.1",
72
72
  "@stencil/core": "4.43.3",
73
73
  "@stencil/sass": "3.2.3",
74
74
  "@types/jest": "30.0.0",
75
- "@types/node": "25.5.2",
75
+ "@types/node": "25.6.0",
76
76
  "jest": "30.3.0",
77
77
  "jest-cli": "30.3.0",
78
78
  "puppeteer": "24.40.0",
@@ -69,10 +69,10 @@
69
69
  },
70
70
  "devDependencies": {
71
71
  "@stencil/core": "4.43.3",
72
- "@stencil/react-output-target": "1.4.2",
72
+ "@stencil/react-output-target": "1.5.0",
73
73
  "@stencil/sass": "3.2.3",
74
74
  "@types/jest": "30.0.0",
75
- "@types/node": "25.5.2",
75
+ "@types/node": "25.6.0",
76
76
  "jest": "30.3.0",
77
77
  "jest-cli": "30.3.0",
78
78
  "puppeteer": "24.40.0",
@@ -35,12 +35,12 @@
35
35
  "tslib": "2.8.1"
36
36
  },
37
37
  "peerDependencies": {
38
- "@stencil/react-output-target": "1.2.0",
38
+ "@stencil/react-output-target": "1.5.0",
39
39
  "@{{ORGANIZATION_NAME}}/components-{{PROJECT_NAME_KEBAB}}-core": "*",
40
40
  "react": ">=18"
41
41
  },
42
42
  "devDependencies": {
43
- "@types/node": "25.5.2",
43
+ "@types/node": "25.6.0",
44
44
  "@types/react": ">=18"
45
45
  },
46
46
  "license": "MIT",
@@ -24,7 +24,11 @@
24
24
  "removeComments": false,
25
25
  "rootDir": "src",
26
26
  "sourceMap": false,
27
- "target": "es2022"
27
+ "target": "es2022",
28
+ "types": [
29
+ "node",
30
+ "react"
31
+ ]
28
32
  },
29
33
  "include": [
30
34
  "src"
@@ -72,7 +72,7 @@
72
72
  "@stencil/sass": "3.2.3",
73
73
  "@stencil/vue-output-target": "0.13.1",
74
74
  "@types/jest": "30.0.0",
75
- "@types/node": "25.5.2",
75
+ "@types/node": "25.6.0",
76
76
  "jest": "30.3.0",
77
77
  "jest-cli": "30.3.0",
78
78
  "puppeteer": "24.40.0",
@@ -71,7 +71,7 @@
71
71
  "@stencil/core": "4.43.3",
72
72
  "@stencil/sass": "3.2.3",
73
73
  "@types/jest": "30.0.0",
74
- "@types/node": "25.5.2",
74
+ "@types/node": "25.6.0",
75
75
  "jest": "30.3.0",
76
76
  "jest-cli": "30.3.0",
77
77
  "puppeteer": "24.40.0",