Skip to content

merge main to dev - #3

Merged
BarneyChambers merged 5 commits into
devfrom
main
Jun 23, 2026
Merged

BarneyChambers merged 5 commits into
devfrom
main

Conversation

@BarneyChambers

Copy link
Copy Markdown
Contributor

Summary

Test Plan

  • npm run typecheck
  • npm test
  • npm run lint
  • npm run build

Release Hygiene

  • No .env, private keys, logs, generated bundles, or local e2e artifacts are included.
  • Public URLs, docs, and install commands are accurate for the-gridai/agentsea.

Introduce an interactive OAuth bootstrap so users can authenticate with
The Grid without manually creating and pasting a consumption key:

- agentsea auth login/status/logout commands (device flow)
- creates or reuses a consumption key and stores it under
  ~/.config/agentsea/ (api key + oauth session)
- provisioning auto-attempts OAuth by default, falling back to manual
  key entry; AGENTSEA_GRID_OAUTH=0 disables
- grid-oauth-client, grid-oauth-session, and grid-exchange-client
  helpers, with unit tests for the flow ordering and validation cache

Ports work that previously lived only as uncommitted changes in a
deprecated checkout so it isn't lost.
…ev/tty

Converts the remaining Clack input prompts (which can't receive input in
curl|bash / remote contexts) to the /dev/tty readers:
- interactive.ts: agent/cloud/top-level selects → pickToTTY; "Name your agentsea"
  and custom Model ID → promptText; setup-options multiselect → multiPickToTTY.
- ui.ts: model-picker "Other…" manual entry → promptText; add promptText helper
  (validated /dev/tty text input with Clack fallback).
- picker.ts: add multiPickToTTY (space toggles, a=all, Enter confirms; non-
  interactive guard returns initial values).

Test: cmd-interactive mocks picker.js input fns gated by an `interceptPicker`
flag (delegating to the real picker otherwise) so the process-global mock.module
doesn't break picker.ts's own coverage tests.
Expose the consumption-key management the OAuth exchange client already
supports as explicit commands so users can create and rotate keys without
the implicit login/provision path:

- agentsea auth keys [list]      list the account's consumption API keys
- agentsea auth keys create [name]  create a new key (secret printed once)
- agentsea auth keys revoke <id>    revoke a key by id

Refactor login to share a single authenticated-session helper, map
keys:manage scope failures to actionable guidance, and persist the
refreshed OAuth session after each operation. Adds command tests and
documents the commands in help and the CLI README.
Add Grid OAuth device-flow login (agentsea auth login)
Route onboarding prompts through /dev/tty
@vercel

vercel Bot commented Jun 23, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
agentsea-ui Skipped Skipped Jun 23, 2026 1:35pm

Request Review

@BarneyChambers
BarneyChambers merged commit 65a0f0b into dev Jun 23, 2026
5 checks passed

This branch was previously deployed

1 inactive deployment
Production — bf5e43c9 Deployed Jun 23, 2026 by vercel[bot]
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