@nitra/cursor 11.4.0 → 12.0.0

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 (358) hide show
  1. package/.claude-template/hooks/normalize-decisions.sh +34 -3
  2. package/.pi-template/extensions/n-cursor-adr/docs/index.md +3 -5
  3. package/CHANGELOG.md +12 -0
  4. package/bin/n-cursor.js +2 -8
  5. package/docs/index.md +12 -0
  6. package/docs/stryker.config.md +3 -5
  7. package/docs/vitest.config.md +3 -5
  8. package/lib/docs/index.md +14 -0
  9. package/lib/docs/llm.md +4 -6
  10. package/lib/docs/models.md +3 -5
  11. package/lib/docs/omlx-trace.md +3 -5
  12. package/lib/docs/omlx.md +4 -6
  13. package/package.json +2 -1
  14. package/rules/abie/docs/fix.md +3 -5
  15. package/rules/abie/docs/index.md +11 -0
  16. package/rules/abie/js/docs/applies.md +3 -5
  17. package/rules/abie/js/docs/env_dns.md +3 -5
  18. package/rules/abie/js/docs/firebase_hosting.md +3 -5
  19. package/rules/abie/js/docs/hc_pairing.md +3 -5
  20. package/rules/abie/js/docs/index.md +16 -0
  21. package/rules/abie/js/docs/ua_http_route.md +3 -5
  22. package/rules/abie/js/docs/ua_node_selector.md +3 -5
  23. package/rules/abie/lib/docs/enabled.md +3 -5
  24. package/rules/abie/lib/docs/env-dns.md +3 -5
  25. package/rules/abie/lib/docs/hc-yaml.md +3 -5
  26. package/rules/abie/lib/docs/http-route.md +3 -5
  27. package/rules/abie/lib/docs/index.md +18 -0
  28. package/rules/abie/lib/docs/k8s-tree.md +3 -5
  29. package/rules/abie/lib/docs/kustomization-patches.md +3 -5
  30. package/rules/abie/lib/docs/overlay-paths.md +3 -5
  31. package/rules/abie/lib/docs/yaml.md +3 -5
  32. package/rules/adr/adr.mdc +2 -2
  33. package/rules/adr/docs/fix.md +3 -5
  34. package/rules/adr/docs/index.md +11 -0
  35. package/rules/adr/js/docs/hooks.md +3 -5
  36. package/rules/adr/js/docs/index.md +11 -0
  37. package/rules/bun/docs/fix.md +3 -5
  38. package/rules/bun/docs/index.md +11 -0
  39. package/rules/bun/js/docs/index.md +11 -0
  40. package/rules/bun/js/docs/layout.md +3 -5
  41. package/rules/capacitor/docs/fix.md +3 -5
  42. package/rules/capacitor/docs/index.md +11 -0
  43. package/rules/capacitor/js/docs/index.md +11 -0
  44. package/rules/capacitor/js/docs/platforms.md +3 -5
  45. package/rules/changelog/docs/fix.md +3 -5
  46. package/rules/changelog/docs/index.md +11 -0
  47. package/rules/changelog/js/docs/consistency.md +3 -5
  48. package/rules/changelog/js/docs/index.md +11 -0
  49. package/rules/changelog/lib/docs/index.md +11 -0
  50. package/rules/changelog/lib/docs/package-manifest.md +3 -5
  51. package/rules/ci4/docs/fix.md +3 -5
  52. package/rules/ci4/docs/index.md +11 -0
  53. package/rules/ci4/js/docs/index.md +11 -0
  54. package/rules/ci4/js/docs/marksman_config.md +3 -5
  55. package/rules/doc-files/docs/fix.md +3 -5
  56. package/rules/doc-files/docs/index.md +11 -0
  57. package/rules/doc-files/js/docgen-crc.mjs +50 -14
  58. package/rules/doc-files/js/docgen-files-batch.mjs +73 -2
  59. package/rules/doc-files/js/docs/docgen-crc.md +4 -6
  60. package/rules/doc-files/js/docs/docgen-extract-anchors.md +3 -5
  61. package/rules/doc-files/js/docs/docgen-extract.md +3 -5
  62. package/rules/doc-files/js/docs/docgen-files-batch.md +4 -6
  63. package/rules/doc-files/js/docs/docgen-gen.md +4 -6
  64. package/rules/doc-files/js/docs/docgen-ignore.md +3 -5
  65. package/rules/doc-files/js/docs/docgen-judge-measure.md +3 -5
  66. package/rules/doc-files/js/docs/docgen-judge.md +3 -5
  67. package/rules/doc-files/js/docs/docgen-prompts.md +3 -5
  68. package/rules/doc-files/js/docs/docgen-scan.md +4 -6
  69. package/rules/doc-files/js/docs/index.md +24 -0
  70. package/rules/doc-files/js/docs/lint.md +4 -6
  71. package/rules/doc-files/js/docs/units-js.md +3 -5
  72. package/rules/doc-files/js/docs/units-rs.md +3 -5
  73. package/rules/doc-files/js/docs/units.md +3 -5
  74. package/rules/doc-files/lint/docs/index.md +11 -0
  75. package/rules/doc-files/lint/docs/lint.md +3 -5
  76. package/rules/docker/docs/fix.md +3 -5
  77. package/rules/docker/docs/index.md +11 -0
  78. package/rules/docker/js/docs/index.md +11 -0
  79. package/rules/docker/js/docs/lint.md +3 -5
  80. package/rules/docker/lib/docs/docker-hadolint.md +3 -5
  81. package/rules/docker/lib/docs/docker-mirror.md +3 -5
  82. package/rules/docker/lib/docs/docker-native-addon.md +3 -5
  83. package/rules/docker/lib/docs/docker-nginx-user.md +3 -5
  84. package/rules/docker/lib/docs/index.md +14 -0
  85. package/rules/docker/lint/docs/index.md +11 -0
  86. package/rules/docker/lint/docs/lint.md +3 -5
  87. package/rules/efes/docs/fix.md +3 -5
  88. package/rules/efes/docs/index.md +11 -0
  89. package/rules/feedback/docs/fix.md +3 -5
  90. package/rules/feedback/docs/index.md +11 -0
  91. package/rules/ga/docs/fix.md +3 -5
  92. package/rules/ga/docs/index.md +11 -0
  93. package/rules/ga/js/docs/index.md +12 -0
  94. package/rules/ga/js/docs/lint.md +3 -5
  95. package/rules/ga/js/docs/workflows.md +3 -5
  96. package/rules/ga/lint/docs/index.md +11 -0
  97. package/rules/ga/lint/docs/lint.md +3 -5
  98. package/rules/graphql/docs/fix.md +3 -5
  99. package/rules/graphql/docs/index.md +11 -0
  100. package/rules/graphql/js/docs/index.md +11 -0
  101. package/rules/graphql/js/docs/tooling.md +3 -5
  102. package/rules/graphql/lib/docs/graphql-gql-scan.md +3 -5
  103. package/rules/graphql/lib/docs/index.md +11 -0
  104. package/rules/hasura/docs/fix.md +3 -5
  105. package/rules/hasura/docs/index.md +11 -0
  106. package/rules/hasura/js/docs/index.md +11 -0
  107. package/rules/hasura/js/docs/internal_urls.md +3 -5
  108. package/rules/image-avif/docs/fix.md +3 -5
  109. package/rules/image-avif/docs/index.md +11 -0
  110. package/rules/image-avif/js/docs/avif_generation.md +3 -5
  111. package/rules/image-avif/js/docs/index.md +11 -0
  112. package/rules/image-compress/docs/fix.md +3 -5
  113. package/rules/image-compress/docs/index.md +11 -0
  114. package/rules/image-compress/js/docs/index.md +11 -0
  115. package/rules/image-compress/js/docs/package_setup.md +3 -5
  116. package/rules/js-bun-db/docs/fix.md +3 -5
  117. package/rules/js-bun-db/docs/index.md +11 -0
  118. package/rules/js-bun-db/js/docs/index.md +11 -0
  119. package/rules/js-bun-db/js/docs/safety.md +3 -5
  120. package/rules/js-bun-db/lib/docs/bun-sql-scan.md +3 -5
  121. package/rules/js-bun-db/lib/docs/index.md +11 -0
  122. package/rules/js-bun-redis/docs/fix.md +3 -5
  123. package/rules/js-bun-redis/docs/index.md +11 -0
  124. package/rules/js-bun-redis/js/docs/imports.md +3 -5
  125. package/rules/js-bun-redis/js/docs/index.md +11 -0
  126. package/rules/js-bun-redis/lib/docs/index.md +11 -0
  127. package/rules/js-bun-redis/lib/docs/redis-imports.md +3 -5
  128. package/rules/js-lint/docs/fix.md +3 -5
  129. package/rules/js-lint/docs/index.md +11 -0
  130. package/rules/js-lint/js/docs/index.md +14 -0
  131. package/rules/js-lint/js/docs/lint-findings.md +3 -5
  132. package/rules/js-lint/js/docs/lint.md +3 -5
  133. package/rules/js-lint/js/docs/tooling.md +3 -5
  134. package/rules/js-lint/js/docs/utils_imports.md +3 -5
  135. package/rules/js-lint-ci/docs/fix.md +3 -5
  136. package/rules/js-lint-ci/docs/index.md +11 -0
  137. package/rules/js-lint-ci/js/docs/index.md +11 -0
  138. package/rules/js-lint-ci/js/docs/lint.md +3 -5
  139. package/rules/js-mssql/docs/fix.md +3 -5
  140. package/rules/js-mssql/docs/index.md +11 -0
  141. package/rules/js-mssql/js/docs/deps.md +3 -5
  142. package/rules/js-mssql/js/docs/index.md +11 -0
  143. package/rules/js-mssql/lib/docs/index.md +11 -0
  144. package/rules/js-mssql/lib/docs/mssql-pool-scan.md +3 -5
  145. package/rules/js-run/docs/fix.md +3 -5
  146. package/rules/js-run/docs/index.md +11 -0
  147. package/rules/js-run/js/docs/index.md +11 -0
  148. package/rules/js-run/js/docs/runtime.md +3 -5
  149. package/rules/js-run/lib/docs/bunyan-imports.md +3 -5
  150. package/rules/js-run/lib/docs/check-env-scan.md +3 -5
  151. package/rules/js-run/lib/docs/conn-file-rules.md +3 -5
  152. package/rules/js-run/lib/docs/conn-imports-scan.md +3 -5
  153. package/rules/js-run/lib/docs/index.md +16 -0
  154. package/rules/js-run/lib/docs/promise-settimeout-scan.md +3 -5
  155. package/rules/js-run/lib/docs/temporal-scan.md +3 -5
  156. package/rules/k8s/docs/fix.md +3 -5
  157. package/rules/k8s/docs/index.md +11 -0
  158. package/rules/k8s/k8s.mdc +10 -0
  159. package/rules/k8s/lint/docs/index.md +11 -0
  160. package/rules/k8s/lint/docs/lint.md +3 -5
  161. package/rules/k8s/policy/manifest/manifest.rego +46 -0
  162. package/rules/lint/docs/fix.md +3 -5
  163. package/rules/lint/docs/index.md +11 -0
  164. package/rules/lint/js/docs/index.md +11 -0
  165. package/rules/lint/js/docs/orchestrate.md +4 -6
  166. package/rules/nginx-default-tpl/docs/fix.md +3 -5
  167. package/rules/nginx-default-tpl/docs/index.md +11 -0
  168. package/rules/nginx-default-tpl/js/docs/index.md +11 -0
  169. package/rules/nginx-default-tpl/js/docs/template.md +3 -5
  170. package/rules/npm-module/docs/fix.md +3 -5
  171. package/rules/npm-module/docs/index.md +11 -0
  172. package/rules/npm-module/js/docs/header_doc_pointer.md +3 -5
  173. package/rules/npm-module/js/docs/index.md +14 -0
  174. package/rules/npm-module/js/docs/package_structure.md +3 -5
  175. package/rules/npm-module/js/docs/rule_meta.md +3 -5
  176. package/rules/npm-module/js/docs/skill_meta.md +3 -5
  177. package/rules/php/docs/fix.md +3 -5
  178. package/rules/php/docs/index.md +11 -0
  179. package/rules/php/js/docs/index.md +11 -0
  180. package/rules/php/js/docs/tooling.md +3 -5
  181. package/rules/php/lint/docs/index.md +11 -0
  182. package/rules/php/lint/docs/lint.md +3 -5
  183. package/rules/python/docs/fix.md +3 -5
  184. package/rules/python/docs/index.md +11 -0
  185. package/rules/python/js/docs/applies.md +3 -5
  186. package/rules/python/js/docs/index.md +12 -0
  187. package/rules/python/js/docs/tooling.md +3 -5
  188. package/rules/python/lint/docs/index.md +11 -0
  189. package/rules/python/lint/docs/lint.md +3 -5
  190. package/rules/rego/docs/fix.md +3 -5
  191. package/rules/rego/docs/index.md +11 -0
  192. package/rules/rego/js/docs/applies.md +3 -5
  193. package/rules/rego/js/docs/index.md +12 -0
  194. package/rules/rego/js/docs/lint.md +3 -5
  195. package/rules/rego/lint/docs/index.md +11 -0
  196. package/rules/rego/lint/docs/lint.md +3 -5
  197. package/rules/release/docs/change.md +3 -5
  198. package/rules/release/docs/fix.md +3 -5
  199. package/rules/release/docs/index.md +13 -0
  200. package/rules/release/docs/release.md +4 -6
  201. package/rules/release/lib/docs/aggregate.md +3 -5
  202. package/rules/release/lib/docs/change-file.md +3 -3
  203. package/rules/release/lib/docs/fallback.md +3 -5
  204. package/rules/release/lib/docs/index.md +13 -0
  205. package/rules/release/release.mjs +40 -1
  206. package/rules/rust/docs/fix.md +3 -5
  207. package/rules/rust/docs/index.md +11 -0
  208. package/rules/rust/js/docs/applies.md +3 -5
  209. package/rules/rust/js/docs/index.md +11 -0
  210. package/rules/rust/lib/docs/has-cargo-toml.md +3 -5
  211. package/rules/rust/lib/docs/index.md +11 -0
  212. package/rules/security/docs/fix.md +3 -5
  213. package/rules/security/docs/index.md +11 -0
  214. package/rules/security/js/docs/index.md +13 -0
  215. package/rules/security/js/docs/lint.md +3 -5
  216. package/rules/security/js/docs/sample_secret.md +3 -5
  217. package/rules/security/js/docs/trufflehog.md +3 -5
  218. package/rules/style-lint/docs/fix.md +3 -5
  219. package/rules/style-lint/docs/index.md +11 -0
  220. package/rules/style-lint/js/docs/index.md +12 -0
  221. package/rules/style-lint/js/docs/lint.md +3 -5
  222. package/rules/style-lint/js/docs/tooling.md +3 -5
  223. package/rules/tauri/docs/fix.md +3 -5
  224. package/rules/tauri/docs/index.md +11 -0
  225. package/rules/tauri/js/docs/cargo_mutants_config.md +3 -5
  226. package/rules/tauri/js/docs/index.md +12 -0
  227. package/rules/tauri/js/docs/tooling.md +3 -5
  228. package/rules/test/docs/fix.md +3 -5
  229. package/rules/test/docs/index.md +11 -0
  230. package/rules/test/js/data/stryker_config/docs/index.md +13 -0
  231. package/rules/test/js/data/stryker_config/docs/stryker-vue-macros-ignorer.md +3 -5
  232. package/rules/test/js/data/stryker_config/docs/stryker.config.baseline.md +3 -5
  233. package/rules/test/js/data/stryker_config/docs/stryker.config.vue.baseline.md +3 -5
  234. package/rules/test/js/data/vitest_config/docs/index.md +11 -0
  235. package/rules/test/js/data/vitest_config/docs/vitest.config.baseline.md +3 -5
  236. package/rules/test/js/docs/cargo_mutants_config.md +3 -5
  237. package/rules/test/js/docs/index.md +16 -0
  238. package/rules/test/js/docs/location.md +3 -5
  239. package/rules/test/js/docs/no-process-chdir.md +3 -5
  240. package/rules/test/js/docs/no-relative-fs-path.md +3 -5
  241. package/rules/test/js/docs/stryker_config.md +3 -5
  242. package/rules/test/js/docs/vitest-config-pool-forks.md +3 -5
  243. package/rules/text/docs/fix.md +3 -5
  244. package/rules/text/docs/index.md +11 -0
  245. package/rules/text/js/docs/forbidden-prettier.md +3 -5
  246. package/rules/text/js/docs/formatting.md +4 -6
  247. package/rules/text/js/docs/index.md +13 -0
  248. package/rules/text/js/docs/lint.md +4 -6
  249. package/rules/text/lint/docs/cspell-fix.md +4 -6
  250. package/rules/text/lint/docs/index.md +15 -0
  251. package/rules/text/lint/docs/lint.md +4 -6
  252. package/rules/text/lint/docs/run-dotenv-linter.md +3 -5
  253. package/rules/text/lint/docs/run-shellcheck.md +3 -5
  254. package/rules/text/lint/docs/run-v8r.md +3 -5
  255. package/rules/vue/docs/fix.md +3 -5
  256. package/rules/vue/docs/index.md +11 -0
  257. package/rules/vue/js/docs/index.md +11 -0
  258. package/rules/vue/js/docs/packages.md +3 -5
  259. package/rules/vue/lib/docs/index.md +11 -0
  260. package/rules/vue/lib/docs/vue-forbidden-imports.md +3 -5
  261. package/rules/vue/vue.mdc +19 -1
  262. package/rules/worktree/docs/fix.md +3 -5
  263. package/rules/worktree/docs/index.md +11 -0
  264. package/rules/worktree/worktree.mdc +8 -8
  265. package/scripts/coverage-classify/docs/apply.md +3 -5
  266. package/scripts/coverage-classify/docs/cache.md +3 -5
  267. package/scripts/coverage-classify/docs/index.md +9 -27
  268. package/scripts/coverage-classify/docs/prompt.md +3 -5
  269. package/scripts/coverage-classify/docs/verdict-schema.md +3 -5
  270. package/scripts/dispatcher/docs/index.md +11 -0
  271. package/scripts/dispatcher/docs/trace.md +3 -5
  272. package/scripts/docs/auto-rules.md +3 -5
  273. package/scripts/docs/auto-skills.md +3 -5
  274. package/scripts/docs/build-agents-commands.md +3 -5
  275. package/scripts/docs/cli-entry.md +3 -5
  276. package/scripts/docs/coverage-fix-extract.md +3 -5
  277. package/scripts/docs/coverage-fix.md +3 -5
  278. package/scripts/docs/ensure-nitra-cursor-dev-dependencies.md +3 -5
  279. package/scripts/docs/index.md +24 -0
  280. package/scripts/docs/post-tool-use-fix.md +4 -6
  281. package/scripts/docs/rename-yaml-extensions.md +3 -5
  282. package/scripts/docs/skills-cli.md +3 -5
  283. package/scripts/docs/sync-claude-config.md +3 -5
  284. package/scripts/docs/sync-setup-bun-deps-action.md +3 -5
  285. package/scripts/docs/upgrade-nitra-cursor-and-install.md +3 -5
  286. package/scripts/docs/worktree-cli.md +3 -5
  287. package/scripts/lib/adr/docs/index.md +12 -0
  288. package/scripts/lib/adr/docs/normalize-cli.md +3 -5
  289. package/scripts/lib/adr/docs/normalize-pipeline.md +4 -6
  290. package/scripts/lib/adr/normalize-pipeline.mjs +140 -46
  291. package/scripts/lib/docs/assert-project-root.md +3 -5
  292. package/scripts/lib/docs/changed-files.md +3 -5
  293. package/scripts/lib/docs/check-mdc-template-refs.md +3 -5
  294. package/scripts/lib/docs/check-reporter.md +3 -5
  295. package/scripts/lib/docs/diff-added-lines.md +3 -5
  296. package/scripts/lib/docs/discover-check-rules-from-cursor.md +3 -5
  297. package/scripts/lib/docs/discover-checkable-rules.md +3 -5
  298. package/scripts/lib/docs/ensure-tool.md +3 -5
  299. package/scripts/lib/docs/generated-markdown.md +3 -5
  300. package/scripts/lib/docs/gha-workflow.md +3 -5
  301. package/scripts/lib/docs/index.md +44 -0
  302. package/scripts/lib/docs/inline-template-links.md +3 -5
  303. package/scripts/lib/docs/list-project-rules-mdc.md +3 -5
  304. package/scripts/lib/docs/list-rule-ids.md +3 -5
  305. package/scripts/lib/docs/load-cursor-config.md +3 -5
  306. package/scripts/lib/docs/mirror-parity.md +3 -3
  307. package/scripts/lib/docs/read-n-cursor-config-lite.md +3 -5
  308. package/scripts/lib/docs/resolve-target-files.md +3 -5
  309. package/scripts/lib/docs/root-notice.md +3 -5
  310. package/scripts/lib/docs/rule-meta-helpers.md +3 -5
  311. package/scripts/lib/docs/rule-meta.md +3 -5
  312. package/scripts/lib/docs/rule-predicates.md +3 -5
  313. package/scripts/lib/docs/run-conftest-batch.md +3 -5
  314. package/scripts/lib/docs/run-lint-step.md +3 -5
  315. package/scripts/lib/docs/run-rule-cli.md +3 -5
  316. package/scripts/lib/docs/run-rule.md +3 -5
  317. package/scripts/lib/docs/run-standard-lint.md +3 -5
  318. package/scripts/lib/docs/run-standard-rule.md +3 -5
  319. package/scripts/lib/docs/skill-meta.md +3 -5
  320. package/scripts/lib/docs/sync-gitignore-worktree.md +3 -5
  321. package/scripts/lib/docs/template.md +3 -5
  322. package/scripts/lib/docs/timing-summary.md +3 -5
  323. package/scripts/lib/docs/workspaces.md +3 -5
  324. package/scripts/lib/docs/worktree-notice.md +3 -5
  325. package/scripts/lib/docs/worktree.md +3 -5
  326. package/scripts/lib/fix/docs/index.md +16 -0
  327. package/scripts/lib/fix/docs/llm-fix-apply.md +3 -5
  328. package/scripts/lib/fix/docs/llm-lint-fix.md +3 -5
  329. package/scripts/lib/fix/docs/llm-worker.md +3 -5
  330. package/scripts/lib/fix/docs/orchestrator.md +3 -5
  331. package/scripts/lib/fix/docs/run-fix-check.md +3 -5
  332. package/scripts/lib/fix/docs/t0.md +3 -5
  333. package/scripts/lib/worktree-notice.mjs +3 -38
  334. package/scripts/utils/docs/ast-scan-utils.md +3 -5
  335. package/scripts/utils/docs/ensure-gitignore-entries.md +3 -5
  336. package/scripts/utils/docs/find-package-json-paths.md +3 -5
  337. package/scripts/utils/docs/index.md +23 -0
  338. package/scripts/utils/docs/lock-cache-dir.md +3 -5
  339. package/scripts/utils/docs/pass.md +3 -5
  340. package/scripts/utils/docs/resolve-cargo-manifest.md +3 -5
  341. package/scripts/utils/docs/resolve-cmd.md +3 -5
  342. package/scripts/utils/docs/resolve-js-root.md +3 -5
  343. package/scripts/utils/docs/test-helpers.md +3 -5
  344. package/scripts/utils/docs/walk-cache.md +3 -5
  345. package/scripts/utils/docs/walkDir.md +3 -5
  346. package/scripts/utils/docs/with-lock.md +3 -5
  347. package/scripts/utils/docs/worktree-fingerprint.md +3 -5
  348. package/skills/doc-aggregate/js/docs/docgen-ignore.md +3 -5
  349. package/skills/doc-aggregate/js/docs/docgen-scan.md +3 -5
  350. package/skills/doc-aggregate/js/docs/index.md +12 -0
  351. package/skills/start-check/js/docs/check.md +3 -5
  352. package/skills/start-check/js/docs/index.md +11 -0
  353. package/skills/taze/js/docs/diff.md +3 -5
  354. package/skills/taze/js/docs/index.md +11 -0
  355. package/scripts/lib/worktree.mjs +0 -126
  356. package/scripts/worktree-cli.mjs +0 -230
  357. package/skills/worktree/SKILL.md +0 -38
  358. package/skills/worktree/meta.json +0 -1
@@ -1,15 +1,13 @@
1
1
  ---
2
+ type: JS Module
3
+ title: lint.mjs
4
+ resource: npm/rules/text/lint/lint.mjs
2
5
  docgen:
3
- source: npm/rules/text/lint/lint.mjs
4
- crc: d475ffbb
6
+ crc: 02550273
5
7
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
6
8
  score: 90
7
9
  ---
8
10
 
9
- # lint.mjs
10
-
11
- ## Огляд
12
-
13
11
  runLintTextCli надає CLI-обгортку для послідовного лінтингу текстових файлів (text.mdc). Обгортка автоматично встановлює необхідні інструменти (`shellcheck`, `dotenv-linter`) через `ensureTool` перед виконанням ланцюжка перевірок. Ланцюжок включає: перевірку правопису (`cspell`), аналіз скриптів (`shellcheck`), перевірку конфігураційних файлів (`dotenv-linter`), форматування Markdown (`markdownlint-cli2`) та валідацію схем (`v8r`). При виявленні першого ненульового коду в ланцюжку, цей код повертається як код виходу, і подальші кроки не виконуються. runLintTextCli експортується для використання як підкоманда `lint-text` з `bin/n-cursor.js`.
14
12
 
15
13
  ## Поведінка
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: run-dotenv-linter.mjs
4
+ resource: npm/rules/text/lint/run-dotenv-linter.mjs
2
5
  docgen:
3
- source: npm/rules/text/lint/run-dotenv-linter.mjs
4
6
  crc: 4719ac66
5
7
  ---
6
8
 
7
- # run-dotenv-linter.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `run-dotenv-linter.mjs` інкапсулює інтеграцію зовнішнього інструмента **dotenv-linter** у ланцюжок `lint-text` правила `text` (тека `npm/rules/text/lint/`). Він виконує дві послідовні фази:
12
10
 
13
11
  1. **Авто-фікс** — `dotenv-linter fix -r --no-backup --quiet . --exclude …`. dotenv-linter сам застосовує всі підтримувані виправлення на місці (на відміну від shellcheck, який лише пропонує diff).
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: run-shellcheck.mjs
4
+ resource: npm/rules/text/lint/run-shellcheck.mjs
2
5
  docgen:
3
- source: npm/rules/text/lint/run-shellcheck.mjs
4
6
  crc: 6b2daaa8
5
7
  ---
6
8
 
7
- # run-shellcheck.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `run-shellcheck.mjs` — частина ланцюжка `lint-text` для перевірки якості shell-скриптів (`*.sh`) у проєкті за допомогою зовнішнього інструменту **ShellCheck**. Скрипт виконує два етапи:
12
10
 
13
11
  1. **Авто-виправлення**: оскільки ShellCheck не має прапорця `--fix`, для кожного знайденого `*.sh` файла модуль запускає `shellcheck -f diff` і застосовує отриманий unified-diff через системну утиліту `patch -p1` у корені проєкту. Цикл повторюється до `MAX_FIX_ROUNDS_PER_FILE` (32) разів, поки залишаються авто-виправні зауваження.
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: run-v8r.mjs
4
+ resource: npm/rules/text/lint/run-v8r.mjs
2
5
  docgen:
