원클릭으로
build-extension
Build, test, and package VSCode extensions in the dart_node repo
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Build, test, and package VSCode extensions in the dart_node repo
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | build-extension |
| description | Build, test, and package VSCode extensions in the dart_node repo |
| argument-hint | [too-many-cooks|dart-node-vsix] [build|test|package|install] |
| disable-model-invocation | true |
| allowed-tools | Bash |
This repo has one VSCode extension component:
| Component | Location | What it is |
|---|---|---|
| dart_node_vsix | packages/dart_node_vsix/ | The SDK package — Dart bindings for the VSCode extension API (commands, tree views, webviews, status bar, etc.) |
Test the SDK (Dart tests compiled to JS, run in VSCode):
cd packages/dart_node_vsix && npm install && npm run compile && npm test
What it provides — Dart bindings for:
commands, window, workspace, statusBarTreeView, Webview, OutputChannelExtensionContext, DisposableMocha test API bindingsPromise, EventEmitter)Both use the same pattern: Dart → dart compile js → wrapper script → VSCode-compatible JS module.
The wrapper scripts (scripts/wrap-extension.js, scripts/wrap-tests.js) bridge dart2js output to VSCode's CommonJS require/module.exports system and inject polyfills (navigator, self) needed by dart2js async scheduling.
Builds all artifacts for this repo. Use when the user asks to build, compile, or produce artifacts, or when verifying that the project compiles cleanly.
Prepares the current branch for CI by running the exact same checks locally, fixing issues at each step. Use before pushing a branch or when the user wants to verify the branch will pass CI.
Searches for duplicate code, duplicate tests, and dead code, then safely merges or removes them. Use when the user says "deduplicate", "find duplicates", "remove dead code", "DRY up", or "code dedup". Requires test coverage — refuses to touch untested code.
Fix a bug using test-driven development. Use when the user reports a bug, describes unexpected behavior, wants to fix a defect, or says something is broken. Enforces a strict test-first workflow where a failing test must be written and verified before any fix is attempted.
Formats all code in this repo using dart format. Use when the user asks to format code, fix formatting, or before committing changes.
Runs all linters and format checks, then fixes any issues found. Use when the user asks to lint, check code quality, or fix linting errors.