Slash commands
In an agent's window, a line that starts with / is a command, not
a message to the agent. Generated from the released client (v0.1.19).
Window commands
| Command | What it does |
|---|---|
/help | what the window's keys and commands do |
/status | the agent's full state, as the service states it |
/take | take control of the agent from another window |
/switch <agent> [session] | open another of your agents without going home; two agents of one name are listed, never chosen between |
/home (also /back) | back to your agents; this agent keeps working |
/quit (also /exit) | leave the app; your agents keep working |
Short forms
Each runs one ks command. Anything after it is passed on: /diff <result>
runs ks result diff <result>.
| Type | Runs | What it does |
|---|---|---|
/stop | ks agent stop | stop an agent: its instruction in flight is asked to stop and its queue is held; the session keeps running |
/pause | ks agent pause | save the session an agent lives in and park it, waiting until it is parked |
/resume | ks agent resume | resume the parked session an agent lives in, waiting out a save that is still completing |
/queue | ks agent queue show | why an agent's queue is not moving: what blocks it, what waits behind it, what each choice would do |
/tasks | ks task list | the instructions of a session's agents, in the order they were committed |
/results | ks result list | the results of one task, or of a session's tasks: name, size, sha256, task, verification |
/approvals | ks approval list | a session's permission requests with the instruction each was asked for, what it touches and what deciding costs |
/advisers | ks adviser list | an agent's adviser connections, live, revoked and expired, in both directions |
/usage | ks session usage | a session's model use, runtime and storage, apart, with units, source and whether each figure is actual, estimated or unavailable |
/keys | ks key list | your keys: id, provider, alias, last four characters, enabled or disabled |
/logs | ks agent logs | the session's setup log and its agent's log from a cursor, safe to print; --follow polls until the service says it ends |
/agents | ks agent list | the agents of a session: name, id, activity, role, current task |
/checkpoints | ks session checkpoints | the saved points a restore or a fork may name: whether each is usable now and its position, boundary, state, scope and manifest identity |
/restore | ks session restore | restore a session from a named saved point, and say exactly what continues from it |
/diff | ks result diff | what an attempt's ks-changeset.json says it changed, against its recorded base, with every path escaped |
/apply | ks result apply | apply an attempt's changeset to this project, only onto the recorded base, transactionally |
Two names are taken by a short form: /resume is ks agent resume (type
/wake for a plain session), and /logs and /apply are the agent's (type
/cruise logs and /cruise apply in full).
Every ks command
Type any ks command after /, with the same arguments and options:
/session checkpoints, /result download <result>, /cruise status --watch.
Tab completes a command's name, and lists the candidates when several fit. The
CLI reference gives every command with its "In the app" form.
Commands the window does not run
The window refuses these 4 and says why:
| Command | Why |
|---|---|
/agent open | you are in the agent's window already; /home, then Enter, opens another |
/attach | it takes over the terminal itself: run ks attach outside the app |
/login | signing in opens a browser: run ks login outside the app |
/logout | it removes the sign-in the app is using: run ks logout outside the app |
How a / command runs
- It is the command itself. The window runs the same
ksbinary with the same arguments; its output appears in the conversation under a$ ks …line that shows exactly what ran. - The window's context is filled in. A command that takes
--sessiongets this session. A session argument you leave out is this session. On an agent command, an agent you leave out is this agent:/agent tell "run the tests"tells this agent.--agentgets this agent when the command runs on this session. A new name, as in/agent create, is never filled in. - Nothing prompts. A command runs with
--no-input: a step that needs a confirmation refuses and names the flag to pass (see Confirmations). It gets no standard input, soks key addruns in a terminal outside the app. - Ctrl-C stops it. While a command runs, Ctrl-C stops that command, not the window and not the agent.