docs: add agent integration guides#132
Conversation
📝 WalkthroughWalkthroughThis pull request adds comprehensive documentation and navigation updates to the GoModel project. It introduces a logo configuration to docs.json and expands the Guides section with four new integration guides covering Claude Code, Codex, OpenCode, Cline, Roo Code, and Kilo Code routing through GoModel. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/docs.json`:
- Around line 5-8: The docs.json "logo" object currently sets both properties to
the same asset; update the "logo.light" and "logo.dark" entries to reference
separate theme-appropriate assets (e.g., "/logo-light.svg" and "/logo-dark.svg")
or replace one with a high-contrast alternative so the logo remains visible in
both themes; ensure the new asset names are added to your static assets and
update any referencing code that expects logo.light/logo.dark.
In `@docs/guides/codex.mdx`:
- Around line 113-129: Create an issue titled "Support Content-Encoding: zstd
request decompression in GoModel" that includes the observed error JSON, the
reproduction steps using the codex CLI (the exact command: codex exec -m
gpt-4.1-mini --disable enable_request_compression 'Reply with exactly ok and no
punctuation.'), the failing header name ("Content-Encoding: zstd"), and
request/response examples; request that the HTTP request handling path (e.g.,
the GoModel server's request handler such as ServeHTTP or the middleware that
reads request bodies) detect and transparently decompress zstd bodies before
JSON decode, add tests covering compressed and uncompressed requests, and note
backward compatibility and performance considerations.
In `@docs/guides/opencode-and-other-agents.mdx`:
- Around line 169-170: Update the phrase "OpenAI-compatible setup" in the
sentence "Cline, Roo Code, and Kilo Code follow the same OpenAI-compatible setup
model" to use a hyphenated compound modifier ("OpenAI-compatible-setup model")
or rephrase to "follow the same OpenAI-compatible setup" so the compound
modifier is clear; ensure the nearby sentence "Roo Code needs native tool
calling support from the selected model" remains unchanged and that both
sentences read smoothly together.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 8f83cb18-c8c3-4852-ac4b-d6dc8fc99e97
⛔ Files ignored due to path filters (1)
docs/logo.svgis excluded by!**/*.svg
📒 Files selected for processing (4)
docs/docs.jsondocs/guides/claude-code.mdxdocs/guides/codex.mdxdocs/guides/opencode-and-other-agents.mdx
| "logo": { | ||
| "light": "/logo.svg", | ||
| "dark": "/logo.svg" | ||
| }, |
There was a problem hiding this comment.
🧹 Nitpick | 🔵 Trivial
Consider using different logos for light and dark themes.
Both light and dark reference the same /logo.svg file. If the logo has sufficient contrast for both themes, this is fine. Otherwise, consider providing separate assets (e.g., /logo-light.svg and /logo-dark.svg) for better visibility.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/docs.json` around lines 5 - 8, The docs.json "logo" object currently
sets both properties to the same asset; update the "logo.light" and "logo.dark"
entries to reference separate theme-appropriate assets (e.g., "/logo-light.svg"
and "/logo-dark.svg") or replace one with a high-contrast alternative so the
logo remains visible in both themes; ensure the new asset names are added to
your static assets and update any referencing code that expects
logo.light/logo.dark.
| ## Known issues | ||
|
|
||
| In the March 10, 2026 validation, Codex reached the correct GoModel endpoint, | ||
| but the request failed because Codex compressed the body with `zstd`. | ||
|
|
||
| The observed error from GoModel was: | ||
|
|
||
| ```json | ||
| {"error":{"message":"invalid request body: invalid character '(' looking for beginning of value","type":"invalid_request_error"}} | ||
| ``` | ||
|
|
||
| Workaround: disable request compression in Codex CLI: | ||
|
|
||
| ```bash | ||
| codex exec -m gpt-4.1-mini --disable enable_request_compression \ | ||
| 'Reply with exactly ok and no punctuation.' | ||
| ``` |
There was a problem hiding this comment.
🧹 Nitpick | 🔵 Trivial
Good documentation of known limitation with workaround.
Transparently documenting the zstd compression limitation and providing a clear workaround (--disable enable_request_compression) is helpful for users. Consider opening an issue to track adding zstd decompression support to GoModel if not already tracked.
Would you like me to help draft an issue to track adding Content-Encoding: zstd request decompression support to GoModel?
🧰 Tools
🪛 LanguageTool
[style] ~115-~115: Some style guides suggest that commas should set off the year in a month-day-year date.
Context: ...dies ## Known issues In the March 10, 2026 validation, Codex reached the correct G...
(MISSING_COMMA_AFTER_YEAR)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/guides/codex.mdx` around lines 113 - 129, Create an issue titled
"Support Content-Encoding: zstd request decompression in GoModel" that includes
the observed error JSON, the reproduction steps using the codex CLI (the exact
command: codex exec -m gpt-4.1-mini --disable enable_request_compression 'Reply
with exactly ok and no punctuation.'), the failing header name
("Content-Encoding: zstd"), and request/response examples; request that the HTTP
request handling path (e.g., the GoModel server's request handler such as
ServeHTTP or the middleware that reads request bodies) detect and transparently
decompress zstd bodies before JSON decode, add tests covering compressed and
uncompressed requests, and note backward compatibility and performance
considerations.
| - Cline, Roo Code, and Kilo Code follow the same OpenAI-compatible setup model | ||
| - Roo Code needs native tool calling support from the selected model |
There was a problem hiding this comment.
🧹 Nitpick | 🔵 Trivial
Minor grammar improvement.
Consider adding a hyphen for clarity: "OpenAI-compatible setup" should be "OpenAI-compatible-setup" when used as a compound modifier, or rephrase slightly.
📝 Suggested fix
-- Cline, Roo Code, and Kilo Code follow the same OpenAI-compatible setup model
+- Cline, Roo Code, and Kilo Code follow the same OpenAI-compatible setup pattern📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - Cline, Roo Code, and Kilo Code follow the same OpenAI-compatible setup model | |
| - Roo Code needs native tool calling support from the selected model | |
| - Cline, Roo Code, and Kilo Code follow the same OpenAI-compatible setup pattern | |
| - Roo Code needs native tool calling support from the selected model |
🧰 Tools
🪛 LanguageTool
[grammar] ~170-~170: Use a hyphen to join words.
Context: ...setup model - Roo Code needs native tool calling support from the selected model ...
(QB_NEW_EN_HYPHEN)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/guides/opencode-and-other-agents.mdx` around lines 169 - 170, Update the
phrase "OpenAI-compatible setup" in the sentence "Cline, Roo Code, and Kilo Code
follow the same OpenAI-compatible setup model" to use a hyphenated compound
modifier ("OpenAI-compatible-setup model") or rephrase to "follow the same
OpenAI-compatible setup" so the compound modifier is clear; ensure the nearby
sentence "Roo Code needs native tool calling support from the selected model"
remains unchanged and that both sentences read smoothly together.
Summary by CodeRabbit