Approving changes

A change reaches the workspace only when a person approves the commit that carries it. What a commit contains and what approving does are described in Reviewing and approving. curio does not change that: the commit is staged the same way (commit -m "…" in the session), and approved the same way, as in the admin dock.

Stage, review, approve

curio status                                  # the changed files, and any commit waiting
curio run -- commit -m "Open orders first"    # stage them
curio commit show                             # the staged commit and its diff
curio commit approve                          # apply it, or review it in the browser
curio commit discard                          # drop it; the edits stay in the sandbox

In the two-panel interface, the same buttons are in the Changes dialog (F9).

Two ways to approve

At sign-in you decide whether this curio may approve by itself. See Signing in.

curio commit approve prints the link to the commit on Sudo's review screen (#/manage/assistant?chatUID=…&review=…), opens it in your browser, and waits.

This curio sign-in cannot approve changes. Review and approve it in your browser:

https://acme.curiosity.ai/#/manage/assistant?chatUID=…&review=…

Waiting for your answer there (over websocket; Ctrl+C stops waiting, the commit stays staged)...
Approved in the browser: "Open orders first" is live in the workspace.

If you discard it in the browser, curio says so and exits with 1. Ctrl+C stops waiting without touching the commit.

When the apply fails

Output Meaning Exit code
changed meanwhile: … Someone changed these files in the workspace since the commit was staged. Nothing was applied. Run pull in the session, then commit again. 75
error: … The workspace refused part of the commit. 1
No commit is waiting for approval. Nothing is staged. 1

A curio signed in with CURIOSITY_TOKEN has rights curio cannot know in advance. If the approve route refuses it, curio falls back to the browser review.

© 2026 Curiosity. All rights reserved.