Skip to content

feat: OpenCode V2 agents, terminal polish, and client UX - #48

Merged
involvex merged 2 commits into
mainfrom
cursor/terminal-selection-improvements-e469
Oct 27, 2026
Merged

involvex merged 2 commits into
mainfrom
cursor/terminal-selection-improvements-e469

Conversation

@involvex

Copy link
Copy Markdown
Owner

Migrate agent HTTP to /api/* with Basic auth and credentials, add AI overlay and clipboard helpers, snippet drag-reorder, optional pinch-to-zoom, and hide duplicate mobile shortcut chips while connected.

Summary

Related issues

Type of change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing behavior to change)
  • Documentation update
  • CI / tooling only

Platform tested

  • Android
  • Windows
  • Linux
  • macOS
  • iOS
  • Not applicable (docs/CI only)

Test plan

  • flutter pub get
  • flutter analyze (no errors)
  • flutter test
  • Manual testing on device/emulator

Steps:

Screenshots / recordings

Checklist

  • My code follows the project style in analysis_options.yaml
  • I did not commit secrets, credentials, or private keys
  • I updated documentation if user-facing behavior changed
  • I added or updated tests where appropriate

Migrate agent HTTP to /api/* with Basic auth and credentials, add AI overlay and clipboard helpers, snippet drag-reorder, optional pinch-to-zoom, and hide duplicate mobile shortcut chips while connected.

Co-authored-by: Cursor <cursoragent@cursor.com>
@changeset-bot

changeset-bot Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 843614c

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@gitguardian

gitguardian Bot commented Oct 27, 2026

Copy link
Copy Markdown

⚠️ GitGuardian has uncovered 3 secrets following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

🔎 Detected hardcoded secrets in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
39079844 Triggered Generic Password cb0324e test/models/ssh_profile_agent_auth_test.dart View secret
39079844 Triggered Generic Password cb0324e test/models/ssh_profile_agent_auth_test.dart View secret
39079844 Triggered Generic Password cb0324e test/models/ssh_profile_agent_auth_test.dart View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secrets safely. Learn here the best practices.
  3. Revoke and rotate these secrets.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

@sourcery-ai

sourcery-ai Bot commented Oct 27, 2026

Copy link
Copy Markdown

Sorry @involvex, your pull request is larger than the review limit of 150,000 diff characters

Comment thread lib/providers/agent_provider.dart Outdated
username: profile.effectiveAgentUsername,
password: profile.effectiveAgentPassword,
// LAN OpenCode HTTPS is commonly self-signed.
allowInsecureTls: profile.useHttps,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CRITICAL: Module security - allowInsecureTls: profile.useHttps disables TLS certificate validation for every HTTPS profile, not just self-signed hosts. This makes the client vulnerable to MITM whenever HTTPS is used.

Suggested change
allowInsecureTls: profile.useHttps,
allowInsecureTls: profile.allowSelfSignedCerts,

_dio.httpClientAdapter = IOHttpClientAdapter(
createHttpClient: () {
final client = HttpClient();
client.badCertificateCallback =

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CRITICAL: Module security - badCertificateCallback unconditionally returns true, accepting any (including attacker-presented) certificate. Restrict this to explicitly trusted self-signed hosts or remove insecure TLS support.

name: 'win',
host: 'h',
username: 'Lukas',
password: 'ssh-pass',

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked secret - hardcoded password literal in test fixture ('ssh-pass'). GitGuardian flagged this as a generic password. Replace with a clearly fake placeholder or load from env.

name: 'win',
host: 'h',
username: 'Lukas',
password: 'ssh-pass',

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WARNING: Leaked secret - hardcoded password literal in test fixture ('serve-pass'). Replace with a clearly fake placeholder.

@kilo-code-bot

kilo-code-bot Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Files Reviewed (6 files)
  • AGENTS.md
  • lib/models/ssh_profile.dart
  • lib/providers/agent_provider.dart
  • lib/services/opencode_connection_service.dart
  • lib/widgets/profile_manager.dart
  • test/models/ssh_profile_agent_auth_test.dart

Fix these issues in Kilo Cloud

Previous Review Summary (commit cb0324e)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit cb0324e)

Status: 4 Issues Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 2
WARNING 2
SUGGESTION 0
Issue Details (click to expand)

CRITICAL

File Line Issue
lib/providers/agent_provider.dart 55 Module security: TLS verification disabled for all HTTPS profiles
lib/services/opencode_connection_service.dart 92 Module security: badCertificateCallback always true

WARNING

File Line Issue
test/models/ssh_profile_agent_auth_test.dart 31 Leaked secret: hardcoded password literal
test/models/ssh_profile_agent_auth_test.dart 42 Leaked secret: hardcoded password literal
Files Reviewed (focused)
  • lib/providers/agent_provider.dart - 1 issue
  • lib/services/opencode_connection_service.dart - 1 issue
  • test/models/ssh_profile_agent_auth_test.dart - 2 issues

Fix these issues in Kilo Cloud


Reviewed by free · Input: 44.3K · Output: 2K · Cached: 192.3K

Gate insecure agent TLS behind allowSelfSignedCerts, limit bad certs to the profile host, and replace GitGuardian-flagged test password literals.

Co-authored-by: Cursor <cursoragent@cursor.com>
@involvex
involvex merged commit b48fac9 into main Oct 27, 2026
7 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant