GigaCode Proxy: an OpenAI-compatible API on top of the GigaCode CLI
gigacode-proxy
A single Node.js file turns the installed GigaCode CLI into a local OpenAI server with streaming and a shared dialogue history
- 0 ★ on the repository
- Last commit
Broad access
Why this level
- The CLI runs without a sandbox and with automatic file edits, and the proxy is open through CORS with no authorization: any process on the machine controls the agent
- The agent changes files in the working folder without confirmation, and a bad request spoils the project
Install
- Services
Manual install
node server.jsRun it in the proxy folder (`npm start` does the same); an installed GigaCode CLI is required and there are no dependencies. The port is set by the `PORT` variable.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- The CLI runs without a sandbox and with automatic file edits, and the proxy is open through CORS with no authorization: any process on the machine controls the agent
- The agent changes files in the working folder without confirmation, and a bad request spoils the project
This is third-party code. Review the repository files before installing.
What it does
The `server.js` HTTP proxy on Node.js accepts requests in the OpenAI Chat Completions format on `/v1/chat/completions` (plain and streaming, SSE), takes the last user message and passes it to the GigaCode CLI with the arguments `--continue --sandbox false --approval-mode auto-edit --output-format json`. The CLI response goes back to the client in the OpenAI format. The conversation history is kept by the CLI itself on disk, and each request continues the last session. The executable path is found automatically: the `GIGACODE_CMD` variable, then `~/.gigacode/bin/gigacode`, then `PATH`. The port is set by the `PORT` variable (8080 by default). There are no dependencies, only Node.js and an installed GigaCode CLI are needed. The `input` format of the Responses API is also supported.
Who it is for. Developers who use Sber GigaCode and want to connect its CLI to editors and clients that speak the OpenAI API.
Good fit when
- A client speaks only the OpenAI API while the GigaCode CLI is installed at hand
- You need a GigaCode streaming reply in the familiar SSE format
- A dialogue should continue in one CLI session across requests
- You need a dependency-free proxy that starts with one `npm start` command
Not a fit when
- You need tool calls and editor schema validation: the proxy passes only the last message to the CLI
- The environment is shared or open to a network: the proxy listens with open CORS and runs the CLI with automatic file edits
- You need independent history per request: the dialogue always continues the last CLI session
Example request
Send the request "Write hello world in TypeScript" to `http://localhost:8080/v1/chat/completions` with `"stream": true`Limitations
The proxy parses only the last user message and always continues the last CLI session, so several clients share one history. The CLI starts with `--sandbox false` and `--approval-mode auto-edit`: the agent edits files without confirmation. CORS is open to all origins, the proxy has no authorization, and any process that reaches the port controls the CLI. A 502 response is returned on a launch error or a non-zero exit code. The repository is tiny: four files, zero stars, last commit in October 2026, no license stated.
How to disable. Stop the `node server.js` process and delete the proxy folder; the GigaCode CLI itself does not need removal.
FAQ
What is needed to run it?
Node.js and an installed GigaCode CLI. No packages are installed and `npm install` is not required.
How does the proxy find the CLI?
By `GIGACODE_CMD`, then `~/.gigacode/bin/gigacode` (`gigacode.exe` on Windows), then in `PATH`.
Which routes exist?
`GET /health` for liveness and `POST /v1/chat/completions` for requests, plain and streaming.
Is a real API key needed?
No, the value is not checked: the CLI itself handles authorization and the proxy adds none.
What happens if the CLI fails?
The proxy returns a 502 response with the error text; plain text instead of JSON is wrapped in a compatible structure.
Discussion
No questions or reviews yet.
Related
All GigaChat toolsGigaCode Proxy for editors: Cline, Roo Code, Continue
GigacodeOpenaiProxy
A dependency-free proxy connects GigaCode to Cline, Roo Code, Continue and Open WebUI, repairs tool call cuts and signs in with SberID
An ai-forever proxy that serves GigaChat through OpenAI, Anthropic and Gemini APIs so Claude Code, Codex and Gemini CLI can run on it
A local proxy exposing GigaChat through OpenAI- and Anthropic-compatible APIs so it can drive Claude Code, aider and other agents
GigaCode Bridge MCP
Gigacode-bridge-mcp
MCP server that delegates isolated code edits to GigaCode CLI in temporary Git worktrees and returns a patch for independent review
GigaCode project flows with hooks, gates and OpenSpec
gigacodeAgents
A monorepo of flows for the GigaCode CLI: development with stages and hard gates, a work progress observer and reverse analysis of code into a spec
OpenAI to GigaChat migration skill
migrate-to-gigachat-skill
A Cursor skill that migrates Python, JS or TS projects from OpenAI to GigaChat: detects the stack, picks an adapter, and verifies with tests it still starts
README in short
The README explains how the proxy works, the requirements, the order of locating the CLI executable, an environment variable table, routes, `curl` examples (plain and streaming), connection to OpenAI-compatible clients and behavior notes.