@nitra/cursor 1.4.0 → 1.4.1
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/mdc/spell.mdc +82 -2
- package/mdc/style-lint.mdc +8 -1
- package/package.json +1 -1
- package/skills/n-lint/SKILL.md +26 -0
package/mdc/spell.mdc
CHANGED
|
@@ -1,10 +1,84 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Перевірка правопису в текстових файлах
|
|
3
3
|
alwaysApply: true
|
|
4
|
-
version: '1.
|
|
4
|
+
version: '1.3'
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
У корені
|
|
7
|
+
У корені проєкту має бути `.cspell.json` і залежності для cspell у кореневому `package.json` (зазвичай `devDependencies`).
|
|
8
|
+
|
|
9
|
+
У кореневому `package.json` додай скрипт CLI **cspell** (об’єднай з блоками з розділів нижче в одному файлі):
|
|
10
|
+
|
|
11
|
+
```json title="package.json"
|
|
12
|
+
"scripts": {
|
|
13
|
+
"lint-spell": "npx cspell ."
|
|
14
|
+
}
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Додай workflow `.github/workflows/lint-spell.yml`:
|
|
18
|
+
|
|
19
|
+
```yaml
|
|
20
|
+
name: Lint Spell
|
|
21
|
+
|
|
22
|
+
on:
|
|
23
|
+
push:
|
|
24
|
+
branches:
|
|
25
|
+
- dev
|
|
26
|
+
paths:
|
|
27
|
+
- '.cspell.json'
|
|
28
|
+
- '**/*.js'
|
|
29
|
+
- '**/*.ts'
|
|
30
|
+
- '**/*.vue'
|
|
31
|
+
- '**/*.html'
|
|
32
|
+
- '**/*.css'
|
|
33
|
+
- '**/*.scss'
|
|
34
|
+
- '**/*.less'
|
|
35
|
+
- '**/*.json'
|
|
36
|
+
- '**/*.jsonc'
|
|
37
|
+
- '**/*.yaml'
|
|
38
|
+
- '**/*.yml'
|
|
39
|
+
- '**/*.toml'
|
|
40
|
+
- '**/*.xml'
|
|
41
|
+
- '**/*.md'
|
|
42
|
+
- '**/*.mdс'
|
|
43
|
+
- '**/*.txt'
|
|
44
|
+
- '**/*.go'
|
|
45
|
+
- '**/*.py'
|
|
46
|
+
- '**/*.php'
|
|
47
|
+
|
|
48
|
+
pull_request:
|
|
49
|
+
branches:
|
|
50
|
+
- dev
|
|
51
|
+
|
|
52
|
+
concurrency:
|
|
53
|
+
group: ${{ github.ref }}-${{ github.workflow }}
|
|
54
|
+
cancel-in-progress: true
|
|
55
|
+
|
|
56
|
+
jobs:
|
|
57
|
+
cspell:
|
|
58
|
+
runs-on: ubuntu-latest
|
|
59
|
+
steps:
|
|
60
|
+
- uses: actions/checkout@v4
|
|
61
|
+
|
|
62
|
+
- uses: oven-sh/setup-bun@v2
|
|
63
|
+
|
|
64
|
+
- name: Cache Bun dependencies
|
|
65
|
+
uses: actions/cache@v4
|
|
66
|
+
with:
|
|
67
|
+
path: |
|
|
68
|
+
~/.bun/install/cache
|
|
69
|
+
node_modules
|
|
70
|
+
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
|
|
71
|
+
restore-keys: |
|
|
72
|
+
${{ runner.os }}-bun-
|
|
73
|
+
|
|
74
|
+
- name: Install dependencies
|
|
75
|
+
run: bun install --frozen-lockfile
|
|
76
|
+
|
|
77
|
+
- name: Cspell
|
|
78
|
+
run: bun run lint-spell
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Без дублювання CI:** якщо в `.github/workflows` уже є workflow з тими самими кроками `cspell`, видали зайвий — перевірка правопису має виконуватися в одному місці.
|
|
8
82
|
|
|
9
83
|
## Базовий варіант (без окремого словника української)
|
|
10
84
|
|
|
@@ -22,6 +96,9 @@ version: '1.1'
|
|
|
22
96
|
|
|
23
97
|
```json title="package.json"
|
|
24
98
|
{
|
|
99
|
+
"scripts": {
|
|
100
|
+
"lint-spell": "npx cspell ."
|
|
101
|
+
},
|
|
25
102
|
"devDependencies": {
|
|
26
103
|
"@nitra/cspell-dict": "^1.0.185"
|
|
27
104
|
}
|
|
@@ -36,6 +113,9 @@ version: '1.1'
|
|
|
36
113
|
|
|
37
114
|
```json title="package.json"
|
|
38
115
|
{
|
|
116
|
+
"scripts": {
|
|
117
|
+
"lint-spell": "npx cspell ."
|
|
118
|
+
},
|
|
39
119
|
"devDependencies": {
|
|
40
120
|
"@nitra/cspell-dict": "^1.0.185",
|
|
41
121
|
"@cspell/dict-uk-ua": "^4.0.6"
|
package/mdc/style-lint.mdc
CHANGED
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Правила стилів CSS та SCSS
|
|
3
3
|
alwaysApply: true
|
|
4
|
-
version: '1.
|
|
4
|
+
version: '1.1'
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
## Генерація та редагування стилів (Cursor і інші агенти)
|
|
8
|
+
|
|
9
|
+
- **Джерело правил:** перед тим як писати або суттєво змінювати **`.css`**, **`.scss`** або стилі в **`.vue`**, переглянь у корені проєкту (і в релевантних пакетах монорепо, якщо є) поле **`stylelint`** у **`package.json`** (зокрема `extends`), наявні **`.stylelintrc.*`**, **`stylelint.config.*`** та **`.stylelintignore`**. Не покладайся на «типові» правила stylelint з пам’яті — дотримуйся **проєктного** **`@nitra/stylelint-config`** і будь-яких локальних доповнень у репозиторії.
|
|
10
|
+
- **Форматування** узгоджуй з **`n-js-format.mdc`** (oxfmt / `.oxfmtrc.json` для css, scss тощо), щоб форматер і stylelint не суперечили один одному.
|
|
11
|
+
- **Після змін:** запускай **`bun run lint-style`** (або `bunx stylelint` з тими ж glob-ами та прапорцями, що в скрипті та CI) і виправляй усе, що лишилось після auto-fix. Якщо в репозиторії є **`n-lint`** / навичка n-lint — можна пройтись повним набором `lint-*` з `package.json`.
|
|
12
|
+
- **Не розширюй винятки:** не додавай зайві **`stylelint-disable`** / вузькі придушення правил без потреби; краще змінити стилі під правила проєкту.
|
|
13
|
+
|
|
7
14
|
В файлі .vscode/extensions.json є налаштування для офіційного плагіну:
|
|
8
15
|
|
|
9
16
|
```json title=".vscode/extensions.json"
|
package/package.json
CHANGED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: n-lint
|
|
3
|
+
description: >-
|
|
4
|
+
Запускає всі скрипти lint-* з package.json і виправляє зауваження лінтерів (fix + ручні правки)
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# n-lint — усі lint-скрипти та нуль зауважень
|
|
8
|
+
|
|
9
|
+
## Мета
|
|
10
|
+
|
|
11
|
+
Виконати кожен скрипт з префіксом `lint-` у `package.json` і усунути всі зауваження лінтерів.
|
|
12
|
+
|
|
13
|
+
## Охоплення
|
|
14
|
+
|
|
15
|
+
1. Корінь: усі `lint-*` з `scripts`.
|
|
16
|
+
2. Якщо є `workspaces` — те саме в кожному workspace-пакеті; `bun run` з каталогу цього пакета.
|
|
17
|
+
|
|
18
|
+
## Кроки
|
|
19
|
+
|
|
20
|
+
1. За потреби: `bun i` у корені / у пакеті.
|
|
21
|
+
2. Для кожного `lint-*`: `bun run <ім'я>` з відповідного каталогу.
|
|
22
|
+
3. На помилках: auto-fix (якщо є), інакше правки в коді/конфігах; повторюй доки скрипт завершується з `0`.
|
|
23
|
+
|
|
24
|
+
## Підсумок
|
|
25
|
+
|
|
26
|
+
Перелічи запущені скрипти та зміни; опиши блокери, якщо лишились.
|