-
Notifications
You must be signed in to change notification settings - Fork 2
CLI: Update SDK to cee2050 and add credential-providers commands #82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
🔧 CI Fix Available I've pushed a fix for the CI failure. The |
d9a77c7 to
e00ff76
Compare
e00ff76 to
82204fa
Compare
- Update kernel-go-sdk from v0.26.0 to v0.27.0
- Update BrowsersService.Get interface to include new BrowserGetParams parameter
- Update all browser Get() calls to pass empty BrowserGetParams{}
SDK version: db80dd764a1e279cb1a806e8d87ce037828ea32f
42ebd6d to
31b8305
Compare
…watch commands - Update kernel-go-sdk to v0.26.1-0.20260117213330-c6c0c0d711e9 - Add agents auth commands: create, get, list, delete - Add agents auth invocations commands: create, get, exchange, submit - Add browsers process resize command - Add browsers fs watch commands: start, stop, events
<!-- CURSOR_SUMMARY --> > [!NOTE] > <sup>[Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) is generating a summary for commit 44883ef. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: Cursor Agent <cursor-agent@onkernel.com>
- Added `kernel agents auth run` command to automate the full authentication process, including profile creation, credential management, and invocation handling. - Introduced support for TOTP codes for two-factor authentication, allowing automatic submission during the auth flow. - Updated `README.md` with detailed usage instructions and examples for the new authentication commands. - Added dependencies for `github.com/pquerna/otp` and `github.com/boombuler/barcode` to support TOTP generation and indirect usage. - Enhanced `go.mod` and `go.sum` to reflect the new dependencies. This update significantly improves the user experience for managing agent authentication, making it more streamlined and efficient.
The generateTOTPCode function unconditionally printed a human-readable message via pterm.Info.Printf when waiting for a fresh TOTP window. This could corrupt JSONL output when --output json was specified in AgentAuthRunCmd.Run. Added a 'quiet' parameter to generateTOTPCode to suppress console output when in JSON mode, preventing non-JSON messages from corrupting the output stream for programmatic consumers. Co-authored-by: mason <mason@onkernel.com>
- Updated kernel-go-sdk to cee2050be3f8136505d41c20c2903dfca2cbc479 - Added new credential-providers command group for managing external credential providers (e.g., 1Password service account integrations) - list: List configured credential providers - get: Get a credential provider by ID - create: Create a new credential provider - update: Update a credential provider's configuration - delete: Delete a credential provider - test: Test a credential provider connection - Fixed browsers.Get() calls to pass new required BrowserGetParams
<!-- CURSOR_SUMMARY --> > [!NOTE] > Aligns test fakes with the updated SDK `BrowsersService.Get` signature. > > - Change `FakeBrowsersService.Get` to accept `query kernel.BrowserGetParams` and update its implementation > - Update all tests that stub or invoke `Get` (e.g., `BrowsersView`, `BrowsersGet`, logs/replays/process/fs/computer helpers) to use the new parameter > - No functional behavior changes; assertions and outputs remain the same > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit cf2dd29. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: Cursor Agent <cursor-agent@onkernel.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.
| } | ||
| if in.Priority > 0 { | ||
| params.UpdateCredentialProviderRequest.Priority = kernel.Opt(in.Priority) | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cannot set credential provider priority to zero
Medium Severity
The credential-providers update command cannot set priority to 0. The condition in.Priority > 0 at line 203 prevents 0 from being sent to the API, but the help text states "lower numbers are checked first" - making 0 a valid highest-priority value. Unlike Enabled which correctly uses BoolFlag to track explicit flag usage, Priority is passed directly without tracking whether --priority was explicitly provided. Users running --priority 0 will see no effect because the value is silently ignored.
Additional Locations (1)
| } | ||
| if in.CacheTtlSeconds > 0 { | ||
| params.UpdateCredentialProviderRequest.CacheTtlSeconds = kernel.Opt(in.CacheTtlSeconds) | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cannot set credential provider cache TTL to zero
Low Severity
The credential-providers update command cannot set cache-ttl to 0. The condition in.CacheTtlSeconds > 0 at line 197 prevents 0 from being sent to the API. Setting cache TTL to 0 is a valid use case to disable caching, but users running --cache-ttl 0 will see no effect because the value is silently ignored. Unlike Enabled which uses BoolFlag to track explicit flag usage, CacheTtlSeconds lacks this tracking and cannot distinguish between "not provided" and "explicitly set to 0".
This PR updates the Go SDK to cee2050be3f8136505d41c20c2903dfca2cbc479 and adds CLI commands for new SDK methods.
SDK Update
Coverage Analysis
This PR was generated by performing a full enumeration of SDK methods and CLI commands.
New Commands
kernel credential-providers list- List configured external credential providerskernel credential-providers get <id>- Get a credential provider by IDkernel credential-providers create- Create a new credential provider (supports 1Password)kernel credential-providers update <id>- Update a credential provider's configurationkernel credential-providers delete <id>- Delete a credential providerkernel credential-providers test <id>- Test a credential provider connectionBreaking Changes Fixed
browsers.Get()calls to pass new requiredBrowserGetParamsparameterTriggered by: kernel/kernel-go-sdk@cee2050
Reviewer: @masnwilliams
Note
Introduces new authentication automation and external credential provider management, updates to latest SDK, and extends browser tooling.
kernel agents authcommands (create/get/list/delete,invocations create/get/exchange/submit, andrun) to orchestrate end‑to‑end web auth flows with auto field submit, TOTP, MFA handling, live view, and JSON/JSONL outputkernel credential-providers(list/get/create/update/delete/test) supporting 1Password tokens and cache TTL; wired intorootbrowsers.Getto requireBrowserGetParams; addprocess resize(PTY cols/rows) and filesystem watch (fs watch start/stop/events); propagate newGetusage across commands and testsAgent AuthandCredentialswith exampleskernel-go-sdktocee2050...; addpquerna/otp; updatego.sumWritten by Cursor Bugbot for commit 30c509d. This will update automatically on new commits. Configure here.