.cursor/skills/git-conventional-commits/SKILL.md
Splits working tree changes into logical Git commits with conventional messages (feat, fix, test, chore, refactor, style, docs). Proposes commits one at a time and waits for explicit user approval before each git commit. Use when the user asks to commit, split commits, stage by topic, or use conventional / semantic commit messages.
npx skillsauth add vishiri/fantasia-archive git-conventional-commitsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use exactly one of: feat | fix | test | chore | refactor | style | docs.
| Type | Use for |
|------|---------|
| feat | New capability or user-visible behavior |
| fix | Bug fixes |
| test | Test-only changes (new tests, assertions, test data, harness) |
| chore | Dependencies, build/CI config, tooling, repo housekeeping |
| refactor | Restructure without intended behavior change |
| style | Formatting, pure style/lint autofix, no logic change |
| docs | README, AGENTS, Cursor rules/skills, intentional documentation comments |
Format: type: imperative subject (lowercase type, space after colon, ~72 chars or less for subject; no trailing period on subject).
Examples: feat: add splash screen fade-out, test: cover devtools menu toggle, docs: split vue rules by concern.
Local enforcement: after yarn install, .husky/commit-msg runs yarn lint:commit --edit against commitlint.config.mjs (same type list; Merge … / Revert … ignored). See git-conventional-commits.mdc. Use git commit --no-verify only when you must bypass hooks.
git status and review git diff (and git diff --staged if anything is already staged).yarn testbatch:verify (stop on first failure; run yarn lint:eslint, yarn lint:typescript, yarn lint:stylelint, yarn test:unit, or yarn test:coverage:verify / yarn test:coverage:electron / yarn test:coverage:helpers / yarn test:coverage:src individually only while debugging). See eslint-typescript.mdc and vitest-tests.mdc for layered Vitest coverage. Skip this step when the only paths you will commit match i18n/*/documents/changeLog.md and yarn testbatch:verify already passed after the latest substantive edits with no other uncommitted changes since then; if unsure, run yarn testbatch:verify anyway.src/components/**, verify Storybook coverage/health and add/update missing _tests/<Component>.stories.ts plus required mocks/placeholders. Touching only src/layouts/**/_tests or src/pages/**/_tests Storybook previews does not require Docs/autodocs (canvas-only); see storybook-stories.mdc. Skip when the commit is changelog-only as in step 2 and Storybook was already satisfied for the prior work.i18n/en-US/documents/changeLog.md and reconcile whether staged user-visible work needs a changelog update. Follow project changelog/version rules when adjusting release notes. When you also maintain translations, update matching documents/changeLog.md files under other locales.git add with only those paths and git commit -m "type: subject".type: message; you may commit in one shot after listing what will be included (still after the gates in step 2).git commit without user confirmation if they requested approval per commit.docs: rule edits with feat: app code unless the user explicitly overrides).chore and refactor, prefer refactor for production code moves/renames and chore for repo/meta/tooling.git commit, not left accidental. A second commit that adjusts only i18n/*/documents/changeLog.md is fine and may skip yarn testbatch:verify per testing-terminal-isolation.mdc.src/components/** before you finish the product commit; changelog-only follow-up commits skip Storybook when the prior verified work already covered UI..cursor/rules/git-conventional-commits.mdc (always on).types/)interface / type declarations in repository-root types/ (import with app/types/...). Prefer one domain-oriented module per feature area with brief JSDoc on exports (see types/I_appMenusDataList.ts). Do not add colocated <filename>.types.ts under src/, src-electron/, or .storybook-workspace/. Ambient augmentations for third-party modules also live under types/ and are loaded with a side-effect import from the owning boot file or src/stores/index.ts (see types/piniaModuleAugmentation.ts)..js), TypeScript (.ts), Vue (.vue), and JSON (.json, .jsonc, .json5) files, enforce expanded multi-line object literals via ESLint (object-curly-newline + object-property-newline) and keep files auto-fixable with eslint --fix.development
Aligns AI suggestions with Fantasia Archive as a worldbuilding database manager: projects, documents, and in-app concepts. Use when designing UX, data models, menus, or copy that should match the product purpose.
development
Runs and extends Fantasia Archive tests: Vitest unit tests vs Playwright component and E2E tests, including rebuild-before-Playwright rules and file naming. Use when writing tests, debugging CI, or when the user mentions Vitest, Playwright, component tests, or e2e.
development
Designs SQLite usage in Fantasia Archive’s Electron main process: file locations under userData, native better-sqlite3 module constraints, and migrations. Use when editing electron-main database code, schema, or persistence paths.
development
Produces production Electron builds for Fantasia Archive with electron- builder and Quasar. Use when changing build scripts, packaging, or publish flags, or when the user asks how to ship the desktop app.