3
- source: npm/rules/text/lint/run-v8r.mjs
4
6
  crc: caf707a8
5
7
  ---
6
8
 
7
- # run-v8r.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `run-v8r.mjs` — це послідовний раннер CLI-валідатора схем `v8r` для всіх типів файлів, які він підтримує (`.json`, `.json5`, `.yml`, `.yaml`, `.toml`). Він є проміжним рівнем між кореневою командою `lint-text` та `bunx v8r`.
12
10
 
13
11
  Призначення модуля — обійти специфічну ваду `v8r`: якщо у єдиний виклик передати кілька glob-патернів і хоча б один із них не знаходить жодного файлу, процес `v8r` падає з кодом виходу `98`, тому решта розширень узагалі не перевіряється. Щоб уникнути цього, скрипт виконує **окремий** `bunx v8r` на **кожен** glob і толерантно ставиться до коду `98` (порожнє співпадіння — не помилка).
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: fix.mjs
4
+ resource: npm/rules/vue/fix.mjs
2
5
  docgen:
3
- source: npm/rules/vue/fix.mjs
4
6
  crc: 38cf876b
5
7
  score: 90
6
8
  ---
7
9
 
8
- # fix.mjs
9
-
10
- ## Огляд
11
-
12
10
  Файл застосовує правило `runStandardRule` до наданого контексту прогону через функцію `runStandardRule` і повертає отриманий результат. У режимі CLI він виконує команду `npx @nitra/cursor fix <id>` та визначає вихідний код процесу на основі отриманого результату.
