Otto assistant
Use project-scoped AI sessions, revision-safe tools, worktrees, GitHub context, terminals, skills, and plugins.
Otto is Octonode's AI assistant. The left-rail Otto page creates sessions across projects in the active workspace; a project's Assistant tab opens the same experience already restricted to that project. An Architecture assistant may include every project owned by one registered repository.
Session privacy and scope
A new session starts private to its creator and is excluded from ordinary Chat. Choose the project or projects Otto may use. You can explicitly invite workspace members; invited members can read the whole transcript and send requests using their own current permissions.
Each run snapshots the session's selected projects and worktree. Otto receives a short-lived, project-bound credential intersected with the sending user's permissions. It cannot turn a prompt into access to another workspace or project. Project reads, source writes, validation, workflow runs, and canonical knowledge search remain separate authorized tools.
Otto has the hosted Octonode MCP connection and code-author skill built in. It exposes only project-scoped MCP tools to the model and supplies the selected project/worktree context for each run. You do not install the external Octonode client plugin inside Otto. That bundle is for Codex, Claude Code, ChatGPT, and other clients that need the same connection. See MCP setup.
Ask Otto to work safely
Give Otto a concrete outcome, expected behavior, and boundaries. Ask it to inspect the project first, reuse existing code, write against the latest revision, and validate the result. A revision conflict means the source changed and must be read again; Otto does not silently overwrite the newer version.
The run timeline shows tool calls and their results. A run may be queued, running, waiting for an explicit approval, completed, cancelled, or failed. High-risk tool requests stop for approval. You can cancel a long run; cancellation does not undo changes already completed by earlier tool calls.
Use the project workspace
Open the workspace panel beside the conversation when you need it. Adjust its width or expand it for a larger review. The + menu beside your message contains attachments, connection settings, skill imports, MCP connectors and pull requests.
- Changes opens unsaved work first. Filter by Workflows or Other files. Normal mode shows workflow graphs and file summaries; developer mode adds code diffs, staging and the code editor. Save all changes includes every non-conflicting file, regardless of the active filter.
- Compare branches shows committed differences from the base branch. These are separate from unsaved local changes. Worktrees isolate branch changes; multi-project sessions cannot select one worktree.
- Pull requests requires GitHub authentication and reuses an authorized repository connection. Manage access in repository settings. Reviewing in chat does not publish, push or merge.
- Skills & plugins lists project instruction files. Select Use in assistant to attach a skill
to the session, or import a ZIP containing
SKILL.mdfiles and Markdown references. Review the imported instructions before attaching them. Executable plugin scripts stay in your project terminal. - MCP connectors adds a remote HTTPS MCP server. Select a Global Variable if the server needs a bearer token. Only connect servers you trust; their tools become available to Otto for this session.
Repository worktrees share Git history and credentials and are not an authorization boundary. Closing the workspace panel preserves open editor drafts. Review and explicitly push or merge completed work.
Configure Otto's gateway
New chats default to Auto. Octonode AI Gateway selects a model through its configured route; no provider key is required. If no route is configured, Otto uses its built-in hosted model. Choose another provider in the model control to use your own connection.
- Add your provider API key as a secret in Global Variables for the active workspace.
- Open + → Otto connection.
- Choose Custom gateway, then enter your OpenAI-compatible HTTPS gateway URL and exact model ID.
- Select the variable name from API key variable, then save the connection.
The session stores the variable reference, never the API key. The sending user's current workspace
permissions are checked and the value is resolved when each run starts. Missing variables stop the
run; they do not silently fall back to another provider. The gateway URL can be a base URL ending in
/v1 or the full /chat/completions endpoint. URLs cannot contain credentials or query parameters.
Choose Octonode AI Gateway and save the connection to return to Auto. There is no thinking control.
Settings and instruction resources are captured for each run, so later changes apply to future runs. Provider keys must not be pasted into prompts or shared terminal commands.
Claude Code
Claude Code will be supported as a separate Octonode app integration. Its connection, login and terminal lifecycle are deferred under task T289. The Otto page has no Claude login or scratch terminal setup requirement.