{ "name": "vscode-tabby", "publisher": "TabbyML", "displayName": "Tabby", "description": "Tabby is a self-hosted AI coding assistant that can suggest multi-line code or full functions in real-time.", "repository": "https://github.com/TabbyML/tabby", "version": "0.1.1", "keywords": [ "code-suggestion", "copilot", "code-inference", "tabby" ], "icon": "images/logo.png", "engines": { "vscode": "^1.70.0" }, "categories": [ "Other" ], "activationEvents": [ "onStartupFinished" ], "main": "./dist/node/extension.js", "browser": "./dist/web/extension.js", "contributes": { "commands": [ { "command": "tabby.toggleEnabled", "title": "Tabby: Toggle Code Suggestion On/Off" }, { "command": "tabby.setApiEndpoint", "title": "Tabby: Specify API Endpoint of Tabby" }, { "command": "tabby.openSettings", "title": "Tabby: Open Settings" } ], "configuration": { "title": "Tabby", "properties": { "tabby.api.endpoint": { "type": "string", "default": "http://localhost:8080", "format": "uri", "pattern": "^https?:\\/\\/[^\\s]+$", "patternErrorMessage": "Please enter a validate http or https URL.", "description": "Specify API Endpoint of Tabby." }, "tabby.codeCompletion": { "type": "boolean", "default": true, "description": "Enable Tabby code completion or not." }, "tabby.developerOptions": { "type": "object", "description": "Developer options for Tabby.", "properties": { "maxPrefixLines": { "type": "number", "default": 20, "description": "Number of lines to include in the Prefix for completion requests" }, "maxSuffixLines": { "type": "number", "default": 20, "description": "Number of lines to include in the Suffix for completion requests" }, "suggestionDelay": { "type": "number", "default": 150, "minimum": 0, "description": "Specifies the delay in milliseconds after which the request is sent to the tabby." }, "agent": { "type": "object", "properties": { "logs": { "type": "string", "enum": [ "debug", "error", "silent" ], "default": "error", "markdownDescription": "Specifies the log level for tabby-agent." } } } } }, "tabby.usage.anonymousUsageTracking": { "type": "boolean", "default": false, "description": "Disable anonymous usage tracking." } } } }, "scripts": { "vscode:prepublish": "yarn package", "compile": "webpack", "watch": "webpack --watch", "dev": "code --extensionDevelopmentPath=$PWD --disable-extensions && yarn watch", "dev:web": "code --extensionDevelopmentPath=$PWD --extensionDevelopmentKind=web --disable-extensions && yarn watch", "dev:web-browser": "vscode-test-web --extensionDevelopmentPath=$PWD --browserType=chromium --port=3000 && yarn watch", "package": "webpack --mode production --devtool hidden-source-map", "compile-tests": "tsc -p . --outDir out", "watch-tests": "tsc -p . -w --outDir out", "pretest": "yarn compile-tests && yarn compile && yarn lint", "lint": "eslint src --ext ts", "test": "node ./out/test/runTest.js", "vscode:package": "vsce package", "vscode:publish": "vsce publish" }, "devDependencies": { "@types/glob": "^7.2.0", "@types/mocha": "^10.0.1", "@types/node": "16.x", "@types/vscode": "^1.70.0", "@typescript-eslint/eslint-plugin": "^5.31.0", "@typescript-eslint/parser": "^5.31.0", "@vscode/test-electron": "^2.1.5", "@vscode/test-web": "^0.0.44", "assert": "^2.0.0", "eslint": "^8.20.0", "glob": "^8.0.3", "mocha": "^10.0.0", "openapi-typescript-codegen": "^0.24.0", "process": "^0.11.10", "ts-loader": "^9.3.1", "typescript": "^4.7.4", "vsce": "^2.15.0", "webpack": "^5.74.0", "webpack-cli": "^4.10.0" }, "dependencies": { "@sapphire/duration": "^1.1.0", "@xstate/fsm": "^2.0.1", "tabby-agent": "file:../tabby-agent" } }