13
11
 
14
12
  ## Поведінка
@@ -0,0 +1,11 @@
1
+ ---
2
+ type: Directory Index
3
+ title: npm/rules/vue
4
+ resource: npm/rules/vue/
5
+ ---
6
+
7
+ # npm/rules/vue
8
+
9
+ | Файл | Тип |
10
+ |---|---|
11
+ | [fix.mjs](fix.md) | JS Module |
@@ -0,0 +1,11 @@
1
+ ---
2
+ type: Directory Index
3
+ title: npm/rules/vue/js
4
+ resource: npm/rules/vue/js/
5
+ ---
6
+
7
+ # npm/rules/vue/js
8
+
9
+ | Файл | Тип |
10
+ |---|---|
11
+ | [packages.mjs](packages.md) | JS Module |
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: packages.mjs
4
+ resource: npm/rules/vue/js/packages.mjs
2
5
  docgen:
3
- source: npm/rules/vue/js/packages.mjs
4
6
  crc: 6119ae9c
5
7
  score: 85
6
8
  ---
7
9
 
8
- # packages.mjs
9
-
10
- ## Огляд
11
-
12
10
  isVueComponentLibraryPkg
13
11
  Перевіряє, чи є пакет бібліотекою компонентів Vue шляхом перевірки `peerDependencies`.
14
12
 
@@ -0,0 +1,11 @@
1
+ ---
2
+ type: Directory Index
3
+ title: npm/rules/vue/lib
4
+ resource: npm/rules/vue/lib/
5
+ ---
6
+
7
+ # npm/rules/vue/lib
8
+
9
+ | Файл | Тип |
10
+ |---|---|
11
+ | [vue-forbidden-imports.mjs](vue-forbidden-imports.md) | JS Module |
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: vue-forbidden-imports.mjs
4
+ resource: npm/rules/vue/lib/vue-forbidden-imports.mjs
2
5
  docgen:
3
- source: npm/rules/vue/lib/vue-forbidden-imports.mjs
4
6
  crc: 946eb1a6
5
7
  ---
6
8
 
7
- # vue-forbidden-imports.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `vue-forbidden-imports.mjs` — це бібліотека статичного аналізу `import`-декларацій, призначена для виявлення двох категорій порушень у вихідному коді Vue-проєкту:
12
10
 
13
11
  1. **Явні (runtime) імпорти з модуля `vue`** у будь-яких файлах, що сканує правило. За конвенцією `vue.mdc` у проєкті працює `unplugin-auto-import`, тому імпорти `ref`, `computed`, `watch` тощо мають бути неявними. Дозволено лише: side-effect форму (`import 'vue'`), повністю type-only імпорти (`import type { ... } from 'vue'`) та змішані форми, де **всі** іменовані записи мають флаг `isType` (наприклад, `import { type A, type B } from 'vue'`).
package/rules/vue/vue.mdc CHANGED
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: Vue
3
- version: '2.2'
3
+ version: '2.3'
4
4
  globs: "**/*.vue"
5
5
  alwaysApply: false
6
6
  ---
