{ "name": "openchamber", "displayName": "OpenChamber", "description": "AI coding assistant powered by OpenCode", "version": "1.5.7", "publisher": "fedaykindev", "private": true, "repository": { "type": "git", "url": "https://github.com/btriapitsyn/openchamber.git" }, "qna": "https://discord.gg/ZYRSdnwwKA", "license": "MIT", "engines": { "vscode": "^1.85.0" }, "categories": [ "Programming Languages", "Machine Learning", "Other" ], "keywords": [ "ai", "claude", "gpt", "agent", "coding", "chatgpt", "groq", "assistant", "opencode", "openchamber" ], "icon": "assets/app-icon.png", "main": "./dist/extension.js", "activationEvents": [ "onCommand:openchamber.openSidebar", "onView:openchamber.chatView" ], "contributes": { "viewsContainers": { "activitybar": [ { "id": "openchamber", "title": "OpenChamber", "icon": "assets/icon.svg" } ] }, "views": { "openchamber": [ { "type": "webview", "id": "openchamber.chatView", "name": "Chat" } ] }, "commands": [ { "command": "openchamber.openSidebar", "category": "OpenChamber", "title": "Open Sidebar", "icon": { "light": "assets/icon.svg", "dark": "assets/icon-titlebar.svg" } }, { "command": "openchamber.focusChat", "category": "OpenChamber", "title": "Focus Chat" }, { "command": "openchamber.restartApi", "category": "OpenChamber", "title": "Restart API Connection" }, { "command": "openchamber.showOpenCodeStatus", "category": "OpenChamber", "title": "Show OpenCode Status" }, { "command": "openchamber.openAgentManager", "category": "OpenChamber", "title": "Open Agent Manager", "icon": "$(circuit-board)" }, { "command": "openchamber.openActiveSessionInEditor", "category": "OpenChamber", "title": "Open Active Session in Editor", "icon": "$(link-external)" }, { "command": "openchamber.openNewSessionInEditor", "category": "OpenChamber", "title": "Open New Session in Editor", "icon": { "light": "assets/icon.svg", "dark": "assets/icon-titlebar.svg" } }, { "command": "openchamber.openCurrentOrNewSessionInEditor", "category": "OpenChamber", "title": "Open Session in Editor", "icon": "$(link-external)" }, { "command": "openchamber.addToContext", "category": "OpenChamber", "title": "Add to Context" }, { "command": "openchamber.explain", "category": "OpenChamber", "title": "Explain" }, { "command": "openchamber.improveCode", "category": "OpenChamber", "title": "Improve Code" }, { "command": "openchamber.newSession", "category": "OpenChamber", "title": "New Session", "icon": "$(add)" }, { "command": "openchamber.showSettings", "category": "OpenChamber", "title": "Settings", "icon": "$(settings-gear)" } ], "submenus": [ { "id": "openchamber.submenu", "label": "OpenChamber" } ], "menus": { "editor/context": [ { "submenu": "openchamber.submenu", "group": "navigation" } ], "editor/title": [ { "command": "openchamber.openNewSessionInEditor", "group": "navigation@1" } ], "view/title": [ { "command": "openchamber.newSession", "when": "view == openchamber.chatView", "group": "navigation@1" }, { "command": "openchamber.openCurrentOrNewSessionInEditor", "when": "view == openchamber.chatView", "group": "navigation@2" }, { "command": "openchamber.openAgentManager", "when": "view == openchamber.chatView", "group": "navigation@3" }, { "command": "openchamber.showSettings", "when": "view == openchamber.chatView", "group": "navigation@4" } ], "openchamber.submenu": [ { "command": "openchamber.explain" }, { "command": "openchamber.improveCode" }, { "command": "openchamber.addToContext" } ] }, "configuration": { "title": "OpenChamber", "properties": { "openchamber.apiUrl": { "type": "string", "default": "", "description": "URL of an external OpenCode API server. Leave empty to auto-start a local instance." } } } }, "scripts": { "vscode:prepublish": "bun run build", "build": "bun run build:extension && bun run build:webview", "build:extension": "esbuild src/extension.ts --bundle --outfile=dist/extension.js --external:vscode --format=cjs --platform=node --minify --main-fields=module,main", "build:webview": "VITE_OPENCODE_URL=/api vite build", "dev": "concurrently -n \"ext,web\" -c \"cyan,magenta\" \"bun run watch:extension\" \"bun run watch:webview\"", "watch:extension": "esbuild src/extension.ts --bundle --outfile=dist/extension.js --external:vscode --format=cjs --platform=node --watch --sourcemap --main-fields=module,main", "watch:webview": "vite build --watch", "type-check": "tsc --noEmit -p tsconfig.json && tsc --noEmit -p tsconfig.webview.json", "lint": "bunx eslint --ext .ts,.tsx src webview", "package": "vsce package --no-dependencies" }, "devDependencies": { "@types/adm-zip": "^0.5.7", "@types/vscode": "^1.85.0", "@vitejs/plugin-react": "^5.0.0", "@vscode/vsce": "^3.2.1", "concurrently": "^9.2.1", "esbuild": "^0.24.2", "typescript": "~5.8.3", "vite": "^7.1.2" }, "dependencies": { "@openchamber/ui": "workspace:*", "@opencode-ai/sdk": "^1.1.19", "adm-zip": "^0.5.16", "jsonc-parser": "^3.3.1", "react": "^19.1.1", "react-dom": "^19.1.1", "yaml": "^2.8.1" } }