Agent skill

Vscode Extension Builder Lawvable

by lawve-ai in lawve-ai/awesome-legal-skills

Build VS Code extensions from scratch or convert existing JS/React/Vue apps.

AGPL-3.0Auto-check passed

Install Vscode Extension Builder Lawvable

skills CLI
$ npx skills add lawve-ai/awesome-legal-skills --skill vscode-extension-builder-lawvable -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install lawve-ai/awesome-legal-skills vscode-extension-builder-lawvable --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/lawve-ai/awesome-legal-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/vs-code-extension-antoine-louis .claude/skills/vscode-extension-builder-lawvable && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
vscode-extension-builder-lawvable
GitHub stars
847
Token cost
~1.9k tokens
SKILL.md length
486 words
Files
47 (incl. references, assets)
Skills in repo
154
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Build VS Code extensions from scratch or convert existing JS/React/Vue apps.

  • Works in 2 steps: Extension Host (Node.js) — Backend… → Webviews (browser sandbox) — Custom UIs…
  • User wants to create a VS Code extension
  • SKILL.md covers Architecture, Quick Start, Template Decision Tree and Extension Types, plus 7 more sections
  • Runs JavaScript and TypeScript scripts from its folder; calls npm

What it does

Vscode Extension Builder Lawvable is an agent skill from lawve-ai/awesome-legal-skills. Build VS Code extensions from scratch or convert existing JS/React/Vue apps. Supports commands, webviews (React/Vue), custom editors, tree views, and AI agent integration via file-bridge IPC. Use when user wants to create a VS Code extension, convert a web app to an extension, add webviews or custom UIs to VS Code, implement tree views, build custom file editors, integrate with AI agents, or package/publish extensions (.vsix).

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 52 other files, including reference files and assets (for example `README.md`, `assets/basic-command/esbuild.js` and `assets/basic-command/package.json`).

It works with Visual Studio Code, React, Vue.js and npm. The repository describes itself as: A curated list of awesome Agent Skills for automating legal work. The licence is AGPL-3.0.

When your agent uses it

  • User wants to create a VS Code extension
  • Convert a web app to an extension
  • Custom UIs to VS Code
  • Implement tree views

Example prompts

  • “/vscode-extension-builder-lawvable”

Requirements

  • Node.js

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. Extension Host (Node.js) — Backend logic, file access, VS Code APIs
  2. Webviews (browser sandbox) — Custom UIs with HTML/CSS/JS (React, Vue, vanilla)

What it can do on your machine

