CorbsyCorbsy Studio

Releases

What we've shipped, ordered by date. Every studio update, desktop app release, and major website improvement lands here.

Desktopv0.1.9

Desktop v0.1.9 — the real ACL fix

v0.1.6 through v0.1.8 still had a subtle ACL bug that only showed up in production builds (local tauri dev worked, which made it ghost). Tauri 2 capabilities have a local vs remote axis — the default is "local," which means the capability only applies to a webview loading local content. Corbsy Studio's webview loads https://studio.corbsy.com, which is a remote origin. So the ACL was correctly registered, correctly compiled, and correctly *not applied* to the page that needed it.

v0.1.9 adds remote.urls to the capability with the corbsy.com origin allowlisted. Custom IPC commands (detect_clis, claude_invoke, all the rest) finally work in production builds.

This was the actual reason CLI detection looked broken across the last three releases.

Desktopv0.1.7

Desktop v0.1.7 — CLI detection that actually finds your Claude

v0.1.6 made the ACL fix that finally let Settings call into Rust. v0.1.7 hardens *what happens after* — making sure your local claude / codex / gemini / hf actually gets found, no matter where you installed it.

Four-layer detection now runs: 1. Standard PATH lookup (which) 2. Canonical install dirs (~/.local/bin, %APPDATA%\npm) 3. New: ask npm config get prefix directly — works even if you've set a custom npm global directory 4. New: shell out to Windows where.exe — sees the PATH that Explorer sees, which differs from our process if you installed a CLI after the Studio launched

Also bundled in this build: the public key for the signed auto-updater is now embedded. v0.1.7 is the first build where future updates can apply *inside* the app — no more clicking through GitHub Releases.

Upgrade is in-place; the NSIS installer overwrites without an uninstall step.

Desktopv0.1.8

Desktop v0.1.8 — auto-updates inside the app

v0.1.7 embedded the signing public key. v0.1.8 turns the updater on.

Set bundle.createUpdaterArtifacts: true in the Tauri config — without it, builds produce installers but never emit the signed .sig files or the latest.json manifest the updater needs to function. The fix is a one-line config flip; took us long enough to find.

Once you install v0.1.8, future Corbsy Studio releases land inside the app. You'll see a confirm dialog the next time we ship; click Update, the signed payload downloads + verifies + restarts you into the new version. No more "uninstall and reinstall" anywhere in your future.

This is the last installer you'll have to download by hand.

## Desktop v0.1.9

v0.1.9 fixed the desktop capability wiring for the remotely loaded studio webview. The app could build and install, but the web UI needed the right capability surface before desktop-only commands behaved consistently from studio.corbsy.com.

## Desktop v0.1.10

v0.1.10 fixed template lookup for projects created from the bundled desktop templates. New local projects now resolve their starter files from the installed app bundle instead of assuming the development checkout layout exists on a user's machine.

## Desktop v0.1.11

v0.1.11 removed the Windows console flash during CLI detection. The desktop app still checks for local tools like Claude, Codex, Gemini, HuggingFace, and GitHub CLI, but those subprocess probes now run without popping transient terminal windows over the studio.

## Desktop v0.1.12

v0.1.12 registered the in-app update check command and added the first-run CLI test path. That made the Settings/provider onboarding flow able to confirm both update availability and local subscription-CLI readiness from the desktop shell.

## Desktop v0.1.13

v0.1.13 fixed CLI spawning for tutorial-mode prompts by sending prompt text through stdin. Long, structured prompts no longer get jammed into command arguments, which keeps the desktop subscription-CLI route from falling back to API-key behavior.

## Desktop v0.1.14

v0.1.14 shipped the holistic CLI pipeline fix: stronger CLI routing, clearer diagnostics, an engine decision checkpoint, and tests around the desktop bridge path. The focus was making every chat-LLM capability prefer authenticated local CLIs when available.

## Desktop v0.1.15

v0.1.15 was a release-pipeline validation build after the desktop release workflow fix. It bumped the desktop version to prove the repaired pipeline could build, sign, and publish a fresh updater-compatible tag.

Studiov0.4.1

Honest provider pricing — Gemini free tier sorted to the top

Settings → Providers is now organized around how each provider actually charges you, not just what's available. Three clear tiers:

  • 🖥️ Subscription via desktop app — Anthropic (Claude Pro/Max via claude CLI), OpenAI (ChatGPT Plus/Pro/Team via codex CLI), Google (free tier via gemini CLI), HuggingFace (HF Pro via hf CLI). Use what you already pay for.
  • 🆓 Generous free tier — Google Gemini gives 1500 requests/day at zero cost. Recommended for new users.
  • 🔑 API key only — by their design — DeepSeek, Mistral, Meshy, Replicate, ElevenLabs, Stability, Inworld, Scenario, World Labs. These providers don't ship subscription-auth CLIs; that's their business model, not a Corbsy limit.

Each provider row carries its real pricing reality. Clicking Connect on any provider opens that provider's API key page in a new tab AND expands a step-by-step instruction block so you're never lost in an unfamiliar dashboard.

The Anthropic row shows the cost expectation honestly: Claude Sonnet at API rates is ~$3 input / $15 output per 1M tokens; heavy users (~30 briefs/day) hit $100-200/mo. With a Claude Pro subscription + the desktop app, that drops to $20-200/mo flat regardless of usage.

Studiov0.2.5

Real playable Platformer starter

The New Project picker now has a Platformer template that's actually playable from the first frame — not a wireframe, a real tight-feel platformer with coyote time, jump buffer, and variable jump height baked into the player controller.

