Skip to content

Assistant

The assistant is a sidebar in the UI. Open it with the Assistant button or ⌘/Ctrl+J. Ask it things like “What failed today?” or “Create a task to rebuild the index”.

The assistant runs an agent loop in which the model writes small JavaScript programs. They run in a sandbox (goja) whose only connection to the world is aw.*, the same tools agents use:

const open = aw.tasks.list({ status: "open" });
aw.tasks.create({ title: "Rebuild search index", queue: "ops" }); // a proposal
answer(text("There are", open.tasks.length, "open tasks."));
  • Reads run directly.
  • Writes are only proposed. They appear as cards under the answer with Apply / Discard. Nothing changes until you click; Enter or y applies, Esc or n discards. Apply runs the call exactly once, as the assistant, and the page behind the sidebar refreshes.
  • Proposals are checked against the tool’s input schema immediately, and capped at 10 per answer.
  • No machine access: the sandbox has no file system, shell or network access.

Answers are Markdown, rendered safely.

Terminal window
AW_LLM_BASE_URL=https://api.eu.edenai.run/v3 # any OpenAI-compatible endpoint
AW_LLM_MODEL=vertex/gemini-3.5-flash-lite
AW_LLM_API_KEY=…

Without a key, the assistant is off. Everything it reads goes to the configured provider.