ekko-studio README

The project's README from github.com/EKKOLearnAI/ekko-studio. As one markdown file: README.md.

Ekko Studio 中文

A local-first AI workspace for multi-agent chat, coding, and visual workflows.
Available as a desktop app and self-hosted web console, with support for
Hermes Agent, Ekko Agent, Claude Code, Codex, Pi, Grok, and OpenCode.
Bring conversations, group collaboration, voice, files, and devices together in one place.

Download Ekko Studio Desktop · Documentation · npm install -g hermes-web-ui && hermes-web-ui start

Ekko Studio workspace with an example conversation

npm version license stars

Ekko Studio was previously named Hermes Studio / Hermes Web UI. The GitHub repository remains EKKOLearnAI/hermes-studio, and the npm package and server CLI remain hermes-web-ui; use these names in clone and installation commands.

Screenshots

Captured in Ekko Studio v0.7.18 on 2026-09-10. Chat and workflow screens use demo data.

Visual workflows Agent Manager
Visual workflow connecting research, coding, and review Seven agent runtimes in Agent Manager
Connect agent steps and add a human approval gate. Manage agent installations, settings, and updates in one place.
Explore the Skills interface

Browse installed skills, read their instructions, and enable them as needed.

Ekko Agent Skills browser showing the GitHub skill

Core Capabilities

Area What Ekko Studio does
Multi-agent runtime Runs Hermes, Ekko, Claude Code, Codex, Pi, Grok, and OpenCode with streaming responses, tool traces, generated-file previews, persistent sessions, and standalone desktop chat windows.
Studio workspace Provides shared chats, group chat, global-agent runs, workflows, files, voice, media, devices, themes, logs, usage, and App connectivity across agent runtimes.
Agent control planes Keeps Hermes profiles, providers, models, memory, skills, plugins, jobs, Kanban, channels, and runtime management in their owning agent module.
Automation Builds executable visual workflows and connects the supported runtimes through schedules, approval gates, group-chat rooms, platform channels, and MCP servers.
Workspace tools Provides a file browser, web terminal, Desktop Agent Browser, voice input/output, coding-agent runners, device discovery, Journey graph, and performance views.
Distribution Ships as a desktop app for Windows/macOS/Linux, an npm CLI package, and a Docker image.

Agent and Platform Boundaries

Ekko Studio provides a shared workspace for its supported agent runtimes, grouped into three agent families:

Agent family Runtime Owned behavior
Hermes Hermes Profiles, providers, models, skills, plugins, memory, jobs, Kanban, channels, MCP, terminal, and Hermes runtime integration.
Ekko Ekko Ekko execution, approvals, clarifications, memory, MCP, and provider runtime behavior.
Coding Claude Code, Codex, Pi, Grok, OpenCode Coding-agent installation, configuration, proxies, sessions, and process execution.

Studio owns capabilities shared by those families: single chat, group chat, global-agent orchestration, workflows, webhooks, sessions, files and uploads, TTS/STT, media, pets, themes, devices, networking, logs, usage, authentication, and App connectivity. Studio-owned HTTP APIs use /api/studio/*; Hermes-owned control-plane APIs use /api/hermes/*. Already-released mobile App paths are handled by one centralized compatibility layer instead of duplicate legacy controllers.

Features

AI Chat

Platform Channels

Unified configuration for 10 platforms in one page:

Platform Features
Telegram Bot token, mention control, reactions, free-response chats
Discord Bot token, mention, auto-thread, reactions, channel allow/ignore lists
Slack Bot token, mention control, bot message handling
WhatsApp Enable/disable, mention control, mention patterns
Matrix Access token, homeserver, auto-thread, DM mention threads
Feishu (Lark) App ID / Secret, mention control
DingTalk Client ID / Secret, mention control
QQBot App ID / Secret, mention control
WeChat QR code login (scan in browser, auto-save credentials)
WeCom Bot ID / Secret

Usage Analytics

Scheduled Jobs

Kanban

Visual Workflows

Model Management

Multi-Profile

File Browser

Group Chat

Coding Agents

Desktop Agent Browser

Skills & Memory

Theme Customization

Logs

Admin & Runtime Management

Authentication

CLI maintenance commands:

# Delete persisted login IP lock records
hermes-web-ui clear-login-locks

# Delete login locks and restart the running Studio server
hermes-web-ui clear-login-locks --restart

# Create or reset the default super administrator login to admin / 123456
hermes-web-ui reset-default-login

clear-login-locks removes ${HERMES_WEB_UI_HOME:-~/.hermes-web-ui}/.login-lock.json. If the server is running, restart it to clear in-memory lock state. reset-default-login updates the Studio account database; if an admin user already exists, its password is reset to 123456 and the account is enabled as a super administrator.

Settings

Voice / TTS / STT

Web Terminal

Desktop App & Updates


Quick Start

Download the latest Ekko Studio desktop installer from GitHub Releases.

Desktop builds are published for macOS, Windows, and Linux, with separate architecture assets where applicable. The desktop app bundles the Studio runtime and stores Hermes Agent data in ~/.hermes on Windows, macOS, and Linux.

The desktop wrapper stores its own Studio state separately in ~/.hermes-web-ui unless HERMES_WEB_UI_HOME is set.

After the packaged desktop app starts, it installs managed command shims so the desktop app, bundled Hermes Agent CLI, and bundled server CLI do not conflict:

Command Description
ekko-studio Open the Ekko Studio desktop app
ekko-studio cli ... Run the bundled Hermes Agent CLI
ekko-studio web ... Run the bundled hermes-web-ui command
ekko-studio -h Show wrapper help
ekko-studio-mcp [api|browser|devices|use] Run one managed Studio MCP toolset

The desktop command is ekko-studio; the previous managed hermes-studio command is removed when the new shim is installed. No compatibility alias is created.

Use ekko-studio cli -h for Hermes Agent CLI help and ekko-studio web -h for server CLI help. ekko-studio-mcp defaults to the api toolset; choose browser, devices, or use to keep the exposed MCP surface focused on the current task.

Desktop auto-updates read the latest feed from https://download.ekkolearnai.com/latest first. If that endpoint is unavailable, the updater falls back to https://github.com/EKKOLearnAI/hermes-studio/releases/latest/download.

npm

npm install -g hermes-web-ui
hermes-web-ui start

Open http://localhost:8648

Docker Compose

Single-container deployment with integrated Hermes Agent:

# Use pre-built image (Recommended)
WEBUI_IMAGE=ekkoye8888/hermes-web-ui docker compose up -d

# Or build from source
docker compose up -d --build

docker compose logs -f hermes-webui

Open http://localhost:6060

For detailed notes and troubleshooting, see docs/docker.md.

Hermes Agent Runtime Discovery

When Studio starts backend chat features, it prefers a source checkout that contains run_agent.py such as ~/.hermes/hermes-agent. If no source checkout is found, it falls back to the Python environment used by the installed hermes command, then the system Python. This supports both source installs and package installs such as pip install hermes-agent.

Studio Environment Variables

These variables configure Ekko Studio, its local Hermes runtime integration, and development/preview helpers. Provider API keys and Hermes Agent settings are normally managed through Hermes profiles; environment variables here are process-level overrides.

Variable Default Description
PORT 8648 Studio server listen port.
BIND_HOST 0.0.0.0 Studio server bind host. Set :: explicitly for IPv6.
HERMES_LAN_ADVERTISE_URL unset Reachable Studio origin used in App LAN QR codes. Set this to the Docker host's LAN URL when Studio is opened through localhost, for example http://192.168.1.20:6060.
HERMES_APP_ENTITLEMENT_REQUIRED true Require a valid cloud-signed App entitlement before accepting a LAN App relay connection. Set false only for temporary compatibility diagnostics.
HERMES_APP_ENTITLEMENT_PUBLIC_KEY built in Optional PEM public-key override for RS256 App entitlements. The expected issuer is hermes-studio-server and audience is ekko-studio.
HERMES_WEB_UI_HOME ~/.hermes-web-ui Studio data home for auth token, credentials, logs, DB, and default uploads. HERMES_WEBUI_STATE_DIR is also supported as a compatibility alias.
HERMES_WEBUI_STATE_DIR unset Compatibility alias for HERMES_WEB_UI_HOME.
HERMES_WEB_UI_DISABLE_MCP_AUTOINJECT unset Disable startup injection of the managed ekko-studio-* MCP servers into Hermes profile configs.
HERMES_WEB_UI_ALLOW_TRANSIENT_MCP_AUTOINJECT unset Allow managed MCP injection when HERMES_WEB_UI_HOME is under a temporary directory, such as Version Preview runtimes.
UPLOAD_DIR $HERMES_WEB_UI_HOME/upload Upload root override. Files are stored below profile-scoped subdirectories.
`CORS

ekko-studio (EKKOLearnAI/ekko-studio)

Searching Database…

Что это?Ekko Studio — это AI-рабочее пространство в духе local-first для мультиагентного чата, кодинга и визуальных воркфлоу, доступное как десктоп-приложение и как self-hosted веб-консоль.
Это отдельное чат-приложение или управляющая плоскость для других агентов?Это общая управляющая плоскость, которая запускает и оркестрирует несколько отдельных агентских сред исполнения (Hermes, Ekko Agent, Claude Code, Codex, Pi, Grok, OpenCode) в одном интерфейсе, а не агент сама по себе.
Как установить и запустить Ekko Studio?Установите CLI глобально через npm и запустите его, либо используйте вместо этого десктоп-приложение или Docker-образ.
Нужно ли отдельно устанавливать кодинг-агентов, и какая версия Node требуется?Studio требуется Node.js 23 или новее, а для поддержки кодинг-агентов она сама устанавливает, настраивает и запускает Claude Code, Codex, Pi, Grok и OpenCode из своей панели, не требуя запускать их заранее.
Есть ли подводные камни в настройке, которые стоит исправить сразу?Сервер стартует с учётными данными по умолчанию admin / 123456, которые предлагают сменить после первого входа, а поле лицензии репозитория на GitHub помечено как NOASSERTION, так что условия лицензирования явно не прописаны.
Он работает только как CLI, или есть и настоящее десктоп-приложение?Он поставляется тремя способами: десктоп-приложение для Windows, macOS и Linux, npm-пакет с CLI и Docker-образ.
Где на самом деле хранится моя история чатов?Studio хранит свои сессии в локальной базе SQLite на вашей машине, а state.db у Hermes лишь читается как источник истории — по умолчанию ничего не отправляется на сторонний сервер.
В чём разница между семействами агентов Hermes и Ekko в Studio?Hermes отвечает за провайдеров, модели, скиллы, плагины, память, задачи и интеграции MCP/каналов, а Ekko Agent — за собственное исполнение, одобрения, уточнения и память; Studio предоставляет общий слой чата, воркфлоу и файлов, к которому подключаются оба.
Почему в репозитории и npm-пакете всё ещё написано «Hermes»?Ekko Studio переименована из Hermes Studio / Hermes Web UI; репозиторий на GitHub (EKKOLearnAI/hermes-studio) и npm-пакет/CLI (hermes-web-ui) сохраняют старые имена ради команд клонирования и установки.
Что умеет визуальный конструктор воркфлоу?Это холст Vue Flow, где вы соединяете шаги агента с условиями, ветками успеха/неудачи, циклами и точками ручного одобрения, а затем запускаете, ставите на паузу, перезапускаете и повторно проигрываете воркфлоу с сохранённой историей исполнений.
К каким чат-платформам можно подключить агентов?Telegram, Discord, Slack, WhatsApp, Matrix, Feishu, DingTalk, QQBot, WeChat и WeCom — все настраиваются и подключаются с одной общей страницы Platform Channels.
What are similar projects?brigade, 1code, hermes-agent, Raven, ordewell, tinyagi, starnet, holaOS
Size
152.4 MB
Stars
11.4K
Age
6mo
Commits · 90 Days