Repository navigation
feat: add Zen Free model provider plugin - #2
Merged
Merged
Conversation
Discover current free OpenCode models and adapt model-specific protocols through the Godwit models API. Co-authored-by: Codex <noreply@openai.com>
Replace sibling-repository imports with @godwit/sdk, add strict type checking, and document tarball validation before the first SDK publication. Co-authored-by: Codex <noreply@openai.com>
Member
Author
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. Keep them coming! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add
packages/zen-free/, a model provider users enable in Godwit without entering an API key or manually creating model services.prepareRequesttakesmodelId, method, URL, headers and the SDK's JSON text; the plugin returns the adapted URL, headers and JSON text. Generation and response parsing remain in the host's SDKs.@godwit/plugin-zen-freeand SDK dependency@godwit/sdk@^1.7.0. The runtime bundle has no external dependencies or sibling repository imports.packages/*, runs type checks/tests/builds, and prepares per-plugin artifacts and release metadata. The goja integration test lives alongside the plugin and uses exported host APIs; it needs no host source changes, frontend installation or code generation.Release dependency
Godwit #109 is merged. The published app and SDK 1.6.0 predate that API; Godwit #111 prepares 1.7.0. Source CI packs the SDK from the merged host commit
95eb0180654353e4e0a026a33258d6f9f0c6fb54; release CI requires the published SDK.This PR does not publish a plugin release or modify
registry.json. After a compatible host/SDK release and resolution of the stream issue below, publish the plugin and submit its generated registry entry through the existing validation/signing workflow.Validation
git diff --checkpass.zen_echotool were used.Remaining host SDK issue
Live Big Pickle tool acceptance failed when the stream contained a legal SSE comment heartbeat (
: keep-alivefollowed by a blank line). The host's currentopenai-godecoder treats that comment-only event as an empty JSON response and returnsunexpected end of JSON input; the engine reports an unusable response. This can affect any Chat Completions request containing such a heartbeat.The same captured public-test response was replayed offline through
openai-go: unchanged, it failed before decoding any chunks; with only the initial comment heartbeat removed, all 15 chunks decoded successfully. The response contained the expectedzen_echocall and[DONE].The plugin API adapts requests only. A fix belongs in the shared host SDK/protocol path. No response parser or host workaround is added in this plugin PR; live tool acceptance remains blocked on that fix.