Skip to content

Ask Nodus

View Markdown

Beta: this feature may change before general availability

Ask Nodus is the assistant in the console. It answers questions about your org: why a Job restarted, what a Sandbox cost this week, which flags a manifest needs. It uses the same tools as the MCP server, with your own role and scopes, so it can see and do only what you can.

Open Ask Nodus in the console and type. Some things to try:

  • “Why did job/train fail?”
  • “What did my Sandboxes cost this month?”
  • “How do I make train survive being preempted?”
  • “Write a manifest that runs python train.py on an L4 with a $5 cap.”

When an answer relies on the docs, it links the pages, and the links are the pages the assistant actually read.

The assistant can propose a change, but it cannot make one. When an answer would create, delete, suspend or otherwise change something, the turn stops and shows exactly what will run. For a new object that includes the server’s dry-run: the object as it would be stored, its estimated cost and anything that blocks it.

Choose Confirm to run it, or Cancel. Confirming runs the held change once, with your credential, so the API checks your permissions again. Asking a new question cancels a change you did not confirm. The assistant proposes at most one change per answer.

When you ask for a manifest, the assistant writes one and checks it with the same dry-run that nodus apply --dry-run=server uses. A draft is shown to you only after that check passes. If the check fails, the assistant sees the error and fixes the manifest first. Each draft comes with the equivalent CLI command and Python, and its estimate. A draft is not created until you apply it, or ask the assistant to and confirm.

For a Job that would start over after a preemption, the assistant can suggest a manifest that checkpoints, with that manifest’s dry-run. Recovery settings cannot change on a running Job, so the suggestion is a new manifest. Your program still has to write its state to the declared checkpoint paths.

You can give the assistant a short note about how you like answers, such as “short answers, show the CLI command”. It reads the note as your preference, and the note cannot change the assistant’s rules. You can also follow up to 8 objects so the assistant knows what you are working on.

Both are yours alone in each org. In the API:

Terminal window
$ curl -s "$NODUS_API_URL/assistant/v1/profile" -H "Authorization: Bearer $NODUS_API_KEY"
$ curl -s -X PUT "$NODUS_API_URL/assistant/v1/profile" -H "Authorization: Bearer $NODUS_API_KEY" \
-H "Content-Type: application/json" -d '{"note": "Short answers.", "revision": 0}'

The note is at most 8 KiB. Send back the revision you read, and the update fails with a conflict if someone else changed the note in between. /assistant/v1/watches takes {"watches": ["<uid>", …]}.

Your chats are stored per org, for you only. A chat holds up to 200 questions. Each answer is stored with a checksum, and deleting a chat deletes its answers. A tool the assistant ran is recorded by name with checksums of its arguments and its result, never their content, so file contents and command output are not kept. Chats are kept at most 400 days.

Nodus chooses a Claude model for each question and uses it for the whole answer. Nodus pays for the model calls; they do not use your credits.

Limit Value
Questions 1 per second per user, with bursts of up to 20
Steps for one question 12 model rounds and 32 tool calls
Time for one question 180 seconds
Drafts 1 draft request every 5 seconds per user
Daily allowance Each org has a daily allowance for the assistant, which resets at 00:00 UTC

When a limit is reached the assistant says so and what happens next, instead of failing. Your Jobs, the docs and the CLI are not affected.