@@ -110,6 +110,24 @@ const additionalInstructions = `
110
110
  - **debounce/throttle** для частих подій.
111
111
  - Після ручних **addEventListener** / підписок — прибирай у **onUnmounted**.
112
112
 
113
+ ### Функції в шаблоні
114
+
115
+ Виклики функцій у шаблоні дозволені **лише** в обробниках подій (`@click`, `@change` тощо). У всіх інших місцях — `v-if`, `v-show`, атрибутах (`:prop`), інтерполяціях (`{{ }}`) — замінюй функції на `computed`-властивості: функція виконується при **кожному** render-і, тоді як `computed` кешується і перераховується лише при зміні залежностей.
116
+
117
+ ```vue
118
+ <!-- ❌ функція в умові, атрибуті та інтерполяції -->
119
+ <q-item v-if="getItems(order).length" :label="getLabel(item)">
120
+ {{ formatName(user) }}
121
+ </q-item>
122
+
123
+ <!-- ✅ реактивні змінні / computed / props -->
124
+ <q-item v-if="itemsMap[order.id].length" :label="item.label">
125
+ {{ user.displayName }}
126
+ </q-item>
127
+ <!-- обробник події — виклик функції дозволений -->
128
+ <q-btn @click="doSomething(item)" />
129
+ ```
130
+
113
131
  ### Безпека
114
132
 
115
133
  - Не довіряй **v-html** без санітизації; для форм/API — **CSRF**-захист за потреби; валідація **на сервері** обов’язкова.
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: fix.mjs
4
+ resource: npm/rules/worktree/fix.mjs
2
5
  docgen:
3
- source: npm/rules/worktree/fix.mjs
4
6
  crc: 38cf876b
5
7
  score: 100
6
8
  ---
7
9
 
8
- # fix.mjs
9
-
10
- ## Огляд
11
-
12
10
  Виконує застосування політики JS-занепокоєних та конфігурації на наданому контексті прогону, генеруючи посилання MDC та повертаючи результат.
13
11
 
14
12
  Виконується при запуску через командний рядок, виконуючи повний еквівалент команди `npx @nitra/cursor fix <id>`, завантажуючи конфігурацію, перевіряючи дозволені елементи та генеруючи зведену інформацію з виходом з процесу залежно від результату.
@@ -0,0 +1,11 @@
1
+ ---
2
+ type: Directory Index
3
+ title: npm/rules/worktree
4
+ resource: npm/rules/worktree/
5
+ ---
6
+
7
+ # npm/rules/worktree
8
+
9
+ | Файл | Тип |
10
+ |---|---|
11
+ | [fix.mjs](fix.md) | JS Module |
@@ -1,13 +1,13 @@
1
1
  ---
2
- description: Конвенція git-worktree у цьому репо — створення, інвентаризація та прибирання через n-cursor worktree CLI.
2
+ description: Конвенція git-worktree у цьому репо — створення, інвентаризація та прибирання через `mt worktree` (@7n/mt).
3
3
  globs:
4
4
  alwaysApply: true
5
5
  ---
6
6
 
7
7
  # Worktree-конвенція
8
8
 
9
- Усі git-worktree створюй і прибирай через CLI `n-cursor worktree` — він кладе їх у
10
- `.worktrees/` (gitignored) і веде інвентарний файл-опис поруч.
9
+ Усі git-worktree створюй і прибирай через `mt worktree` (з пакета `@7n/mt`) — він кладе їх у
10
+ `.worktrees/` (gitignored, checkout `<sanit>/`) і веде інвентарний файл-опис у `.worktrees/.meta/`.
11
11
 
12
12
  ## Розташування
13
13
 
@@ -74,10 +74,10 @@ Zed **замінює** масив `file_scan_exclusions` цілком (не зл
74
74
 
75
75
  ## Команди
76
76
 
77
- - **Створити** (опис обовʼязковий): `npx @nitra/cursor worktree add <branch> "<навіщо>"`
78
- - **Інвентаризація**: `npx @nitra/cursor worktree list`
79
- - **Прибрати**: `npx @nitra/cursor worktree remove <branch> [--force]`
80
- - **Прибрати осиротілі**: `npx @nitra/cursor worktree prune`
77
+ - **Створити** (опис обовʼязковий): `mt worktree create <branch> "<навіщо>"`
78
+ - **Інвентаризація**: `mt worktree list` (людино-) або `mt worktree inventory` (JSON)
79
+ - **Прибрати** (ефемерний — прибирає й git-гілку): `mt worktree remove <branch>`
80
+ - **Прибрати осиротілі інвентарі**: `mt worktree prune`
81
81
 
82
82
  ## Завершення гілки worktree
83
83
 
@@ -97,4 +97,4 @@ git checkout <base> && git merge --squash <branch> && git commit
97
97
 
98
98
  - Не клади worktree в `.claude/worktrees/` — це приватна директорія харнесу Claude Code.
99
99
  - Не клади worktree в батьківський каталог `../cursor-<name>` — ускладнює інвентаризацію.
100
- - Не створюй worktree вручну (`git worktree add`) повз CLI — інакше не буде інвентарного опису.
100
+ - Не створюй worktree вручну (`git worktree add`) повз `mt worktree create` — інакше не буде інвентарного опису.
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: apply.mjs
4
+ resource: npm/scripts/coverage-classify/apply.mjs
2
5
  docgen:
3
- source: npm/scripts/coverage-classify/apply.mjs
4
6
  crc: 0f54e6a0
5
7
  ---
6
8
 
7
- # apply.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `apply.mjs` із пакета `coverage-classify` відповідає за **застосування вердиктів класифікатора мутаційних розривів** до табличних coverage-рядків. Він фільтрує список «вижилих» мутантів (`survived`) у кожному рядку, ділячи їх на дві категорії:
12
10
 
13
11
  1. **Allowed gaps** — мутанти, які класифікатор позначив як `equivalent`, `defensive`, `glue` або `wrapper` з рівнем впевненості (`confidence`) не нижче встановленого порогу. Такі мутанти виключаються з підрахунку «killable» (зменшують `mutation.total`) та виносяться в окремий список для подальшого рендеру в `COVERAGE.md`.
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: cache.mjs
4
+ resource: npm/scripts/coverage-classify/cache.mjs
2
5
  docgen:
3
- source: npm/scripts/coverage-classify/cache.mjs
4
6
  crc: 53b251b1
5
7
  ---
6
8
 
7
- # cache.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `cache.mjs` реалізує **file-hash-keyed cache** для вердиктів класифікатора покриття мутаційного тестування (`coverage-classify`). Призначення — уникати повторної (зазвичай дорогої — через LLM) класифікації того ж самого мутанта в незмінному файлі.
12
10
 
13
11
  Ключова ідея кешу:
@@ -1,32 +1,14 @@
1
1
  ---
2
+ type: JS Module
3
+ title: index.mjs
4
+ resource: npm/scripts/coverage-classify/index.mjs
2
5
  docgen:
3
- source: npm/scripts/coverage-classify/index.mjs
4
6
  crc: 06249ac8
5
- score: 100
6
7
  ---
7
8
 
8
- # index.mjs
9
-
10
- ## Огляд
11
-
12
- Файл забезпечує класифікацію записів через послідовну спробу отримання результату з кешу, первинного моделі та хмарного сервісу. Якщо кеш не містить даних, відбувається перехід до наступного рівня, доки не буде досягнуто консервативного запасного варіанту. Результати класифікації записуються у кеш. Код спирається на конфіги з файлу coverage-classify.cache.json.
13
-
14
- ## Поведінка
15
-
16
- 1. Пошук результату в кеші.
17
- 2. Якщо результат знайдено, використовується збережений вердикт.
18
- 3. Якщо результат не знайдено, намагається отримати вердикт через перший рівень.
19
- 4. Якщо перший рівень не вдається, намагається отримати вердикт через другий рівень.
20
- 5. Якщо другий рівень не вдається, використовується консервативний запасний варіант.
21
- 6. Результати класифікації записуються в кеш.
22
-
23
- ## Публічний API
24
-
25
- classify — Класифікує survived мутанти, перенаправляючи їх до CLOUD_MIN, якщо результат resolveModel дорівнює CLOUD_MIN, інакше до fallback.
26
-
27
- ## Гарантії поведінки
28
-
29
- - Read-only: файл не виконує операцій запису у файлову систему.
30
- - Перехоплює помилки і не пропускає винятків назовні (fail-safe).
31
- - Кешує результати в межах одного прогону.
32
- - Не звертається до мережі.
9
+ | Файл | Тип | Опис |
10
+ |---|---|---|
11
+ | [apply.mjs](apply.md) | JS Module | Модуль apply.mjs із пакета coverage-classify відповідає за **застосування вердиктів класифікатора му |
12
+ | [cache.mjs](cache.md) | JS Module | Модуль cache.mjs реалізує **file-hash-keyed cache** для вердиктів класифікатора покриття мутаційного |
13
+ | [prompt.mjs](prompt.md) | JS Module | Модуль prompt.mjs це prompt-builder для скрипта coverage-classify, що класифікує вцілілих мутантів |
14
+ | [verdict-schema.mjs](verdict-schema.md) | JS Module | Файл надає схему VerdictSchema для валідації вердиктів LLM-класифікатора. |
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: prompt.mjs
4
+ resource: npm/scripts/coverage-classify/prompt.mjs
2
5
  docgen:
3
- source: npm/scripts/coverage-classify/prompt.mjs
4
6
  crc: 12bfb99a
5
7
  ---
6
8
 
7
- # prompt.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `prompt.mjs` — це prompt-builder для скрипта `coverage-classify`, що класифікує вцілілих мутантів зі звіту Stryker через LLM. Файл експонує дві сутності:
12
10
 
13
11
  - статичний рядок `SYSTEM_PROMPT`, який описує LLM правила класифікації та формат JSON-відповіді;
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: verdict-schema.mjs
4
+ resource: npm/scripts/coverage-classify/verdict-schema.mjs
2
5
  docgen:
3
- source: npm/scripts/coverage-classify/verdict-schema.mjs
4
6
  crc: ecf5dfe1
5
7
  score: 100
6
8
  ---
7
9
 
8
- # verdict-schema.mjs
9
-
10
- ## Огляд
11
-
12
10
  Файл надає схему `VerdictSchema` для валідації вердиктів LLM-класифікатора. Функція `parseVerdict` витягує JSON-об'єкт з сирої текстової відповіді моделі та перевіряє його відповідність визначеній схемі.
13
11
 
14
12
  ## Поведінка
@@ -0,0 +1,11 @@
1
+ ---
2
+ type: Directory Index
3
+ title: npm/scripts/dispatcher
4
+ resource: npm/scripts/dispatcher/
5
+ ---
6
+
7
+ # npm/scripts/dispatcher
8
+
9
+ | Файл | Тип |
10
+ |---|---|
11
+ | [trace.mjs](trace.md) | JS Module |
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: trace.mjs
4
+ resource: npm/scripts/dispatcher/trace.mjs
2
5
  docgen:
3
- source: npm/scripts/dispatcher/trace.mjs
4
6
  crc: 8d541669
5
7
  score: 100
6
8
  ---
7
9
 
8
- # trace.mjs
9
-
10
- ## Огляд
11
-
12
10
  Файл забезпечує наскрізну простежуваність артефактів. Він читає front-matter з директорій `docs/{tasks,specs,plans,adr}`, будує ланцюг за лінками та позначає розриви. Функції генерують аналіз, який потім рендериться у текстовий вивід, а трасування виконується для зчитування артефактів.
13
11
 
14
12
  ## Поведінка
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: auto-rules.mjs
4
+ resource: npm/scripts/auto-rules.mjs
2
5
  docgen:
3
- source: npm/scripts/auto-rules.mjs
4
6
  crc: d50b922f
5
7
  score: 90
6
8
  ---
7
9
 
8
- # auto-rules.mjs
9
-
10
- ## Огляд
11
-
12
10
  Файл читає метадані з `npm/rules/<id>/meta.json` для автоматичного визначення порядку та залежностей правил. Він обчислює spec активації для кожного правила, використовуючи дані з `RULE_PREDICATES` з `lib/rule-predicates.mjs`, визначає активні правила, обчислює залежності та об'єднує конфігурацію з виявленими правилами та поправками на legacy-id. Код спирається на конфіги `.n-cursor.json`, `meta.json` та `package.json`.
13
11
 
14
12
  ## Поведінка
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: auto-skills.mjs
4
+ resource: npm/scripts/auto-skills.mjs
2
5
  docgen:
3
- source: npm/scripts/auto-skills.mjs
4
6
  crc: 44328898
5
7
  ---
6
8
 
7
- # `auto-skills.mjs`
8
-
9
- ## Огляд
10
-
11
9
  Модуль `npm/scripts/auto-skills.mjs` відповідає за **автовизначення (auto-activation) скілів** для файлу конфігурації `.n-cursor.json`. Він сканує директорію `npm/skills/` і для кожного скілу читає його `meta.json`, щоб визначити, чи має скіл активуватися автоматично — завжди або лише за наявності певних виявлених auto-правил (rules).
12
10
 
13
11
  Ключова ідея модуля: **`meta.json` — єдине джерело правди**. У коді немає жорстко прописаної мапи відповідностей між скілами та правилами; усе зчитується з метаданих скіла. Раніше використовувався hardcoded `AUTO_SKILL_ORDER`, тепер він обчислюється динамічно — експорт залишено для зворотної сумісності.
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: build-agents-commands.mjs
4
+ resource: npm/scripts/build-agents-commands.mjs
2
5
  docgen:
3
- source: npm/scripts/build-agents-commands.mjs
4
6
  crc: 5a4cde2f
5
7
  ---
6
8
 
7
- # build-agents-commands.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `build-agents-commands.mjs` формує перелік маркованих елементів (bullet items) для секції «Команди» у файлі `AGENTS.md`, який згенерує CLI `@nitra/cursor` під час синхронізації правил/шаблону.
12
10
 
13
11
  Принципи побудови списку:
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: cli-entry.mjs
4
+ resource: npm/scripts/cli-entry.mjs
2
5
  docgen:
3
- source: npm/scripts/cli-entry.mjs
4
6
  crc: b51b5d0a
5
7
  ---
6
8
 
7
- # `cli-entry.mjs`
8
-
9
- ## Огляд
10
-
11
9
  Модуль `npm/scripts/cli-entry.mjs` — невеликий утилітарний ESM-модуль (Node.js, `.mjs`), який дає можливість іншому модулю-caller'у з'ясувати, **чи запущено його як точку входу CLI** (тобто прямим викликом `node my-script.mjs` або через `bin`-shim з `package.json`), **чи його просто імпортували** з іншого модуля (наприклад, з юніт-тестів, з фасадного CLI-агрегатора, з devtools).
12
10
 
13
11
  Це класична Node.js-задача: ESM-модулі не мають `require.main === module` ідіоми CommonJS, і canonical-альтернативою служить порівняння `import.meta.url` (URL поточного файлу-модуля) із `process.argv[1]` (шлях, переданий Node.js при запуску). Модуль інкапсулює цю перевірку в одну іменовану функцію `isRunAsCli(metaUrl)` і вирішує три типові проблеми «з полів»:
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: coverage-fix-extract.mjs
4
+ resource: npm/scripts/coverage-fix-extract.mjs
2
5
  docgen:
3
- source: npm/scripts/coverage-fix-extract.mjs
4
6
  crc: a7f39f0e
5
7
  ---
6
8
 
7
- # coverage-fix-extract.mjs
8
-
9
- ## Огляд
10
-
11
9
  Цей файл витягує вцілілі мутанти з файлу `COVERAGE.md` у форматі JSON. Витягнуті дані надаються агенту для вирішення проблем з покриттям, зменшуючи навантаження на LLM-оркестратор та забезпечуючи ефективний обмін інформацією. Це ключовий компонент процесу `n-coverage-fix`, що дозволяє агенту швидко реагувати на зміни в покритті.
12
10
 
13
11
  ## Поведінка
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: coverage-fix.mjs
4
+ resource: npm/scripts/coverage-fix.mjs
2
5
  docgen:
3
- source: npm/scripts/coverage-fix.mjs
4
6
  crc: 7f0568dd
5
7
  ---
6
8
 
7
- # coverage-fix.mjs
8
-
9
- ## Огляд
10
-
11
9
  Файл `npm/scripts/coverage-fix.mjs` — це ESM-модуль, який реалізує fix-режим команди `n-cursor coverage --fix`. Його призначення — автоматично запустити агента Claude Code (через офіційний SDK `@anthropic-ai/claude-agent-sdk`) і доручити йому дописати unit-тести, які «вб'ють» вцілілих мутантів, знайдених попереднім прогоном Stryker.
12
10
 
13
11
  Модуль не виконує власних мутацій коду й не аналізує покриття самостійно — він є тонким адаптером між інвентарем вцілілих мутантів (структури `SurvivedFileGroup[]`, отримані ззовні) і LLM-агентом: формує rich-промпт з контекстом ±3 рядки навколо кожного мутанта, опційно додає приклад уже існуючого тесту, після чого ітерує по стрімінгу повідомлень агента та виводить його текстові реплики у `stdout`.
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: ensure-nitra-cursor-dev-dependencies.mjs
4
+ resource: npm/scripts/ensure-nitra-cursor-dev-dependencies.mjs
2
5
  docgen:
3
- source: npm/scripts/ensure-nitra-cursor-dev-dependencies.mjs
4
6
  crc: c3df2c0e
5
7
  ---
6
8
 
7
- # ensure-nitra-cursor-dev-dependencies.mjs
8
-
9
- ## Огляд
10
-
11
9
  Модуль `ensure-nitra-cursor-dev-dependencies.mjs` забезпечує, що пакет `@nitra/cursor` буде оголошений у `devDependencies` workspace-root `package.json` проєкту, в якому виконується CLI `n-cursor`. Якщо запис відсутній і в `devDependencies`, і в `dependencies`, модуль дописує його з діапазоном `^<version>`, узятим з поля `version` з `package.json` фактично завантаженого пакету `@nitra/cursor`.
12
10
 
13
11
  Призначення: коли користувач викликає `npx @nitra/cursor` (зокрема команду `check`), node-кеш npx містить пакет, але після наступного `bun install` / `npm install` цей кеш може не відтворити пакет у проєкті. Дописавши пакет у `devDependencies` workspace-root, модуль гарантує, що `n-cursor` і його допоміжні скрипти з `node_modules/@nitra/cursor/scripts/` стануть відтвореною частиною проєкту й не залежатимуть від кешу npx.
@@ -0,0 +1,24 @@
1
+ ---
2
+ type: Directory Index
3
+ title: npm/scripts
4
+ resource: npm/scripts/
5
+ ---
6
+
7
+ # npm/scripts
8
+
9
+ | Файл | Тип |
10
+ |---|---|
11
+ | [auto-rules.mjs](auto-rules.md) | JS Module |
12
+ | [auto-skills.mjs](auto-skills.md) | JS Module |
13
+ | [build-agents-commands.mjs](build-agents-commands.md) | JS Module |
14
+ | [cli-entry.mjs](cli-entry.md) | JS Module |
15
+ | [coverage-fix-extract.mjs](coverage-fix-extract.md) | JS Module |
16
+ | [coverage-fix.mjs](coverage-fix.md) | JS Module |
17
+ | [ensure-nitra-cursor-dev-dependencies.mjs](ensure-nitra-cursor-dev-dependencies.md) | JS Module |
18
+ | [post-tool-use-fix.mjs](post-tool-use-fix.md) | JS Module |
19
+ | [rename-yaml-extensions.mjs](rename-yaml-extensions.md) | JS Module |
20
+ | [skills-cli.mjs](skills-cli.md) | JS Module |
21
+ | [sync-claude-config.mjs](sync-claude-config.md) | JS Module |
22
+ | [sync-setup-bun-deps-action.mjs](sync-setup-bun-deps-action.md) | JS Module |
23
+ | [upgrade-nitra-cursor-and-install.mjs](upgrade-nitra-cursor-and-install.md) | JS Module |
24
+ | [worktree-cli.mjs](worktree-cli.md) | JS Module |
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: post-tool-use-fix.mjs
4
+ resource: npm/scripts/post-tool-use-fix.mjs
2
5
  docgen:
3
- source: npm/scripts/post-tool-use-fix.mjs
4
- crc: f40e8a8b
6
+ crc: 9f313f04
5
7
  score: 95
6
8
  ---
7
9
 
8
- # post-tool-use-fix.mjs
9
-
10
- ## Огляд
11
-
12
10
  Файл забезпечує точкова маршрутизацію шляху до правил для виправлення коду через хук PostToolUse. Він ініціює запуск команди `npx @nitra/cursor fix` для виправлення коду після зміни файлу.
13
11
 
14
12
  ## Поведінка
@@ -1,13 +1,11 @@
1
1
  ---
2
+ type: JS Module
3
+ title: rename-yaml-extensions.mjs
4
+ resource: npm/scripts/rename-yaml-extensions.mjs
2
5
  docgen:
3
- source: npm/scripts/rename-yaml-extensions.mjs
4
6
  crc: 6ffbfdff
5
7
  ---
6
8
 
7
- # rename-yaml-extensions.mjs
8
-
9
- ## Огляд
10
-
11
9
  Цей файл перейменовує розширення файлів YAML у репозиторіях, відповідно до узгоджених правил. Він автоматизує процес зміни розширення файлів `.yml` на `.yaml` для файлів, що відповідають певним шаблонам шляхів, зокрема для маніфестів Kubernetes та workflow-файлів GitHub. Це забезпечує узгодженість форматування YAML у репозиторії.
12
10
 
13
11
  ## Поведінка
@@ -1,14 +1,12 @@
1
1
  ---
2
+ type: JS Module
3
+ title: skills-cli.mjs
4
+ resource: npm/scripts/skills-cli.mjs
2
5
  docgen:
3
- source: npm/scripts/skills-cli.mjs
4
6
  crc: 85da573a
5
7
  score: 100
6
8
  ---
7
9
 
8
- # skills-cli.mjs
9
-
10
- ## Огляд
11
-
12
10
  Файл надає інструменти для запуску скілів пакета `@nitra/cursor` без синку правил у проєкт. Він зчитує інструкції скілів з файлів `SKILL.md` та збирає контекст з `package.json`, `tsconfig.json` та `.n-cursor.json` для формування промпту. Зібраний промпт делегується в `cursor-agent` або `claude` для виконання необхідних дій.
13
11
 
14
12
  ## Поведінка