Blazing fast AI coding for VS Code
chatbots, APIs, CLIsfree and privacy-first

Privacy
CWC operates 100% on your machine—no code, prompts or usage data are collected.
Introduction
CWC helps construct prompts with files and instructions right in your favorite code editor.
The workflow
- Select task-relevant files with the help of Agentic Search.
- Select examples for model guidance.
- Send prompts with chatbots, coding agents or api calls.
Efficiency and speed
- For the powerful Agentic Search, SOTA models offer diminishing returns over cheap mid-tiers.
- File editing in single-turns make intent easy to unpack, thus 'thinking' short or even optional.
Send prompts with...
👉 Chatbots
Copy & paste into chatbots or autofill via browser extension.
👉 API requests
Call OpenAI-API-compatible model providers.
👉 Agents
Run your favorite coding agent.
Prompts
Overview of CWC-constructed prompts.
📄 Agentic search
Find task-relevant files through automated codebase discovery.
AGENT
# Task
In the project, find the complete set of primary and structural files relevant to the query.
# Output formatting
Output strictly as a bulleted list of file paths without explanations or any other text (e.g., - `path/to/file.ext`).
# Query
[INSTRUCTIONS]
📄 Intelligent search
A quick way for task-relevant files from a single message.
WEB
# Files
[WORKSPACE FILES, A FOLDER OR SELECTED FILES]
# Task
Among the attached files, find the complete set of primary and structural files relevant to the query.
# Output formatting
Your response must begin with "**Intelligent file search results:**", then a bulleted list of file paths, followed by a brief explanation. Example:
**Intelligent file search results:**
- `src/index.ts`
- `src/greetings/hello.ts`
- `src/greetings/welcome.ts`
These files contain the core greeting logic and module exports.
# Query
[INSTRUCTIONS]
API
# Files
[WORKSPACE FILES, A FOLDER OR SELECTED FILES]
# Task
Among the attached files, find the complete set of primary and structural files relevant to the query.
# Output formatting
Output strictly as a bulleted list of file paths without explanations or any other text. Example:
- `src/index.ts`
- `src/greetings/hello.ts`
- `src/greetings/welcome.ts`
# Query
[INSTRUCTIONS]
📄 Editing
Implementing new features, fixing bugs or doing refactors.
WEB/API
# Files
[SELECTED FILES]
# Output formatting
Whenever showing a new, updated, renamed, or deleted file, provide a brief explanation, then print the path in a markdown heading (e.g. ### New file: `src/examples/hello.py`, ### Updated file: `src/examples/hello.py`, ### Renamed file: `src/examples/hello.py` (old) `src/welcome.py` (new), ### Deleted file: `src/examples/hello.py`), followed by a markdown code block showing the original and updated code snippets with Git-style merge conflict syntax. Example:
[EXAMPLE]
# Task
[INSTRUCTIONS]
AGENT
# Files
[SELECTED FILES]
# Requirements
Begin by looking at [files](#files) section for referenced files (### File: `[PROJECT-RELATIVE PATH]`) and read them. Then, read potential images from the [task][#task]. You cannot make any other tool calls in this session except creating, deleting or updating listed in [files][#files] paths to complete the [task](#task).
# Task
[INSTRUCTIONS]
📄 Asking
Multi-purpose: explanations, code reviews, you name it.
WEB/API
# Files
[SELECTED FILES]
# Task
[INSTRUCTIONS]
AGENT
# Files
[SELECTED FILES]
# Requirements
Begin by looking at [files](#files) section for referenced files (### File: `[PROJECT-RELATIVE PATH]`) and read them. Then, read potential images from the [task][#task]. You cannot make any other tool calls in this session except creating, deleting or updating listed in [files][#files] paths to complete the [task](#task).
# Task
[INSTRUCTIONS]
📄 Code at cursor
TAB completions from SOTA reasoning models.
WEB
# Files
[SELECTED FILES]
### File `[ACTIVE FILE PATH]`
[PREFIX]<missing_text>[INSTRUCTIONS]</missing_text>[SUFFIX]
# Output formatting
Your response must begin with a markdown heading identifying the file and the cursor position, followed by a markdown code block containing the replacement text, followed by a brief explanation. The heading must be: "### Code at cursor: `[ACTIVE FILE PATH]` (ROW:COL)". Always refer to the symbol "<missing_text>" as "cursor position" and "replacement" as "completion". Example:
[EXAMPLE]
---
Find correct replacement text for the <missing_text> symbol.
API
# Files
[SELECTED FILES]
### File `[ACTIVE FILE PATH]`
[PREFIX]<missing_text>[INSTRUCTIONS]</missing_text>[SUFFIX]
# Output formatting
Find correct replacement for the <missing_text> symbol. Respond with replacement text within "replacement" XML tags, without explanations or any other text.
Example:
<replacement>!== undefined</replacement>'
📄 Commit messages
Generate commit messages based on staged changes and context files.
WEB/API
# Files
[SELECTED FILES WHEN EDITS WERE ACCEPTED]
# Changes
[STAGED CHANGES]
# Output formatting
Your response must begin with "**Commit message:**", then proceed with the message. Example:
**Commit message:** Bump version to 1.0.1
# Task
Write a brief and precise summary for the changes, limited to a single sentence. Because the summary will be used for a commit message, don't use any markdown formatting and don't include a trailing dot. Use an imperative tone to ensure clarity and focus on the primary change or purpose.
📄 Patch repair
Applying malformed edits generated by chatbots and APIs.
WEB/API
[ORIGINAL FILE]
[MALFORMED EDITS]
# Output formatting
Your response must begin with a markdown heading identifying the file, followed by a markdown code block containing the updated file. The heading must be: "### Patch repair: `path/to/file.ext`". Example:
[EXAMPLE]
# Task
Apply the attached changes to the file without explanations or any other text.
Commands
Code at Cursor
Code at Cursor - Get an inline snippet while using the current context.
Code at Cursor using... - Inline snippet with configuration selection.
Code at Cursor with Instructions - Inline snippet with instructions.
Code at Cursor with Instructions using... - Inline snippet with instructions and configuration selection.
Context
Save File Selection - Save the current context.
Restore File Selection - Restore a saved context.
Select Workspace File... - Select a file from the workspace.
Search Files... - Find files based on a search query.
Search in Selected Files... - Find within currently selected files.
Agentic Search... - Find task-relevant files using a headless CLI invocation.
Select Clipboard Paths... - Select files based on paths in your clipboard.
Select Unstaged Files... - Select files with unstaged changes.
Select Files of Commit... - Select files modified in a specific commit.
Copy
Copy Markdown - Copy contents of the current file selection.
Copy Markdown of Open Editors - Copy contents of file selection in open editors.
Copy Paths... - Copy paths of the current file selection.
Copy Paths of Open Editors... - Copy paths of file selection in open editors.
Commit messages
Commit Changes - Generate commit message in your preferred style and commit.
History
History - Manage saved states of the workspace.
Create New Checkpoint - Create a history entry of the workspace state.
Actions
Apply Chat Response - Integrate LLM response.
Misc
Duplicate Workspace - Copy the extension's state in a new window.
Building from source
Prerequisites
Steps
- Clone the repository:
git clone https://github.com/robertpiosik/CodeWebChat.git && cd CodeWebChat
- Install workspace dependencies:
pnpm install
- Navigate to the editor app and build the package:
cd apps/editor && pnpm run build
- Install the generated
.vsix file in VS Code:
Open the Command Palette (Ctrl+Shift+P / Cmd+Shift+P), run Extensions: Install from VSIX..., and select the newly created file.
Copyright © 2026 Robert Piosik
E-mail: robertpiosik@gmail.com