>_

Getting started

Three steps from a fresh machine to a running portal. There is no separate daemon-start step: commands start it automatically when needed.

Step 1: Requirements

ComponentRequired?Why
Windows 10 1809+ x64
or Ubuntu Desktop 22.04 / 24.04 x86-64
Yesagent sessions run in ConPTY or Linux PTYs
Agent CLI on PATHYes claude, codex or opencode — the tool that produces responses. Without it, the portal opens but spawn will fail.
Git 2.5+For fan-out each agent needs a separate git worktree

Step 2: Install

Download for Windows. Double-click the agentdc-windows-amd64.exe file you downloaded.

  1. If SmartScreen appears, click More info → Run anyway — the binary is not code-signed.
  2. The binary installs itself into %LOCALAPPDATA%\Programs\AgentDC\agentdc.exe, creating AgentDC shortcut on your Desktop and an App entry in Start/Search.
  3. A single terminal opens and remains visible while the app runs. Close it or press Ctrl+C to stop AgentDC.

After installation, use Desktop or Start to run the app from its canonical path. You can remove the downloaded installer once AgentDC has opened successfully.

Linux x64: download the binary, make it executable, then launch it:

$ curl -fL https://agentdc.nqdiepoii.com/download/linux-amd64/agentdc-linux-amd64 -o agentdc
chmod +x agentdc
./agentdc

On first launch it installs itself into ~/.local/bin/agentdc, writes a desktop entry under ${XDG_DATA_HOME:-~/.local/share}/applications, and opens a visible terminal and browser portal. Existing agent CLIs on PATH are reused; new machines can install Claude Code, Codex or OpenCode from Agents.

Zalo works on Windows and Linux x64. Linux server/systemd, ARM and package-manager installation are not supported. The verified scope is Ubuntu Desktop 22.04 / 24.04 x86-64.

PowerShell is an alternative for automated or unattended installation. Open PowerShell (the Windows version is sufficient) and paste:

# install or update
$ irm https://…/install.ps1 | iex

The script installs the app at its canonical path, creates Desktop and Start/Search shortcuts, and opens a visible terminal. Running it again replaces code only; the current daemon and live sessions are preserved.

Data lives separately in AGENTDC_HOME and is never included in the download package. Installation and updates do not copy, delete or reset it.

