{"input":{"location":{"$mid":1,"external":"vscode-userdata:/home/jeffry/.vscode-oss/extensions/extensions.json","path":"/home/jeffry/.vscode-oss/extensions/extensions.json","scheme":"vscode-userdata"},"mtime":1780933192693,"profile":true,"profileScanOptions":{"bailOutWhenFileNotFound":true},"type":1,"validate":true,"productVersion":"1.116.02821","productDate":"2026-04-15T00:28:13Z","productCommit":"221e0a382c0be3a673a4e4cab0601344a0b3de3a","devMode":false,"language":"en","translations":{}},"result":[{"type":1,"identifier":{"id":"arcticicestudio.nord-visual-studio-code","uuid":"6f35c257-7fd5-4bc2-9cd1-01976589c17a"},"manifest":{"name":"nord-visual-studio-code","displayName":"Nord","description":"An arctic, north-bluish clean and elegant Visual Studio Code theme.","version":"0.19.0","publisher":"arcticicestudio","author":{"name":"Arctic Ice Studio","email":"development@arcticicestudio.com","url":"https://www.arcticicestudio.com"},"homepage":"https://github.com/arcticicestudio/nord-visual-studio-code","repository":{"type":"git","url":"https://github.com/arcticicestudio/nord-visual-studio-code"},"bugs":{"url":"https://github.com/arcticicestudio/nord-visual-studio-code/issues"},"license":"MIT","engines":{"node":">=15.13","npm":">=7.7","vscode":"^1.12.0"},"galleryBanner":{"color":"#2E3440","theme":"dark"},"icon":"assets/extension-marketplace-icon.png","markdown":"github","categories":["Themes"],"keywords":["arctic","north","bluish","clean","elegant"],"badges":[{"url":"https://vsmarketplacebadge.apphb.com/version/arcticicestudio.nord-visual-studio-code.svg","href":"https://marketplace.visualstudio.com/items/arcticicestudio.nord-visual-studio-code","description":"Extension version"},{"url":"https://vsmarketplacebadge.apphb.com/installs/arcticicestudio.nord-visual-studio-code.svg","href":"https://marketplace.visualstudio.com/items/arcticicestudio.nord-visual-studio-code","description":"Extension installs"},{"url":"https://vsmarketplacebadge.apphb.com/rating/arcticicestudio.nord-visual-studio-code.svg","href":"https://marketplace.visualstudio.com/items/arcticicestudio.nord-visual-studio-code","description":"Extension Rating"}],"contributes":{"themes":[{"label":"Nord","uiTheme":"vs-dark","path":"./themes/nord-color-theme.json"}]},"scripts":{"build":"run-s clean package","clean":"del *.vsix","format":"run-s format:pretty format:fix","format:fix":"eslint --fix --ext .js,.json .","format:pretty":"prettier --write .","lint":"run-s lint:*","lint:ci:pretty":"prettier --loglevel silent --check .","lint:js":"eslint --ext .","lint:json":"eslint --ext .json .","lint:md":"remark --no-stdout . \".github/**/*.md\"","package":"vsce package","prepare:husky":"husky install","prepare":"run-s prepare:*","publish:ovsx":"ovsx publish --pat","publish:vsce":"vsce publish","publish":"run-s publish:vsce publish:ovsx"},"devDependencies":{"@arcticicestudio/eslint-config-base":">=0.11.0 <1.0.0","@arcticicestudio/remark-preset-lint":">=0.4.0 <1.0.0","@babel/eslint-parser":"^7.15.7","del-cli":"^4.0.1","eslint":"^7.32.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.24.2","eslint-plugin-jsonc":"^1.7.0","eslint-plugin-prettier":"^4.0.0","husky":"^7.0.2","lint-staged":"^11.1.2","npm-run-all":"^4.1.5","ovsx":"^0.3.0","prettier":"^2.4.1","remark-cli":"^9.0.0","vsce":"^1.100.0"}},"location":{"$mid":1,"path":"/home/jeffry/.vscode-oss/extensions/arcticicestudio.nord-visual-studio-code-0.19.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","publisherDisplayName":"arcticicestudio","metadata":{"installedTimestamp":1773917591130,"source":"gallery","id":"6f35c257-7fd5-4bc2-9cd1-01976589c17a","publisherId":"d6e09771-ef61-4944-9f28-44e338818618","publisherDisplayName":"arcticicestudio","targetPlatform":"universal","updated":false,"private":false,"isPreReleaseVersion":false,"hasPreReleaseVersion":false,"size":200658},"isValid":true,"validations":[],"preRelease":false,"forceAutoUpdate":false},{"type":1,"identifier":{"id":"zhuangtongfa.material-theme","uuid":"26a529c9-2654-4b95-a63f-02f6a52429e6"},"manifest":{"name":"material-theme","displayName":"One Dark Pro","description":"Atom's iconic One Dark theme for Visual Studio Code","version":"3.19.0","publisher":"zhuangtongfa","license":"MIT","bugs":{"url":"https://github.com/Binaryify/OneDark-Pro/issues"},"homepage":"https://binaryify.github.io/OneDark-Pro/","repository":{"type":"git","url":"https://github.com/Binaryify/OneDark-Pro"},"engines":{"vscode":"^1.76.0"},"activationEvents":["onStartupFinished"],"main":"./out/extension.js","browser":"./out/web/extension.js","categories":["Themes"],"extensionKind":["ui","workspace"],"eslintConfig":{"extends":["@mskelton","@mskelton/eslint-config/typescript"],"plugins":["html"],"rules":{"sort/imports":"off"}},"scripts":{"docs":"docsify serve docs","build:theme":"ts-node --project scripts/tsconfig.json scripts/generate-theme.ts","build:ts":"tsc -p src","build":"yarn build:sass && yarn build:theme && yarn build:ts","lint":"eslint . --ext .ts","lint:fix":"eslint . --ext .ts --fix","watch:theme":"nodemon ./scripts/generate-theme.ts","watch:ts":"yarn build:ts -w","vscode:prepublish":"yarn build && yarn package-web","package":"vsce package","build:sass":"yarn sass --no-source-map scss:styles && yarn sass --no-source-map scss:styles/origin","compile-web":"webpack --config ./build/web-extension.webpack.config.js","watch-web":"webpack --watch --config ./build/web-extension.webpack.config.js","package-web":"webpack --mode production --devtool hidden-source-map --config ./build/web-extension.webpack.config.js"},"prettier":{"singleQuote":true,"semi":false},"contributes":{"markdown.previewStyles":["./styles/base-inside.css","./styles/markdown-inside.css","./styles/atom-one-dark-inside.css"],"commands":[{"command":"oneDarkPro.showChangelog","title":"Show changelog","category":"OneDark Pro"},{"command":"oneDarkPro.setVivid","title":"Turn on vivid colors","category":"OneDark Pro"},{"command":"oneDarkPro.cancelVivid","title":"Turn off vivid colors","category":"OneDark Pro"},{"command":"oneDarkPro.setItalic","title":"Turn on italic code on some scopes","category":"OneDark Pro"},{"command":"oneDarkPro.cancelItalic","title":"Turn off italic code on some scopes","category":"OneDark Pro"},{"command":"oneDarkPro.setBold","title":"Turn on bold code on some scopes","category":"OneDark Pro"},{"command":"oneDarkPro.cancelBold","title":"Turn off bold code on some scopes","category":"OneDark Pro"}],"themes":[{"label":"One Dark Pro","uiTheme":"vs-dark","path":"./themes/OneDark-Pro.json"},{"label":"One Dark Pro Flat","uiTheme":"vs-dark","path":"./themes/OneDark-Pro-flat.json"},{"label":"One Dark Pro Darker","uiTheme":"vs-dark","path":"./themes/OneDark-Pro-darker.json"},{"label":"One Dark Pro Mix","uiTheme":"vs-dark","path":"./themes/OneDark-Pro-mix.json"},{"label":"One Dark Pro Night Flat","uiTheme":"vs-dark","path":"./themes/OneDark-Pro-night-flat.json"}],"configuration":{"title":"One Dark Pro","properties":{"oneDarkPro.editorTheme":{"type":"string","default":"One Dark Pro","markdownDescription":"Switch to different editor theme","enum":["One Dark Pro","One Dark Pro Flat","Nord","Solarized","Solarized Flat","Shadow","Panda","Ayu","VS Code","Just Black","One Dark Pro Darker","One Dark Pro Mix","Ocean","Tokyo","Retro","Gnome","Dark Modern","One Dark Pro Night Flat"]},"oneDarkPro.italic":{"type":"boolean","default":true,"description":"Toggle italics on some scopes"},"oneDarkPro.vivid":{"type":"boolean","default":false,"markdownDescription":"Toggle vivid colors"},"oneDarkPro.bold":{"type":"boolean","default":false,"markdownDescription":"Toggle bold on some scopes"},"oneDarkPro.markdownStyle":{"type":"boolean","default":true,"description":"Toggle Markdown style"},"oneDarkPro.color":{"type":"object","scope":"resource","default":{"chalky":"","coral":"","dark":"","error":"","fountainBlue":"","green":"","invalid":"","lightDark":"","lightWhite":"","malibu":"","purple":"","whiskey":"","deepRed":""},"properties":{"chalky":{"type":"string","default":""},"coral":{"type":"string","default":""},"dark":{"type":"string","default":""},"error":{"type":"string","default":""},"fountainBlue":{"type":"string","default":""},"green":{"type":"string","default":""},"invalid":{"type":"string","default":""},"lightDark":{"type":"string","default":""},"lightWhite":{"type":"string","default":""},"malibu":{"type":"string","default":""},"purple":{"type":"string","default":""},"whiskey":{"type":"string","default":""},"deepRed":{"type":"string","default":""}},"additionalProperties":false,"markdownDescription":"Code highlight color, read more [docs](https://binaryify.github.io/OneDark-Pro/#/?id=highlight-color-custom)"}}}},"icon":"icon.png","keywords":["one dark","onedark","one dark pro","onedark pro","theme","atom"],"devDependencies":{"@babel/core":"^7.0.0","@babel/eslint-parser":"^7.0.0","@mskelton/eslint-config":"7.1.0","@mskelton/prettier-config":"5.1.1","@types/node":"16.11.33","@types/vscode":"1.76.0","@typescript-eslint/eslint-plugin":"^5.0.0","@typescript-eslint/parser":"^5.0.0","all-contributors-cli":"6.20.0","docsify-cli":"4.4.4","eslint":"8.14.0","eslint-plugin-html":"6.2.0","eslint-plugin-prettier":"4.0.0","eslint-plugin-sort":"2.4.0","nodemon":"2.0.16","path-browserify":"1.0.1","prettier":"2.6.2","process":"0.11.10","sass":"1.50.1","ts-loader":"9.3.0","ts-node":"10.7.0","typescript":"4.6.4","util":"0.12.5","vsce":"2.7.0","webpack":"5.72.0","webpack-cli":"4.9.2"},"galleryBanner":{"color":"#2d323b","theme":"dark"},"dependencies":{"@types/marked":"^4.0.1","marked":"4"},"capabilities":{"untrustedWorkspaces":{"supported":true},"virtualWorkspaces":true},"badges":[{"url":"https://vsmarketplacebadges.dev/version/zhuangtongfa.Material-theme.png","href":"https://marketplace.visualstudio.com/items/zhuangtongfa.Material-theme","description":"Extension version"},{"url":"https://vsmarketplacebadges.dev/installs/zhuangtongfa.Material-theme.png","href":"https://marketplace.visualstudio.com/items/zhuangtongfa.Material-theme","description":"Extension installs"},{"url":"https://vsmarketplacebadges.dev/rating/zhuangtongfa.Material-theme.png","href":"https://marketplace.visualstudio.com/items/zhuangtongfa.Material-theme","description":"Extension Rating"}]},"location":{"$mid":1,"path":"/home/jeffry/.vscode-oss/extensions/zhuangtongfa.material-theme-3.19.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","publisherDisplayName":"zhuangtongfa","metadata":{"installedTimestamp":1774006267770,"source":"gallery","id":"26a529c9-2654-4b95-a63f-02f6a52429e6","publisherId":"8ae75bda-ec22-4a17-9340-abf1a20beca9","publisherDisplayName":"zhuangtongfa","targetPlatform":"universal","updated":false,"private":false,"isPreReleaseVersion":false,"hasPreReleaseVersion":false,"size":1466878},"isValid":true,"validations":[],"preRelease":false,"forceAutoUpdate":false},{"type":1,"identifier":{"id":"catppuccin.catppuccin-vsc","uuid":"69264e4d-cd3b-468a-8f2b-e69673c7d864"},"manifest":{"name":"catppuccin-vsc","license":"MIT","private":true,"displayName":"Catppuccin for VSCode","publisher":"Catppuccin","description":"🦌 Soothing pastel theme for VSCode","version":"3.19.0","type":"module","engines":{"vscode":"^1.80.0","node":">=20.0.0"},"categories":["Themes"],"extensionKind":["ui","workspace"],"activationEvents":["onStartupFinished"],"capabilities":{"untrustedWorkspaces":{"supported":true},"virtualWorkspaces":true},"main":"dist/main.cjs","browser":"dist/browser.cjs","contributes":{"themes":[{"label":"Catppuccin Mocha","uiTheme":"vs-dark","path":"./themes/mocha.json"},{"label":"Catppuccin Macchiato","uiTheme":"vs-dark","path":"./themes/macchiato.json"},{"label":"Catppuccin Frappé","uiTheme":"vs-dark","path":"./themes/frappe.json"},{"label":"Catppuccin Latte","uiTheme":"vs","path":"./themes/latte.json"}],"configuration":{"title":"Catppuccin","properties":{"catppuccin.boldKeywords":{"scope":"application","type":"boolean","default":true,"markdownDescription":"Controls whether to use **bold** for keywords."},"catppuccin.italicComments":{"scope":"application","type":"boolean","default":true,"markdownDescription":"Controls whether to use *italics* for comments."},"catppuccin.italicKeywords":{"scope":"application","type":"boolean","default":true,"markdownDescription":"Controls whether to use *italics* for keywords."},"catppuccin.colorOverrides":{"scope":"application","type":"object","default":{},"markdownDescription":"Custom color overrides. Assign your own hex codes to palette colors. See [the docs](https://github.com/catppuccin/vscode#override-palette-colors) for reference.","$ref":"https://raw.githubusercontent.com/catppuccin/vscode/catppuccin-vsc-v3.19.0/packages/catppuccin-vsc/schemas/colorOverrides.schema.json"},"catppuccin.customUIColors":{"scope":"application","type":"object","default":{},"markdownDescription":"Customize UI colors. Map `workbench.colorCustomizations` to palette colors. See [the docs](https://github.com/catppuccin/vscode#use-palette-colors-on-workbench-elements-ui) for reference.","$ref":"https://raw.githubusercontent.com/catppuccin/vscode/catppuccin-vsc-v3.19.0/packages/catppuccin-vsc/schemas/customUIColors.schema.json"},"catppuccin.accentColor":{"scope":"application","type":"string","default":"mauve","description":"Controls which accent color to use.","enum":["rosewater","flamingo","pink","mauve","red","maroon","peach","yellow","green","teal","sky","sapphire","blue","lavender"]},"catppuccin.workbenchMode":{"scope":"application","type":"string","default":"default","description":"Controls how the workbench should be styled.","enum":["default","flat","minimal"],"enumDescriptions":["The default look, using 3 shades of the base color.","A more flat look, using 2 shades of the base color.","A minimal look, using 1 shade of the base color."]},"catppuccin.bracketMode":{"scope":"application","type":"string","default":"rainbow","description":"Controls how bracket pairs should be themed","enum":["rainbow","dimmed","monochromatic","neovim"],"enumDescriptions":["Uses 6 rainbow colors for matching bracket pairs.","Uses the same 6 rainbow colors as `rainbow`, but has a dimmed appearance.","A monochromatic, grey appearance for matching bracket pairs.","Uses the same bracket pair colors as our neovim port."]},"catppuccin.extraBordersEnabled":{"scope":"application","type":"boolean","default":false,"description":"Controls whether borders should be enabled on some additional UI elements."},"catppuccin.syncWithIconPack":{"scope":"application","type":"boolean","default":true,"markdownDescription":"Controls whether to sync the currently active Catppuccin flavor with the [Catppuccin Icon Pack](https://github.com/catppuccin/vscode-icons)"}}}},"repository":{"type":"git","url":"https://github.com/catppuccin/vscode.git","directory":"packages/catppuccin-vsc"},"bugs":{"url":"https://github.com/catppuccin/vscode/issues"},"sponsor":{"url":"https://opencollective.com/catppuccin"},"icon":"icon.png","devDependencies":{"@actions/core":"^1.11.1","@types/tinycolor2":"^1.4.6","@types/vscode":"~1.80.0","tinycolor2":"^1.6.0","type-flag":"^3.0.0","@catppuccin/palette":"catalog:","@catppuccin/vsc-typegen":"workspace:*","@tsconfig/node22":"catalog:","@types/node":"catalog:","@vscode/vsce":"catalog:","tsup":"catalog:","tsx":"catalog:","typescript":"catalog:"},"scripts":{"core:build":"tsx build.ts","core:dev":"tsx build.ts --dev --no-regenerate","core:watch":"tsx watch build.ts --dev --no-regenerate","schema:ui":"tsx src/hooks/updateSchemas.ts"},"homepage":"https://github.com/catppuccin/vscode/tree/main/packages/catppuccin-vsc#readme"},"location":{"$mid":1,"path":"/home/jeffry/.vscode-oss/extensions/catppuccin.catppuccin-vsc-3.19.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","publisherDisplayName":"Catppuccin","metadata":{"isApplicationScoped":false,"isMachineScoped":false,"isBuiltin":false,"installedTimestamp":1777883274551,"pinned":false,"source":"gallery","id":"69264e4d-cd3b-468a-8f2b-e69673c7d864","publisherId":"e7d2ed61-53e0-4dd4-afbe-f536c3bb4316","publisherDisplayName":"Catppuccin","targetPlatform":"universal","updated":true,"private":false,"isPreReleaseVersion":false,"hasPreReleaseVersion":false,"preRelease":false,"size":499492},"isValid":true,"validations":[],"preRelease":false,"forceAutoUpdate":false},{"type":1,"identifier":{"id":"proxzima.sweetdracula","uuid":"c499a94d-a1f3-4d95-8284-985e07034bea"},"manifest":{"name":"sweetdracula","displayName":"Sweet Dracula","description":"Sweet Dracula — A beautiful, darker - Dracula fork","publisher":"PROxZIMA","theme":"syntax","version":"1.0.9","license":"MIT","maintainers":["Pratik Pingale "],"contributors":[],"repository":{"type":"git","url":"https://github.com/PROxZIMA/sweet-dracula.git"},"bugs":{"url":"https://github.com/PROxZIMA/sweet-dracula/issues"},"engines":{"vscode":"^1.10.0"},"keywords":["dracula","dark","theme","color-theme"],"categories":["Themes"],"icon":"sweetdracula.png","galleryBanner":{"color":"#0c0e14","theme":"dark"},"contributes":{"themes":[{"label":"Sweet Dracula","uiTheme":"vs-dark","path":"theme/sweetdracula-color-theme.json"}]}},"location":{"$mid":1,"path":"/home/jeffry/.vscode-oss/extensions/proxzima.sweetdracula-1.0.9-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","publisherDisplayName":"PROxZIMA","metadata":{"installedTimestamp":1777910401098,"pinned":false,"source":"gallery","id":"c499a94d-a1f3-4d95-8284-985e07034bea","publisherId":"cde0217a-c0e2-4c2a-bc5b-60f0b2920337","publisherDisplayName":"PROxZIMA","targetPlatform":"universal","updated":false,"private":false,"isPreReleaseVersion":false,"hasPreReleaseVersion":false,"size":804179},"isValid":true,"validations":[],"preRelease":false,"forceAutoUpdate":false},{"type":1,"identifier":{"id":"rooveterinaryinc.roo-cline","uuid":"4ce92b26-476a-4dd1-bf50-a8df00b87a74"},"manifest":{"name":"roo-cline","displayName":"Roo Code","description":"A whole dev team of AI agents in your editor.","publisher":"RooVeterinaryInc","version":"3.54.0","icon":"assets/icons/icon.png","galleryBanner":{"color":"#617A91","theme":"dark"},"engines":{"vscode":"^1.84.0","node":"20.19.2"},"author":{"name":"Roo Code"},"repository":{"type":"git","url":"https://github.com/RooCodeInc/Roo-Code"},"homepage":"https://roocodeinc.github.io/Roo-Code/","categories":["AI","Chat","Programming Languages","Education","Snippets","Testing"],"keywords":["cline","claude","dev","mcp","openrouter","coding","agent","autonomous","chatgpt","sonnet","ai","llama","roo code","roocode"],"activationEvents":["onLanguage","onStartupFinished"],"main":"./dist/extension.js","contributes":{"viewsContainers":{"activitybar":[{"id":"roo-cline-ActivityBar","title":"Roo Code","icon":"assets/icons/icon.svg"}]},"views":{"roo-cline-ActivityBar":[{"type":"webview","id":"roo-cline.SidebarProvider","name":"Roo Code"}]},"commands":[{"command":"roo-cline.plusButtonClicked","title":"New Task","icon":"$(edit)"},{"command":"roo-cline.historyButtonClicked","title":"Task History","icon":"$(history)"},{"command":"roo-cline.popoutButtonClicked","title":"Open in Editor","icon":"$(link-external)"},{"command":"roo-cline.settingsButtonClicked","title":"Settings","icon":"$(settings-gear)"},{"command":"roo-cline.openInNewTab","title":"Open In New Tab","category":"Roo Code"},{"command":"roo-cline.explainCode","title":"Explain Code","category":"Roo Code"},{"command":"roo-cline.fixCode","title":"Fix Code","category":"Roo Code"},{"command":"roo-cline.improveCode","title":"Improve Code","category":"Roo Code"},{"command":"roo-cline.addToContext","title":"Add To Context","category":"Roo Code"},{"command":"roo-cline.newTask","title":"New Task","category":"Roo Code"},{"command":"roo-cline.terminalAddToContext","title":"Add Terminal Content to Context","category":"Terminal"},{"command":"roo-cline.terminalFixCommand","title":"Fix This Command","category":"Terminal"},{"command":"roo-cline.terminalExplainCommand","title":"Explain This Command","category":"Terminal"},{"command":"roo-cline.setCustomStoragePath","title":"Set Custom Storage Path","category":"Roo Code"},{"command":"roo-cline.importSettings","title":"Import Settings","category":"Roo Code"},{"command":"roo-cline.focusInput","title":"Focus Input Field","category":"Roo Code"},{"command":"roo-cline.acceptInput","title":"Accept Input/Suggestion","category":"Roo Code"},{"command":"roo-cline.toggleAutoApprove","title":"Toggle Auto-Approve","category":"Roo Code"}],"menus":{"editor/context":[{"submenu":"roo-cline.contextMenu","group":"1"}],"roo-cline.contextMenu":[{"command":"roo-cline.addToContext","group":"1_actions@1"},{"command":"roo-cline.explainCode","group":"1_actions@2"},{"command":"roo-cline.improveCode","group":"1_actions@3"}],"terminal/context":[{"submenu":"roo-cline.terminalMenu","group":"2"}],"roo-cline.terminalMenu":[{"command":"roo-cline.terminalAddToContext","group":"1_actions@1"},{"command":"roo-cline.terminalFixCommand","group":"1_actions@2"},{"command":"roo-cline.terminalExplainCommand","group":"1_actions@3"}],"view/title":[{"command":"roo-cline.plusButtonClicked","group":"navigation@1","when":"view == roo-cline.SidebarProvider"},{"command":"roo-cline.settingsButtonClicked","group":"navigation@2","when":"view == roo-cline.SidebarProvider"},{"command":"roo-cline.historyButtonClicked","group":"overflow@1","when":"view == roo-cline.SidebarProvider"},{"command":"roo-cline.popoutButtonClicked","group":"overflow@2","when":"view == roo-cline.SidebarProvider"}],"editor/title":[{"command":"roo-cline.plusButtonClicked","group":"navigation@1","when":"activeWebviewPanelId == roo-cline.TabPanelProvider"},{"command":"roo-cline.settingsButtonClicked","group":"navigation@2","when":"activeWebviewPanelId == roo-cline.TabPanelProvider"},{"command":"roo-cline.historyButtonClicked","group":"overflow@1","when":"activeWebviewPanelId == roo-cline.TabPanelProvider"},{"command":"roo-cline.popoutButtonClicked","group":"overflow@2","when":"activeWebviewPanelId == roo-cline.TabPanelProvider"}]},"keybindings":[{"command":"roo-cline.addToContext","key":"cmd+k cmd+a","mac":"cmd+k cmd+a","win":"ctrl+k ctrl+a","linux":"ctrl+k ctrl+a","when":"editorTextFocus && editorHasSelection"},{"command":"roo-cline.toggleAutoApprove","key":"cmd+alt+a","mac":"cmd+alt+a","win":"ctrl+alt+a","linux":"ctrl+alt+a"}],"submenus":[{"id":"roo-cline.contextMenu","label":"Roo Code"},{"id":"roo-cline.terminalMenu","label":"Roo Code"}],"configuration":{"title":"Roo Code","properties":{"roo-cline.allowedCommands":{"type":"array","items":{"type":"string"},"default":["git log","git diff","git show"],"description":"Commands that can be auto-executed when 'Always approve execute operations' is enabled"},"roo-cline.deniedCommands":{"type":"array","items":{"type":"string"},"default":[],"description":"Command prefixes that will be automatically denied without asking for approval. In case of conflicts with allowed commands, the longest prefix match takes precedence. Add * to deny all commands."},"roo-cline.commandExecutionTimeout":{"type":"number","default":0,"minimum":0,"maximum":600,"description":"Maximum time in seconds to wait for command execution to complete before timing out (0 = no timeout, 1-600s, default: 0s)"},"roo-cline.commandTimeoutAllowlist":{"type":"array","items":{"type":"string"},"default":[],"description":"Command prefixes that are excluded from the command execution timeout. Commands matching these prefixes will run without timeout restrictions."},"roo-cline.preventCompletionWithOpenTodos":{"type":"boolean","default":false,"description":"Prevent task completion when there are incomplete todos in the todo list"},"roo-cline.vsCodeLmModelSelector":{"type":"object","properties":{"vendor":{"type":"string","description":"The vendor of the language model (e.g. copilot)"},"family":{"type":"string","description":"The family of the language model (e.g. gpt-4)"}},"description":"Settings for VSCode Language Model API"},"roo-cline.customStoragePath":{"type":"string","default":"","description":"Custom storage path. Leave empty to use the default location. Supports absolute paths (e.g. 'D:\\RooCodeStorage')"},"roo-cline.enableCodeActions":{"type":"boolean","default":true,"description":"Enable Roo Code quick fixes"},"roo-cline.autoImportSettingsPath":{"type":"string","default":"","description":"Path to a RooCode configuration file to automatically import on extension startup. Supports absolute paths and paths relative to the home directory (e.g. '~/Documents/roo-code-settings.json'). Leave empty to disable auto-import."},"roo-cline.maximumIndexedFilesForFileSearch":{"type":"number","default":10000,"minimum":5000,"maximum":500000,"description":"Maximum number of files to index for the @ file search feature. Higher values provide better search results in large projects but may use more memory. Default: 10,000."},"roo-cline.useAgentRules":{"type":"boolean","default":true,"description":"Enable loading of AGENTS.md files for agent-specific rules (see https://agent-rules.org/)"},"roo-cline.apiRequestTimeout":{"type":"number","default":600,"minimum":0,"maximum":3600,"description":"Maximum time in seconds to wait for API responses (0 = no timeout, 1-3600s, default: 600s). Higher values are recommended for local providers like LM Studio and Ollama that may need more processing time."},"roo-cline.newTaskRequireTodos":{"type":"boolean","default":false,"description":"Require todos parameter when creating new tasks with the new_task tool"},"roo-cline.codeIndex.embeddingBatchSize":{"type":"number","default":60,"minimum":1,"maximum":200,"description":"The batch size for embedding operations during code indexing. Adjust this based on your API provider's limits. Default is 60."},"roo-cline.debug":{"type":"boolean","default":false,"description":"Enable debug mode to show additional buttons for viewing API conversation history and UI messages as prettified JSON in temporary files."},"roo-cline.debugProxy.enabled":{"type":"boolean","default":false,"description":"**Enable Debug Proxy** — Route all outbound network requests through a proxy for MITM debugging. Only active when running in debug mode (F5).","markdownDescription":"**Enable Debug Proxy** — Route all outbound network requests through a proxy for MITM debugging. Only active when running in debug mode (F5)."},"roo-cline.debugProxy.serverUrl":{"type":"string","default":"http://127.0.0.1:8888","description":"Proxy URL (e.g., `http://127.0.0.1:8888`). Only used when **Debug Proxy** is enabled.","markdownDescription":"Proxy URL (e.g., `http://127.0.0.1:8888`). Only used when **Debug Proxy** is enabled."},"roo-cline.debugProxy.tlsInsecure":{"type":"boolean","default":false,"description":"Accept self-signed certificates from the proxy. **Required for MITM inspection.** ⚠️ Insecure — only use for local debugging.","markdownDescription":"Accept self-signed certificates from the proxy. **Required for MITM inspection.** ⚠️ Insecure — only use for local debugging."}}}},"scripts":{"lint":"eslint . --ext=ts --max-warnings=0","check-types":"tsc --noEmit","pretest":"turbo run bundle --cwd ..","test":"vitest run","format":"prettier --write .","bundle":"node esbuild.mjs","vscode:prepublish":"pnpm bundle --production","vsix":"mkdirp ../bin && vsce package --no-dependencies --out ../bin","publish:marketplace":"vsce publish --no-dependencies && ovsx publish --no-dependencies","watch:bundle":"pnpm bundle --watch","watch:tsc":"cd .. && tsc --noEmit --watch --project src/tsconfig.json","clean":"rimraf README.md CHANGELOG.md LICENSE dist logs mock .turbo"},"dependencies":{"@ai-sdk/amazon-bedrock":"^4.0.51","@ai-sdk/baseten":"^1.0.31","@ai-sdk/deepseek":"^2.0.18","@ai-sdk/fireworks":"^2.0.32","@ai-sdk/google":"^3.0.22","@ai-sdk/google-vertex":"^4.0.45","@ai-sdk/mistral":"^3.0.19","@ai-sdk/xai":"^3.0.48","@anthropic-ai/sdk":"^0.37.0","@anthropic-ai/vertex-sdk":"^0.7.0","@aws-sdk/client-bedrock-runtime":"^3.922.0","@aws-sdk/credential-providers":"^3.922.0","@google/genai":"^1.29.1","@lmstudio/sdk":"^1.1.1","@mistralai/mistralai":"^1.9.18","@modelcontextprotocol/sdk":"1.12.0","@qdrant/js-client-rest":"^1.14.0","@roo-code/core":"workspace:^","@roo-code/ipc":"workspace:^","@roo-code/types":"workspace:^","@vscode/codicons":"^0.0.36","ai-sdk-provider-poe":"2.0.18","async-mutex":"^0.5.0","axios":"^1.12.0","cheerio":"^1.0.0","chokidar":"^4.0.1","clone-deep":"^4.0.1","default-shell":"^2.2.0","delay":"^6.0.0","diff":"^5.2.0","diff-match-patch":"^1.0.5","exceljs":"^4.4.0","fast-deep-equal":"^3.1.3","fast-xml-parser":"^5.0.0","fastest-levenshtein":"^1.0.16","fzf":"^0.5.2","get-folder-size":"^5.0.0","global-agent":"^3.0.0","google-auth-library":"^9.15.1","gray-matter":"^4.0.3","i18next":"^25.0.0","ignore":"^7.0.3","isbinaryfile":"^5.0.2","json-stream-stringify":"^3.1.6","jwt-decode":"^4.0.0","lodash.debounce":"^4.0.8","mammoth":"^1.9.1","monaco-vscode-textmate-theme-converter":"^0.1.7","node-cache":"^5.1.2","node-ipc":"^12.0.0","ollama":"^0.5.17","openai":"^5.12.2","os-name":"^6.0.0","p-limit":"^6.2.0","p-wait-for":"^5.0.2","partial-json":"^0.1.7","pdf-parse":"^1.1.1","pkce-challenge":"^5.0.0","pretty-bytes":"^7.0.0","proper-lockfile":"^4.1.2","ps-tree":"^1.2.0","puppeteer-chromium-resolver":"^24.0.0","puppeteer-core":"^23.4.0","reconnecting-eventsource":"^1.6.4","safe-stable-stringify":"^2.5.0","sambanova-ai-provider":"^1.2.2","sanitize-filename":"^1.6.3","say":"^0.16.0","semver-compare":"^1.0.0","serialize-error":"^12.0.0","shell-quote":"^1.8.2","simple-git":"^3.27.0","sound-play":"^1.1.0","stream-json":"^1.8.0","string-similarity":"^4.0.4","strip-ansi":"^7.1.0","strip-bom":"^5.0.0","tiktoken":"^1.0.21","tmp":"^0.2.3","tree-sitter-wasms":"^0.1.12","turndown":"^7.2.0","undici":"^6.21.3","uuid":"^11.1.0","vscode-material-icons":"^0.1.1","web-tree-sitter":"^0.25.6","workerpool":"^9.2.0","yaml":"^2.8.0","zhipu-ai-provider":"^0.2.2","zod":"3.25.76"},"devDependencies":{"@ai-sdk/openai-compatible":"^2.0.28","@openrouter/ai-sdk-provider":"^2.1.1","@roo-code/build":"workspace:^","@roo-code/config-eslint":"workspace:^","@roo-code/config-typescript":"workspace:^","@types/clone-deep":"^4.0.4","@types/debug":"^4.1.12","@types/diff":"^5.2.1","@types/diff-match-patch":"^1.0.36","@types/glob":"^8.1.0","@types/lodash.debounce":"^4.0.9","@types/mocha":"^10.0.10","@types/node":"20.x","@types/node-cache":"^4.1.3","@types/node-ipc":"^9.2.3","@types/proper-lockfile":"^4.1.4","@types/ps-tree":"^1.1.6","@types/semver-compare":"^1.0.3","@types/shell-quote":"^1.7.5","@types/stream-json":"^1.7.8","@types/string-similarity":"^4.0.2","@types/tmp":"^0.2.6","@types/turndown":"^5.0.5","@types/vscode":"^1.84.0","@vscode/test-electron":"^2.5.2","@vscode/vsce":"3.3.2","ai":"^6.0.75","esbuild-wasm":"^0.25.0","execa":"^9.5.2","glob":"^11.1.0","mkdirp":"^3.0.1","nock":"^14.0.4","npm-run-all2":"^8.0.1","ovsx":"0.10.4","rimraf":"^6.0.1","tsup":"^8.4.0","tsx":"^4.19.3","vitest":"^3.2.3","zod-to-ts":"^1.2.0"}},"location":{"$mid":1,"path":"/home/jeffry/.vscode-oss/extensions/rooveterinaryinc.roo-cline-3.54.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","publisherDisplayName":"RooVeterinaryInc","metadata":{"isApplicationScoped":false,"isMachineScoped":false,"isBuiltin":false,"installedTimestamp":1779186458043,"pinned":false,"source":"gallery","id":"4ce92b26-476a-4dd1-bf50-a8df00b87a74","publisherId":"4b55a936-06f2-4448-983f-3caa1b8e500a","publisherDisplayName":"RooVeterinaryInc","targetPlatform":"universal","updated":true,"private":false,"isPreReleaseVersion":false,"hasPreReleaseVersion":false,"preRelease":false,"size":150226471},"isValid":true,"validations":[],"preRelease":false,"forceAutoUpdate":false},{"type":1,"identifier":{"id":"ms-azuretools.vscode-docker","uuid":"0479fc1c-3d67-49f9-b087-fb9069afe48f"},"manifest":{"name":"vscode-docker","version":"2.0.0","publisher":"ms-azuretools","displayName":"Docker","description":"Makes it easy to create, manage, and debug containerized applications.","license":"SEE LICENSE IN LICENSE.md","icon":"resources/docker_blue.png","galleryBanner":{"color":"#1e1e1e","theme":"dark"},"keywords":["docker","compose","container","containers"],"repository":{"type":"git","url":"https://github.com/microsoft/vscode-docker"},"homepage":"https://github.com/Microsoft/vscode-docker/blob/main/README.md","engines":{"vscode":"^1.92.0"},"scripts":{"build":"","package":"vsce package","lint":"","test":""},"extensionDependencies":["ms-azuretools.vscode-containers"],"devDependencies":{"@vscode/vsce":"^3.1.0"}},"location":{"$mid":1,"path":"/home/jeffry/.vscode-oss/extensions/ms-azuretools.vscode-docker-2.0.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","publisherDisplayName":"ms-azuretools","metadata":{"installedTimestamp":1780933192391,"pinned":false,"source":"gallery","id":"0479fc1c-3d67-49f9-b087-fb9069afe48f","publisherId":"52b787f2-79a9-4f32-99b4-393afe3005d3","publisherDisplayName":"ms-azuretools","targetPlatform":"universal","updated":false,"private":false,"isPreReleaseVersion":false,"hasPreReleaseVersion":false,"size":144738},"isValid":true,"validations":[],"preRelease":false,"forceAutoUpdate":false},{"type":1,"identifier":{"id":"ms-azuretools.vscode-containers","uuid":"2cd1d691-3d69-4d2d-ae39-fda4bc4cfd3d"},"manifest":{"name":"vscode-containers","version":"2.4.5","publisher":"ms-azuretools","displayName":"Container Tools","description":"Makes it easy to create, manage, and debug containerized applications.","license":"SEE LICENSE IN LICENSE.md","icon":"resources/Market_ContainerTools_128.png","aiKey":"0c6ae279ed8443289764825290e4f9e2-1a736e7c-1324-4338-be46-fc2a58ae4d14-7255","galleryBanner":{"color":"#1e1e1e","theme":"dark"},"categories":["Programming Languages","Linters","Azure"],"keywords":["docker","podman","compose","container","containers","multi-root ready"],"repository":{"type":"git","url":"https://github.com/microsoft/vscode-containers"},"homepage":"https://github.com/Microsoft/vscode-containers/blob/main/README.md","activationEvents":["onTaskType:docker-build","onTaskType:docker-run","onTaskType:docker-compose","onDebugInitialConfigurations","onDebugResolve:docker","onFileSystem:containers","onLanguage:dockerfile","onLanguage:dockercompose"],"main":"main.js","contributes":{"menus":{"commandPalette":[{"command":"vscode-containers.openDockerDownloadPage","when":"never"},{"command":"vscode-containers.askCopilot","when":"never"},{"command":"vscode-containers.containers.downloadFile","when":"never"},{"command":"vscode-containers.containers.openFile","when":"never"},{"command":"vscode-containers.containers.select","when":"never"},{"command":"vscode-containers.containers.clearFilter","when":"never"},{"command":"vscode-containers.images.clearFilter","when":"never"},{"command":"vscode-containers.registries.reconnectRegistry","when":"never"},{"command":"vscode-containers.containers.composeGroup.logs","when":"config.containers.containers.groupBy == 'Compose Project Name'"},{"command":"vscode-containers.containers.composeGroup.start","when":"config.containers.containers.groupBy == 'Compose Project Name'"},{"command":"vscode-containers.containers.composeGroup.stop","when":"config.containers.containers.groupBy == 'Compose Project Name'"},{"command":"vscode-containers.containers.composeGroup.restart","when":"never"},{"command":"vscode-containers.containers.composeGroup.down","when":"never"},{"command":"vscode-containers.compose.down","when":"isWorkspaceTrusted"},{"command":"vscode-containers.compose.restart","when":"isWorkspaceTrusted"},{"command":"vscode-containers.compose.up","when":"isWorkspaceTrusted"},{"command":"vscode-containers.compose.up.subset","when":"isWorkspaceTrusted"},{"command":"vscode-containers.compose.down.subset","when":"isWorkspaceTrusted"},{"command":"vscode-containers.configure","when":"isWorkspaceTrusted"},{"command":"vscode-containers.configureCompose","when":"isWorkspaceTrusted"},{"command":"vscode-containers.debugging.initializeForDebugging","when":"isWorkspaceTrusted"},{"command":"vscode-containers.images.build","when":"isWorkspaceTrusted"},{"command":"vscode-containers.registries.azure.buildImage","when":"isWorkspaceTrusted"},{"command":"vscode-containers.help.openWalkthrough","when":"never"},{"command":"vscode-containers.images.showDangling","when":"never"},{"command":"vscode-containers.images.hideDangling","when":"never"},{"command":"vscode-containers.images.group.remove","when":"never"},{"command":"vscode-containers.containers.group.remove","when":"never"},{"command":"vscode-containers.activateContainerRuntimeProviders","when":"never"},{"command":"vscode-containers.activateRegistryProviders","when":"never"}],"editor/context":[{"when":"isWorkspaceTrusted && editorLangId == dockerfile","command":"vscode-containers.registries.azure.buildImage","group":"containers"},{"when":"isWorkspaceTrusted && editorLangId == dockercompose","command":"vscode-containers.compose.down","group":"containers"},{"when":"isWorkspaceTrusted && editorLangId == dockercompose","command":"vscode-containers.compose.restart","group":"containers"},{"when":"isWorkspaceTrusted && editorLangId == dockercompose","command":"vscode-containers.compose.up","group":"containers"},{"when":"isWorkspaceTrusted && editorLangId == dockercompose","command":"vscode-containers.compose.up.subset","group":"containers"},{"when":"isWorkspaceTrusted && editorLangId == dockercompose","command":"vscode-containers.compose.down.subset","group":"containers"},{"when":"isWorkspaceTrusted && editorLangId == dockerfile","command":"vscode-containers.images.build","group":"containers"}],"explorer/context":[{"when":"isWorkspaceTrusted && resourceLangId == dockerfile","command":"vscode-containers.registries.azure.buildImage","group":"containers"},{"when":"isWorkspaceTrusted && resourceLangId == dockercompose","command":"vscode-containers.compose.down","group":"containers"},{"when":"isWorkspaceTrusted && resourceLangId == dockercompose","command":"vscode-containers.compose.restart","group":"containers"},{"when":"isWorkspaceTrusted && resourceLangId == dockercompose","command":"vscode-containers.compose.up","group":"containers"},{"when":"isWorkspaceTrusted && resourceLangId == dockercompose","command":"vscode-containers.compose.up.subset","group":"containers"},{"when":"isWorkspaceTrusted && resourceLangId == dockercompose","command":"vscode-containers.compose.down.subset","group":"containers"},{"when":"isWorkspaceTrusted && resourceLangId == dockerfile","command":"vscode-containers.images.build","group":"containers"}],"view/title":[{"command":"vscode-containers.containers.prune","when":"view == vscode-containers.views.containers","group":"navigation@1"},{"command":"vscode-containers.containers.filter","when":"view == vscode-containers.views.containers && !vscode-containers:containersFiltered","group":"navigation@2"},{"command":"vscode-containers.containers.clearFilter","when":"view == vscode-containers.views.containers && vscode-containers:containersFiltered","group":"navigation@2"},{"command":"vscode-containers.chooseContainerRuntime","when":"view == vscode-containers.views.containers","group":"navigation@7"},{"command":"vscode-containers.containers.configureExplorer","when":"view == vscode-containers.views.containers","group":"navigation@8"},{"command":"vscode-containers.networks.configureExplorer","when":"view == vscode-containers.views.networks","group":"navigation@8"},{"command":"vscode-containers.containers.refresh","when":"view == vscode-containers.views.containers","group":"navigation@9"},{"command":"vscode-containers.networks.create","when":"view == vscode-containers.views.networks","group":"navigation@1"},{"command":"vscode-containers.networks.prune","when":"view == vscode-containers.views.networks","group":"navigation@2"},{"command":"vscode-containers.networks.refresh","when":"view == vscode-containers.views.networks","group":"navigation@9"},{"command":"vscode-containers.images.prune","when":"view == vscode-containers.views.images","group":"navigation@2"},{"command":"vscode-containers.images.filter","when":"view == vscode-containers.views.images && !vscode-containers:imagesFiltered","group":"navigation@3"},{"command":"vscode-containers.images.clearFilter","when":"view == vscode-containers.views.images && vscode-containers:imagesFiltered","group":"navigation@3"},{"command":"vscode-containers.images.showDangling","when":"view == vscode-containers.views.images && !vscode-containers:danglingShown","group":"navigation@3"},{"command":"vscode-containers.images.hideDangling","when":"view == vscode-containers.views.images && vscode-containers:danglingShown","group":"navigation@3"},{"command":"vscode-containers.images.configureExplorer","when":"view == vscode-containers.views.images","group":"navigation@8"},{"command":"vscode-containers.images.refresh","when":"view == vscode-containers.views.images","group":"navigation@9"},{"command":"vscode-containers.registries.refresh","when":"view == vscode-containers.views.registries","group":"navigation@9"},{"command":"vscode-containers.registries.connectRegistry","when":"view == vscode-containers.views.registries","group":"navigation@1"},{"command":"vscode-containers.registries.help","when":"view == vscode-containers.views.registries","group":"navigation@10"},{"command":"vscode-containers.volumes.prune","when":"view == vscode-containers.views.volumes","group":"navigation@1"},{"command":"vscode-containers.volumes.configureExplorer","when":"view == vscode-containers.views.volumes","group":"navigation@8"},{"command":"vscode-containers.volumes.refresh","when":"view == vscode-containers.views.volumes","group":"navigation@9"},{"command":"vscode-containers.contexts.configureExplorer","when":"view == vscode-containers.views.dockerContexts","group":"navigation@8"},{"command":"vscode-containers.contexts.refresh","when":"view == vscode-containers.views.dockerContexts","group":"navigation@9"},{"command":"vscode-containers.contexts.help","when":"view == vscode-containers.views.dockerContexts","group":"navigation@10"},{"command":"vscode-containers.help","when":"view == vscode-containers.views.containers || view == vscode-containers.views.images || view == vscode-containers.views.volumes || view == vscode-containers.views.networks","group":"navigation@10"}],"view/item/context":[{"command":"vscode-containers.containers.viewLogs","when":"view == vscode-containers.views.containers && viewItem =~ /container$/i","group":"containers_1_general@1"},{"command":"vscode-containers.containers.attachShell","when":"view == vscode-containers.views.containers && viewItem =~ /^runningContainer$/i","group":"containers_1_general@1.5"},{"command":"vscode-containers.containers.inspect","when":"view == vscode-containers.views.containers && viewItem =~ /container$/i","group":"containers_1_general@3"},{"command":"vscode-containers.askCopilot","when":"view == vscode-containers.views.containers && viewItem =~ /container$/i && !config.chat.disableAIFeatures","group":"containers_1_general@3.5"},{"command":"vscode-containers.containers.browse","when":"view == vscode-containers.views.containers && viewItem =~ /runningContainer$/i","group":"containers_1_general@4"},{"command":"vscode-containers.containers.start","when":"view == vscode-containers.views.containers && viewItem =~ /^(created|dead|exited|paused|terminated)Container$/i","group":"containers_2_active@5"},{"command":"vscode-containers.containers.downloadFile","when":"view == vscode-containers.views.containers && viewItem == containerFile","group":"files_1@2"},{"command":"vscode-containers.containers.openFile","when":"view == vscode-containers.views.containers && viewItem == containerFile","group":"files_1@1"},{"command":"vscode-containers.containers.stop","when":"view == vscode-containers.views.containers && viewItem =~ /^(paused|restarting|running)Container$/i","group":"containers_2_active@6"},{"command":"vscode-containers.containers.restart","when":"view == vscode-containers.views.containers && viewItem =~ /^runningContainer$/i","group":"containers_2_active@7"},{"command":"vscode-containers.containers.remove","when":"view == vscode-containers.views.containers && viewItem =~ /container$/i","group":"containers_3_destructive@1"},{"command":"vscode-containers.containers.group.remove","when":"view == vscode-containers.views.containers && viewItem =~ /containerGroup$/i","group":"containers_group_1_destructive@1"},{"command":"vscode-containers.containers.composeGroup.logs","when":"view == vscode-containers.views.containers && viewItem =~ /composeGroup$/i","group":"composeGroup_1_general@1"},{"command":"vscode-containers.containers.composeGroup.start","when":"view == vscode-containers.views.containers && viewItem =~ /composeGroup$/i","group":"composeGroup_1_general@2"},{"command":"vscode-containers.containers.composeGroup.stop","when":"view == vscode-containers.views.containers && viewItem =~ /composeGroup$/i","group":"composeGroup_1_general@3"},{"command":"vscode-containers.containers.composeGroup.restart","when":"view == vscode-containers.views.containers && viewItem =~ /composeGroup$/i","group":"composeGroup_2_destructive@1"},{"command":"vscode-containers.containers.composeGroup.down","when":"view == vscode-containers.views.containers && viewItem =~ /composeGroup$/i","group":"composeGroup_2_destructive@2"},{"command":"vscode-containers.images.run","when":"view == vscode-containers.views.images && viewItem == image","group":"images_1_run@1"},{"command":"vscode-containers.images.runInteractive","when":"view == vscode-containers.views.images && viewItem == image","group":"images_1_run@2"},{"command":"vscode-containers.images.inspect","when":"view == vscode-containers.views.images && viewItem == image","group":"images_2_general@1"},{"command":"vscode-containers.askCopilot","when":"view == vscode-containers.views.images && viewItem == image && !config.chat.disableAIFeatures","group":"images_2_general@1.5"},{"command":"vscode-containers.images.pull","when":"view == vscode-containers.views.images && viewItem == image","group":"images_2_general@2"},{"command":"vscode-containers.images.push","when":"view == vscode-containers.views.images && viewItem == image","group":"images_2_general@3"},{"command":"vscode-containers.images.tag","when":"view == vscode-containers.views.images && viewItem == image","group":"images_2_general@4"},{"command":"vscode-containers.images.copyFullTag","when":"view == vscode-containers.views.images && viewItem == image","group":"images_2_general@5"},{"command":"vscode-containers.images.remove","when":"view == vscode-containers.views.images && viewItem == image","group":"images_3_destructive@1"},{"command":"vscode-containers.images.group.remove","when":"view == vscode-containers.views.images && viewItem =~ /imageGroup$/i","group":"images_group_1_destructive@1"},{"command":"vscode-containers.networks.inspect","when":"view == vscode-containers.views.networks && viewItem =~ /network$/i","group":"networks_1_general@1"},{"command":"vscode-containers.networks.remove","when":"view == vscode-containers.views.networks && viewItem =~ /^customNetwork$/i","group":"networks_2_destructive@1"},{"command":"vscode-containers.registries.azure.createRegistry","when":"view == vscode-containers.views.registries && viewItem =~ /azuresubscription/i","group":"regs_1_general@1"},{"command":"vscode-containers.registries.azure.deleteRegistry","when":"view == vscode-containers.views.registries && viewItem =~ /azure;.*commonregistry/i","group":"regs_reg_2_destructive@1"},{"command":"vscode-containers.registries.pullRepository","when":"view == vscode-containers.views.registries && viewItem =~ /commonrepository/","group":"regs_repo_1_general@1"},{"command":"vscode-containers.registries.azure.deleteRepository","when":"view == vscode-containers.views.registries && viewItem =~ /azure;.*commonrepository/i","group":"regs_repo_2_destructive@1"},{"command":"vscode-containers.registries.pullImage","when":"view == vscode-containers.views.registries && viewItem =~ /commontag/i","group":"regs_tag_1_general@1"},{"command":"vscode-containers.registries.copyRemoteFullTag","when":"view == vscode-containers.views.registries && viewItem =~ /commontag/i","group":"regs_tag_1_general@2"},{"command":"vscode-containers.registries.copyImageDigest","when":"view == vscode-containers.views.registries && viewItem =~ /commontag/i && !(viewItem =~ /commontag;.*dockerhub/i)","group":"regs_tag_1_general@3"},{"command":"vscode-containers.registries.inspectRemoteImageManifest","when":"view == vscode-containers.views.registries && viewItem =~ /commontag/i && !(viewItem =~ /commontag;.*dockerhub/i)","group":"regs_tag_1_general@4"},{"command":"vscode-containers.registries.deployImageToAzure","when":"view == vscode-containers.views.registries && viewItem =~ /commontag/i","group":"regs_tag_1_general@5"},{"command":"vscode-containers.registries.deployImageToAca","when":"view == vscode-containers.views.registries && viewItem =~ /commontag/i","group":"regs_tag_1_general@6"},{"command":"vscode-containers.registries.azure.untagImage","when":"view == vscode-containers.views.registries && viewItem =~ /azure;.*commontag/i","group":"regs_tag_2_destructive@1"},{"command":"vscode-containers.registries.deleteImage","when":"view == vscode-containers.views.registries && viewItem =~ /commontag/i && !(viewItem =~ /commontag;.*(dockerhub|github)/i)","group":"regs_tag_2_destructive@2"},{"command":"vscode-containers.registries.disconnectRegistry","when":"view == vscode-containers.views.registries && viewItem =~ /commonregistryroot/i","group":"regs_yyy_destructive@1"},{"command":"vscode-containers.registries.genericV2.removeTrackedRegistry","when":"view == vscode-containers.views.registries && viewItem =~ /commonregistry;.*generic/i","group":"regs_yyy_destructive@1"},{"command":"vscode-containers.registries.genericV2.addTrackedRegistry","when":"view == vscode-containers.views.registries && viewItem =~ /commonregistryroot;.*generic/i","group":"regs_yyy_destructive@1"},{"command":"vscode-containers.registries.azure.openInPortal","when":"view == vscode-containers.views.registries && viewItem =~ /azuresubscription|azure;.*(commonregistry|commonrepository)/i","group":"regs_zzz_common@1"},{"command":"vscode-containers.registries.dockerHub.openInBrowser","when":"view == vscode-containers.views.registries && viewItem =~ /(commonregistry|commonrepository|commontag);.*dockerhub/i","group":"regs_zzz_common@1"},{"command":"vscode-containers.registries.azure.viewProperties","when":"view == vscode-containers.views.registries && viewItem =~ /azure;.*commonregistry/i","group":"regs_zzz_common@2"},{"command":"vscode-containers.registries.reconnectRegistry","when":"view == vscode-containers.views.registries && viewItem =~ /registryConnectError/i","group":"regs_zzz_common@8"},{"command":"vscode-containers.registries.refresh","when":"view == vscode-containers.views.registries && viewItem == connectedRegistries","group":"regs_zzz_common@9"},{"command":"vscode-containers.registries.refresh","when":"view == vscode-containers.views.registries && viewItem =~ /commonregistry|commonregistryroot|commonrepository/","group":"regs_zzz_common@9"},{"command":"vscode-containers.volumes.inspect","when":"view == vscode-containers.views.volumes && viewItem == volume","group":"volumes_1_general@1"},{"command":"vscode-containers.volumes.remove","when":"view == vscode-containers.views.volumes && viewItem == volume","group":"volumes_2_destructive@1"},{"command":"vscode-containers.contexts.inspect","when":"view == vscode-containers.views.dockerContexts && viewItem =~ /Context/i","group":"contexts_1_general@1"},{"command":"vscode-containers.contexts.use","when":"view == vscode-containers.views.dockerContexts && viewItem =~ /Context/i","group":"contexts_1_general@2"},{"command":"vscode-containers.contexts.use","when":"view == vscode-containers.views.dockerContexts && viewItem =~ /Context/i","group":"inline"},{"command":"vscode-containers.contexts.remove","when":"view == vscode-containers.views.dockerContexts && viewItem =~ /^customContext/i","group":"contexts_2_destructive@1"},{"command":"vscode-containers.containers.downloadFile","when":"view == vscode-containers.views.containers && viewItem == containerFile","group":"inline@2"},{"command":"vscode-containers.containers.openFile","when":"view == vscode-containers.views.containers && viewItem == containerFile","group":"inline@1"}],"issue/reporter":[{"command":"vscode-containers.help.reportIssue"}]},"debuggers":[{"type":"docker","label":"Containers: Debug in Container","languages":["csharp","razor","aspnetcorerazor","vb","fsharp"],"configurationAttributes":{"launch":{"properties":{"containerName":{"type":"string","description":"Name of the container used for debugging."},"dockerServerReadyAction":{"description":"Options for launching a browser to the container. Similar to serverReadyAction, but replaces container ports with host ports.","properties":{"action":{"type":"string","description":"The action to take when the pattern is found.","enum":["debugWithChrome","openExternally"]},"containerName":{"type":"string","description":"The container name to match the host port."},"pattern":{"type":"string","description":"The regex pattern to look for in Debug console output.","default":"(https?://\\S+|[0-9]+)"},"uriFormat":{"type":"string","description":"The URI format to launch.","default":"http://localhost:%s"},"webRoot":{"type":"string","description":"The root folder from which web pages are served."}}},"removeContainerAfterDebug":{"type":"boolean","description":"Whether to remove the debug container after debugging.","default":true},"platform":{"type":"string","description":"The target platform for the application.","enum":["netCore","node","python"]},"netCore":{"description":"Options for debugging .NET projects in containers.","properties":{"appProject":{"type":"string","description":"The .NET project (.csproj, .fsproj, etc.) to debug."}},"required":["appProject"]},"node":{"description":"Options for debugging Node.js projects in containers.","properties":{"port":{"type":"integer","description":"The debug port to use."},"address":{"type":"string","description":"TCP/IP address of the debug port."},"sourceMaps":{"type":"boolean","description":"Enable source maps by setting this to `true`."},"outFiles":{"type":"array","description":"Array of glob patterns for locating generated JavaScript files.","items":{"type":"string"}},"autoAttachChildProcesses":{"type":"boolean","description":"Track all subprocesses of debuggee and automatically attach to those that are launched in debug mode."},"timeout":{"type":"integer","description":"When restarting a session, give up after this number of milliseconds."},"stopOnEntry":{"type":"boolean","description":"Break immediately when the program launches."},"localRoot":{"type":"string","description":"VS Code's root directory."},"package":{"type":"string","description":"The path to the package.json for the application."},"remoteRoot":{"type":"string","description":"Node's root directory within the container."},"smartStep":{"type":"boolean","description":"Try to automatically step over code that doesn't map to source files."},"skipFiles":{"type":"array","description":"Automatically skip files covered by these glob patterns.","items":{"type":"string"}},"trace":{"type":"boolean","description":"Enable diagnostic output."}}},"python":{"description":"Options for debugging Python applications in containers.","properties":{"host":{"type":"string","description":"The host for remote debugging.","default":"localhost"},"port":{"type":"number","description":"The port for remote debugging.","default":5678},"pathMappings":{"type":"array","items":{"type":"object","properties":{"localRoot":{"type":"string","description":"The host path."},"remoteRoot":{"type":"string","description":"The container path."}}}},"justMyCode":{"type":"boolean","description":"Debug only user-written code."},"django":{"type":"boolean","description":"Django debugging.","default":false},"fastapi":{"type":"boolean","description":"FastAPI debugging.","default":false},"jinja":{"type":"boolean","description":"Jinja template debugging (e.g. Flask).","default":false},"projectType":{"type":"string","description":"Type of the Python app.","enum":["django","fastapi","flask","general"]},"args":{"type":"array","description":"Arguments passed to the Python app.","items":{"type":"string"}}}}}},"attach":{"properties":{"containerName":{"type":"string","description":"The container name to attach to. If not specified, then user will be prompted to pick a container."},"processName":{"type":"string","description":"The process name to attach to. If this is used, 'processId' should not be used."},"processId":{"anyOf":[{"type":"string","description":"The process id to attach to. Use \"${command:pickProcess}\" to get a list of running processes to attach to. If 'processId' used, 'processName' should not be used.","default":"${command:pickProcess}"},{"type":"integer","description":"The process id to attach to. Use \"${command:pickProcess}\" to get a list of running processes to attach to. If 'processId' used, 'processName' should not be used.","default":0}]},"platform":{"type":"string","description":"The target platform for the application.","enum":["netCore"]},"sourceFileMap":{"type":"object","description":"Optional source file mappings passed to the debug engine. Example: '{ \"/src\":\"${workspaceFolder}\" }'","additionalProperties":{"type":"string"},"default":{"":""}},"netCore":{"description":"Options for debugging .NET projects in containers.","properties":{"debuggerPath":{"type":"string","description":"The path for the debugger in the target container, for example `/remote_debugger/vsdbg`."}}}}}},"configurationSnippets":[{"label":"Containers: Attach to Node","description":"Containers: Attach to Node","body":{"type":"node","request":"attach","name":"Containers: Attach to Node","remoteRoot":"/usr/src/app"}},{"label":"Containers: .NET Attach (Preview)","description":"Containers: Attach to a .NET process in a container","body":{"name":"Containers .NET Attach (Preview)","type":"docker","request":"attach","platform":"netCore","sourceFileMap":{"/src":"^\"\\${workspaceFolder}\""}}}]}],"taskDefinitions":[{"type":"docker-build","properties":{"dockerBuild":{"description":"Options for building the container image used for debugging. Learn more at https://aka.ms/vscode-docker-build-task","properties":{"buildArgs":{"type":"object","description":"Build arguments applied to the container image used for debugging.","additionalProperties":{"type":"string"}},"context":{"type":"string","description":"Path to the container build context.","default":"${workspaceFolder}"},"dockerfile":{"type":"string","description":"Path to the Dockerfile used for the build.","default":"${workspaceFolder}/Dockerfile"},"labels":{"type":"object","description":"Labels applied to the container image used for debugging.","properties":{"includeDefaults":{"type":"boolean","description":"Whether to include the default set of labels defined by the Container Tools extension","default":true}},"additionalProperties":{"type":"string"}},"platform":{"anyOf":[{"type":"object","properties":{"os":{"anyOf":[{"type":"string","enum":["linux","darwin","windows"]},{"type":"string"}],"description":"OS of the target image platform."},"architecture":{"anyOf":[{"type":"string","enum":["amd64","386","arm64","arm"]},{"type":"string"}],"description":"CPU architecture of the target image platform."}}},{"type":"string","enum":["linux/amd64","linux/386","linux/arm64","linux/arm","darwin/amd64","darwin/arm64","windows/amd64","windows/386","windows/arm64","windows/arm"]},{"type":"string"}],"description":"Target platform for the image build"},"tag":{"type":"string","description":"Tag applied to the container image used for debugging."},"target":{"type":"string","description":"Container build target (stage) used for debugging."},"pull":{"type":"boolean","description":"Whether or not to pull new base images before building."},"customOptions":{"type":"string","description":"Any other options to add to the container build command."}},"required":["context"]},"platform":{"type":"string","description":"The target platform for the application.","enum":["netCore","node","python"]},"netCore":{"description":"Options for building .NET projects in containers.","properties":{"appProject":{"type":"string","description":"The .NET project (.csproj, .fsproj, etc.) to build."}},"required":["appProject"]},"node":{"description":"Options for building Node.js applications in containers.","properties":{"package":{"type":"string","description":"The path to the package.json for the application."}}},"python":{"description":"Options for building Python applications in containers.","type":"object"},"options":{"description":"Additional command options","properties":{"cwd":{"type":"string","description":"The current working directory of the executed program or script. If omitted Code's current workspace root is used."},"env":{"type":"object","description":"The environment of the executed program or shell. If omitted the parent process' environment is used.","additionalProperties":{"type":"string"}}}}},"required":["dockerBuild"]},{"type":"docker-run","properties":{"dockerRun":{"description":"Options for running the container used for debugging. Learn more at https://aka.ms/vscode-docker-run-task","properties":{"command":{"type":"string","description":"The command to run upon starting the container."},"entrypoint":{"type":"string","description":"The entrypoint to use when starting the container."},"containerName":{"type":"string","description":"Name of the container used for debugging."},"env":{"type":"object","description":"Environment variables applied to the container used for debugging.","additionalProperties":{"type":"string"}},"envFiles":{"type":"array","description":"Files of environment variables read in and applied to the container used for debugging.","items":{"type":"string"}},"image":{"type":"string","description":"The image to run."},"labels":{"type":"object","description":"Labels applied to the container used for debugging.","properties":{"includeDefaults":{"type":"boolean","description":"Whether to include the default set of labels defined by the Container Tools extension","default":true}},"additionalProperties":{"type":"string"}},"network":{"type":"string","description":"The network to which the container will be connected."},"networkAlias":{"type":"string","description":"The network-scoped alias to assign to the container."},"os":{"type":"string","description":"The container operating system.","default":"Linux","enum":["Linux","Windows"]},"ports":{"type":"array","description":"Ports that are going to be mapped on the host.","items":{"type":"object","properties":{"hostPort":{"type":"integer","description":"Port number to be bound on the host."},"containerPort":{"type":"integer","description":"Port number of the container to be bound."},"protocol":{"type":"string","description":"Specific protocol for the binding (`tcp | udp`).","enum":["tcp","udp"]}},"required":["containerPort"]}},"portsPublishAll":{"type":"boolean","description":"Whether to publish all exposed container ports to random ports on the host.","default":true},"extraHosts":{"type":"array","description":"Hosts to be added to the container's `hosts` file for DNS resolution.","items":{"type":"object","properties":{"hostname":{"type":"string","description":"Hostname for dns resolution."},"ip":{"type":"string","description":"IP associated to the hostname."}},"required":["hostname","ip"]}},"volumes":{"type":"array","description":"Volumes that are going to be mapped to the container.","items":{"type":"object","properties":{"localPath":{"type":"string","description":"Path on local machine that will be mapped. The folder will be created if it does not exist."},"containerPath":{"type":"string","description":"Path where the volume will be mapped within the container. The folder will be created if it does not exist."},"permissions":{"type":"string","description":"Permissions for the container for the mapped volume, `rw` for read-write or `ro` for read-only.","enum":["rw","ro"]}},"required":["localPath","containerPath"]}},"remove":{"type":"boolean","description":"Whether to clean up the container and remove the file system when the container exits.","default":false},"customOptions":{"type":"string","description":"Any other options to add to the container run command."}}},"platform":{"type":"string","description":"The target platform for the application.","enum":["netCore","node","python"]},"netCore":{"description":"Options for running .NET projects in containers.","properties":{"appProject":{"type":"string","description":"The .NET project (.csproj, .fsproj, etc.) to build."},"enableDebugging":{"type":"boolean","description":"Whether to enable debugging within the container."},"configureSsl":{"type":"boolean","description":"Whether to configure certificate and other settings to enable SSL on ASP.NET Core web services."}},"required":["appProject"]},"node":{"description":"Options for running Node.js applications in containers.","properties":{"enableDebugging":{"type":"boolean","description":"Whether to enable debugging within the container."},"inspectMode":{"type":"string","description":"Whether debugging should break immediately upon application start."},"inspectPort":{"type":"integer","description":"The port on which debugging should occur."},"package":{"type":"string","description":"The path to the package.json for the application."}}},"python":{"type":"object","additionalProperties":false,"description":"Options for running Python applications in containers.","properties":{"file":{"type":"string","description":"The Python file to run. Cannot be combined with `module`.","default":"${file}"},"module":{"type":"string","description":"The Python module to run. Cannot be combined with `file`."},"args":{"type":"array","description":"Arguments passed to the Python app.","items":{"type":"string"}},"wait":{"type":"boolean","description":"Whether to wait for debugger to attach.","default":true},"debugPort":{"type":"number","description":"The port that the debugger will listen on.","default":5678}},"oneOf":[{"required":["file"]},{"required":["module"]}]},"options":{"description":"Additional command options","properties":{"cwd":{"type":"string","description":"The current working directory of the executed program or script. If omitted Code's current workspace root is used."},"env":{"type":"object","description":"The environment of the executed program or shell. If omitted the parent process' environment is used.","additionalProperties":{"type":"string"}}}}}},{"type":"docker-compose","properties":{"dockerCompose":{"description":"Options for the compose command.","properties":{"up":{"description":"Options for the compose up command. Cannot be combined with `down`.","properties":{"detached":{"type":"boolean","description":"Whether or not to run detached.","default":true},"build":{"type":"boolean","description":"Whether or not to build.","default":true},"scale":{"type":"object","description":"The scale for each service.","additionalProperties":{"type":"number"}},"services":{"type":"array","description":"A subset of services to start. Cannot be combined with `profiles`.","items":{"type":"string"}},"profiles":{"type":"array","description":"A subset of profiles to start. Cannot be combined with `services`.","items":{"type":"string"}},"customOptions":{"type":"string","description":"Any other options to add to the compose up command."}},"not":{"required":["services","profiles"]}},"down":{"description":"Options for the compose down command.","properties":{"removeImages":{"type":"string","description":"Images to remove.","enum":["all","local"]},"removeVolumes":{"type":"boolean","description":"Whether or not to remove named and anonymous volumes.","default":false},"profiles":{"type":"array","description":"A subset of profiles to stop and remove.","items":{"type":"string"}},"customOptions":{"type":"string","description":"Any other options to add to the compose down command. Cannot be combined with `up`."}}},"envFiles":{"type":"array","description":"(DEPRECATED) Use `envFile` instead.","items":{"type":"string"}},"envFile":{"type":"string","description":"File of environment variables read in and applied to the containers."},"files":{"type":"array","description":"The compose files to include, in order.","items":{"type":"string"}},"projectName":{"type":"string","description":"Alternate project name to use when naming and labeling container objects. If using an alternate project name when composing up, the same project name must be specified when composing down."}},"oneOf":[{"required":["up"]},{"required":["down"]}],"default":{"up":{"detached":true,"build":true},"files":["${workspaceFolder}/compose.yaml"]}},"options":{"description":"Additional command options","properties":{"cwd":{"type":"string","description":"The current working directory of the executed program or script. If omitted Code's current workspace root is used."},"env":{"type":"object","description":"The environment of the executed program or shell. If omitted the parent process' environment is used.","additionalProperties":{"type":"string"}}}}},"required":["dockerCompose"]},{"type":"dotnet-container-sdk","properties":{"netCore":{"description":"Options for debugging .NET projects in containers.","properties":{"appProject":{"type":"string","description":"The .NET project (.csproj, .fsproj, etc.) to debug."}},"required":["appProject"]},"dockerRun":{"description":"Options for running the container used for debugging.","properties":{"containerName":{"type":"string","description":"Name of the container used for debugging."}},"required":["containerName"]}}}],"languages":[{"id":"dockerfile","aliases":["Dockerfile"],"filenamePatterns":["*.dockerfile","Dockerfile","Dockerfile.*","*.containerfile","Containerfile","Containerfile.*"]},{"id":"ignore","filenames":[".dockerignore",".containerignore"],"filenamePatterns":["*.dockerignore","*.containerignore"]}],"configurationDefaults":{"[dockercompose]":{"editor.insertSpaces":true,"editor.tabSize":2,"editor.autoIndent":"advanced","editor.quickSuggestions":{"other":true,"comments":false,"strings":true}}},"configuration":{"title":"Container Tools","properties":{"containers.promptForRegistryWhenPushingImages":{"type":"boolean","default":true,"description":"Prompt for registry selection if the image is not explicitly tagged."},"containers.commands.build":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against container name, container's image name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":"${containerCommand} build --pull --rm -f \"${dockerfile}\" -t ${tag} \"${context}\"","description":"Command template(s) for container build commands.","tags":["advanced"]},"containers.commands.run":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against image name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":"${containerCommand} run --rm -d ${exposedPorts} ${tag}","description":"Command templates for container run commands.","tags":["advanced"]},"containers.commands.runInteractive":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against image name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":"${containerCommand} run --rm -it ${exposedPorts} ${tag}","description":"Command templates for container run (interactive) commands.","tags":["advanced"]},"containers.commands.attach":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against container name, container's image name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":"${containerCommand} exec -it ${containerId} ${shellCommand}","description":"Command templates for container attach commands.","tags":["advanced"]},"containers.commands.logs":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against container name, container's image name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":"${containerCommand} logs --tail 1000 -f ${containerId}","description":"Command templates for container logs commands.","tags":["advanced"]},"containers.commands.composeUp":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against compose YAML files, folder name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":[{"label":"Compose Up","template":"${composeCommand} ${configurationFile} up ${detached} ${build}"}],"description":"Command templates for compose up commands.","tags":["advanced"]},"containers.commands.composeUpSubset":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against compose YAML files, folder name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":[{"label":"Compose Up","template":"${composeCommand} ${profileList} ${configurationFile} up ${detached} ${build} ${serviceList}"}],"description":"Command templates for compose up (subset) commands.","tags":["advanced"]},"containers.commands.composeDown":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against compose YAML files, folder name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":[{"label":"Compose Down","template":"${composeCommand} ${configurationFile} down"}],"description":"Command templates for compose down commands.","tags":["advanced"]},"containers.commands.composeDownSubset":{"oneOf":[{"type":"array","items":{"properties":{"template":{"type":"string","description":"The command template."},"label":{"type":"string","description":"The label displayed to the user."},"match":{"type":"string","description":"The regular expression for choosing the right template. Checked against compose YAML files, folder name, etc."}},"required":["label","template"]}},{"type":"string"}],"default":[{"label":"Compose Down","template":"${composeCommand} ${profileList} ${configurationFile} down ${serviceList}"}],"description":"Command templates for compose down (subset) commands.","tags":["advanced"]},"containers.containers.groupBy":{"type":"string","default":"Compose Project Name","description":"The property to use to group containers in Containers view: ContainerId, ContainerName, CreatedTime, FullTag, ImageId, Networks, Ports, Registry, RegistryAndPath, Repository, RepositoryName, RepositoryNameShort, RepositoryNameAndTag, State, Status, Tag, or None","enum":["Compose Project Name","ContainerId","ContainerName","CreatedTime","FullTag","Image","Networks","None","Ports","Registry","RegistryAndPath","Repository","RepositoryName","RepositoryNameShort","RepositoryNameAndTag","State","Status","Tag","Label"],"tags":["advanced"]},"containers.containers.groupByLabel":{"type":"string","description":"The items will be grouped by the value of this container label (e.g. `com.microsoft.created-by`)","tags":["advanced"]},"containers.containers.description":{"type":"array","default":["ContainerName","Status"],"description":"Any secondary properties to display for a container (an array). Possible elements include: ContainerId, ContainerName, CreatedTime, FullTag, ImageId, Networks, Ports, Registry, RegistryAndPath, Repository, RepositoryName, RepositoryNameShort, RepositoryNameAndTag, State, Status, and Tag","items":{"type":"string","enum":["Compose Project Name","ContainerId","ContainerName","CreatedTime","FullTag","Image","Networks","Ports","Registry","RegistryAndPath","Repository","RepositoryName","RepositoryNameShort","RepositoryNameAndTag","State","Status","Tag"]},"tags":["advanced"]},"containers.containers.label":{"type":"string","default":"FullTag","description":"The primary property to display for a container: ContainerId, ContainerName, CreatedTime, FullTag, ImageId, Networks, Ports, Registry, RegistryAndPath, Repository, RepositoryName, RepositoryNameShort, RepositoryNameAndTag, State, Status, or Tag","enum":["Compose Project Name","ContainerId","ContainerName","CreatedTime","FullTag","Image","Networks","Ports","Registry","RegistryAndPath","Repository","RepositoryName","RepositoryNameShort","RepositoryNameAndTag","State","Status","Tag"],"tags":["advanced"]},"containers.containers.sortBy":{"type":"string","default":"CreatedTime","description":"The property to use to sort containers in the Containers view: CreatedTime, CreatedTimeReverse, Label, or LabelReverse","enum":["CreatedTime","CreatedTimeReverse","Label","LabelReverse"],"tags":["advanced"]},"containers.contexts.description":{"type":"array","default":["Description"],"description":"Any secondary properties to display for a Docker context (an array). Possible elements include: Name, Description and DockerEndpoint","items":{"type":"string","enum":["Name","Description","DockerEndpoint"]},"tags":["advanced"]},"containers.contexts.label":{"type":"string","default":"Name","description":"The primary property to display for a Docker context: Name, Description or DockerEndpoint","enum":["Name","Description","DockerEndpoint"],"tags":["advanced"]},"containers.contexts.showInStatusBar":{"type":"boolean","default":false,"description":"Show current Docker context in the status bar"},"containers.images.groupBy":{"type":"string","default":"Repository","description":"The property to use to group images in Container Images view: CreatedTime, FullTag, ImageId, None, Registry, RegistryAndPath, Repository, RepositoryName, RepositoryNameShort, RepositoryNameAndTag, or Tag","enum":["CreatedTime","FullTag","ImageId","None","Registry","RegistryAndPath","Repository","RepositoryName","RepositoryNameShort","RepositoryNameAndTag","Tag"],"tags":["advanced"]},"containers.images.description":{"type":"array","default":["CreatedTime"],"description":"Any secondary properties to display for a container image (an array). Possible elements include: CreatedTime, FullTag, ImageId, Registry, RegistryAndPath, Repository, RepositoryName, RepositoryNameShort, RepositoryNameAndTag, Tag, and Size","items":{"type":"string","enum":["CreatedTime","FullTag","ImageId","Registry","RegistryAndPath","Repository","RepositoryName","RepositoryNameShort","RepositoryNameAndTag","Tag","Size"]},"tags":["advanced"]},"containers.images.label":{"type":"string","default":"Tag","description":"The primary property to display for a image: CreatedTime, FullTag, ImageId, Registry, RegistryAndPath, Repository, RepositoryName, RepositoryNameShort, RepositoryNameAndTag, Tag, or Size","enum":["CreatedTime","FullTag","ImageId","Registry","RegistryAndPath","Repository","RepositoryName","RepositoryNameShort","RepositoryNameAndTag","Tag","Size"],"tags":["advanced"]},"containers.images.sortBy":{"type":"string","default":"CreatedTime","description":"The property to use to sort images in Container Images view: CreatedTime, CreatedTimeReverse, Label, LabelReverse, Size, or SizeReverse","enum":["CreatedTime","CreatedTimeReverse","Label","LabelReverse","Size","SizeReverse"],"tags":["advanced"]},"containers.images.checkForOutdatedImages":{"type":"boolean","default":true,"description":"Check for outdated base images once per Visual Studio Code session"},"containers.networks.groupBy":{"type":"string","default":"None","description":"The property to use to group networks in Container Networks view: CreatedTime, NetworkDriver, NetworkId, NetworkName, or None","enum":["CreatedTime","NetworkDriver","NetworkId","NetworkName","None"],"tags":["advanced"]},"containers.networks.description":{"type":"array","default":["NetworkDriver","CreatedTime"],"description":"Any secondary properties to display for a container network (an array). Possible elements include CreatedTime, NetworkDriver, NetworkId, and NetworkName","items":{"type":"string","enum":["CreatedTime","NetworkDriver","NetworkId","NetworkName"]},"tags":["advanced"]},"containers.networks.showBuiltInNetworks":{"type":"boolean","default":true,"description":"Show the built-in networks in the explorer."},"containers.networks.label":{"type":"string","default":"NetworkName","description":"The primary property to display for a container network: CreatedTime, NetworkDriver, NetworkId, or NetworkName","enum":["CreatedTime","NetworkDriver","NetworkId","NetworkName"],"tags":["advanced"]},"containers.networks.sortBy":{"type":"string","default":"CreatedTime","description":"The property to use to sort networks in Container Networks view: CreatedTime, CreatedTimeReverse, Label, or LabelReverse","enum":["CreatedTime","CreatedTimeReverse","Label","LabelReverse"],"tags":["advanced"]},"containers.volumes.groupBy":{"type":"string","default":"None","description":"The property to use to group volumes in Container Volumes view: CreatedTime, VolumeName, or None","enum":["CreatedTime","VolumeName","None"],"tags":["advanced"]},"containers.volumes.description":{"type":"array","default":["CreatedTime"],"description":"Any secondary properties to display for a container volume (an array). Possible values include CreatedTime and VolumeName","items":{"type":"string","enum":["CreatedTime","VolumeName"]},"tags":["advanced"]},"containers.volumes.label":{"type":"string","default":"VolumeName","description":"The primary property to display for a container volume: CreatedTime or VolumeName","enum":["CreatedTime","VolumeName"],"tags":["advanced"]},"containers.volumes.sortBy":{"type":"string","default":"CreatedTime","description":"The property to use to sort volumes in the Container Volumes view: CreatedTime, CreatedTimeReverse, Label, or LabelReverse","enum":["CreatedTime","CreatedTimeReverse","Label","LabelReverse"],"tags":["advanced"]},"containers.imageBuildContextPath":{"type":"string","default":"","description":"Build context PATH to pass to container build command.","scope":"machine-overridable","tags":["advanced"]},"containers.truncateLongRegistryPaths":{"type":"boolean","default":false,"description":"Set to true to truncate long image and container registry paths in Container Images view","tags":["advanced"]},"containers.truncateMaxLength":{"type":"number","default":10,"description":"Maximum length of a registry paths displayed in Container Images view, including ellipsis. The truncateLongRegistryPaths setting must be set to true for truncateMaxLength setting to be effective.","tags":["advanced"]},"containers.environment":{"type":"object","additionalProperties":{"type":"string"},"description":"Environment variables that will be applied to all VS Code terminals and to all background processes started by the Container Tools extension. Use for variables like `DOCKER_HOST`, etc.","scope":"machine-overridable","tags":["advanced"]},"docker.languageserver.diagnostics.deprecatedMaintainer":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for the deprecated MAINTAINER instruction","tags":["advanced"]},"docker.languageserver.diagnostics.emptyContinuationLine":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for flagging empty continuation lines found in instructions that span multiple lines","tags":["advanced"]},"docker.languageserver.diagnostics.directiveCasing":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for parser directives that are not written in lowercase","tags":["advanced"]},"docker.languageserver.diagnostics.instructionCasing":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for instructions that are not written in uppercase","tags":["advanced"]},"docker.languageserver.diagnostics.instructionCmdMultiple":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for flagging a Dockerfile with multiple CMD instructions","tags":["advanced"]},"docker.languageserver.diagnostics.instructionEntrypointMultiple":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for flagging a Dockerfile with multiple ENTRYPOINT instructions","tags":["advanced"]},"docker.languageserver.diagnostics.instructionHealthcheckMultiple":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for flagging a Dockerfile with multiple HEALTHCHECK instructions","tags":["advanced"]},"docker.languageserver.diagnostics.instructionJSONInSingleQuotes":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for JSON instructions that are written incorrectly with single quotes","tags":["advanced"]},"docker.languageserver.diagnostics.instructionWorkdirRelative":{"scope":"resource","type":"string","default":"warning","enum":["ignore","warning","error"],"description":"Controls the diagnostic severity for WORKDIR instructions that do not point to an absolute path","tags":["advanced"]},"docker.languageserver.formatter.ignoreMultilineInstructions":{"scope":"resource","type":"boolean","default":false,"description":"Controls whether the Dockerfile formatter should ignore instructions that span multiple lines when formatting","tags":["advanced"]},"containers.composeBuild":{"type":"boolean","default":true,"description":"Set to true to include --build option when compose command is invoked"},"containers.composeDetached":{"type":"boolean","default":true,"description":"Set to true to include --d (detached) option when compose command is invoked"},"containers.showRemoteWorkspaceWarning":{"type":"boolean","default":true,"description":"Set to true to prompt to switch from \"UI\" extension mode to \"Workspace\" extension mode if an operation is not supported in UI mode.","tags":["advanced"]},"containers.scaffolding.templatePath":{"type":"string","description":"The path to use for scaffolding templates.","tags":["advanced"]},"containers.containerCommand":{"type":"string","description":"Command to use for container actions (e.g. `docker` command). If the executable path contains whitespace, it needs to be quoted appropriately. If unset, the extension will attempt to auto-detect the command to use.","scope":"machine-overridable"},"containers.composeCommand":{"type":"string","description":"Command to use for compose actions (e.g. `docker-compose`, `docker compose`, etc. command). If the executable path contains whitespace, it needs to be quoted appropriately. If unset, the extension will attempt to auto-detect the command to use.","scope":"machine-overridable"},"containers.enableComposeLanguageService":{"type":"boolean","default":true,"description":"Whether or not to enable the Compose Language Service. Changing requires a restart to take effect."},"containers.containerClient":{"type":"string","description":"Which container client to use. If not specified, Docker will be used. Changing requires a restart to take effect.","scope":"machine-overridable","enum":["","com.microsoft.visualstudio.containers.docker","com.microsoft.visualstudio.containers.podman"],"enumItemLabels":["Default","Docker","Podman"]},"containers.orchestratorClient":{"type":"string","description":"Which container orchestrator client to use. If not specified, Docker Compose will be used. Changing requires a restart to take effect.","scope":"machine-overridable","enum":["","com.microsoft.visualstudio.orchestrators.dockercompose","com.microsoft.visualstudio.orchestrators.podmancompose"],"enumItemLabels":["Default","Docker Compose","Podman Compose"]}}},"commands":[{"command":"vscode-containers.compose.down","title":"Compose Down","category":"Containers"},{"command":"vscode-containers.compose.restart","title":"Compose Restart","category":"Containers"},{"command":"vscode-containers.compose.up","title":"Compose Up","category":"Containers"},{"command":"vscode-containers.compose.up.subset","title":"Compose Up - Select Services","category":"Containers"},{"command":"vscode-containers.compose.down.subset","title":"Compose Down - Select Services","category":"Containers"},{"command":"vscode-containers.configure","title":"Add Docker Files to Workspace...","category":"Containers"},{"command":"vscode-containers.configureCompose","title":"Add Compose Files to Workspace...","category":"Containers"},{"command":"vscode-containers.openDockerDownloadPage","title":"Learn More About Installing Docker Desktop","category":"Containers"},{"command":"vscode-containers.containers.attachShell","title":"Attach Shell","category":"Containers"},{"command":"vscode-containers.containers.browse","title":"Open in Browser","category":"Containers"},{"command":"vscode-containers.containers.configureExplorer","title":"Configure Explorer...","category":"Containers","icon":"$(settings-gear)"},{"command":"vscode-containers.containers.downloadFile","title":"Download...","category":"Containers","icon":"$(desktop-download)"},{"command":"vscode-containers.containers.inspect","title":"Inspect","category":"Containers"},{"command":"vscode-containers.containers.openFile","title":"Open","category":"Containers","icon":"$(go-to-file)"},{"command":"vscode-containers.containers.prune","title":"Prune...","category":"Containers","icon":"$(clear-all)"},{"command":"vscode-containers.containers.refresh","title":"Refresh","category":"Containers","icon":"$(refresh)"},{"command":"vscode-containers.containers.remove","title":"Remove...","category":"Containers"},{"command":"vscode-containers.containers.group.remove","title":"Remove...","category":"Containers"},{"command":"vscode-containers.containers.restart","title":"Restart","category":"Containers"},{"command":"vscode-containers.containers.select","title":"Select container","category":"Containers"},{"command":"vscode-containers.containers.start","title":"Start","category":"Containers"},{"command":"vscode-containers.containers.stop","title":"Stop","category":"Containers"},{"command":"vscode-containers.containers.stats","title":"Stats","category":"Containers"},{"command":"vscode-containers.containers.viewLogs","title":"View Logs","category":"Containers"},{"command":"vscode-containers.containers.composeGroup.logs","title":"Compose Logs","category":"Containers"},{"command":"vscode-containers.containers.composeGroup.start","title":"Compose Start","category":"Containers"},{"command":"vscode-containers.containers.composeGroup.stop","title":"Compose Stop","category":"Containers"},{"command":"vscode-containers.containers.composeGroup.restart","title":"Compose Restart","category":"Containers"},{"command":"vscode-containers.containers.composeGroup.down","title":"Compose Down","category":"Containers"},{"command":"vscode-containers.containers.filter","title":"Filter...","category":"Containers","icon":"$(search)"},{"command":"vscode-containers.containers.clearFilter","title":"Clear Filter","category":"Containers","icon":"$(search-stop)"},{"command":"vscode-containers.debugging.initializeForDebugging","title":"Initialize for container debugging","category":"Containers"},{"command":"vscode-containers.images.build","title":"Build Image...","category":"Container Images"},{"command":"vscode-containers.images.configureExplorer","title":"Configure Explorer...","category":"Container Images","icon":"$(settings-gear)"},{"command":"vscode-containers.images.inspect","title":"Inspect","category":"Container Images"},{"command":"vscode-containers.images.prune","title":"Prune...","category":"Container Images","icon":"$(clear-all)"},{"command":"vscode-containers.images.showDangling","title":"Show dangling images","category":"Container Images","icon":"$(eye)"},{"command":"vscode-containers.images.hideDangling","title":"Hide dangling images","category":"Container Images","icon":"$(eye-closed)"},{"command":"vscode-containers.images.pull","title":"Pull","category":"Container Images"},{"command":"vscode-containers.images.push","title":"Push...","category":"Container Images"},{"command":"vscode-containers.images.refresh","title":"Refresh","category":"Container Images","icon":"$(refresh)"},{"command":"vscode-containers.images.remove","title":"Remove...","category":"Container Images"},{"command":"vscode-containers.images.group.remove","title":"Remove...","category":"Container Images"},{"command":"vscode-containers.images.run","title":"Run","category":"Container Images"},{"command":"vscode-containers.images.runAzureCli","title":"Run Azure CLI","category":"Container Images"},{"command":"vscode-containers.images.runInteractive","title":"Run Interactive","category":"Container Images"},{"command":"vscode-containers.images.tag","title":"Tag...","category":"Container Images"},{"command":"vscode-containers.images.copyFullTag","title":"Copy Full Tag","category":"Container Images"},{"command":"vscode-containers.images.filter","title":"Filter...","category":"Container Images","icon":"$(search)"},{"command":"vscode-containers.images.clearFilter","title":"Clear Filter","category":"Container Images","icon":"$(search-stop)"},{"command":"vscode-containers.networks.configureExplorer","title":"Configure Explorer...","category":"Container Networks","icon":"$(settings-gear)"},{"command":"vscode-containers.networks.create","title":"Create...","category":"Container Networks","icon":"$(add)"},{"command":"vscode-containers.networks.inspect","title":"Inspect","category":"Container Networks"},{"command":"vscode-containers.networks.prune","title":"Prune...","category":"Container Networks","icon":"$(clear-all)"},{"command":"vscode-containers.networks.refresh","title":"Refresh","category":"Container Networks","icon":"$(refresh)"},{"command":"vscode-containers.networks.remove","title":"Remove...","category":"Container Networks"},{"command":"vscode-containers.pruneSystem","title":"Prune System...","category":"Containers"},{"command":"vscode-containers.registries.azure.buildImage","title":"Build Image in Azure...","category":"Azure Container Registry"},{"command":"vscode-containers.registries.azure.createRegistry","title":"Create Registry...","category":"Azure Container Registry"},{"command":"vscode-containers.registries.azure.deleteRegistry","title":"Delete Registry...","category":"Azure Container Registry"},{"command":"vscode-containers.registries.azure.deleteRepository","title":"Delete Repository...","category":"Azure Container Registry"},{"command":"vscode-containers.registries.azure.openInPortal","title":"Open in Portal","category":"Azure Container Registry"},{"command":"vscode-containers.registries.azure.untagImage","title":"Untag Image...","category":"Azure Container Registry"},{"command":"vscode-containers.registries.azure.viewProperties","title":"View Properties","category":"Azure Container Registry"},{"command":"vscode-containers.registries.connectRegistry","title":"Connect Registry...","category":"Container Registries","icon":"$(plug)"},{"command":"vscode-containers.registries.copyImageDigest","title":"Copy Image Digest","category":"Container Registries"},{"command":"vscode-containers.registries.inspectRemoteImageManifest","title":"Inspect Image Manifest","category":"Container Registries"},{"command":"vscode-containers.registries.copyRemoteFullTag","title":"Copy Full Tag","category":"Container Registries"},{"command":"vscode-containers.registries.deleteImage","title":"Delete Image...","category":"Container Registries"},{"command":"vscode-containers.registries.deployImageToAzure","title":"Deploy Image to Azure App Service...","category":"Container Registries"},{"command":"vscode-containers.registries.deployImageToAca","title":"Deploy Image to Azure Container Apps...","category":"Container Registries"},{"command":"vscode-containers.registries.disconnectRegistry","title":"Disconnect","category":"Container Registries"},{"command":"vscode-containers.registries.genericV2.removeTrackedRegistry","title":"Disconnect from Generic Container Registry","category":"Container Registries"},{"command":"vscode-containers.registries.genericV2.addTrackedRegistry","title":"Connect to Generic Container Registry...","category":"Container Registries"},{"command":"vscode-containers.registries.dockerHub.openInBrowser","title":"Open in Browser","category":"Docker Hub"},{"command":"vscode-containers.registries.help","title":"Registries Help","category":"Container Registries","icon":"$(question)"},{"command":"vscode-containers.registries.logInToContainerCli","title":"Log In to container CLI","category":"Container Registries"},{"command":"vscode-containers.registries.logOutOfContainerCli","title":"Log Out of container CLI","category":"Container Registries"},{"command":"vscode-containers.registries.pullImage","title":"Pull Image","category":"Container Registries"},{"command":"vscode-containers.registries.pullRepository","title":"Pull Repository","category":"Container Registries"},{"command":"vscode-containers.registries.reconnectRegistry","title":"Re-enter credentials","category":"Container Registries"},{"command":"vscode-containers.registries.refresh","title":"Refresh","category":"Container Registries","icon":"$(refresh)"},{"command":"vscode-containers.volumes.configureExplorer","title":"Configure Explorer...","category":"Container Volumes","icon":"$(settings-gear)"},{"command":"vscode-containers.volumes.inspect","title":"Inspect","category":"Container Volumes"},{"command":"vscode-containers.volumes.prune","title":"Prune...","category":"Container Volumes","icon":"$(clear-all)"},{"command":"vscode-containers.volumes.refresh","title":"Refresh","category":"Container Volumes","icon":"$(refresh)"},{"command":"vscode-containers.volumes.remove","title":"Remove...","category":"Container Volumes"},{"command":"vscode-containers.help","title":"Container Help","category":"Containers","icon":"$(question)"},{"command":"vscode-containers.help.reportIssue","title":"Report Issue","category":"Containers"},{"command":"vscode-containers.help.openWalkthrough","title":"Open Container Tools Extension Walkthrough","category":"Containers"},{"command":"vscode-containers.chooseContainerRuntime","title":"Choose container runtime...","category":"Containers","icon":"$(tools)"},{"command":"vscode-containers.askCopilot","title":"Ask Copilot","category":"Containers"},{"command":"vscode-containers.contexts.use","title":"Use","category":"Docker Contexts","icon":"$(check)"},{"command":"vscode-containers.contexts.remove","title":"Remove...","category":"Docker Contexts"},{"command":"vscode-containers.contexts.inspect","title":"Inspect","category":"Docker Contexts"},{"command":"vscode-containers.contexts.configureExplorer","title":"Configure Explorer...","category":"Docker Contexts","icon":"$(settings-gear)"},{"command":"vscode-containers.contexts.refresh","title":"Refresh","category":"Docker Contexts","icon":"$(refresh)"},{"command":"vscode-containers.contexts.help","title":"Docker Context Help","category":"Docker Contexts","icon":"$(question)"},{"command":"vscode-containers.activateContainerRuntimeProviders","title":"Activate Container Runtime Providers...","category":"Containers"},{"command":"vscode-containers.activateRegistryProviders","title":"Activate Registry Providers...","category":"Containers"}],"views":{"containersView":[{"id":"vscode-containers.views.containers","name":"Containers","icon":"resources/ContainerTools.svg"},{"id":"vscode-containers.views.images","name":"Images","icon":"resources/ContainerTools.svg"},{"id":"vscode-containers.views.registries","name":"Registries","icon":"resources/ContainerTools.svg"},{"id":"vscode-containers.views.networks","name":"Networks","icon":"resources/ContainerTools.svg","visibility":"collapsed"},{"id":"vscode-containers.views.volumes","name":"Volumes","icon":"resources/ContainerTools.svg","visibility":"collapsed"},{"id":"vscode-containers.views.dockerContexts","name":"Docker Contexts","icon":"resources/ContainerTools.svg","visibility":"collapsed"},{"id":"vscode-containers.views.help","name":"Help and Feedback","icon":"resources/ContainerTools.svg"}]},"viewsContainers":{"activitybar":[{"icon":"resources/ContainerTools.svg","id":"containersView","title":"Containers"}]},"walkthroughs":[{"id":"containersStart","title":"Getting Started with Container Tools","featuredFor":["Dockerfile","Containerfile","compose.yaml","docker-compose.yml","docker-compose.yaml","compose.yml"],"description":"Learn about Docker and the Container Tools extension for Visual Studio Code","steps":[{"id":"chooseContainerRuntime","title":"Choose your Container Runtime","completionEvents":["onCommand:vscode-containers.chooseContainerRuntime"],"description":"The Container Tools extension supports multiple container runtimes. Choose the one you want to use - you can change this anytime.\n[Choose Container Runtime](command:vscode-containers.chooseContainerRuntime)","media":{"markdown":"resources/walkthroughs/empty.md"}},{"id":"openFolder","title":"Open a Workspace Folder","completionEvents":["onCommand:workbench.action.files.openFolder"],"when":"workspaceFolderCount == 0 && !isMac","description":"Open a workspace folder to get started with Container Tools extension features.\n[Open Folder](command:workbench.action.files.openFolder)","media":{"markdown":"resources/walkthroughs/empty.md"}},{"id":"openFolderMac","title":"Open a Workspace Folder","completionEvents":["onCommand:workbench.action.files.openFileFolder"],"when":"workspaceFolderCount == 0 && isMac","description":"Open a workspace folder to get started with Container Tools extension features.\n[Open Folder](command:workbench.action.files.openFileFolder)","media":{"markdown":"resources/walkthroughs/empty.md"}},{"id":"scaffold","title":"Add Docker Files to Workspace","completionEvents":["onCommand:vscode-containers.configure","onCommand:vscode-containers.configureCompose"],"when":"workspaceFolderCount > 0","description":"A Dockerfile contains the instructions to assemble an image containing your app and its dependencies. Using this image to run your app in a container creates a production-like, reproducible runtime environment.\n\nIntelliSense support for authoring your Dockerfile is provided.\n[Add Docker Files](command:vscode-containers.configure)","media":{"image":"https://github.com/microsoft/vscode-containers/raw/main/resources/walkthroughs/1g-addDockerFiles.gif","altText":"Modifying Dockerfiles"}},{"id":"buildImage","title":"Build an Image","completionEvents":["onCommand:vscode-containers.images.build"],"when":"workspaceFolderCount > 0","description":"The Container Tools extension makes it simple to build your image.\n[Build Image](command:vscode-containers.images.build)","media":{"image":"https://github.com/microsoft/vscode-containers/raw/main/resources/walkthroughs/2g-buildImage.gif","altText":"Building a container image"}},{"id":"runContainer","title":"Run a Container","completionEvents":["onCommand:vscode-containers.images.run","onCommand:vscode-containers.compose.up","onCommand:vscode-containers.compose.up.subset","onCommand:vscode-containers.compose.down.subset"],"description":"You can run any image on your system including those you've built with a Dockerfile.\n[Run Image](command:vscode-containers.images.run)","media":{"image":"https://github.com/microsoft/vscode-containers/raw/main/resources/walkthroughs/3g-runContainers.gif","altText":"Running a container"}},{"id":"containerExplorer","title":"Use the Container Explorer","completionEvents":["onView:vscode-containers.views.containers","onCommand:workbench.view.extension.containersView"],"description":"The Container Explorer makes it easy to manage, troubleshoot, and deploy containerized applications. The Container Explorer shows a number of container resources such as containers, images, volumes, networks, and container registries.\n\nThe right-click menu provides access to commonly used commands for each resource type.\n[Open Container Explorer](command:vscode-containers.views.containers.focus)","media":{"image":"https://github.com/microsoft/vscode-containers/raw/main/resources/walkthroughs/4g-useExplorer.gif","altText":"Using the Container Explorer"}},{"id":"pushImage","title":"Push an Image to a Container Registry","completionEvents":["onCommand:vscode-containers.images.push"],"description":"The Container Tools Extension allows you to push your container image to Docker Hub, Azure Container Registry and other registry providers.\n[Push an Image](command:vscode-containers.images.push)","media":{"image":"https://github.com/microsoft/vscode-containers/raw/main/resources/walkthroughs/5g-pushImage.gif","altText":"Pushing an image to a container registry"}},{"id":"azDeploy","title":"Deploy to Azure App Service","completionEvents":["onCommand:vscode-containers.registries.deployImageToAzure","onCommand:vscode-containers.registries.deployImageToAca"],"description":"The Container Tools extension helps you deploy your containerized applications and take advantage of a fully-managed platform using Azure App Service. Prior to deployment, the image must be uploaded to either Azure Container Registry or Docker Hub.\n\nAfter a successful deployment, select **Open Site** in the notification. Your container is running in Azure!\n[Deploy](command:vscode-containers.registries.deployImageToAzure)","media":{"image":"https://github.com/microsoft/vscode-containers/raw/main/resources/walkthroughs/6g-deployToAppSvc.gif","altText":"Deploying to Azure App Service"}},{"id":"learn","title":"Learn More","description":"Great job! You've now completed Getting Started with Container Tools. But don't stop here! There are plenty of ways to become more proficient building containerized applications using the Container Tools extension.\n\nFor example, you can [debug a container](https://code.visualstudio.com/docs/containers/debug-common), or [run multiple containers](https://code.visualstudio.com/docs/containers/docker-compose) at once using Docker Compose.\n\nCheck out our [documentation](https://code.visualstudio.com/docs/containers/overview) to make the most of the Container Tools extension for VS Code!","completionEvents":["onStepSelected"],"media":{"markdown":"resources/walkthroughs/empty.md"}}]}],"languageModelTools":[{"name":"container-tools_get-config","tags":["containers"],"toolReferenceName":"containerToolsConfig","displayName":"Get Container Tools Configuration","modelDescription":"Gets the configuration the user has set for the container and container orchestrator (compose) CLIs, including the correct base commands to use and any environment variables that will be set. This tool **MUST** be called before generating or running any container or container orchestrator CLI commands, to ensure the correct base command is used.","userDescription":"Gets the configuration for the Container Tools extension.","canBeReferencedInPrompt":true,"icon":"$(settings-gear)"}]},"engines":{"vscode":"^1.105.0"},"capabilities":{"virtualWorkspaces":false,"untrustedWorkspaces":{"supported":"limited","description":"Workspace must be trusted in order to perform relevant container actions.","restrictedConfigurations":["containers.commands.build","containers.commands.run","containers.commands.runInteractive","containers.commands.attach","containers.commands.logs","containers.commands.composeUp","containers.commands.composeUpSubset","containers.commands.composeDown","containers.environment","containers.scaffolding.templatePath","containers.containerCommand","containers.composeCommand","containers.containerClient","containers.orchestratorClient"]}},"scripts":{"build":"npm run build:esbuild & npm run build:check","build:esbuild":"node esbuild.mjs","build:check":"tsc --noEmit","package":"vsce package","lint":"eslint --max-warnings 0","test":"vscode-test"},"extensionDependencies":["vscode.docker","vscode.yaml"],"devDependencies":{"@microsoft/vscode-azext-eng":"1.1.0-alpha.1","@types/fs-extra":"^11.0.1","@types/node":"22.x","@types/semver":"^7.3.13","@types/vscode":"1.105.0","@vscode/test-cli":"*","@vscode/test-electron":"*","@vscode/vsce":"*","esbuild":"*","esbuild-plugin-copy":"*","tsx":"*"},"dependencies":{"@azure/arm-containerregistry":"^10.1.0","@azure/storage-blob":"^12.14.0","@microsoft/compose-language-service":"^0.5.0","@microsoft/vscode-azext-azureauth":"^6.0.0-alpha.8","@microsoft/vscode-azext-azureutils":"^4.0.0","@microsoft/vscode-azext-utils":"^4.1.0","@microsoft/vscode-container-client":"^0.5.3","@microsoft/vscode-docker-registries":"^0.4.2","@microsoft/vscode-processutils":"^0.2.1","dayjs":"^1.11.7","dockerfile-language-server-nodejs":"^0.15.0","fast-xml-parser":"^5.7.1","fs-extra":"^11.1.1","gradle-to-js":"^2.0.1","handlebars":"^4.7.9","semver":"^7.5.2","tar":"^7.5.11","vscode-languageclient":"^10.0.0-next.19","vscode-tas-client":"^0.1.75","zod":"~4"}},"location":{"$mid":1,"path":"/home/jeffry/.vscode-oss/extensions/ms-azuretools.vscode-containers-2.4.5-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","publisherDisplayName":"ms-azuretools","metadata":{"installedTimestamp":1780933192394,"pinned":false,"source":"gallery","id":"2cd1d691-3d69-4d2d-ae39-fda4bc4cfd3d","publisherId":"52b787f2-79a9-4f32-99b4-393afe3005d3","publisherDisplayName":"ms-azuretools","targetPlatform":"universal","updated":false,"private":false,"isPreReleaseVersion":false,"hasPreReleaseVersion":false,"size":4309915},"isValid":true,"validations":[],"preRelease":false,"forceAutoUpdate":false}]}