Use this skill when working on workflows or commands for this repo's VS Code extension.
Shared conventions
- Follow
AGENTS.mdfor coding style, TypeScript/lint rules, testing conventions, and shared engineering constraints. - Keep this skill focused on workflow/packaging/command concerns.
Key files
package.jsonfor scripts, activation events, and contributions.src/extension.tsfor activation and command wiring.src/integratedTreeProvider.tsfor Filter/View controls tree UI.src/searchViewProvider.tsfor webview-side filter/search/history interactions.README.mdfor user-visible docs and command lists.eslint.config.jsfor ESLint 9 flat-config rules.
Commands
- Install deps:
npm install - Bundle (dev):
npm run esbuild - Bundle (minified):
npm run vscode:prepublish - Type check:
npm run compile - Lint:
npm run lint - Tests:
npm test
Single test
- Prefer VS Code Testing view; tests are discovered in
src/test/(*.test.ts). - CLI:
npm test -- --grep "<test name substring>".
Workflow checklist
- Update
package.jsoncommands or contributions as needed. - Keep
README.mdin sync with new commands or settings. - Avoid editing generated output in
out/ordist/. - Match existing TypeScript style and ESLint rules.
- Run
npm run compile,npm run lint, andnpm testafter changes when feasible. - Keep docs DRY: reference
package.jsonas command/settings source of truth. - Follow
AGENTS.mdfor design-first, SOLID/DRY, and minimal-change guidance when changing scripts/contributions. - Avoid unnecessary refactors of scripts/contributions; keep workflow edits minimal and focused.
Feature/workflow hotspots
- Filter controls now support per-field modes (Contains/Regex/Glob) and recent-filter operations.
- Custom view flows include select/apply/toggle/import/export plus workspace/global storage scope (see
custom-views.mdfor schema and constraints). - Performance behavior includes
refreshMode,debounceDelay, andadaptiveDebouncesettings. - Search and saved filters use persistent stores (
SearchHistoryStore,SavedFiltersStore).
Gotchas
- The extension activates on
onLanguage:arxml. - Additional activation occurs for views (
arxml-integrated-view,bookmark-tree-view). - ESLint uses flat config (
eslint.config.js), not legacy eslintrc files. - Tests are Mocha-based and executed via the VS Code test runner.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.