Repository navigation
Conversation
The legacy CLI installer and settings.json auth no longer match the OpenCode distribution, so GitHub workflows now install OpenCode, require an explicit Tabnine model, and pass PAT credentials through env vars. Co-authored-by: Cursor <cursoragent@cursor.com>
…ner. install.sh reopens /dev/tty so it can prompt, but [ -r /dev/tty ] only checks permission bits: on a runner with no controlling terminal the open fails with ENXIO, which kills dash before anything is installed. Resolve the version and fetch the platform .run instead; its installer is already non-interactive. Co-authored-by: Cursor <cursoragent@cursor.com>
…o feat/github-opencode-action
There was a problem hiding this comment.
@sthuck please add the changes to the other git providers (GL, BB)
…d runs. Stop deleting bot comments before every run. Existing comments are fetched with gh and passed to the agent, which does a clean review for substantial changes or a fix review (checking replies and resolutions) when new commits only address earlier findings. Summaries carry a reviewed-commit marker. Head commits starting with [skip-review] are not reviewed, and the workflow cancels in-progress runs for the same PR. Also escape the suggestion fence in the workflow prompt. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
GITHUB_TOKEN gets a 403 from /user. On an HTTP error gh skips --jq and writes the error body to stdout, so the `|| printf` fallback was appended to it instead of replacing it. BOT_LOGIN then matched no comment: the previous summary went unnoticed (clean mode again), the fallback step posted a duplicate summary, and the cleanup step failed. Keep gh's output only on success, and log the bot login, matched bot comments, and review mode so the next run shows the state directly. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collect Tabnine and OpenCode logs plus agent output when the run fails or is cancelled, and upload them before temp data is cleaned up. Reword the review prompt so the agent writes review_mode without reading it first. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Add a debug input (--print-logs --log-level DEBUG), kill the agent after agent_timeout_minutes (default 20) so failure logs are still collected, and include the OpenCode session database in the failure artifact. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.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
$TABNINE_HOST/update/opencode/install.sh).model_id/TABNINE_MODEL_ID), normalize it totabnine/<slug>, and runtabnine run --model … --auto.TABNINE_TOKENandGH_TOKENenv vars, isolate OpenCode auth under runner temp, and keep the optional self-hosted uninstall plus summary-comment failsafe.Test plan
uses: codota/tabnine-pr-agent@feat/github-opencode-action) withTABNINE_KEYandmodel_id./update/opencode/install.shandtabnine --versionsucceeds.gh api).tabnine/<slug>both work, and a non-Tabnine prefix is rejected.Made with Cursor