Code Web Chat (CWC) is a free and open-source, privacy-first AI coding toolkit for VS Code. It helps construct zero-overhead, XML-formatted prompts for:
- chatbots—ChatGPT, Claude, Gemini, etc.
- APIs—remote and local model providers
...and apply responses with multi-file edits, code at cursor, and more!
Elevate your workflow with smart workspaces (called projects, gems, or spaces).
Select context files, type instructions...

Send API request or autofill in chatbot...

Preview response in the editor...

Introduction
In the world of AI coding, agents like Claude Code or Codex rely on "Function Calling" (where the AI asks "the harness" to read a file, waits for the tool to respond, then reads another). CWC flips this! By providing files upfront the model is guided in the right direction from the start, so you can save time and tokens!
CWC's prompt types are zero-overhead (click to expand):
Edit context
<files>[current file tree selection]</files>
<system>[edit format instructions]</system>
[user-typed prompt]
Ask about context
<files>[current file tree selection]</files>
[user-typed prompt]
Code at cursor
<files>
[current file tree selection]
<file path="[active file]">
[code before cursor]<missing_text>[user-typed prompt]</missing_text>[code after cursor]
</file>
</files>
[instructions for the missing text]
Prompt caching
When working with CWC, it's natural to start new chats (send fresh messages) instead of continuing a long conversation. With context files ordered based on update and selection recency, prompt caching is effectively utilized across tasks.
Your chatbot quotas last longer and token costs are lower by up to 90% when calling APIs.
Local models doesn't feel slow anymore!
Enabling autofill
Install the browser extension and never copy and paste again.
Supported chatbots:
- AI Studio
- Arena
- ChatGPT
- Claude
- Copilot
- DeepSeek
- Doubao
- Gemini
- GitHub Copilot
- Grok
- HuggingChat
- Kimi
- Meta
- Mistral
- Open WebUI
- OpenRouter
- Qwen
- Together
- Yuanbao
- Z
The Apply response button placed under responses is not a means of automatic output extraction, it's an alias for the original copy to clipboard button. Review the content script to learn about implementation details.
Use forwarding of port 55155 when using remote machine via SSH.
Calling APIs
CWC includes all the essential API tools. Bring Your Own Key (BYOK) for a model provider of choice. Use self-hosted model provider like Ollama or LM Studio.
- Intelligent Update—Integrate changes from malformed responses.
- Edit Context—Pair-programming using natural language instructions.
- Code at Cursor—Accurate inline code from reasoning models.
- Find Relevant Files—Find files using natural language description.
- Commit Messages—Meaningful summaries of changes in your style.
- Voice Input—Transcribe speech to text in the prompt field.
Privacy
Code Web Chat doesn’t communicate to any server for so-called telemetry.
Zero function calling design eliminates the risk of dangerous command executions and prompt injections.
When autofilling in chatbots, the editor-browser communication runs on local Websockets.
When calling APIs, requests are sent directly to the configured model providers.
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.
Checkpoints
Checkpoints - Restore the overall workspace state to the saved checkpoint.
Create New Checkpoint - Save the current state of the workspace.
Context
Apply Context - Apply a saved context or save the current file selection.
Add File to Context - Search and add file (or parent folder via file action) to the context.
Remove File from Context - Search and remove file (or parent folder via file action) from the context.
Search Files for Context - Search and add files containing specific keywords to the context.
Copy Context - Copy XML-formatted checked files from the Workspace view to the clipboard.
Copy Context of Open Editors - Copy XML-formatted checked files from the Open Editors view to the clipboard.
Commit messages
Commit Changes - Generate commit message and commit.
Contributing
All contributions are welcome. Feel free to submit pull requests, feature requests and bug reports.
Copyright © 2026 Robert Piosik
E-mail: robertpiosik@gmail.com
Telegram: robertpiosik