Reading the repo
Reading the repo
Saved setup from 8 h ago
The maintainers included setup.sh. Run it from the cloned folder after reading it.
bash setup.sh
Will it work on my device?
| Feature | MVP behavior |
| --- | --- |
| GET /v1/models | Native IDs plus default aliases; successful results cached for 30 seconds; concurrent refreshes shared |
| POST /v1/chat/completions | Buffered JSON or SSE with stream=true |
| Messages | system, developer, user, assistant; final message must be user |
| Content | Strings or nonempty arrays of { "type": "text", "text": "..." } |
| Instructions | Initial system/developer messages combined into CLI session instructions |
| History | Prior user/assistant messages encoded as a role-labelled JSON transcript |
| Sessions | A fresh backend session/process for every request; no cross-request state |
| Copilot disk state | Request-owned temporary configuration/state; shared session store disabled; removed after CLI shutdown on success and failure |
| n | Omitted, null, or 1 |
| reasoning_effort | Forwarded to the CLI; support depends on the selected native model |
| stream_options.include_usage | Supported; backend-reported token counts only |
| stream_options.include_obfuscation | Omitted, null, or false; padding is unsupported |
| Usage | Optional; covers the harness run, including its own instructions/context |
| Limits | 1 MiB request; 16 MiB UTF-8 assistant text before JSON/SSE encoding; bounded concurrency and duration |
| Slow readers | Ten-second socket-write budget for buffered JSON and each SSE write |
| HTTP validation | Oversized bodies return 413, including trailing whitespace; unsupported methods on API endpoints return 405 with Allow |
| Local access | Host must be localhost or a loopback IP; cross-origin browser completions and model GET/HEAD requests return 403. No auth is required for curl or Spring AI |
| Harness request errors | Explicit JSON-RPC invalid-parameter rejections and Copilot structured upstream HTTP 400 invalid-request errors return sanitized 400 errors; unclassified CLI failures return 502 |
| Cancellation | HTTP disconnect/deadline stops the request-owned CLI process |
| Other request fields | Rejected with HTTP 400 and an OpenAI-style error envelope |
| Responses, embeddings, images, audio, client tool calls | Unsupported |
This is an adaptation of coding harnesses, so it does not provide exact model-API
semantics. History is contextual text, not native role-preserving history import.
System/developer instructions must precede conversation messages and remain subject
to the harness's own instructions. No sampling parameters or token budgets are
silently ignored. SSE failures after output starts emit an error envelope and end
the stream without a successful finish chunk or [DONE].
go install github.com/harness-gateway/harness-gateway/cmd/harness-gateway@v0.1.7
go install github.com/harness-gateway/harness-gateway/cmd/harness-gateway@dev
curl -fsSL https://raw.githubusercontent.com/Harness-Gateway/harness-gateway/v0.1.7/setup.sh | bash
From the README, exactly as the maintainers wrote it.
No reports for Linux yet.
Opens a chat with this manual already filled in, for Linux. It uses your own account; gitmanual sends nothing.