@xylabs/ts-scripts-yarn3 7.5.6 → 7.5.7
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/package.json +4 -3
- package/templates/claude/commands/xy-build.md +4 -2
- package/templates/claude/commands/xy-clean.md +4 -2
- package/templates/claude/commands/xy-compile.md +4 -2
- package/templates/claude/commands/xy-cycle.md +4 -2
- package/templates/claude/commands/xy-dead.md +4 -2
- package/templates/claude/commands/xy-deplint.md +4 -2
- package/templates/claude/commands/xy-dupdeps.md +4 -2
- package/templates/claude/commands/xy-fix.md +4 -2
- package/templates/claude/commands/xy-gen-docs.md +4 -2
- package/templates/claude/commands/xy-gitignore.md +4 -2
- package/templates/claude/commands/xy-gitlint.md +4 -2
- package/templates/claude/commands/xy-knip.md +4 -2
- package/templates/claude/commands/xy-license.md +4 -2
- package/templates/claude/commands/xy-lint.md +4 -2
- package/templates/claude/commands/xy-publint.md +4 -2
- package/templates/claude/commands/xy-rebuild.md +4 -2
- package/templates/claude/commands/xy-recompile.md +4 -2
- package/templates/claude/commands/xy-reinstall.md +4 -2
- package/templates/claude/commands/xy-relint.md +4 -2
- package/templates/claude/commands/xy-retest.md +4 -2
- package/templates/claude/commands/xy-sonar.md +4 -2
- package/templates/claude/commands/xy-test.md +4 -2
- package/templates/claude/commands/xy-up.md +5 -3
- package/templates/claude/skills/xylabs-xy-cli/SKILL.md +187 -0
- package/templates/readme/README.body.md +1 -7
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xylabs/ts-scripts-yarn3",
|
|
3
|
-
"version": "7.5.
|
|
3
|
+
"version": "7.5.7",
|
|
4
4
|
"description": "TypeScript project scripts",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xylabs",
|
|
@@ -50,14 +50,15 @@
|
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@types/yargs": "~17.0.35",
|
|
53
|
-
"@xylabs/
|
|
53
|
+
"@xylabs/ts-scripts-common": "~7.5.7",
|
|
54
|
+
"@xylabs/tsconfig": "~7.5.7",
|
|
54
55
|
"publint": "~0.3.18",
|
|
55
56
|
"tsup": "~8.5.1",
|
|
56
57
|
"typescript": "^5.9.3",
|
|
57
58
|
"vitest": "^4.1.1"
|
|
58
59
|
},
|
|
59
60
|
"peerDependencies": {
|
|
60
|
-
"@xylabs/ts-scripts-common": "~7.5.
|
|
61
|
+
"@xylabs/ts-scripts-common": "~7.5.7",
|
|
61
62
|
"typescript": "~5"
|
|
62
63
|
},
|
|
63
64
|
"engines": {
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Run a full build of the current project using `
|
|
1
|
+
Run a full build of the current project using `xy build`. This compiles TypeScript, runs publint, deplint, and lint. Review the output for errors and fix any issues found.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy build
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Clean build artifacts from the current project using `
|
|
1
|
+
Clean build artifacts from the current project using `xy clean`. This removes dist, build, and other generated directories.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy clean
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Compile the current project using `
|
|
1
|
+
Compile the current project using `xy compile`. This runs TypeScript compilation via tsup and publint validation. Review the output for errors and fix any issues found.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy compile
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Check for circular dependency cycles in the current project using `
|
|
1
|
+
Check for circular dependency cycles in the current project using `xy cycle`. Review the output and refactor any circular dependencies found.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy cycle
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Check for dead (unreachable) code in the current project using `
|
|
1
|
+
Check for dead (unreachable) code in the current project using `xy dead`. Review the output and remove any dead code found.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy dead
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Check dependency declarations in the current project using `
|
|
1
|
+
Check dependency declarations in the current project using `xy deplint`. This verifies that all imports have corresponding entries in package.json dependencies. Review the output for missing or extraneous dependencies and fix them.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy deplint
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Check for duplicate dependency declarations in package.json files using `
|
|
1
|
+
Check for duplicate dependency declarations in package.json files using `xy dupdeps`. Review and resolve any duplicates found.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy dupdeps
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Auto-fix lint issues in the current project using `
|
|
1
|
+
Auto-fix lint issues in the current project using `xy fix`. This runs ESLint with the --fix flag. Review the output for any remaining issues that could not be auto-fixed and fix them manually.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy fix
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Generate TypeDoc API documentation using `
|
|
1
|
+
Generate TypeDoc API documentation using `xy gen-docs`. Output is written to the docs directory.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy gen-docs
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Generate the root .gitignore from the standard template and remove any .gitignore files from workspace packages using `
|
|
1
|
+
Generate the root .gitignore from the standard template and remove any .gitignore files from workspace packages using `xy gitignore`. Custom entries are preserved under a `# Custom` section.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy gitignore
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Lint the git configuration using `
|
|
1
|
+
Lint the git configuration using `xy gitlint`. Checks settings like `core.ignorecase`, `core.autocrlf`, and `core.eol`. Use `--fix` to auto-fix issues.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy gitlint
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Check for unused exports and dead code in the current project using `
|
|
1
|
+
Check for unused exports and dead code in the current project using `xy knip`. Review the output and remove any unused exports, files, or dependencies.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy knip
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Check licenses of all dependencies using `
|
|
1
|
+
Check licenses of all dependencies using `xy license`. Review the output for any disallowed or problematic licenses.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy license
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Lint the current project using `
|
|
1
|
+
Lint the current project using `xy lint`. This runs ESLint across all packages. Review the output for errors and fix any issues found.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy lint
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Validate package.json files for npm publishing correctness using `
|
|
1
|
+
Validate package.json files for npm publishing correctness using `xy publint`. Review the output for issues and fix them.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy publint
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Rebuild the current project from scratch using `
|
|
1
|
+
Rebuild the current project from scratch using `xy rebuild`. This cleans build artifacts, then compiles and lints. Review the output for errors and fix any issues found.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy rebuild
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Re-compile the current project using `
|
|
1
|
+
Re-compile the current project using `xy recompile`. This cleans compiled output and recompiles all packages from scratch.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy recompile
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Clean and reinstall all dependencies using `
|
|
1
|
+
Clean and reinstall all dependencies using `xy reinstall`. This removes node_modules and reinstalls from scratch.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy reinstall
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Clean ESLint cache and re-lint the current project using `
|
|
1
|
+
Clean ESLint cache and re-lint the current project using `xy relint`. Use this when lint results seem stale or inconsistent.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy relint
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Re-run tests with a cleaned cache using `
|
|
1
|
+
Re-run tests with a cleaned cache using `xy retest`. Use this when test results seem stale or cached state may be causing issues.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy retest
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Run SonarQube analysis on the current project using `
|
|
1
|
+
Run SonarQube analysis on the current project using `xy sonar`. Review the output for code quality issues.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy sonar
|
|
5
7
|
```
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
Run tests for the current project using `
|
|
1
|
+
Run tests for the current project using `xy test`. Review the output for failures and fix any failing tests.
|
|
2
|
+
|
|
3
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
2
4
|
|
|
3
5
|
```bash
|
|
4
|
-
|
|
6
|
+
xy test
|
|
5
7
|
```
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
Update all dependencies to their latest compatible versions using `
|
|
1
|
+
Update all dependencies to their latest compatible versions using `xy up`.
|
|
2
2
|
|
|
3
|
-
**Important:** Confirm with the user before running this command, as it modifies package.json and
|
|
3
|
+
**Important:** Confirm with the user before running this command, as it modifies package.json and lock files.
|
|
4
|
+
|
|
5
|
+
Detect the package manager from the repo root (`yarn.lock` → yarn, `pnpm-lock.yaml` → pnpm) and prefix accordingly.
|
|
4
6
|
|
|
5
7
|
```bash
|
|
6
|
-
|
|
8
|
+
xy up
|
|
7
9
|
```
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: xylabs-xy-cli
|
|
3
|
+
description: >
|
|
4
|
+
Comprehensive reference for the `xy` CLI provided by `@xylabs/ts-scripts-yarn3`.
|
|
5
|
+
Use this skill whenever the user asks how to build, lint, test, deploy, or run any
|
|
6
|
+
tooling command in an XY Labs monorepo — even if they just say something like
|
|
7
|
+
"how do I compile" or "check my deps". Covers every command, common workflows,
|
|
8
|
+
single-package targeting, and troubleshooting.
|
|
9
|
+
---
|
|
10
|
+
# xylabs-xy-cli
|
|
11
|
+
|
|
12
|
+
The `xy` CLI is the unified build toolchain for all XY Labs and XYO Network TypeScript
|
|
13
|
+
monorepos. It wraps compilation, linting, testing, dependency analysis, deployment, and
|
|
14
|
+
repo maintenance into a single tool.
|
|
15
|
+
|
|
16
|
+
**Always run `xy` commands from the repo root**, never from inside a package directory.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Package Manager Detection
|
|
21
|
+
|
|
22
|
+
Before running any command, detect the repo's package manager by checking the repo root:
|
|
23
|
+
- `yarn.lock` present → use **yarn** (e.g. `yarn xy build`)
|
|
24
|
+
- `pnpm-lock.yaml` present → use **pnpm** (e.g. `pnpm xy build`)
|
|
25
|
+
|
|
26
|
+
All commands below are shown without a prefix. Prepend the detected package manager
|
|
27
|
+
when executing (e.g. `xy build` → `yarn xy build` or `pnpm xy build`).
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Installation
|
|
32
|
+
|
|
33
|
+
The CLI is provided by `@xylabs/ts-scripts-yarn3` (or `@xylabs/ts-scripts-react-yarn3`
|
|
34
|
+
for React repos). It is already a devDependency in every XY Labs repo — no separate
|
|
35
|
+
install is needed.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Command Reference
|
|
40
|
+
|
|
41
|
+
### Build & Compile
|
|
42
|
+
|
|
43
|
+
| Command | Description |
|
|
44
|
+
|---|---|
|
|
45
|
+
| `xy build` | Full build: compile + publint + deplint + lint |
|
|
46
|
+
| `xy compile` | Compile all packages (TypeScript via tsup) + publint |
|
|
47
|
+
| `xy recompile` | Clean compiled output, then compile again |
|
|
48
|
+
| `xy rebuild` | Clean everything, then full build |
|
|
49
|
+
| `xy copy-assets` | Copy non-TS assets from `src/` to `dist/` |
|
|
50
|
+
|
|
51
|
+
### Lint & Fix
|
|
52
|
+
|
|
53
|
+
| Command | Description |
|
|
54
|
+
|---|---|
|
|
55
|
+
| `xy lint` | Run ESLint across all packages |
|
|
56
|
+
| `xy fix` | Run ESLint with `--fix` to auto-fix issues |
|
|
57
|
+
| `xy relint` | Clean ESLint cache, then lint from scratch |
|
|
58
|
+
| `xy deplint` | Verify imports match `package.json` dependency declarations |
|
|
59
|
+
| `xy publint` | Validate `package.json` correctness for npm publishing |
|
|
60
|
+
| `xy cycle` | Detect circular dependency cycles |
|
|
61
|
+
| `xy knip` | Find unused exports and dead code |
|
|
62
|
+
| `xy dead` | Check for dead (unreachable) code |
|
|
63
|
+
| `xy sonar` | Run SonarQube analysis |
|
|
64
|
+
| `xy dupdeps` | Find duplicate dependency declarations across packages |
|
|
65
|
+
| `xy lintlint` | Check for redundant or overridden ESLint rules |
|
|
66
|
+
|
|
67
|
+
### Testing
|
|
68
|
+
|
|
69
|
+
| Command | Description |
|
|
70
|
+
|---|---|
|
|
71
|
+
| `xy test` | Run Vitest tests |
|
|
72
|
+
| `xy retest` | Clean test cache, then run tests |
|
|
73
|
+
|
|
74
|
+
### Deploy & Publish
|
|
75
|
+
|
|
76
|
+
| Command | Description |
|
|
77
|
+
|---|---|
|
|
78
|
+
| `xy deploy` | Patch version bump + build + publish |
|
|
79
|
+
| `xy deploy-minor` | Minor version bump + build + publish |
|
|
80
|
+
| `xy deploy-major` | Major version bump + build + publish |
|
|
81
|
+
| `xy deploy-next` | Deploy as `next` tag (pre-release) |
|
|
82
|
+
|
|
83
|
+
### Dependency Management
|
|
84
|
+
|
|
85
|
+
| Command | Description |
|
|
86
|
+
|---|---|
|
|
87
|
+
| `xy clean` | Remove `dist/` and `build/` artifacts |
|
|
88
|
+
| `xy reinstall` | Remove `node_modules`, reinstall from scratch |
|
|
89
|
+
| `xy up` | Update all dependencies to latest compatible versions |
|
|
90
|
+
|
|
91
|
+
### Git & Repo Maintenance
|
|
92
|
+
|
|
93
|
+
| Command | Description |
|
|
94
|
+
|---|---|
|
|
95
|
+
| `xy gitlint` | Lint git configuration (ignorecase, autocrlf, etc.) |
|
|
96
|
+
| `xy gitignore` | Generate root `.gitignore` and remove package-level ones |
|
|
97
|
+
| `xy license` | Check dependency licenses for compliance |
|
|
98
|
+
| `xy gen-docs` | Generate TypeDoc API documentation |
|
|
99
|
+
|
|
100
|
+
### Claude Code Integration
|
|
101
|
+
|
|
102
|
+
| Command | Description |
|
|
103
|
+
|---|---|
|
|
104
|
+
| `xy claude init` | Initialize all Claude configuration (commands, rules, skills, settings) |
|
|
105
|
+
| `xy claude clean` | Remove all Claude configuration files |
|
|
106
|
+
| `xy claude commands` | Sync slash commands to `.claude/commands/` |
|
|
107
|
+
| `xy claude rules` | Sync rules to `.claude/rules/` |
|
|
108
|
+
| `xy claude skills` | Sync skills to `.claude/skills/` |
|
|
109
|
+
| `xy claude settings` | Initialize `.claude/settings.local.json` |
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Targeting a Single Package
|
|
114
|
+
|
|
115
|
+
Most commands accept an optional `[package]` argument to scope to one package:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
xy compile my-package
|
|
119
|
+
xy lint my-package
|
|
120
|
+
xy deplint my-package
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Use the **package name** from `package.json` (e.g. `@xylabs/assert`), not the directory
|
|
124
|
+
path. You can also use just the short name without the scope (e.g. `assert`).
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Common Workflows
|
|
129
|
+
|
|
130
|
+
### Before pushing code
|
|
131
|
+
```bash
|
|
132
|
+
xy build
|
|
133
|
+
```
|
|
134
|
+
This runs the full pipeline: compile, publint, deplint, and lint. If it passes, the code
|
|
135
|
+
is ready to push.
|
|
136
|
+
|
|
137
|
+
### After modifying dependencies
|
|
138
|
+
```bash
|
|
139
|
+
xy deplint
|
|
140
|
+
```
|
|
141
|
+
Catches missing or extraneous entries in `package.json` relative to actual imports.
|
|
142
|
+
|
|
143
|
+
### When lint results seem stale
|
|
144
|
+
```bash
|
|
145
|
+
xy relint
|
|
146
|
+
```
|
|
147
|
+
Clears the ESLint cache and re-lints everything.
|
|
148
|
+
|
|
149
|
+
### When tests seem stale
|
|
150
|
+
```bash
|
|
151
|
+
xy retest
|
|
152
|
+
```
|
|
153
|
+
Clears the Vitest cache and re-runs tests.
|
|
154
|
+
|
|
155
|
+
### When things are broken and you want a clean slate
|
|
156
|
+
```bash
|
|
157
|
+
xy rebuild
|
|
158
|
+
```
|
|
159
|
+
Cleans all artifacts, recompiles, and re-lints.
|
|
160
|
+
|
|
161
|
+
### Nuclear option — full reset
|
|
162
|
+
```bash
|
|
163
|
+
xy reinstall
|
|
164
|
+
```
|
|
165
|
+
Removes `node_modules` and reinstalls everything from scratch.
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## Troubleshooting
|
|
170
|
+
|
|
171
|
+
### "Command not found: xy"
|
|
172
|
+
The `xy` binary comes from `@xylabs/ts-scripts-yarn3`. Run `install` via your package
|
|
173
|
+
manager to ensure it is linked. The binary is at `node_modules/.bin/xy`.
|
|
174
|
+
|
|
175
|
+
### Compile errors in other packages
|
|
176
|
+
`ts-scripts-yarn3` must compile before other packages that depend on it. The repo's
|
|
177
|
+
`compile` script handles this ordering automatically — always use `xy compile`
|
|
178
|
+
from the root, not `tsc` directly.
|
|
179
|
+
|
|
180
|
+
### Deplint false positives
|
|
181
|
+
Deplint scans TypeScript source imports and `tsconfig.json` extends chains. If a
|
|
182
|
+
dependency is used only in config files (not source), it may flag as unused. Check the
|
|
183
|
+
output carefully before removing.
|
|
184
|
+
|
|
185
|
+
### Version conflicts
|
|
186
|
+
All packages in a repo share a single version. Never edit version fields manually —
|
|
187
|
+
use `xy deploy` variants to bump versions.
|