Skip to content

feat(dev): public-URL gravity tunnel + @agentuity/vite plugin (blocked on infra#210)#1455

Draft
Huijiro wants to merge 3 commits into
v3from
v3-public-url
Draft

feat(dev): public-URL gravity tunnel + @agentuity/vite plugin (blocked on infra#210)#1455
Huijiro wants to merge 3 commits into
v3from
v3-public-url

Conversation

@Huijiro
Copy link
Copy Markdown
Member

@Huijiro Huijiro commented May 7, 2026

Summary

Reintroduces v2's agentuity dev --public workflow on v3, adapted to the framework-passthrough architecture, plus a new @agentuity/vite plugin so Vite-based projects work through the public URL without the user editing their config.

Status: blocked on agentuity/infra#210. The SDK side is done and tested end-to-end; the public URL prints, gravity connects, the framework starts behind it, and shutdown cleans up. The URL itself just doesn't resolve because the platform issues hostnames in a DNS zone that isn't wired up for v3-shaped User-Agents.

Parked here until the platform fix lands; then this is a clean merge into v3.

What lands

New package: @agentuity/vite

A Vite plugin that reads AGENTUITY_DEVMODE_HOSTNAME (set by the CLI when --public is on) and configures Vite for the gravity tunnel:

  • adds the public hostname to server.allowedHosts so Vite stops responding with "Blocked request"
  • points server.hmr at wss://<hostname>:443 so HMR works for users browsing the public URL

No-op when the env var is absent; safe to keep in vite.config.ts permanently.

CLI: agentuity dev --public / --no-public

  • First run with no saved preference and a TTY: prompts (default no, persists answer to agentuity.json under devmode.public). Non-TTY defaults to off.
  • When public is enabled:
    1. tui.fatal if no registered project (point at agentuity project import) or no valid auth (point at agentuity auth login).
    2. Reserve devmode endpoint via POST /cli/devmode/3/<projectId>, re-using saved hostname + private key for stability.
    3. Download gravity binary if missing or stale (cache at ~/.config/agentuity/gravity/<version>/gravity).
    4. Spawn gravity targeting the user's dev port; tail HEARTBEAT_PORT= line; POST /heartbeat every 5 s.
    5. Export AGENTUITY_DEVMODE_HOSTNAME / AGENTUITY_DEVMODE_URL into the framework process.
    6. SIGTERM the gravity process group on shutdown; sync SIGKILL fallback in process.on('exit').
  • New banner shows Local + Public URLs side-by-side.
  • Detect Vite projects without @agentuity/vite installed and print a one-line install reminder.

Schema + helpers

  • ProjectSchema gains devmode.public?: boolean.
  • Config.devmode.{hostname,privateKey} and Config.gravity.{version,checked} already existed in v3 — wired up.
  • api.ts: getGravityDevModeURL(region, config).
  • runtime.ts: validateGravityRequiresUpgrade(version) with MIN_GRAVITY_VERSION = >=1.0.6.
  • All Node-compatible: node:child_process, node:fs/promises, plain fetch. No Bun.* calls.

Scaffold integration

  • vite-react / sveltekit / astro templates add @agentuity/vite to devDependencies.
  • vite-react ships the plugin pre-wired in vite.config.ts.
  • sveltekit / astro users get the runtime install reminder until they add agentuity() to their config.

Cleanup

  • Drops the stale ./vite-plugin export from packages/cli/package.json (the file under dist/cmd/build/vite/ no longer exists in v3).

Lifecycle/cleanup details

The second commit (d9ac7a43) closes four gaps surfaced during end-to-end testing against v2:

  1. killLingeringGravityProcesses() (pkill -f scoped to project id) runs before reserving the new endpoint.
  2. gravity.forceKillSync() registered in process.on('exit') for last-resort SIGKILL.
  3. Old gravity-binary sweep waits for handle.ready (first heartbeat) instead of a 5 s timer.
  4. Signal handler kicks off proc.kill() and gravity.stop() in parallel rather than sequentially.

Testing

End-to-end tested against ~/Dev/agentuity/v3-test-projects/v3-node-nextjs (Next.js, region use):

  • ✅ Project config persistence (devmode.public: true saved to agentuity.json)
  • ✅ Profile config persistence (hostname + private key saved to usc.yaml)
  • ✅ Gravity downloads, spawns with correct args, connects to 3 servers, prints HEARTBEAT_PORT
  • ✅ Banner output (Local + Public URLs)
  • ✅ Framework spawns behind the tunnel
  • ✅ Cleanup verified after forceKillSync fix (orphan reproducible before, gone after)
  • ❌ DNS resolution of the issued hostname — see infra blocker below

Blocker: agentuity/infra#210

POST /cli/devmode/3 issues hostnames under *.agentuity.live (no wildcard DNS) for User-Agent: Agentuity CLI/3.x and under *.agentuity-us.live (works, CNAMEs to ion-usc.agentuity.cloud) for v2 / curl. Reproduced via raw curl with only the User-Agent differing. Tracking in agentuity/infra#210.

A doc-comment in packages/cli/src/cmd/dev/api.ts flags this for future maintainers.

Compat / drop-in safety

  • --public defaults to off; no behavior change for users running agentuity dev without the flag.
  • New profile/project config fields are all optional; existing configs continue to load unchanged.
  • Vite plugin is a no-op when its env var isn't set, so projects that have @agentuity/vite in vite.config.ts work in normal vite dev too.

Checklist before merging (when #210 lands)

  • Re-run end-to-end test on v3-test-projects: confirm public URL resolves and serves the framework
  • Repeat with a Vite-based project (vite-react template) to verify HMR through the tunnel
  • Verify no orphan gravity / framework processes after Ctrl-C and after parent SIGKILL

References

  • v3 Architecture: see project memory; gravity tunnel concept ported from v2 main
  • Filed platform bug: agentuity/infra#210

Huijiro added 2 commits May 7, 2026 15:03
Reintroduces v2's `agentuity dev --public` workflow for v3, adapted
to the new framework-passthrough architecture.

New package
- @agentuity/vite: a Vite plugin that reads
  AGENTUITY_DEVMODE_HOSTNAME (set by the CLI when --public is on)
  and configures `server.allowedHosts` + `server.hmr` so Vite
  accepts requests from the gravity tunnel and HMR works over wss://
  through the tunnel. No-op when the env var is absent.

Dev command
- New --public / --no-public flags. On first run with no saved
  preference and a TTY, prompt (default no) and persist the answer
  to `agentuity.json` under `devmode.public`. Non-TTY defaults to
  off.
- When public is on, hard-fail without a registered project (point
  at `agentuity project import`) or valid auth (point at
  `agentuity auth login`).
- When public is on:
    1. Reserve a devmode endpoint via /cli/devmode/3/<projectId>
       (re-using the saved hostname + private key for stability).
    2. Download the gravity binary if missing or stale (re-uses the
       cached version under `~/.config/agentuity/gravity`).
    3. Spawn gravity targeting the user's dev port; tail its
       HEARTBEAT_PORT line and POST /heartbeat every 5s; forward
       stderr to the CLI logger.
    4. Export AGENTUITY_DEVMODE_HOSTNAME / AGENTUITY_DEVMODE_URL
       into the dev process so framework plugins can react.
    5. SIGTERM the gravity process group on shutdown.
- Detect Vite-based projects without @agentuity/vite installed and
  print a one-line install reminder.
- New banner shows Local + Public URLs side-by-side.

Supporting changes
- ProjectSchema gains `devmode.public?: boolean`.
- Config types already had `devmode.hostname` / `devmode.privateKey`
  / `gravity.version` / `overrides.gravity_url` — wired up.
- api.ts: getGravityDevModeURL(region, config).
- runtime.ts: validateGravityRequiresUpgrade(version) with
  MIN_GRAVITY_VERSION = >=1.0.6.
- dev/api.ts (generateEndpoint), dev/download.ts (gravity tarball),
  dev/gravity.ts (lifecycle orchestrator) — all Node-compatible
  (node:child_process / node:fs / fetch).

Scaffolding
- vite-react / sveltekit / astro templates now include
  @agentuity/vite as a devDependency.
- vite-react ships the plugin pre-wired in vite.config.ts.
- sveltekit / astro users get the dev --public reminder until they
  add `agentuity()` to their config.

Cleanup
- Drop stale `./vite-plugin` export from packages/cli/package.json
  (the file under dist/cmd/build/vite/ no longer exists).
End-to-end testing surfaced four mismatches with v2's behavior plus
a confirmed platform-side blocker.

Lifecycle/cleanup gaps fixed:

- Add killLingeringGravityProcesses() (pkill -f scoped to project
  id) and call it before reserving a new endpoint, matching v2.
  Without this, an orphan tunnel from a prior aborted dev session
  could still be holding the public URL.

- Expose forceKillSync() on the gravity handle and register it in a
  process.on('exit') hook so a terminating CLI sends SIGKILL to the
  gravity process group as a last resort. Async stop() runs first
  during normal shutdown.

- Sweep old gravity binary versions only AFTER the new version has
  reported its first heartbeat (handle.ready). Previous timer-based
  approach could discard the working fallback before confirming the
  new one connects.

- Signal handler for SIGINT/SIGTERM now fires gravity.stop() in
  parallel with proc.kill() instead of waiting for the framework to
  exit first. Matches v2's procManager.cleanup() behavior.

Platform issue:

- /cli/devmode/3 issues hostnames in `*.agentuity.live` (no DNS) for
  v3-shaped User-Agents and `*.agentuity-us.live` (works) for v2 /
  curl. Filed agentuity/infra#210. Added doc-comment in api.ts
  pointing at the tracking issue.

Until #210 is fixed the public URL prints but doesn't resolve. The
SDK-side wiring (banner, endpoint reservation, gravity spawn,
shutdown, env injection for @agentuity/vite) is all working.
@agentuity-agent
Copy link
Copy Markdown

agentuity-agent Bot commented May 7, 2026

The latest Agentuity deployment details.

Project Deployment Preview Updated (UTC)
docs 🔴 Failed (deploy_dbffae399d6a06cc20c538823f36d272) - 2026-05-15T01:07:13Z

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 7, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 7129d5d9-3fa8-48ba-9b57-af8b844116e5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 7, 2026

📦 Canary Packages Published

version: 3.0.0-beta.6-cbbc716

Packages
Package Version URL
@agentuity/server 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-server-3.0.0-beta.6-cbbc716.tgz
@agentuity/webhook 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-webhook-3.0.0-beta.6-cbbc716.tgz
@agentuity/postgres 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-postgres-3.0.0-beta.6-cbbc716.tgz
@agentuity/migrate 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-migrate-3.0.0-beta.6-cbbc716.tgz
@agentuity/local 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-local-3.0.0-beta.6-cbbc716.tgz
@agentuity/coder-tui 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-coder-tui-3.0.0-beta.6-cbbc716.tgz
@agentuity/schedule 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-schedule-3.0.0-beta.6-cbbc716.tgz
@agentuity/vite 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-vite-3.0.0-beta.6-cbbc716.tgz
@agentuity/storage 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-storage-3.0.0-beta.6-cbbc716.tgz
@agentuity/telemetry 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-telemetry-3.0.0-beta.6-cbbc716.tgz
@agentuity/runtime 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-runtime-3.0.0-beta.6-cbbc716.tgz
@agentuity/db 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-db-3.0.0-beta.6-cbbc716.tgz
@agentuity/analytics 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-analytics-3.0.0-beta.6-cbbc716.tgz
@agentuity/sandbox 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-sandbox-3.0.0-beta.6-cbbc716.tgz
@agentuity/vector 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-vector-3.0.0-beta.6-cbbc716.tgz
@agentuity/claude-code 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-claude-code-3.0.0-beta.6-cbbc716.tgz
@agentuity/opencode 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-opencode-3.0.0-beta.6-cbbc716.tgz
@agentuity/coder 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-coder-3.0.0-beta.6-cbbc716.tgz
@agentuity/core 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-core-3.0.0-beta.6-cbbc716.tgz
@agentuity/drizzle 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-drizzle-3.0.0-beta.6-cbbc716.tgz
@agentuity/email 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-email-3.0.0-beta.6-cbbc716.tgz
@agentuity/aigateway 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-aigateway-3.0.0-beta.6-cbbc716.tgz
@agentuity/queue 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-queue-3.0.0-beta.6-cbbc716.tgz
@agentuity/stream 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-stream-3.0.0-beta.6-cbbc716.tgz
@agentuity/schema 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-schema-3.0.0-beta.6-cbbc716.tgz
@agentuity/adapter 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-adapter-3.0.0-beta.6-cbbc716.tgz
@agentuity/hono 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-hono-3.0.0-beta.6-cbbc716.tgz
@agentuity/cli 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-cli-3.0.0-beta.6-cbbc716.tgz
@agentuity/keyvalue 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-keyvalue-3.0.0-beta.6-cbbc716.tgz
@agentuity/pi 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-pi-3.0.0-beta.6-cbbc716.tgz
@agentuity/task 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-task-3.0.0-beta.6-cbbc716.tgz
create-agentuity 3.0.0-beta.6-cbbc716 https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/create-agentuity-3.0.0-beta.6-cbbc716.tgz
Install

Add to your package.json:

{
  "dependencies": {
    "@agentuity/server": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-server-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/webhook": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-webhook-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/postgres": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-postgres-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/migrate": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-migrate-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/local": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-local-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/coder-tui": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-coder-tui-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/schedule": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-schedule-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/vite": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-vite-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/storage": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-storage-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/telemetry": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-telemetry-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/runtime": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-runtime-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/db": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-db-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/analytics": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-analytics-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/sandbox": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-sandbox-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/vector": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-vector-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/claude-code": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-claude-code-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/opencode": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-opencode-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/coder": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-coder-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/core": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-core-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/drizzle": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-drizzle-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/email": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-email-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/aigateway": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-aigateway-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/queue": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-queue-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/stream": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-stream-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/schema": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-schema-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/adapter": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-adapter-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/hono": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-hono-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/cli": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-cli-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/keyvalue": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-keyvalue-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/pi": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-pi-3.0.0-beta.6-cbbc716.tgz",
    "@agentuity/task": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-task-3.0.0-beta.6-cbbc716.tgz",
    "create-agentuity": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/create-agentuity-3.0.0-beta.6-cbbc716.tgz"
  }
}

Or install directly:

bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-server-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-webhook-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-postgres-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-migrate-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-local-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-coder-tui-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-schedule-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-vite-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-storage-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-telemetry-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-runtime-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-db-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-analytics-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-sandbox-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-vector-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-claude-code-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-opencode-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-coder-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-core-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-drizzle-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-email-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-aigateway-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-queue-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-stream-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-schema-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-adapter-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-hono-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-cli-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-keyvalue-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-pi-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/agentuity-task-3.0.0-beta.6-cbbc716.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/3.0.0-beta.6-cbbc716/create-agentuity-3.0.0-beta.6-cbbc716.tgz

# Conflicts:
#	packages/cli/src/cmd/project/frameworks.ts
#	packages/cli/src/cmd/project/templates/vite-react/vite.config.ts
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