Rejoining... Retrying in s Connection lost Session paused Resume failed
Ariadne User Documentation
Documentation for how to use the Ariadne platform

console-app

Last updated 13 September 2026

Console App

The Ariadne Console is a command-line client that brings the full power of Ariadne to your terminal. It supports interactive and headless modes, has direct access to your local filesystem, and can integrate with IDEs via the Agent Control Protocol (ACP).

Installation

Linux — one command

curl -fsSL https://<your-ariadne-instance>/install.sh | sh

The script is served by your Ariadne instance with its own URL already stamped in (the Download CLI dialog in the web UI shows the exact command for your instance). It:

  • installs a self-contained Console bundle into ~/.ariadne/app — no .NET installation required;
  • keeps a copy of itself at ~/.ariadne/ariadne and puts that on your PATH, so afterwards you just run ariadne;
  • checks the published bundle's SHA-256 on every launch and only re-downloads when it has actually changed;
  • launches the Console, passing through any arguments — ariadne --headless, ariadne --acp, and so on;
  • still starts your installed copy when the server can't be reached, so being offline doesn't stop you working.

Set ARIADNE_SERVICE_URL to point an existing install at a different instance. x64 hosts are served today; the script picks its bundle from uname -m, so an arm64 host reports that no bundle is published rather than installing the wrong one.

Windows

Download Ariadne.Launcher.exe from the same dialog. It does the equivalent job — installs under %LOCALAPPDATA%\Ariadne, self-updates, and starts the Desktop app; the CLI (Ariadne.exe) is installed alongside it and added to your PATH.

From source

dotnet run --project Ariadne.Console -- [options]

Code Mode Integration

Running the Console app is one of the primary ways to give Ariadne's Code conversation mode real file and terminal access. When a Console instance is connected to a Code conversation (or any conversation whose ID contains headless), the agent automatically discovers and uses the Console's local tool set — reading files, running builds and tests, and executing shell commands on the host machine.

See Code Mode & Remote Development Environments for a full explanation of how this works, including how to use Docker containers and how multiple clients can connect simultaneously.


Running Modes

Interactive Mode (Default)

dotnet run --project Ariadne.Console -- --conversation-id <id> --user "Your Name"

This opens a terminal-based UI where you can type messages and see the agent's responses. It works like the web UI but entirely in the terminal.

Headless Mode

dotnet run --project Ariadne.Console -- --conversation-id <id> --user "Your Name" --headless

In headless mode, the Console runs without an interactive UI — ideal for use in Docker containers or scripted automation. The working directory /app/work (when running in Docker) is mounted for persistent file access.

ACP Mode (IDE Integration)

dotnet run --project Ariadne.Console -- --acp

Or set the environment variable:

ARIADNE_ACP=true dotnet run --project Ariadne.Console

ACP mode enables deep integration with compatible IDEs. See ACP Integration below.

Connection Options

The Console connects to Ariadne via:

Transport When to Use Required Settings
NATS Direct/internal connection (same network) --nats-url nats://host:4222
WebSocket Remote/external connection --service-url https://... + --token <bearer>

These can also be set in appsettings.json in the Console project directory.

Local File Tools

When running the Console (especially in headless mode), agents gain access to a rich set of local filesystem tools that operate on the host machine. These tools are only available via the Console — not through the web UI.

Tool What it Does
Read File Read any file on the local filesystem
Edit File Modify an existing file
Create File Create a new file with specified content
Delete File Remove a file
List Directory List the contents of a directory
Search Files Find files by glob pattern
Search File Content Full-text search within files
Change Working Directory Change the current working directory for subsequent operations
Create Directory Create a new directory
Build File Index Index a directory for fast searching
Image Access View, inspect, and analyze local images on the host (e.g. Playwright browser outputs, snapshots, or agent-generated diagrams)

The /cd Navigation Command

In addition to programmatic tool calls, Ariadne supports a native /cd <path> command directly inside the Console terminal interface as well as web/desktop conversation inputs.

Typing /cd D:\Dev\MyProject (or a relative path like /cd ..) instantly updates the active working directory context for both your terminal session and any subsequent agent tool executions. This provides an intuitive, hands-on way to navigate your workspace alongside the agent.

