Skip to content

Node Console ​

The Node Console is zqagent's graphical interface: manage nodes, create projects, chat with AI, approve operations, and view usage and costs — all without typing a single command.

How to Open ​

ScenarioEntry pointNotes
DesktopDesktop appBuilt-in local node, works out of the box
BrowserUser Center → Node Management → Select nodeRemotely manage nodes that are already connected
MobileOpen the User Center in a mobile browserResponsive layout + PWA, can be "added to home screen"

Remote management requires the node to be connected to the User Center; see Start a Node.

Nodes and Projects ​

  • Node management: Created in the User Center; a single node management entry can hold multiple devices. The node list shows online status — click a node to open its console.
  • Project management: A project corresponds to a working directory on the node, which defines the scope the AI can read and write. When creating a project, you can browse the node's directories to select the working directory, avoiding errors from typing paths by hand.
  • Model selection: You can set a default model at the node level, or specify one for an individual session.

The top bar lets you switch quickly between nodes and projects and open the project management dialog for centralized maintenance.

Session Workbench ​

  • Session list: Supports pinning and search to quickly find past sessions.
  • Tabs: Open multiple sessions at once; tab state is persisted (still there after a refresh) and supports a context menu and collapsing.
  • Timeline: Displays the conversation and tool calls in chronological order, so long sessions can be reviewed in full.
  • Input drafts: Unsent content is saved automatically and restored automatically after switching sessions or refreshing the page, so nothing is written in vain.
  • File editing: The built-in editor supports undo/redo, Markdown highlighting, and scroll sync.

Approvals and Questions ​

When the AI requests an operation with side effects (writing files, running commands, etc.) or needs supplemental information from you, a card pops up in the session:

  • Approval offers four decisions: Allow once / Always allow this tool / Always allow this command / Deny. "Always allow this command" appears only for run_shell and allows a specific command, which is safer than allowing the whole tool.
  • Questions support built-in options and free-form input.

Unresolved cards remain in place and can be handled later. The approval semantics match the CLI; see Using the CLI for details.

Usage and Cost ​

zqagent meters every model call and aggregates it at both the node and account levels:

  • View usage: Open the usage panel from the token card on the project home page, or from "Monitoring → View usage" in the node details. It supports filtering by time range, daily bar charts, per-model statistics, and a detailed list, and can export CSV.
  • Price table: Ships with default unit prices for common models (OpenAI / DeepSeek / Qwen / Zhipu / Moonshot, etc.). You can edit them in the "Price table" as needed, and costs are then calculated using your prices.
  • Account-level usage: After signing in to the User Center, the account page shows cross-node usage aggregates.

Real-Time Behavior and Stability ​

  • Sessions are pushed over a real-time event stream that automatically reconnects after a disconnect and backfills increments by cursor: after switching to the background and back, or after network hiccups recover, session content is neither lost nor duplicated.
  • The server sends periodic heartbeats, so long periods without activity are not mistaken for idleness and won't trigger frequent reconnects.
  • Node online/offline events and task notifications (approvals/questions/errors) are reported in real time.

Mobile ​

  • On narrow screens (≤ 720px), the layout automatically switches to a single column: tabs toggle between "Overview / Console", and the session list and conversation can jump to each other.
  • Supports "Add to home screen" and runs in a standalone window.

Next Steps ​

Last updated: