Skip to content
| Marketplace
Sign in
Visual Studio Code>Machine Learning>LoopOpsNew to Visual Studio Code? Get it now.
LoopOps

LoopOps

LoopOps

|
30 installs
| (0) | Free
LoopOps agentic development environment, inside VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

LoopOps ADE for VS Code

The bundled loopops-sidecar binary is unsigned. This build has no macOS notarization and no Windows Authenticode signing. The first time the extension runs it, your OS will warn you:

  • macOS: Gatekeeper will refuse to open it. Run xattr -d com.apple.quarantine <path-to-loopops-sidecar> on the binary inside the extension's install directory, or approve it once from System Settings → Privacy & Security → "Allow Anyway" after the first blocked attempt.
  • Windows: SmartScreen will show "Windows protected your PC." Click More info → Run anyway to continue.

This is a deliberate v1 trade, not an oversight — signing and notarization are a follow-up change with their own credential and CI-secret requirements. Nothing about your LoopOps account or your code is affected by this warning; it only means the binary's publisher identity has not been cryptographically attested yet.

What this is

LoopOps ADE runs the same agent runtime as the desktop app, inside VS Code: sign in once, bind each open workspace folder to a LoopOps project, and run plans, chats, and SDD flows without leaving the editor. Chat history and memory are always scoped to the active project, so changing the active folder also changes the conversation context.

This release ships the full extension: activation, sign-in, secret storage, workspace-folder → project bindings, the sidecar process lifecycle, and the chat/plan/SDD/settings webview.

Requirements

  • VS Code ^1.90.0 or a compatible fork. This floor is load-bearing: earlier releases ship Node 18, where globalThis.crypto is not available by default, and the shared sidecar client mints request ids with crypto.randomUUID().
  • A LoopOps account, reached through the same sign-in flow as the desktop app (loopops.signIn in the Command Palette).

Commands

Command What it does
LoopOps: Sign In Opens the LoopOps sign-in page in your browser and completes the session in this window.
LoopOps: Pick Repository Chooses which open workspace folder is active, when more than one is open.
LoopOps: Open Panel Opens the chat/plan/SDD/settings panel.

Project-scoped history

There is no This project / All history toggle. The panel loads chat history for the active project automatically; it does not require a scope button. New session follows the same lifecycle as Desktop and starts a fresh conversation for that project.

A stable marker at <project>/.loopops/project.json identifies the project:

{
  "version": 1,
  "projectFingerprint": "…",
  "source": "remote"
}

The marker can also include remote or seed. A Git remote is preferred; a Git project without one receives a generated seed, with a path-derived fallback where necessary. The fingerprint survives an absolute-path move and scopes local history and memory across VS Code and Desktop. The marker is identity-only: its writer creates .loopops only under an existing root and preserves meaningful trailing spaces when parsing Git roots (it strips CR/LF only).

Runtime databases are shared per machine rather than stored in a project:

Platform Data directory
macOS ~/Library/Application Support/ai.loopops.ade
Windows %APPDATA%/ai.loopops.ade
Linux $XDG_DATA_HOME/ai.loopops.ade, or ~/.local/share/ai.loopops.ade

memory.db and sessions.db live there. .loopops/sessions.db is retired and used only for migration. VS Code migrates legacy session archives from former globalStorage locations into the shared directory; legacy memory.db is not migrated.

SDD and settings

Choose Direct or SDD in the Chat composer. Direct chat can run shell commands from assistant code blocks; if the command fails, the output is written back into the session and the agent is prompted to fix the failure, matching Desktop behavior.

SDD automatic mode runs its phases through; manual mode pauses at gates and offers Continue, Regenerate with feedback, and Stop. Its live view shows status, the current phase, activity, tasks/agents, and clears answered permission asks immediately.

SDD sends isolate: false, so its artifacts are written to the open workspace, matching Desktop. Work and issue runs still use worktrees. Saving settings reconfigures the sidecar before the UI reports success, so the next run uses the current gates, TDD, review budget, and model-routing choices.

Debugging from source

  1. Run bun install at the repository root.
  2. Copy .env.example to .env.local at the repository root and set VITE_LOOPOPS_SUPABASE_ANON_KEY. Keep this file local; it is gitignored.
  3. Open the repository root in VS Code, select Run LoopOps ADE Extension, and press F5.

The pre-launch task builds host and webview source maps, compiles the native sidecar for the current machine, and stages it at the runtime path expected by the extension. The debug host also disables the legacy loopops.loopops extension so its views and status bar cannot shadow this extension. Preparation fails before launch with a clear message if .env.local or the anon key is missing. See TESTING.md for the manual verification flow. After source changes, rebuild and reload the Extension Development Host before verifying behavior.

First run

The panel guides setup before enabling a run:

  1. Select Sign in and finish the browser flow.
  2. Choose the active repository when the window contains multiple folders.
  3. Select a project from the list grouped by LoopOps workspace.

To switch later, open the workspace/project switcher from the profile card at the top of the panel: it lists every workspace and its projects, and picking a different project rebinds the active repository through the same path as initial onboarding. The menu also offers repository picking for multi-folder windows.

If the account has exactly one workspace containing exactly one project, the extension binds it automatically; otherwise it never guesses. A failed chat request remains in the composer and its error is shown in the panel.

Known limitations (v1)

  • No macOS notarization and no Windows Authenticode signing — see the notice above.
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft