# Release v1.21.1 - Changelog

Released: 2026-02-28

## Overview

GSD tab one-click agent spawning and Claude Code launcher.

## Features

- **GSD one-click agent spawn** — each setup step now has a "Run" button that creates a CoS agent task to execute the GSD command, eliminating the need to manually open a terminal
- **Open Claude Code button** — new button in the GSD setup guide header launches Claude Code directly in the app's directory for interactive use
- **`POST /api/apps/:id/open-claude` endpoint** — spawns Claude Code as a detached process in the app's repo path

## Improvements

- **`npm start` serves production UI** — `npm start` now builds the client and serves the production bundle from the Express server on port 5554, eliminating the need for the Vite dev server and avoiding hot-reload errors during non-development use
- **Add task from app detail page** — the Tasks tab on each app's detail view now includes the CoS TaskAddForm (compact mode) pre-selected to the current app, so you can queue agent tasks without navigating to the CoS page
- **Git status moved to per-app tab** — git status is now a tab within each app's detail view (`/apps/:appId/git`) instead of a standalone cross-app page under Dev Tools, making it contextual to the app you're working on

## Fixes

- **PortOS self-restart no longer errors** — restarting PortOS from the dashboard now shows a "Restarting PortOS..." loading toast, polls for server recovery, and auto-reloads the page when ready (previously showed an error because the server died before responding)
