Repository navigation
chore: release v0.77.0 - #534
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <[email protected]>
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.
Minor release: CodeBuddy Code joins the built-in runtimes.
Breaking changes
Runtime set, brand keys and redaction rules (#525)
defaultRuntimesnow includescodebuddyRuntime(idcodebuddy). Code that assumes the previous set of runtime ids needs a case for it.runtimeBrandsgainscodebuddy; because it is declaredas const, an exhaustiveRecord<keyof typeof runtimeBrands, ...>must add the key.REDACTION_RULES.versionis now 2 andframeTypePrefixesadds_codebuddy.ai/authUrl. A host that pre-filters stored records by these prefixes, or caches redaction by version, should re-run redaction on stored records. Records OAR itself wrote are unaffected: earlier releases had no CodeBuddy, and live CodeBuddy frames are redacted before they are recorded.New
CodeBuddy Code (#525)
codebuddyRuntime, also at@botiverse/oar/runtimes/codebuddy. The root entry also exportscodebuddySession,codebuddyInstallation,codebuddyListModelsandprojectCodebuddyModels; brand assetscodebuddy.svg,codebuddy-on-light.svgandcodebuddy-on-dark.svgare added. Install the vendor CLI separately; OAR findsOAR_CODEBUDDY_BIN,codebuddyon PATH or~/.local/bin/codebuddy. There is no OAR installer, updater, logout, account quota reader or provider facade for CodeBuddy.codebuddy --acp), one native process per session, with ACP new/load and the native session ID as the resume key. Messages queue in OAR (queue.durable: false) and can be withdrawn before dispatch. There is nosteer: no native injection interface was verified. Sessions run with--permission-mode bypassPermissions, which is not a sandbox.resultimmediately to the model twice, so any tool calls in it would repeat too. This happened in all three immediate runs and in 8 of 9 runs with 0.5 to 2 second provider response delays (the ninth timed out); a one-second delay before the second input did not duplicate. It was not reproduced on the official account backend in four immediate runs plus a one-second control. With the same custom endpoint, native ACP sent exactly one request per input in three immediate and three one-second-delay runs. Reported upstream as CodeBuddy issue 1847 on CNB.initialize,authenticate): one browser authorization per login, the URL delivered as anauth_urlevent and never stored in records.openBrowser: falsesets a login-onlyBROWSER(trueon POSIX,hostname.exeon Windows). A native authentication failure maps tocancelled, or tofailedwithtimed_outorprocess_failedby its native type; no explicit native denial signal was verified, so OAR does not reportrejected. A native success contradicted by a fresh status read isfailed/not_logged_in, and a throwing URL handler isinteraction_failed. Status reads the native account (object, null or absent). WithCODEBUDDY_API_KEYset, status isunknownwithconfigured: ["environment: CODEBUDDY_API_KEY"], because the native account can be synthesized from the key without validating it.listModels()opens a disposable ACP session without a prompt. Opening applies the model throughsession/set_config_optionbut does not strictly confirm it; effort is checked against the native readback.disallowedTools, MCP (stdio and HTTP, with credential overlays) and images are supported.refusalor aFAILED*native outcome is a failed turn, with the native message as its reason and the native error category taking precedence over HTTP status.usage_updatedescribes context, not a billing ledger, sousage().totalstays null. A nativeused: 0, size: 0is kept as reported and does not mean the context is empty.goals: true,appendSystemPrompt,userConfiguration: "exclude",outputSchema,name,serviceTier,additionalDirectories; inlaunchArgs, transport, permission, session-identity and system-prompt flags and--.CLI (#525)
@botiverse/oar-clibuilds its registry fromdefaultRuntimes, sooar list,installation,models,runandloginincludecodebuddy, commands without a runtime argument also probe it, andoar mcpoffers it to subagents unless--runtimesnarrows the set.Fixes
session_id: nullare treated as connection-wide instead of as another session's (feat(codebuddy): add native ACP sessions and private login #525).Docs
table account_state already exists; hosts can finish the first start before opening more sessions (chore(runtimes): verify October 29 releases and pin Kimi 2.4.0 #532). Tracked upstream in core: concurrent first start on a new opencode.db fails with "database is locked" / CREATE TABLE error anomalyco/opencode#53879.