Shell and Terminal Tools

Tool What it Does
Run Bash Execute a bash command with working directory tracking
Terminal Persistent named terminal sessions (see below)
Execute Program Run any external program with full path resolution, stdout/stderr capture, and configurable timeout

Execute Program Details

The exec_program tool resolves commands automatically:

  • Searches the system PATH
  • Checks common directories (/usr/bin, /usr/local/bin, etc.)
  • Provides clear error messages if a command is not found
  • Captures both stdout and stderr
  • Default timeout: 30 seconds (configurable up to 300 seconds)

This allows agents to run builds, tests, linters, and any other CLI tools available on the host.

Named Terminal Sessions

The terminal tool creates persistent named terminal sessions. This is useful for:

  • Keeping a REPL open between agent turns
  • Maintaining state across multiple commands (e.g. a Python interpreter session)
  • Running a long-running process and interacting with it incrementally
Session: "python-repl"
> import pandas as pd
> df = pd.read_csv("data.csv")
> df.describe()   # (next agent turn — session remembers the state)

ACP (Agent Control Protocol) Integration

The Console's ACP mode integrates Ariadne directly into your IDE as a coding assistant. ACP is a JSON-RPC 2.0 protocol that IDEs use to communicate with AI coding agents.

Supported IDEs

Any IDE that supports the Agent Control Protocol can connect to Ariadne via the Console in ACP mode, including:

  • JetBrains Rider / IntelliJ IDEA (and other JetBrains IDEs)
  • VS Code (with a compatible ACP extension)
  • Other ACP-compatible editors

What ACP Provides

When connected via ACP, the IDE gains:

Capability Description
Session Management Create, load, and list conversations from within the IDE
Code Chat Ask questions about code in context
Streaming Responses Token-by-token streaming directly in the IDE chat pane
Cancellation Cancel an in-progress response
IDE File Access When the IDE advertises filesystem capabilities, Ariadne routes file I/O through the IDE rather than the local disk
IDE Terminal When the IDE advertises terminal capabilities, Ariadne uses the IDE's integrated terminal for shell commands

ACP Method Reference

ACP Method Ariadne Action
session/new Create and register a new conversation
session/load Fetch conversation history
session/list List all conversations
session/prompt Send a user message and stream the response
session/cancel Cancel the currently streaming response

Setting Up ACP in Your IDE

  1. Start the Console in ACP mode: dotnet run --project Ariadne.Console -- --acp (or set ARIADNE_ACP=true)
  2. In your IDE, configure the AI assistant to connect to the Ariadne ACP server
  3. The IDE will discover available capabilities (filesystem, terminal) and route them through the Console

Refer to your IDE's documentation for the specific steps to connect to an external ACP agent.

Remote File Editing

When the Console is connected to a conversation, you can edit files on the remote host directly from the web UI or Desktop app. If the agent is stuck on a coding task — for example, it cannot resolve a build error — you can open the file browser, make the fix yourself, and the agent will pick up the change on its next turn. This is particularly useful in paired programming scenarios where you want to nudge the agent in the right direction without typing instructions.

MCP Server Hosting

The Console can host MCP (Model Context Protocol) servers locally. This allows you to run MCP-compatible tools on your own machine and make them available to Ariadne agents.

dotnet run --project Ariadne.Console -- --mcp-server "path/to/mcp-server"

MCP servers started via the Console are registered with the connected Ariadne instance and are available to agents for the duration of the Console session.

Docker Usage

When running the Console in a Docker container (common in headless mode), the working directory is typically mounted at /app/work:

volumes:
  - /path/to/work:/app/work

All file operations by the agent are relative to this working directory by default, providing a clean, sandboxed workspace.

Configuration

The Console reads configuration from appsettings.json in its working directory, or from environment variables:

Setting Environment Variable Description
NATS URL NATS__Url NATS server URL
Service URL ServiceUrl WebSocket service URL
Bearer Token BearerToken Authentication token
Conversation ID ConversationId Default conversation to open
User name UserName Display name in conversations
ACP mode ARIADNE_ACP true to enable ACP mode