# install the app and shortcuts without launching AgentDC
$ & ([scriptblock]::Create((irm https://…/install.ps1))) -NoStart

Step 3: Check your machine

AgentDC installation does not change PATH. Documentation examples use the alias agentdc; set it once in the current PowerShell session before running commands:

$ $AgentDC = "$env:LOCALAPPDATA\Programs\AgentDC\agentdc.exe"
$ Set-Alias -Name agentdc -Value $AgentDC

$ agentdc doctor

[ok]   windows        build 26200 >= 17763
[ok]   agent binary   claude
[ok]   git            2.51.0
[ok]   config         C:\Users\you\AppData\Local\agentdc
[--]   daemon         not running (the CLI starts one on demand)

doctor checks 9 components: Windows build, agent CLI, git, config, write access, knowledge base, daemon, home claim and database. If one check FAIL , later checks still run — except config, because all subsequent checks require configuration.

[i] doctor does more than inspect: it creates the configuration folder, token and database if missing. On a fresh machine, it is the fastest way to prepare everything.
>_

Settings

Two key environment variables

Both are optional:

AGENTDC_HOME config, database, token and logs. Defaults to %LOCALAPPDATA%\agentdc on Windows or ~/.config/agentdc on Linux
AGENTDC_PORTdefault 8770

One daemon per AGENTDC_HOME. To run another daemon, change AGENTDC_HOME, not just the port. Changing only the port is rejected with an explanation.

[!] Do not point AGENTDC_HOME at a OneDrive/Dropbox-synced folder. An open SQLite database can be corrupted there.

Three logs, three locations

daemon.logdaemon routing, background work and errors
logs\<sid>.log a conversation's terminal transcript — contains ANSI color codes; do not open it in Notepad
update-apply.log the most recent self-update; inspect this if the app does not restart after an update

All paths are relative to <AGENTDC_HOME>.

>_

Portal

$ agentdc portal
portal: http://127.0.0.1:8770/?k=…

This command starts the daemon if needed, creates a single-use key and opens the portal in your browser.

agentdc app is the equivalent CLI command to open the app with a visible terminal. Desktop and Start/Search shortcuts and a double-clicked download run AgentDC without arguments.

[!] Opening http://127.0.0.1:8770/ directly returns 401. This is expected. The portal requires a session cookie, which agentdc portal creates. Sessions are held in memory, so restarting the daemon invalidates them: run agentdc portal.

On a dedicated single-user machine, set AGENTDC_PORTAL_OPEN=1 before starting the daemon to remove the cookie requirement. Origin checks, route allowlists and header checks remain enabled.

Projects and conversations

  1. Sidebar → + Add project → choose a working folder.
  2. Sidebar → + Add conversation → choose a project and agent.

A project is the working context: agents start with that project's directory as their cwd. Long-term memory belongs to the project, not the conversation. Conversations in the same project share one pillar tree.

You can also use the CLI:

# add a project and start an agent session
$ agentdc project add myapp C:\code\myapp
$ agentdc spawn myapp

# send a prompt and stream output until the agent is idle
$ agentdc send <sid> "read the README and explain the project"

Safety mode

The new-conversation dialog includes a Safety modeswitch: the agent runs in normal mode, without permission-bypass flags. The daemon adds a system prompt defining boundaries from the start. Enable it for conversations that interact with external users.

Persistent sessions

Agents run in ConPTY sessions managed by the daemon , not by your terminal. Closing a CLI terminal used forattach, closing the portal tab or signing out does not end the session or its transcript. The terminal opened by an AgentDC shortcut is different: it hosts the daemon, so closing it or pressing Ctrl+C stops AgentDC and its live sessions.

# attach to a live session; press Ctrl-] to detach
$ agentdc attach <sid>

# or read the transcript
$ agentdc logs <sid>
>_

Fan-out

One prompt, N agents, N independent git worktrees. Compare results side by side and choose which one to keep.

$ agentdc fanout myapp --n 3 "add parser tests"
run 7f3a: 3 worktrees branched from commit 1c9de2f
3/3 agents completed

# compare the three attempts
$ agentdc fanout diff 7f3a

# inspect the full patch for attempt 2
$ agentdc fanout diff 7f3a 2

# clean up worktrees, branches and records
$ agentdc fanout clean 7f3a

--n accepts 2 to 8. The project must be a git repository with a commit . These two conditions are validated by the client with separate error messages.

[i] The NEW in fanout diff counts untracked files. Agents often do not commit, so reading only git diff would report zero and make the comparison look empty.
[i] agentdc does not score attempts for you . It provides a comparison and three git commands to keep your chosen attempt; the decision is yours.
>_

CLI reference

The portal is the main interface; the CLI is for scripting and recovery when the portal is unavailable. Every command supports --help.

The commands below use a PowerShell session alias, because AgentDC is not added to PATH:

$ $AgentDC = "$env:LOCALAPPDATA\Programs\AgentDC\agentdc.exe"
$ Set-Alias -Name agentdc -Value $AgentDC

The alias exists only in the current PowerShell window; all agentdc … examples below call the executable at its canonical path.

attachattach this terminal to a live session (exit: Ctrl-])
appopen AgentDC with a visible app terminal; closing it stops the daemon
completiongenerate shell completions
daemonrun the daemon in the foreground
doctorinspect AgentDC's environment and dependencies
fanoutspawn N agents with the same prompt, each in its own git worktree
kbKnowledge Base: propose and read knowledge pages
licensesprint third-party license notices embedded in the binary
logsread a session transcript
lslist sessions
portalopen the portal in your browser
projectmanage projects
rmstop a session and remove its record (the transcript is preserved)
sendsend a prompt and stream output until the agent is idle
spawnspawn an agent session in a project
statusdaemon status (without auto-start the daemon)
stopstop a session (gracefully first, then kill)
viewopen a file in the portal viewer
[i] All commands except status, doctor, --version and completion will auto-start the daemon if needed. status intentionally do not: a status command that starts the daemon cannot tell you whether it was already running.

Machine-readable output

$ agentdc ls --json | ConvertFrom-Json
$ agentdc status --json

ls, status, fanout list and fanout diff accept --json. An empty list returns [], never null.

>_

MCP for agents

One AgentDC endpoint for compatible MCP clients. Configurations for Codex, Claude Code and OpenCode are shown below; new clients use the same contract.

AgentDC must be running in its terminal for agents to connect to http://127.0.0.1:8770/mcp. MCP shares the daemon, projects, sessions and memory with the portal. It does not open another app or send an initial prompt into a session.

[i] Read the token from %LOCALAPPDATA%\agentdc\token, or the <AGENTDC_HOME>\token if you changed the data directory. This is a local administrator credential: do not commit or share it, and connect only over 127.0.0.1.

Codex

Add this server to ~/.codex/config.toml, then restart Codex:

[mcp_servers.agentdc]
url = "http://127.0.0.1:8770/mcp"
http_headers = { Authorization = "Bearer <TOKEN>" }
tool_timeout_sec = 1200

Claude Code

Register at user scope to make AgentDC available in every project:

$ claude mcp add --transport http --scope user agentdc http://127.0.0.1:8770/mcp --header "Authorization: Bearer <TOKEN>"
$ claude mcp get agentdc

OpenCode 1.x

Add a remote server to your active OpenCode configuration, then restart OpenCode:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "agentdc": {
      "type": "remote",
      "url": "http://127.0.0.1:8770/mcp",
      "enabled": true,
      "oauth": false,
      "headers": {
        "Authorization": "Bearer <TOKEN>"
      }
    }
  }
}

