Skip to content

Conversation

@OpeOginni
Copy link
Contributor

@OpeOginni OpeOginni commented Jan 28, 2026

What does this PR do?

  • Using Rust keyrings stores credentials for servers only for Desktop
  • Also improves the UI to show a different warning status for servers alive but requiring authentication.
  • Adds flow for users setting credentials
  • Ensures first load of opencode sdk always has the credentials loaded in
  • Proper separation of implementation, making sure that the normal WEB UI doesnt have these features or need to have them.

How did you verify your code works?

Ran on my local machine and was able to get this result for Mac.

ScreenRecording.PR.mp4

Flow tested

  1. Startup Desktop dev
  2. Create 3 servers, 2 with a password, 1 without
  3. Try to connect these servers to the desktop app
  4. You can close one server and notice it has the RED status
  5. You can open it back but with a new password, if you try to connect you will be prompted to add in new credentials since the last one doesnt work.

Users are asked for permission to access keychains from opencode_server_credentials, they can grant the access always to make sure the app has access to the credential for that server.

@github-actions
Copy link
Contributor

Thanks for your contribution!

This PR doesn't have a linked issue. All PRs must reference an existing issue.

Please:

  1. Open an issue describing the bug/feature (if one doesn't exist)
  2. Add Fixes #<number> or Closes #<number> to this PR description

See CONTRIBUTING.md for details.

@github-actions
Copy link
Contributor

The following comment was made by an LLM, it may be inaccurate:

No duplicate PRs found

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant