{
  "name": "openclaude-vscode",
  "displayName": "OpenClaude",
  "description": "Practical VS Code companion for OpenClaude with project-aware launch behavior and a real Control Center.",
  "version": "0.2.0",
  "publisher": "devnull-bootloader",
  "engines": {
    "vscode": "^1.95.0"
  },
  "categories": [
    "Themes",
    "Other"
  ],
  "activationEvents": [
    "onStartupFinished",
    "onCommand:openclaude.start",
    "onCommand:openclaude.startInWorkspaceRoot",
    "onCommand:openclaude.openDocs",
    "onCommand:openclaude.openSetupDocs",
    "onCommand:openclaude.openWorkspaceProfile",
    "onCommand:openclaude.openControlCenter",
    "onCommand:openclaude.newChat",
    "onCommand:openclaude.openChat",
    "onCommand:openclaude.resumeSession",
    "onCommand:openclaude.abortChat",
    "onView:openclaude.controlCenter",
    "onView:openclaude.chat"
  ],
  "main": "./src/extension.js",
  "files": [
    "README.md",
    "media/**",
    "src/extension.js",
    "src/presentation.js",
    "src/state.js",
    "src/chat/**",
    "themes/**"
  ],
  "contributes": {
    "commands": [
      {
        "command": "openclaude.start",
        "title": "OpenClaude: Launch in Terminal",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.startInWorkspaceRoot",
        "title": "OpenClaude: Launch in Workspace Root",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.openDocs",
        "title": "OpenClaude: Open Repository",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.openSetupDocs",
        "title": "OpenClaude: Open Setup Guide",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.openWorkspaceProfile",
        "title": "OpenClaude: Open Workspace Profile",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.openControlCenter",
        "title": "OpenClaude: Open Control Center",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.newChat",
        "title": "OpenClaude: New Chat",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.openChat",
        "title": "OpenClaude: Open Chat Panel",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.resumeSession",
        "title": "OpenClaude: Resume Session",
        "category": "OpenClaude"
      },
      {
        "command": "openclaude.abortChat",
        "title": "OpenClaude: Abort Generation",
        "category": "OpenClaude"
      }
    ],
    "viewsContainers": {
      "activitybar": [
        {
          "id": "openclaude",
          "title": "OpenClaude",
          "icon": "media/openclaude.svg"
        }
      ]
    },
    "views": {
      "openclaude": [
        {
          "id": "openclaude.chat",
          "name": "Chat",
          "type": "webview"
        },
        {
          "id": "openclaude.controlCenter",
          "name": "Control Center",
          "type": "webview"
        }
      ]
    },
    "keybindings": [
      {
        "command": "openclaude.openChat",
        "key": "ctrl+shift+l",
        "mac": "cmd+shift+l"
      }
    ],
    "configuration": {
      "title": "OpenClaude",
      "properties": {
        "openclaude.launchCommand": {
          "type": "string",
          "default": "openclaude",
          "description": "Command run in the integrated terminal when launching OpenClaude."
        },
        "openclaude.terminalName": {
          "type": "string",
          "default": "OpenClaude",
          "description": "Integrated terminal tab name for OpenClaude sessions."
        },
        "openclaude.useOpenAIShim": {
          "type": "boolean",
          "default": false,
          "description": "Optionally set CLAUDE_CODE_USE_OPENAI=1 in launched OpenClaude terminals."
        },
        "openclaude.permissionMode": {
          "type": "string",
          "default": "acceptEdits",
          "enum": ["default", "acceptEdits", "bypassPermissions", "plan"],
          "enumDescriptions": [
            "Prompt for permission on each tool use (requires manual approval)",
            "Auto-approve file edits, prompt for other operations (recommended)",
            "Auto-approve all operations without prompting",
            "Read-only mode — no file modifications allowed"
          ],
          "description": "Permission mode for chat sessions. Controls which tool operations are auto-approved."
        }
      }
    },
    "themes": [
      {
        "label": "OpenClaude Terminal Black",
        "uiTheme": "vs-dark",
        "path": "./themes/OpenClaude-Terminal-Black.json"
      }
    ]
  },
  "scripts": {
    "test": "node --test ./src/*.test.js",
    "lint": "node scripts/lint.js",
    "package": "npx @vscode/vsce package --no-dependencies"
  },
  "keywords": [
    "openclaude",
    "terminal",
    "theme",
    "cli",
    "llm"
  ],
  "repository": {
    "type": "git",
    "url": "https://github.com/Gitlawb/openclaude"
  },
  "license": "MIT"
}