Tool

statusread daemon status, the current version and available updates
list_agentsdiscover agent profiles and their installation, enablement and resume state
list_projectslist projects managed by AgentDC
list_sessionslist sessions, optionally filtered by project
spawn_sessioncreate a session using a profile ID returned by list_agents
prompt_sessionsend a prompt and receive cleaned UTF-8 output
stop_sessionstop one specific session at the user's request
search_memorysearch long-term memory within one project
record_memoryrecord a decision in an existing memory branch
update_statusread download and installation progress for an update

The three listing tools accept cursor/limit and return next_cursor; search_memory uses before/next_before. All wire output, including text fallbacks for older MCP clients, is capped at 256 KiB and reports truncated; more projects, sessions or agents will not overflow the client's context.

MCP exposes only the controlled operations above. Project deletion, history deletion, daemon shutdown and update application still require direct user action in AgentDC.

>_

Automatic updates

The daemon checks for updates on startup, then every minute. A new release shows an update indicator in the portal. Click it to see release notes, download percentage and bytes transferred, verification of sha256 and installation status.

The AgentDC terminal continuously reports version checks, release notes, download milestones, verification, replacement, errors and when the new binary is ready.

Updates replace application code only. AgentDC downloads the complete new release binary, rather than appending data to the existing binary. The running file is temporarily renamed to agentdc.exe.old, and the new file takes the name agentdc.exe. The current daemon keeps running from .old, preserving its agent sessions. The next launch uses the new binary and removes .old.

The database, configuration, history and all of AGENTDC_HOME stay in place. They are not copied with the binary and are never included in downloads. Only program-file disk usage temporarily nearly doubles between installation and the next launch.

[i] This terminal owns the app lifecycle. Closing it or pressing Ctrl+C stops AgentDC. During an update, wait until the terminal confirms installation before closing it.
[i] Updates preserve live sessions and do not restart automatically. The confirmation dialog shows how many sessions are preserved. Close and reopen AgentDC when convenient to use the new version. If another release arrives meanwhile, AgentDC waits for that restart before offering another install because .old is still used by the current daemon.

Activate the new version

Once the terminal reports installation complete, keep using your current sessions. When convenient, close the terminal and open AgentDC from its shortcut. You can also launch the canonical app from PowerShell:

$ & "$env:LOCALAPPDATA\Programs\AgentDC\agentdc.exe"

Update details are recorded in <AGENTDC_HOME>\update-apply.log; startup errors and runtime status are in <AGENTDC_HOME>\daemon.log. By default, <AGENTDC_HOME> is %LOCALAPPDATA%\agentdc.

Disable update checks

AGENTDC_NO_UPDATE_CHECK=1 disables them completely. Only the exact value 1
AGENTDC_UPDATE_URL points to another mirror

A go build self-built binary has no update channel and makes no update network requests. No update indicator is shown.

>_

Troubleshooting

Opening 127.0.0.1:8770 returns 401 has not agentdc portal, or the portal session expired
A new route returns 404 but /status 200 an older executable is still running in the daemon
spawn fails Claude Code, Codex or OpenCode is missing from PATH. Run agentdc doctor
fanout is rejected the project is not a git repository or has no commits
A session shows orphaned the previous daemon died without cleanup; the record exists but the process does not
The app does not open after an update relaunch AgentDC using the command under Activate the new version; inspect <AGENTDC_HOME>\update-apply.log and daemon.log
The update cannot write a file check antivirus and write permissions for %LOCALAPPDATA%\Programs\AgentDC; double-clicking a new download can repair the canonical installation
[i] agentdc doctor answers most of these questions. Run it before searching the logs.

Historical release notes are shown in their original language.

>_

What's new

Loading release history…