Every game-feel number is @export'd so you can tune from the editor or ask Ren what good values look like.

  • COYOTE_TIME 100ms — press jump just after walking off a ledge, it still fires
  • JUMP_BUFFER 100ms — press jump just before landing, it queues
  • VARIABLE_JUMP_CUT 0.4 — release jump early for short hop, hold for full jump
  • AIR_CONTROL 0.85 — softer than ground, snappier than floaty
  • Ground accel ~150ms to max speed
  • Respawn at start when you fall off the bottom

Ask the team to swap the blue square for a real sprite, add enemies, more levels, music — the foundation is solid.

Studiov0.1.0

Launch day — studio live on production

Corbsy Studio is live at studio.corbsy.com. Marketing at corbsy.com. Cloudflare Access protects the studio behind Google login.

Day-one capabilities:

  • The AI team — Sam (Producer), Maya (Engineer), Theo (Artist), Ren (Designer), Iris (Sound), Riley (QA). Renameable.
  • Brief box: paste a screenshot, drag-and-drop an image, click 🎤 to dictate, or just type
  • Planner ships a structured plan with attributed steps; you approve or reject each
  • Real Godot 4.3 baked into the container; builds export to playable HTML5 right in the preview window
  • 10 AI providers wired (Anthropic, OpenAI, HuggingFace, DeepSeek, Mistral, Google Gemini, Meshy, Replicate, ElevenLabs, Stability Audio)
  • Image attachments → Claude/GPT/Gemini see them as vision content blocks
  • Per-project cost dashboard
  • Studio Tour + Build Your First Game tutorial template
  • 407 tests passing on launch day
Studiov0.3.0

Play vs Inspect mode in the preview window

The preview window now has a 🎮 Play / 🔍 Inspect toggle.

In Inspect mode the running-game iframe is replaced by a project inspector — scene tree on the left, asset viewer on the right. Click any sprite to see it isolated with pixel-perfect zoom. Click any 3D mesh to see it in a Three.js viewer with orbit controls. Click any node in a scene tree to see its referenced asset and properties. Click "📸 brief this" and the current view gets attached to the brief box with @theo (or @maya / @iris) pre-typed.

It's how directors actually evaluate things — see it, point at it, tell the team what to fix — without screenshotting with the OS tool every time.

  • Built on a new tolerant .tscn parser that decodes Vector2, Color, ExtResource paths
  • 14 new tests covering scene parsing, image header probing, asset classification, the endpoints, and path-traversal defense
  • Works on desktop, tablet, and phone (rail collapses to a drawer on phone)
Desktopv0.4.0

Desktop app uses your Claude Pro / ChatGPT Plus subscriptions

The desktop app's main reason to exist: stop paying API rates when you already pay for Claude Pro, ChatGPT Plus, or Gemini.

When you brief the team inside the desktop app, we now pipe your prompt through whichever official subscription CLI is installed on your machine — claude (Anthropic Pro/Max), codex (ChatGPT Plus/Pro/Team/Enterprise), gemini (Google login, free tier), or hf (HuggingFace Pro). Your existing subscription pays. We never see your token; the desktop app just spawns the CLI as a subprocess.

If your CLI isn't authenticated or returns something unexpected, we transparently fall back to the API path so the brief still lands. You're never stuck.

  • Backend prepare / complete endpoints split the planner flow so the CLI runs locally between them
  • 10 new tests cover round-trip, markdown-fence tolerance, prose-around-JSON, prepare_id one-time-use, conversation continuity, and @-mention routing
  • Desktop app also stores all projects locally now (per-OS app data directory) so your work is yours
Desktopv0.1.6

Desktop app v0.1.6 — CLI detection now actually works

If you installed v0.1.2-v0.1.5 of the desktop app and Settings still showed "waiting for desktop app" when you connected Claude, this is the fix.

Under the hood: Tauri 2's permission system is deny-by-default for custom IPC, and our capability files weren't being recognized — every detect_clis call was getting rejected before it reached Rust. The webview just saw silence and showed the API-key path.

v0.1.6 restructures the permission files to match Tauri's expected layout (permissions/autogenerated/, no $schema reference, scoped to the named main window). After this build, detect_clis returns real CLI paths and the Settings page shows the green *"Using your Anthropic subscription via Claude Code CLI"* badge when you have claude on your PATH.

Upgrade in place — the NSIS installer overwrites without an uninstall step.

Studiov0.3.1

Each teammate has their own deep craft knowledge

Before, the six teammates (Sam, Maya, Theo, Ren, Iris, Riley) were short persona snippets riding on the same planner call — basically the same model with different name tags. Now each one carries a real body of accumulated game-dev craft.

When you @-mention a teammate, their specific heuristics get injected into the response so you get real domain expertise, not just a persona swap.

  • Maya — Godot-4 patterns (signals, composition, state machines), game-feel quick wins
  • Theo — silhouette-first design, 60-30-10 palette, asset budgets per game size
  • Ren — game-feel dial values: hitstop 60ms, screen shake 200ms/3px, i-frames 500-1200ms, first-60-seconds rules
  • Iris — 3-layer hit SFX (transient + body + tail) with pitch variation, music in stems, mix discipline
  • Riley — severity ladder (BLOCKING > HIGH > MEDIUM > LOW), static lints, playtest heuristics, first-5-minutes test
  • Sam — knows the whole platform, picks who handles what

Plus distinct old-school-game-character pixel avatars for each teammate so you can tell them apart at a glance.