The Stella page
Talk to stella, answer what waits on you one item at a time, staff a start with a model and an effort, and see your fleet in one place.
The Stella page is where you work with stella and the agents you run. Stella is the assistant in the app. One count says how many things wait on you. You answer them one at a time. Your agents sit beside the thread as a tree.
Open it from Stella, the first item in the Workspace section of the sidebar. The address is /<organization>/<workspace>/stella. Runs stays the workspace home, so /<organization>/<workspace> still opens Runs.
Everything on this page covers actions routed through Oxagen. Oxagen sees and governs a call only when the call passes through it. It cannot see what an agent does outside it.
The count
The sidebar item and the waiting pill in the top bar show one number: how many items wait on you in this workspace. The pill appears only while something waits. No other page adds a second counter beside it.
Six kinds of item are in the count.
- Approvals. A tool call an agent parked until a person decides.
- Questions. An agent asked you something and waits, or a run started in a repository this workspace has not linked.
- Residue. A run ended and left work unfinished.
- Reviews. A work order you sent is ready for you to accept or return.
- Starts. A work item assigned to you is ready to send.
- Steering records. Stella drafted a steering record, or a steering suggestion waits for review.
Stella drafts a steering record from your corrections. A correction is a sentence you send after a run has started: a message you send while the agent is still working, or a prompt in a later turn of the session. Stella looks at a sentence once you have sent it to three or more runs this way, in more than one sitting.
A run's first prompt is its kickoff. You may paste the same kickoff into many sessions, so it never becomes a draft. Neither does text a harness wrote, such as a task notification or a message from another session. Sentences sent to several runs within three hours of each other are about one task, so they never become drafts either. A steer you send from Oxagen three times in seven days goes through the same check below.
Before a draft reaches you, stella asks it of the agent that would receive the rule. It shows the agent what the runs were doing, how the sentence arrived, and how often, beside your workspace's records. How often is only evidence. It is never the reason a draft opens. The agent answers three questions:
- Would this rule help it work the way you or your workspace want?
- Would it do this anyway, without being told?
- Would it want this rule restated every time it starts a run like these?
A draft opens only when the answers are yes, no and yes. The card begins "Agents would want this restated." and gives stella's reason. Generic engineering advice, a sentence about one task, text another program wrote, and a rule a record already holds are declined. The Steering page lists each declined sentence as closed, with stella's reason. Needs you shows at most five of these drafts, oldest first. The rest wait on the Steering page, and the next one moves up when you answer one. A draft nobody answered goes away once the sentence stops repeating.
A sentence only you repeat is your habit, so its draft waits for you alone. A sentence several people repeat waits for everyone who may review it. Once saved, a draft from your habit becomes your own record, which steers only the runs you start. Its pull request can merge in Oxagen or on GitHub.
An update that needs nothing from you, such as a run that ended clean, is not in the count. The briefing lists it instead.
The count shows only what you can answer with your roles. Approvals, questions, residue, reviews and starts count for the person they belong to. A steering record counts for everyone who may review it, except a draft from one person's habit, which counts for that person. No role reads another person's count. The capability docs list_attention and get_nav_counts give the exact rules.
The briefing
When you open the Stella page after an hour or more away, the thread opens with a briefing. A shorter absence, or your first visit, shows none. The briefing counts from the last time you opened the Stella page in this workspace.
A summary of at most three sentences counts the runs that ended, the work orders that reached review, the progress updates your runs posted and what waits on you now. Under it, the briefing lists the runs that ended. A progress update that asks nothing of you is folded, and you read it when you choose Show.
See get_briefing.
Answering from the card
The Needs you card shows one item at a time, with its position, such as "2 of 5". The items that block the most agents come first, then the oldest. Choose Skip for now to move on, or press J for the next item and K for the previous one.
What you can do depends on the item.
| Item | What you do |
|---|---|
| Approval | Approve, or Deny with a reason. A denial of a tool call needs a reason. A denial of a first-use MCP consent takes none. |
| Question | Send the answer stella drafted from your steering records, or write your own. A draft names the record it came from. When no record answers the question clearly, the form is empty. |
| Review | Accept and close, Open the pull request, or Return to the agent with a reason. If you merge the pull request on GitHub, Oxagen accepts the work for you when you sign in to Oxagen with that GitHub account and may accept work in the workspace. A merge by the Oxagen GitHub App still waits for you. |
| Residue | File an issue and start a fix in a sandbox, Create issue, Relaunch, or Dismiss. See Residue. |
| Start | Start, or send the lighter choice stella offers. See the next section. |
| Steering record | Read the record under Record and stella's reason for it under Reason. Then Save record, Dismiss, or Dismiss all records. |
Each answer runs the same capability the item's own page runs, as you, under your roles. Stella never answers an approval or a consent request, and it never answers a run started in an unlinked repository. The one answer it can give alone is to an agent's question, under Answer from my rules. See What stella may do alone.
After an answer saves, a line above the card names what you did, the item, and how many items still wait. For example: Dismissed “Never bill internal accounts”. 247 items wait.
If an answer does not save, the item goes back on the card and the card says why.
Dismiss all records closes every drafted steering record that waits on you, up to 500 at a time. It first asks how many to dismiss, such as "Dismiss 248 drafted records?" Only drafted records close: a record with an open steering pull request, and a governance, tools or workspace suggestion, stay for their own pages. The line above the card then says how many closed and how many items still wait. A record that could not close stays in your queue, and an alert says how many and why. Residue has no such button, because it is unfinished work from a run.
If an item changes after the card read it, the answer is refused and the card asks you to load the page again. Nothing is sent on a stale item.
Staffing a start
A start card shows how the work will run. Staffing is the harness, model tier, model and effort the agent starts on.
- Model tier. One row of your organization's Model tiers table. Triage drafts it for each work item.
- Model. The model that tier maps to on the agent's harness. The run records the concrete model.
- Effort. How much work the model puts into each step. Signal bars and a word show it.
- Estimated cost. Stella's estimate from the priced runs it read for similar work in the last 30 days. It is an estimate. The card shows one only when stella's advice is for the item's own tier and effort, and says no priced run is on record when there is none.
- Reason. How many similar runs stella read. When it offers a lighter choice, the card also says how many of the runs on it that recorded checks met them.
Start sends the work order on the item's own tier. The effort the card shows is the effort the chosen agent's harness takes. When the harness can't take the item's effort, Start lowers it to the highest effort the harness takes. A harness with no effort setting gets none. For example, Codex takes efforts up to xhigh, so an item at max starts at xhigh, and stella takes no effort setting.
The lighter button sends the lighter choice stella offered: a lower tier, or the same tier at a lower effort. It names the model it would run, such as Use Sonnet instead. When the lighter choice keeps the tier and lowers only the effort, it names the effort, such as Use medium effort instead. Nothing is sent until you press one of the two.
An agent in a sandbox starts on its harness's own model and effort. For that agent the card shows the harness default, offers no lighter choice and sends no model or effort. The card lists only agents you operate that can take the send. When an item carries a tier or an effort, it leaves out an agent on a machine whose oxagen is too old to start a chosen model or effort.
Start is held when no agent can take the send, when the item has no approved brief, or when the agent's harness has no model for the item's tier. The card links the work item so you can see why. In a regulated workspace, the person who approved a brief does not send it.
With no similar run on record, the card says so and shows the item's own tier and effort. It adds that triage drafted them only while no person has confirmed them. Start confirms a drafted pair. See recommend_staffing and list_model_tiers.
Residue
Residue is the work a run left unfinished. Stella reads each run that ends and raises one item for each unfinished thing. Residue has no deadline, so it waits in your count until you answer it.
When the agent said in its last reply what it left undone, the card quotes it under The agent said. For example: "The billing retry test is broken, but it was unrelated to my work, so I left it for the session that holds the claim." Under stella's reason, stella says in one sentence why it raised the item. Items raised before stella gave reasons show none.
- File an issue and start a fix in a sandbox files the issue you edited, then starts a run in your workspace's sandbox runtime to fix it. The run uses the same harness as the run that left the work, clones the repository you choose, and opens a pull request that names the work item. The run starts as you, so it needs your model credential for that harness, and it counts against your spend budgets.
- Create issue files an issue in the repository you choose. You can edit the title and body first. Choose Oxagen only to keep it out of the outside tracker.
- Relaunch sends a work order for the open criterion.
- Dismiss closes the item and records that you dismissed it.
The card offers the fix only when it can start: your workspace has one sandbox runtime, the run that left the work ran on a harness a sandbox runs (Claude Code, Codex or Stella), and your roles allow you to file work items and start sandbox runs. Then it is the card's main button, and Create issue is outlined. The fix waits until you choose a repository. When your workspace connects a GitHub repository and a GitLab project with the same name, each choice names its forge, such as "acme/api on GitLab". Oxagen files an issue by the repository's name alone, so for such a name the fix waits and the card says why. Create issue still files it. Otherwise Create issue is the main button, as before.
If the issue is filed but the run doesn't start, the card says the issue is filed and why the run didn't start, such as a missing model credential. The item stays in your queue. Press the fix again to start the run. The issue isn't filed twice.
Each path checks your roles for the capability it runs. See answer_interjection.
The fleet
The right side shows your fleet as a tree of work items, agents and subagents. A work item groups under its workstream. A workstream a person set for the item wins. Otherwise the workstream is the milestone of the item's source issue, and an item with neither sits under Ungrouped. Each run shows whether it is waiting on you, working, quiet, failed or done. Choose Mine or Everyone to change whose work shows.
The tree lists runs that Oxagen recorded. A run stays in the tree for one day after it ends. See list_fleet and set_work_item_workstream.
What stella may do alone
Stella drafts and you confirm. Five switches let stella skip the confirmation for one kind of action. Choose Set what stella may do alone in the page header to open them. Each is Asks first or Acts alone.
At Asks first, stella drafts the action and waits for you. At Acts alone, stella takes that one kind of action without asking. It acts as you, under your roles, and the audit record shows stella as the actor. Every switch starts at Asks first.
Each switch reaches only the actions listed here, and only where this section says it works today.
- Answer from my rules. Stella answers an agent's question from your steering records and tells your other agents on the work item. Today this covers the questions an agent asks in a progress update. Stella sends the record's own sentences and names the record. When no record answers the question clearly, the question waits for you. On the card, stella still drafts the answer for you to send, whichever way the switch is set. When stella does answer, the thread shows the answer with Undo answer.
- Relaunch failed work. When a run ends with an open criterion still unmet, stella sends the work item again to the same agent. The residue item stays in your count until you answer it.
- Create issues. When your workspace links one repository, stella files the issue it drafted for residue there. In a chat with stella, it also creates work items without parking the call for you. The residue item stays in your count until you answer it.
- Update source issues. In a chat with stella, stella updates a work item's subject or description and comments on its source issue without asking. A change to the assignee, priority, labels, kind or repository still waits for you.
- Steer my agents. On the Group steer card, stella sends the steer you asked for as soon as it drafts it, delivered at the next turn. An interrupt stays your choice.
The switches are yours alone and apply in this workspace. Each change writes an audit record. They never reach an approval or a consent request, and stella never answers a run started in an unlinked repository. See get_stella_permissions and set_stella_permissions.