* feat(projects): replace workflows with six fixed issue statuses
* feat(agent-runner): report tool models, requeue busy workspaces and run read-only steps
* feat(agents): discover agents from runner reports and remove online agents
* feat(ui-library): drop online agents, model choice, checklists and approvals
* feat(studio): add the project manager and fixed statuses on the server
* feat(studio): agent page, project manager settings and issue progress in the client
* test(studio): cover the project manager, discovered agents and checks-passed signal
* docs(studio): describe the project manager, fixed statuses and discovered agents
* chore: drop the just-bash catalog entry the agents plugin no longer uses
* test(studio): page waiting decisions without approval requests
* fix(studio): allow new issues for the project manager in the direct-write quota, and scope its settings to API keys
* fix(agents): publish the model catalog export instead of the removed presets
* fix(studio): offer only the project manager as an agent executor, keep demo runtimes offline and fix the e2e flows
Executor pickers read the kinds' executor candidates, a new issue left to the project manager is not flagged as given to an agent, people talk only to agents discovered from runners, and the e2e tests no longer rely on demo runtimes being online.
* fix(studio-cli): ship the updated nb-studio Skill
* feat(agent-runner): remove read-only work directories after their run, and build artifacts of idle ones
A read-only run's directory goes when the run ends. Once no run has used a working directory for 12 hours, its node_modules, .next and .turbo directories go (configurable with config set artifact-ttl and artifact-patterns), never in a directory a run holds.
Applied migrations and seeds are recorded with a checksum of their source, so reformatting one warns every installation that already ran it. Ignore database/*/migrations/ and database/*/seeds/ in both templates and from the repository root.
* ci(v3-studio-image): publish the Studio image for linux/arm64 too
* ci(v3-studio-image): allow rebuilding a release image by dispatch
* ci(v3-studio-image): name the tags in the job that pushes them
* feat(studio): let agent comments wake other agents
An agent's comment wakes the agents it mentions or answers, as the person its run acts for, capped per issue by the workflow's commentRunLimit with an owner notice and a continue action.
* fix(studio): route agent comments by mention, else to the executor
An agent's reply no longer wakes the agent it answers; a comment naming no agent wakes the executing agent unless it addresses a person or the executor wrote it.
* feat(studio): tell issue runs what was said since their last run
A resumed issue run hears the comments since the agent's previous run started, inline when few or as a --since command otherwise; a fresh session is asked to read the comments. Adds since to the comment threads list and session-dependent turn notes to subject assemblies.
* feat(studio): have runs started by agent comments always report back
A run an agent's comment started answers in that comment's thread with its output, or why it failed, when it ends without commenting; cancelled runs post nothing.
* feat(chat): add global Agent input and durable submission state
* ci: retrigger checks
* fix(chat): explain blocked sends and refresh conversation caches
* fix(chat): keep upload tasks with their composer session
* test(studio): open chat panel through the global header editor
---------
Co-authored-by: Zhou <1267426+zhouyanliang@users.noreply.github.com>