Read from SKILL.md and the folder at commit 045f738. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (JavaScript and TypeScript, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Vscode Extension Builder Lawvable loads about 1.9k tokens when it runs, and up to ~26k if it reads all its reference files. Until then it costs about 116 tokens; SKILL.md has 486 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~116
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~26k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from lawve-ai/awesome-legal-skills at commit 045f738, republished under its AGPL-3.0 licence (© lawve-ai). 486 words, ~1,918 tokens.

Download SKILL.mdSave it as .claude/skills/vscode-extension-builder-lawvable/SKILL.md (or your agent's skills folder). This skill also uses 46 other files; get the full folder from GitHub.
name
vscode-extension-builder-lawvable
description
Build VS Code extensions from scratch or convert existing JS/React/Vue apps. Supports commands, webviews (React/Vue), custom editors, tree views, and AI agent integration via file-bridge IPC. Use when user wants to create a VS Code extension, convert a web app to an extension, add webviews or custom UIs to VS Code, implement tree views, build custom file editors, integrate with AI agents, or package/publish extensions (.vsix).
metadata.author
Antoine Louis (Lawvable)
metadata.license
AGPL-3.0
metadata.version
2026.02.04

VS Code Extension

Build VS Code extensions from scratch or convert existing web apps into portable, shareable extensions.

Architecture

VS Code extensions run in two contexts:

  1. Extension Host (Node.js) — Backend logic, file access, VS Code APIs
  2. Webviews (browser sandbox) — Custom UIs with HTML/CSS/JS (React, Vue, vanilla)

Build stack: TypeScript + esbuild (extension) + Vite (webviews)

Quick Start

  1. Choose a template from assets/ based on your needs (see decision tree below)
  2. Copy the template to your project directory
  3. Update package.json: name, displayName, publisher, description
  4. Run npm install then npm run build
  5. Press F5 in VS Code to launch Extension Development Host

Template Decision Tree

NeedTemplate
Simple command/actionassets/basic-command/
Custom UI panel (React)assets/webview-react/
Sidebar file treeassets/tree-view/
Custom file editorassets/custom-editor/
AI agent integrationassets/file-bridge/

Extension Types

Commands

Register actions triggered via Command Palette, keyboard shortcuts, or menus.

typescript
vscode.commands.registerCommand('myExt.doSomething', () => {
  vscode.window.showInformationMessage('Done!');
});

See references/api-reference.md for common APIs.

Webviews

Full HTML/CSS/JS UIs in panels or sidebar. Use React for complex interfaces.

typescript
const panel = vscode.window.createWebviewPanel(
  'myView', 'My Panel', vscode.ViewColumn.One,
  { enableScripts: true }
);
panel.webview.html = getWebviewContent();

See references/webview-patterns.md for React setup, messaging, and CSP.

Tree Views

Hierarchical data in the sidebar (file explorers, outlines, lists).

typescript
vscode.window.registerTreeDataProvider('myTreeView', new MyTreeProvider());

See references/tree-view-patterns.md for TreeDataProvider patterns.

Custom Editors

Replace the default editor for specific file types.

typescript
vscode.window.registerCustomEditorProvider('myExt.myEditor', new MyEditorProvider());

See references/custom-editor-patterns.md for document sync and undo/redo.

Converting Existing Apps

To convert a JS/React/Vue app into an extension:

  1. Assess — What does the app do? What VS Code features does it need?
  2. Map APIs — Replace web APIs with VS Code equivalents
  3. Restructure — Move UI into webview, logic into extension host
  4. Connect — Wire up postMessage communication
Web APIVS Code Equivalent
localStoragecontext.globalState / context.workspaceState
fetch()vscode.workspace.fs or keep fetch for external APIs
RouterMultiple webview panels or sidebar views
alert()vscode.window.showInformationMessage()
prompt()vscode.window.showInputBox()
confirm()vscode.window.showWarningMessage() with options

See references/conversion-guide.md for detailed step-by-step process.

Show full SKILL.md (196 more words)Show less

Build System

Extension code — Use esbuild (fast, simple):

javascript
// esbuild.js
esbuild.build({
  entryPoints: ['src/extension.ts'],
  bundle: true,
  outfile: 'dist/extension.js',
  external: ['vscode'],
  format: 'cjs',
  platform: 'node',
});

Webview code — Use Vite (HMR, React support):

javascript
// vite.config.ts
export default defineConfig({
  build: {
    outDir: '../dist/webview',
    rollupOptions: { output: { entryFileNames: '[name].js' } }
  }
});

See references/build-config.md for complete configurations.

package.json Manifest

Essential fields:

json
{
  "name": "my-extension",
  "displayName": "My Extension",
  "publisher": "your-publisher-id",
  "version": "0.0.1",
  "engines": { "vscode": "^1.85.0" },
  "main": "./dist/extension.js",
  "activationEvents": [],
  "contributes": {
    "commands": [{ "command": "myExt.hello", "title": "Hello" }]
  }
}

The contributes section defines commands, menus, views, settings, keybindings, and more.

See references/contribution-points.md for all contribution types.

IPC Patterns

Extension ↔ Webview

Use postMessage for bidirectional communication:

typescript
// Extension → Webview
panel.webview.postMessage({ type: 'update', data: {...} });

// Webview → Extension
panel.webview.onDidReceiveMessage(msg => {
  if (msg.type === 'save') { /* handle */ }
});
Extension ↔ External Tools (AI Agents)

Use file-based IPC for communication with Claude Code or other agents:

typescript
// Watch for command files
fs.watch(commandDir, (event, filename) => {
  if (filename.endsWith('.json')) {
    const command = JSON.parse(fs.readFileSync(path.join(commandDir, filename)));
    processCommand(command);
  }
});

See references/ai-integration.md for the file-bridge pattern.

Packaging & Distribution

Package as .vsix
bash
npm install -g @vscode/vsce
vsce package

This creates my-extension-0.0.1.vsix.

.vscodeignore

Exclude unnecessary files:

.vscode/**
node_modules/**
src/**
*.ts
tsconfig.json
esbuild.js
vite.config.ts
Distribution Options
  1. Direct sharing — Send .vsix file, install via code --install-extension file.vsix
  2. VS Marketplace — Publish with vsce publish (requires Microsoft account)
  3. Open VSX — Alternative registry for open-source extensions
Platform-Specific Builds

For extensions with native dependencies:

bash
vsce package --target win32-x64
vsce package --target darwin-arm64
vsce package --target linux-x64

Reference Files

FileWhen to Read
api-reference.mdImplementing extension features
contribution-points.mdConfiguring package.json contributes
webview-patterns.mdBuilding React webviews
tree-view-patterns.mdImplementing tree views
custom-editor-patterns.mdBuilding custom file editors
build-config.mdConfiguring esbuild/Vite
conversion-guide.mdConverting web apps
ai-integration.mdIntegrating with AI agents

Asset Templates

TemplateDescription
basic-command/Minimal extension with one command
webview-react/React webview panel with messaging
tree-view/Sidebar tree view with provider
custom-editor/Custom editor for specific file types
file-bridge/File-based IPC for AI agents

© lawve-ai, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 46 other files (references, assets) in skills/vs-code-extension-antoine-louis of lawve-ai/awesome-legal-skills.

  • SKILL.md
  • LICENSE.txt
  • README.md
  • assets/basic-command/esbuild.js
  • assets/basic-command/package.json
  • assets/basic-command/src/extension.ts
  • assets/basic-command/tsconfig.json
  • assets/custom-editor/esbuild.js
  • assets/custom-editor/package.json
  • assets/custom-editor/src/editorProvider.ts
  • assets/custom-editor/src/extension.ts
  • assets/custom-editor/tsconfig.json
  • assets/file-bridge/esbuild.js
  • assets/file-bridge/package.json
  • assets/file-bridge/src
  • … and 32 more

Open the folder on GitHubat commit 045f738

Compare with similar skills

Vscode Extension Builder Lawvable next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Vscode Extension Builder Lawvable compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Vscode Extension Builder Lawvable this skilllawve-ai/awesome-legal-skills847—~1.9kAutomated safety check: PassAGPL-3.0
Implement Ag PlaybookAgnosticUI/agnosticui827—~1.7kAutomated safety check: PassApache-2.0
Any Tdf Developmentany-tdf/any-tdf778—~1.1kAutomated safety check: PassMIT
Kb Web ScanningCommunity-Access/accessibility-agents423—~1.2kAutomated safety check: PassMIT
Getting Startedlive-codes/livecodes1.5k—~1.6kAutomated safety check: PassMIT
Releasedevlint/GitWand180—~1.8kAutomated safety check: PassMIT

Similar skills

  • Implement Ag Playbook

    AgnosticUI/agnosticui

    Implement a playbook from its PROMPT specification files. An agent skill from AgnosticUI/agnosticui.

    827 GitHub stars~1.7k tokensUpdated 2 days ago
    Frontend & DesignAuto-check passed
  • Any Tdf Development

    any-tdf/any-tdf

    Guide implementation, fixes, reviews, documentation, generation, and validation in the Any TDF monorepo across the shared core, STDF/Svelte, RTDF/React, VTDF/Vue, demos, sites, tooling, AI skill…

    778 GitHub stars~1.1k tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • Kb Web Scanning

    Community-Access/accessibility-agents

    Reference data, not a reviewer. An agent skill from Community-Access/accessibility-agents.

    423 GitHub stars~1.2k tokensUpdated 17 days ago
    Frontend & DesignAuto-check passed
  • Getting Started

    live-codes/livecodes

    Quick start for standalone app at livecodes.io, embedding playgrounds with CDN or npm, and self-hosting basics.

    1.5k GitHub stars~1.6k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Release

    devlint/GitWand

    Guide a clean GitWand release end-to-end: bump version, update CHANGELOG, commit, tag, and push.

    180 GitHub stars~1.8k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Light Frontend Design

    Light0305/Light-skills

    Light 按需工程技能·前端设计:把模糊的「做个好看的界面」落成能跑的 React/Tailwind/shadcn 代码 + 设计决策说明—— 有视觉记忆点(signature element)、风格自洽(design tokens 一致)、适配场景(学术海报/数据大屏/管理后台/移动端/营销 landing 信息密度各不同)、反「一眼 AI」(紫蓝渐变/Inter/16px 圆角/巨型…

    640 GitHub stars~3.1k tokensUpdated 3 mo ago
    Frontend & DesignAuto-check passed

More from lawve-ai/awesome-legal-skills

All 154 skills in this repo
  • Customs Trade Law Onur Kafkas

    lawve-ai/awesome-legal-skills

    U.S. An agent skill from lawve-ai/awesome-legal-skills.

    847 GitHub stars~4.1k tokensUpdated 8 days ago
    Auto-check passed
  • Eu Data Act Oliver Schmidt Prietz

    lawve-ai/awesome-legal-skills

    Practitioner skill for advising on EU Regulation 2023/2854 (Data Act).

    847 GitHub stars~3.9k tokensUpdated 8 days ago
    Auto-check passed
  • Litigation Deadline Calendar

    lawve-ai/awesome-legal-skills

    Calendar litigation and arbitration deadlines from a scheduling order.

    847 GitHub stars~4.3k tokensUpdated 8 days ago
    Auto-check passed
  • Outlook Emails Lawvable

    lawve-ai/awesome-legal-skills

    Read, search, and download emails and attachments from Microsoft Outlook via OAuth2.

    847 GitHub stars~672 tokensUpdated 8 days ago
    Auto-check passed
  • Ambiguity Report

    lawve-ai/awesome-legal-skills

    Turn an interpretive-ambiguity audit of a legal text — contract, statute, regulation, or judicial opinion — into a polished deliverable.

    847 GitHub stars~4.6k tokensUpdated 8 days ago
    Auto-check passed
  • Az Eu Website Privacy Audit

    lawve-ai/awesome-legal-skills

    Audits a website for compliance with Azerbaijan's Law on Personal Data No.

    847 GitHub stars~3.8k tokensUpdated 8 days ago
    Auto-check passed

Questions about Vscode Extension Builder Lawvable

What does Vscode Extension Builder Lawvable do?

Build VS Code extensions from scratch or convert existing JS/React/Vue apps. Vscode Extension Builder Lawvable is an agent skill from lawve-ai/awesome-legal-skills. Build VS Code extensions from scratch or convert existing JS/React/Vue apps.

When should I use Vscode Extension Builder Lawvable?

Vscode Extension Builder Lawvable fits situations like: user wants to create a VS Code extension; convert a web app to an extension; custom UIs to VS Code; implement tree views.

How do I install Vscode Extension Builder Lawvable in Claude Code?

Run `npx skills add lawve-ai/awesome-legal-skills --skill vscode-extension-builder-lawvable -a claude-code`. Or copy the skill folder (skills/vs-code-extension-antoine-louis in lawve-ai/awesome-legal-skills) into .claude/skills/vscode-extension-builder-lawvable in your project. Claude Code loads it when a task matches its description.

How do I install Vscode Extension Builder Lawvable in Codex?

Run `npx skills add lawve-ai/awesome-legal-skills --skill vscode-extension-builder-lawvable -a codex`. Or copy the skill folder (skills/vs-code-extension-antoine-louis in lawve-ai/awesome-legal-skills) into .agents/skills/vscode-extension-builder-lawvable in your project. Codex loads it when a task matches its description.

Can I use Vscode Extension Builder Lawvable in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add lawve-ai/awesome-legal-skills --skill vscode-extension-builder-lawvable -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/vscode-extension-builder-lawvable, .gemini/skills/vscode-extension-builder-lawvable, .github/skills/vscode-extension-builder-lawvable and .opencode/skills/vscode-extension-builder-lawvable in your project.

What does Vscode Extension Builder Lawvable need to run?

Going by SKILL.md and its folder, Vscode Extension Builder Lawvable needs JavaScript and TypeScript for the scripts in its folder and the command-line tools its instructions call (npm). Our summary lists: Node.js.

Does Vscode Extension Builder Lawvable access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Vscode Extension Builder Lawvable safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Vscode Extension Builder Lawvable use?

Vscode Extension Builder Lawvable is published under the AGPL-3.0 licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Vscode Extension Builder Lawvable use?

About 1.9k tokens (SKILL.md is roughly 7.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 24k tokens, read only when the agent opens those files.

What are the alternatives to Vscode Extension Builder Lawvable?

Skills that share tags, products or a category with Vscode Extension Builder Lawvable: Implement Ag Playbook (AgnosticUI/agnosticui, 827 stars), Any Tdf Development (any-tdf/any-tdf, 778 stars), Kb Web Scanning (Community-Access/accessibility-agents, 423 stars) and Getting Started (live-codes/livecodes, 1.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Vscode Extension Builder Lawvable?

lawve-ai (a GitHub organization) maintains it in lawve-ai/awesome-legal-skills, which has 847 GitHub stars. The repository holds 154 skills in this directory. The repository was last updated on October 2, 2026.

Source: lawve-ai/awesome-legal-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.