Skip to content

Subconscious Code

Subconscious Code is a VS Code and Open VSX-compatible coding extension backed by the local Subconscious engine. It reads and writes the same workspaces, threads, and messages as the desktop client.

Availability

Version 0.0.2 is implemented in source for VS Code 1.93 or newer. A current Open VSX or Visual Studio Marketplace publication is not yet verified; use the Extension Development Host or a manually built VSIX.

Coding workflow

The Subconscious Activity Bar contains retained Code and Settings views. Chat restores the selected workspace and thread, loads the available models, streams responses over WebSocket, reconnects after interruption, and can cancel an active turn. Configure Tools opens as a separate editor page.

Type # to attach a file, folder listing, recent terminal activity, code symbol, Problems diagnostics, Git diff, or open-editor list. Attached material is sent as a separate context block, so the saved user message remains readable.

Agent work appears as expandable activity cards. Proposed edits open in VS Code’s native diff view and require apply/discard review; successful file changes offer local Show and Undo actions. Terminal commands are decomposed for per-command approval, and all file tools are constrained to the open workspace or an explicitly selected working directory.

Built-in coding tools

Area Tools Default
Files read_file, list_directory, create_file, edit_file Enabled
Search/context search_files, list_code_usages, get_changes, get_workspace_context Enabled
Quality get_diagnostics, run_tests Enabled
IDE start_debug Enabled
Web fetch_web Enabled; sends the requested URL to the network
Execution run_terminal, run_task Disabled

Each tool can be disabled or assigned inherit, always ask, or auto-approve behavior. Supervised mode asks before mutating actions; auto mode runs eligible tools without prompting. A global auto-approve switch overrides that posture, so use it carefully.

Commands

  • Reconnect to Engine, New Thread, and Select Workspace
  • Configure Tools for built-in and MCP tool policy
  • Set Working Directory when the editor has no open folder

Project-aware execution

Execution profiles detect Node.js, Python, Rust, and Go manifests and watch their manifests and lockfiles. Where the command can be inferred safely, the profile records run, test, and build commands plus a Python conda/virtual-environment activation. Unknown commands stay visibly undetermined and can be edited in Settings.

MCP tools

The extension can host Model Context Protocol servers from .vscode/mcp.json using the VS Code servers and inputs format. Both stdio and HTTP transports are supported, with ${workspaceFolder}, ${env:NAME}, and ${input:id} substitution. The file is watched for changes; discovered tools appear as mcp.<server>.<tool> and enter the same enablement and approval pipeline as built-ins. A failed server does not prevent other servers or the extension from starting.

Settings reference

Setting Default Purpose
subconscious.agent.autonomyMode supervised Mutating-tool approval posture
subconscious.tools.autoApprove false Global approval override
subconscious.mcp.enabled / .configFile true / .vscode/mcp.json MCP discovery and configuration
subconscious.autoStartEngine / .engineCommand true / subconscious Engine startup behavior
subconscious.dev / .dataDir false / empty Development and discovery location
subconscious.toolTimeoutSeconds 120 Tool timeout, from 5 to 600 seconds
subconscious.maxReadBytes 10485760 Read limit, from 1 KiB to 100 MiB
subconscious.trustedCommands / .commandDenylist empty Segment-level terminal trust; deny matches win

The Settings view also persists custom instructions up to 10,000 characters, the default model, enabled tools, autonomy mode, and per-root execution profiles.