Package Extension banner
drewipson drewipson

Package Extension

Development community intermediate

Description

Build and package the VS Code extension as a .vsix file for distribution.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

Repository README

This is the README for drewipson/claude-code-config, shared by 5 entries in this directory. It describes the repository, not this entry specifically.

Package Extension

Build and package the VS Code extension as a .vsix file for distribution.

Instructions

  1. **Pre-packaging checklist:**

    • All changes committed
    • Version bumped in package.json (if releasing)
    • CHANGELOG.md updated with changes
    • README.md up to date
    • No debugging code or console.log statements
    • TypeScript compilation succeeds
    • Extension tested in Development Host
  2. **Run production build:**

npm run build

This will:

  • Compile TypeScript with strict mode
  • Bundle with esbuild (minified)
  • Output to dist/extension.js
  • Generate source maps for debugging
  1. Verify build output:
ls -lh dist/extension.js
  • Check file size (should be optimized)
  • Ensure file exists and is recent
  1. Package the extension:
npx vsce package

This will:

  • Validate package.json
  • Validate all required files are included
  • Create a .vsix file (e.g., claude-code-manager-0.0.1.vsix)
  1. Verify package contents:
# Extract and inspect (optional)
unzip -l claude-code-manager-*.vsix

# Check package size
ls -lh claude-code-manager-*.vsix

Version Management

Before packaging a release, bump the version in `package.json`:

# Patch release (0.0.1 -> 0.0.2) - Bug fixes
npm version patch

# Minor release (0.0.1 -> 0.1.0) - New features, backwards compatible
npm version minor

# Major release (0.0.1 -> 1.0.0) - Breaking changes
npm version major

This will:

  • Update version in package.json
  • Create a git commit
  • Create a git tag

Package.json Required Fields

Ensure these fields are properly set:

{
  "name": "claude-code-manager",
  "displayName": "Claude Code Config",
  "description": "Unified management interface for Claude Code configurations",
  "version": "0.0.1",
  "publisher": "your-publisher-id",
  "repository": {
    "type": "git",
    "url": "https://github.com/username/claude-code-manager"
  },
  "engines": {
    "vscode": "^1.85.0"
  },
  "categories": ["Other"],
  "keywords": ["claude", "claude-code", "configuration", "management"],
  "icon": "resources/icons/claude-logo.png",
  "license": "MIT"
}

Testing the Package

Install the package locally to test:

# Install in VS Code
code --install-extension claude-code-manager-0.0.1.vsix

# Test the extension
# 1. Reload VS Code
# 2. Verify extension appears in Extensions view
# 3. Test all functionality
# 4. Check for errors in Developer Tools console

# Uninstall after testing
code --uninstall-extension your-publisher-id.claude-code-manager

Publishing (Future)

When ready to publish to VS Code Marketplace:

# Login (one-time setup)
npx vsce login your-publisher-id

# Publish (automatically increments version and packages)
npx vsce publish

# Or publish specific version
npx vsce publish patch  # 0.0.1 -> 0.0.2
npx vsce publish minor  # 0.0.1 -> 0.1.0
npx vsce publish major  # 0.0.1 -> 1.0.0

Files Included in Packag