{
  "name": "icube-agent-shell-exec",
  "displayName": "iCube Agent Shell Exec",
  "description": "Shell execution service for iCube Agent",
  "version": "0.0.1",
  "publisher": "trae",
  "private": true,
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/Microsoft/vscode-extension-samples"
  },
  "engines": {
    "vscode": "^1.84.0"
  },
  "categories": [
    "Other"
  ],
  "activationEvents": ["*"],
  "main": "./dist/extension.js",
  "extensionKind": [
    "workspace"
  ],
  "enabledApiProposals": [
    "icube"
  ],
  "contributes": {
    "commands": [
      {
        "command": "icube.shellExec.initShell",
        "title": "iCube Shell Exec: Init Shell"
      },
      {
        "command": "icube.shellExec.runCommand",
        "title": "iCube Shell Exec: Run Command"
      },
      {
        "command": "icube.shellExec.checkStatus",
        "title": "iCube Shell Exec: Check Status"
      },
      {
        "command": "icube.shellExec.killCommand",
        "title": "iCube Shell Exec: Kill Command"
      },
      {
        "command": "icube.shellExec.getRunningCommands",
        "title": "iCube Shell Exec: Get Running Commands"
      },
      {
        "command": "icube.shellExec.getAllRunningCommands",
        "title": "iCube Shell Exec: Get All Running Commands"
      },
      {
        "command": "icube.shellExec.getTerminalHistory",
        "title": "iCube Shell Exec: Get Terminal History"
      },
      {
        "command": "icube.shellExec.getRunningCommandIdsByVtId",
        "title": "iCube Shell Exec: Get Running Command IDs by VT ID"
      },
      {
        "command": "icube.shellExec.disposeVirtualTerminal",
        "title": "iCube Shell Exec: Dispose Virtual Terminal"
      },
      {
        "command": "icube.shellExec.getSessionInfo",
        "title": "iCube Shell Exec: Get Session Info"
      },
      {
        "command": "icube.shellExec.setCommandStatusByCallId",
        "title": "iCube Shell Exec: Set Command Status By Call ID"
      },
      {
        "command": "icube.shellExec.markVtDisposed",
        "title": "iCube Shell Exec: Mark VT Disposed"
      },
      {
        "command": "icube.shellExec.getCommandOutput",
        "title": "iCube Shell Exec: Get Command Output"
      },
      {
        "command": "icube.shellExec.getCommandIdByToolCallId",
        "title": "iCube Shell Exec: Get Command ID By Tool Call ID"
      },
      {
        "command": "icube.shellExec.getVtIdByCommandId",
        "title": "iCube Shell Exec: Get VT ID By Command ID"
      },
      {
        "command": "icube.shellExec.getVtIdByToolCallId",
        "title": "iCube Shell Exec: Get VT ID By Tool Call ID"
      },
      {
        "command": "icube.shellExec.ping",
        "title": "iCube Shell Exec: Ping"
      },
      {
        "command": "icube.shellExec.execCommandHook",
        "title": "iCube Shell Exec: Exec Command Hook"
      }
    ],
    "menus": {
      "commandPalette": [
        {
          "command": "icube.shellExec.initShell",
          "when": "false"
        },
        {
          "command": "icube.shellExec.runCommand",
          "when": "false"
        },
        {
          "command": "icube.shellExec.checkStatus",
          "when": "false"
        },
        {
          "command": "icube.shellExec.killCommand",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getRunningCommands",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getAllRunningCommands",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getTerminalHistory",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getRunningCommandIdsByVtId",
          "when": "false"
        },
        {
          "command": "icube.shellExec.disposeVirtualTerminal",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getSessionInfo",
          "when": "false"
        },
        {
          "command": "icube.shellExec.setCommandStatusByCallId",
          "when": "false"
        },
        {
          "command": "icube.shellExec.markVtDisposed",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getCommandOutput",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getCommandIdByToolCallId",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getVtIdByCommandId",
          "when": "false"
        },
        {
          "command": "icube.shellExec.getVtIdByToolCallId",
          "when": "false"
        }
      ]
    }
  },
  "scripts": {
    "compile": "tsc -p ./",
    "watch": "tsc -watch -p ./",
    "build": "tsc -p ./",
    "build:prod": "tsc -p ./",
    "vscode:prepublish": "npm run compile",
    "package": "vsce package --no-dependencies"
  },
  "devDependencies": {
    "@types/node": "~20.11.0",
    "@types/vscode": "^1.84.0",
    "typescript": "^5.4.5"
  }
}
