GitVaulty for VS CodeEdit complete GitVaulty-encrypted files in VS Code's native text editor. What it doesOpen any Save or Auto Save encrypts the updated bytes with the file's current GitVaulty access policy, decrypts the result to verify an exact match, and atomically replaces the ciphertext. No plaintext file is created in the repository. Requirements
The extension includes the appropriate SOPS executable for its published operating-system package. CommandsWhile a decrypted GitVaulty document is active:
The ConflictsThe extension fingerprints the ciphertext when it opens. If Git, another editor, or another process changes that ciphertext, GitVaulty does not silently overwrite it. A clean editor reloads. A dirty editor offers to reload the encrypted version or save its decrypted contents to a location you explicitly choose. Security boundaryGitVaulty does not write plaintext into the repository, a GitVaulty temporary directory, or the extension's own storage. Native editing does place decrypted text in VS Code's document model. Installed extensions and language servers may observe it, and VS Code may persist unsaved Hot Exit or crash-recovery data in its private application storage. JavaScript cannot guarantee erasure of copied strings or buffers. For a more isolated workflow, continue using:
The native editor currently accepts valid UTF-8 text without NUL bytes. Use the CLI workflow for binary files. DevelopmentInstall the root dependencies first because the extension bundles GitVaulty's core TypeScript, then install the extension package. Marketplace tooling requires Node.js 22 or newer.
Create and test the package for the current machine:
The check runs unit tests, typechecking, the production bundle, and a real VS Code extension-host test that opens, edits, saves, and verifies an encrypted fixture. Packaging stages only the current platform's SOPS executable and its license into the VSIX. Marketplace releasesThe extension uses the permanent Marketplace identity
The VS Code extension release GitHub workflow builds and tests native packages for macOS arm64 and x64, Linux arm64 and x64, and Windows x64. A manual run publishes a prerelease by default. A tag matching the extension version publishes a normal release:
The workflow verifies that the tag version exactly matches For a local one-off inspection from the extension directory:
LicenseMIT |