Strata VS Code ExtensionIntegrated infrastructure workspace management for VS Code Features • Installation • Quick Start • Commands • Configuration • Troubleshooting OverviewThe Strata VS Code extension brings the power of the Strata CLI into your editor, enabling you to validate, build, and deploy infrastructure configurations without leaving VS Code. Strata solves the problem of managing multiple nearly-identical environments. Instead of copy-pasting Terraform folders for each environment ( What it does:
FeaturesCore Capabilities
Advanced Features
InstallationFrom VS Code Marketplace
From VSIX File (Development)
Prerequisites
Quick Start1. Initialize a Strata Workspace
This creates 2. Wire YAML Schemas
This enables autocomplete and inline validation for all 3. Check Workspace ReadinessOpen the Strata view in the activity bar (icon on the left sidebar):
4. Validate Your Configuration
5. Build & Deploy
Or right-click in the editor and select Strata: Build or Strata: Deploy. CommandsMain Commands
Environment & Diagnostics
Workspace Exploration
Other
ViewsWorkspace ViewShows workspace health, readiness phases, and the active profile. Features:
Files ViewLists all YAML files in the workspace with validation badges. Badges:
Actions:
Repositories ViewShows all configured remote repositories with git metadata. Features:
Tools ViewChecks availability of required external tools. Status indicators:
Tools checked:
Environments ViewDisplays deployments and their status. Features:
Actions:
Audit Trail ViewDisplays deployment history with changeset details. Features:
Actions:
ConfigurationSettingsAccess via Settings (
|
| Property | Type | Description |
|---|---|---|
command |
enum | validate, build, or deploy |
file |
string | YAML file path relative to workspace root (optional) |
dryRun |
boolean | Run in dry-run mode (default: false) |
stage |
string | Target a specific deployment stage (optional) |
Chat Participant
Use the Strata chat participant to ask questions about your workspace.
In VS Code Chat
@strata <message>
Available Commands
| Command | Purpose |
|---|---|
@strata status |
Show workspace health, profile, and readiness |
@strata validate |
Validate the current file or named file |
@strata guide |
Show the 8-phase readiness checklist |
@strata build |
Show how to build your deployment |
@strata deploy |
Show how to deploy your deployment |
@strata repos |
Show repository status with latest tags |
Troubleshooting
"strata: command not found"
Problem: The extension cannot find the Strata CLI.
Solution:
- Ensure Strata is installed:
pipx install xyz-strataoruv sync - If installed in a virtual environment, set
strata.cliPath:- For uv projects:
"strata.cliPath": "uv run strata" - For virtualenv:
"strata.cliPath": "/path/to/venv/bin/strata"
- For uv projects:
"No strata workspace found"
Problem: The extension doesn't see a .strata/solution.json file.
Solution:
- Open the Strata view in the activity bar
- Click "Initialize Workspace"
- Or run:
strata sln initin the terminal - Reload VS Code (
Ctrl+Shift+P> "Reload Window")
Validation runs slowly
Problem: On-save validation is slow on large files or slow systems.
Solution:
- Disable
strata.validateOnType(should already be false by default) - Increase debounce delay (internal setting, not user-configurable yet)
- Or disable
strata.validateOnSaveand validate manually
Schema autocomplete not working
Problem: YAML editor doesn't show autocomplete suggestions.
Solution:
- Run "Strata: Export & Wire Schemas"
- This wires the schemas for the YAML extension
- Schemas are cached in
.vscode/strata-schemas.json(auto-generated)
Authentication errors (Azure Key Vault, Vault, etc.)
Problem: Errors when accessing secret stores during validation.
Solution:
- Ensure you're authenticated:
- Azure:
az login - HashiCorp Vault: Set
VAULT_ADDRandVAULT_TOKEN - AWS: Configure
~/.aws/credentials
- Azure:
- Run "Strata: Run Doctor" to check connectivity
- Check the Output panel for detailed error messages
"View shows empty tree"
Problem: A tree view (Files, Repositories, Environments, etc.) is empty.
Solution:
- Click Refresh at the top of the view
- Check that your
.strata/solution.jsonis valid:strata validate .strata/solution.json - Check the extension output: View > Output > select "Strata" from dropdown
Extension takes a long time to activate
Problem: Strata panel doesn't appear immediately when opening a workspace.
Solution:
- Extension only activates when
.strata/solution.jsonis detected - Initialize workspace: "Strata: Initialize Workspace"
- Reload VS Code after creating
.strata/solution.json
Weird validation errors with "@repo/path" references
Problem: Cross-repository references show as "file not found" errors.
Solution:
- Verify repositories are registered:
strata repo list - Check that remote paths exist:
strata repo status - Use
strata validate --deepto validate cross-repo references - Activate a profile first:
strata profile activate <name>
Development
Building from Source
cd src/vscode
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Watch for changes (development)
npm run watch
# Run tests
npm run test
# Package as VSIX (for distribution)
npm run package
Testing
npm run test
Tests use mocha and are located in tests/.
Extension Structure
src/vscode/
├── src/
│ ├── extension.ts # Entry point
│ ├── strataClient.ts # CLI wrapper
│ └── providers/ # View providers, code lens, chat, etc.
├── tests/ # Unit tests
├── resources/ # Icons, walkthrough markdown
├── package.json # Extension manifest
├── tsconfig.json # TypeScript config
└── README.md # This file
Debugging
- Press F5 to start the debug session
- A new VS Code window opens with the extension loaded
- Use the Debug Console to inspect logs
Known Limitations
- ⚠️ Large files — Validation on-type may be slow for files > 1000 lines
- ⚠️ Circular dependencies — Circular @repo references are detected but not resolved
- ⚠️ Terminal integration — Console REPL is launched in VS Code's integrated terminal; some features may behave differently than in a native shell
- ⚠️ Remote workspaces — Limited testing on VS Code Remote (SSH, Dev Containers). Use
uv run stratafor best results.
Support & Contributing
- Issues & Feature Requests: GitHub Issues
- Discussions: GitHub Discussions
- Contributing: See CONTRIBUTING.md
License
AGPL-3.0-or-later
The Strata extension is part of the Strata project and is licensed under the GNU Affero General Public License v3.0 or later. See LICENSE for details.