{
  "markdown": "# OneThingChanged Acedia\n\n**English** | [한국어](README.ko.md)\n\n[![Version](https://img.shields.io/badge/version-1.8.0.5-blue)](https://github.com/OneThingChanged/Multiagent/releases/latest)\n[![License: MIT](https://img.shields.io/badge/license-MIT-green)](LICENSE)\n[![Platform](https://img.shields.io/badge/platform-Windows%2010%2F11-lightgrey)](https://github.com/OneThingChanged/Multiagent)\n\n**One workspace for every AI agent terminal.** Acedia runs and organizes multiple AI-agent CLI sessions — Claude Code, Codex, Qwen, Cline — as project-scoped tabs and split panes in a single Windows desktop app, with hook-based status detection, session resume, a chat view, remote phone access, and token-usage tracking.\n\nInstead of juggling a pile of terminal windows, you register each project once, then launch named sessions inside it — switching, splitting, and monitoring everything from one window.\n\n---\n\n## Features\n\n### Sessions & Layout\n- **Project-first workflow** — register a project folder, then create aliased sessions under it in the collapsible sidebar tree\n- **Tabs & nested splits** — horizontal/vertical panes, 5-zone drag-and-drop (center = merge as tab, edges = split), resizable splitters\n- **Screens** — every session belongs to exactly one split group; sidebar summaries like `Screen 1 (A+B+C)` jump straight to that layout\n- **Session management** — restart, deactivate (kill the PTY but keep the session), rename, relink to the latest on-disk session, pin a group to specific session IDs\n\n### Agent Status & Notifications\n- **Working/done detection** — Claude Code / Codex / Qwen hooks report over a local HTTP channel; every session shows a live status dot (idle / starting / running / working / exited)\n- **Completion alerts** — in-app toast, Windows notification, and a configurable sound (system sound / custom file / off)\n- **Desktop Pet** — an always-on-top, non-focusable mascot showing idle/working/done, running & completed counts, and the latest prompt; click to jump to the session\n\n### Chat View\n- A readable conversation view alongside the raw terminal (for transcript-based tools): provider-labelled assistant cards, chronological tool groups with status, structured Markdown, and a jump-to-latest control\n- Per-session SQLite history restores prior conversation blocks after restart, pages older turns on demand, and catalogs referenced output files without mixing agents\n- Composer with `/` command and `@` file autocomplete, clipboard-image paste, large-paste collapsing, message queueing while the agent works, Esc to cancel\n\n### Session Resume\n- `SessionStart` hooks capture each tool's session ID; reopening a session runs `codex resume <id>` / `claude --resume <id>` automatically\n- Scrollback snapshots restore the terminal view after an app restart\n- **Relink to current session** recovers a lost resume target by scanning the newest on-disk transcript\n- Session properties separate identity, JSONL storage, and launch-only options into focused tabs with independent scrolling\n\n### Files, Docs & Git\n- **File tree sidebar** — lazy-loaded project explorer with git status badges, find-files filter, and full file operations (new/duplicate/rename/delete/copy path)\n- **Source Control view** — branch & ahead/behind, staged vs. changes, per-file +/− counts, commit box, recent commits\n- **Document tabs** — Markdown (GFM + syntax highlight), sandboxed HTML, images, and read-only text open next to your terminals; clicking paths in terminal output opens them inline\n\n### Remote Access\n- **Remote PWA / Android app** — monitor and nudge sessions over a Cloudflare Tunnel, protected by GitHub login + owner approval; browser Web Push and configured native APK builds can report completion or required answers in the background (standard builds only)\n- **SSH remote sessions** — run agents on another machine over SSH; Windows remotes get full status dots and resume via a reverse hook tunnel\n\n### Monitoring & Usage\n- **Local dashboard** (`127.0.0.1:4421`) — live sessions, hook state, project docs, and token usage on one web page\n- **Usage tracking** — transcript JSONL parsed into SQLite; per-project/session token stats with charts\n- **Account rate limits** — Codex (transcript) and Claude (OAuth usage endpoint) limits in the status bar, with warning colors at 70%/90%\n- **Resource manager & Ports monitor** — per-session CPU/memory process tree, and open TCP ports attributed to projects\n\n### Productivity\n- **Quick Open** (`Ctrl+K`) — projects, sessions, Screens, docs, and commands in one search\n- **Attention Center** — unread waiting/blocked/completed items that jump to the session\n- Customizable keyboard shortcuts, four themes (Soft / GitHub / Warm / Light), multi-window, always-on-top\n- Separate updates by build: EXE installs update from GitHub Releases using four-part versions; Store installs are updated by Microsoft Store. Both channels share user data, with one active channel per profile. See [shared data and migration](docs/shared-user-data.md).\n\n## Supported Agents\n\n| Agent | Status hooks | Session resume | Chat view |\n|---|:---:|:---:|:---:|\n| Claude Code | ✅ | ✅ (`--resume`) | ✅ |\n| Codex | ✅ | ✅ (`resume`) | ✅ |\n| Qwen | ✅ | — | — (terminal-only) |\n| Cline | — | — | — (terminal-only) |\n| Shell only | — | — | — |\n\nAny CLI works in **Shell only** mode — you get the terminal without hooks, resume, or chat.\n\n## Requirements\n\n**Runtime:** Windows 10/11, plus the agent CLIs you plan to use (`claude`, `codex`, … on PATH)\n\n**Development:**\n\n| Tool | Version |\n|---|---|\n| Node.js | 24+ |\n| Visual Studio 2022 Build Tools | \"Desktop development with C++\" workload |\n| PowerShell | 7+ recommended (falls back to 5.1) |\n\n## Quick Start\n\n```bash\ncd app\nnpm install\n\nnpm run electron:dev    # Electron shell (dev, HMR on port 4420)\n```\n\n### Build & Test\n\n```bash\nnpm test                       # vitest unit/integration tests\n\nnpm run electron:dist          # Electron installer (standard)\nnpm run electron:dist:all      # Electron standard + company\n```\n\nElectron installers, blockmaps, and updater manifests land in `app/electron-dist/`.\nStandard Electron packaging requires an external release-signed Android APK plus its\nallowed certificate SHA-256 in `MULTIAGENT_MOBILE_APK_PATH` and\n`MULTIAGENT_ANDROID_CERT_SHA256`; it fails before packaging rather than bundling a\nsource-tree or debug APK. Company packaging remains APK-free.\n\n## Build Variants\n\n| Variant | Identifier | Remote PWA / Tunnel |\n|---|---|---|\n| **standard** | `com.jintae.multiagent.electron` | ✅ included |\n| **company** | `com.jintae.multiagent.company.electron` | ❌ removed (UI and backend) |\n\nThe variants share the same code and product version while keeping identifiers, data, updater channels, and Remote availability separate. Release verification and update procedures are documented in [docs/release-playbook.md](docs/release-playbook.md).\n\n## Project Structure\n\n```text\n├─ app/                    # Desktop app\n│  ├─ src/                 # React 19 + TypeScript renderer\n│  ├─ electron/            # Production main process + services (node-pty)\n│  ├─ assets/              # Electron packaging assets\n│  └─ scripts/             # Build / release scripts\n├─ docs/                   # OKF v0.2 project knowledge\n├─ SETUP.md                # Setup guide\n└─ LICENSE                 # MIT\n```\n\n## Documentation\n\nThe canonical OKF v0.2 knowledge index is [`docs/index.md`](docs/index.md):\n\n- [product-overview.md](docs/product-overview.md) — product goals, runtime shape, capabilities, and variants\n- [system-architecture.md](docs/system-architecture.md) — Electron boundaries, workspace model, layout, and IPC\n- [workspace-interactions.md](docs/workspace-interactions.md) — durable workspace interaction rules\n- [remote-service.md](docs/remote-service.md) — authenticated Remote PWA and Android access\n- [session-lifecycle-and-resume.md](docs/session-lifecycle-and-resume.md) — PTY lifecycle, hooks, cancellation, and provider resume\n- [local-dashboard.md](docs/local-dashboard.md) / [usage-accounting.md](docs/usage-accounting.md) — local Dashboard and usage accounting\n- [development-and-build.md](docs/development-and-build.md) / [release-playbook.md](docs/release-playbook.md) — development, packaging, signing, and publication\n- [known-limitations.md](docs/known-limitations.md) — confirmed constraints and review triggers\n\n## License\n\n[MIT](LICENSE)\n\nPrivacy information is available in [PRIVACY.md](PRIVACY.md).\n",
  "bytes": 8460,
  "sha": "e348cdf3acb48c14b1fcb4be8afcf7c8f55c5d1815259bf6ef1e8fd02d83484c",
  "repo_slug": "onethingchanged/multiagent",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/okf_onethingchanged_multiagent_docs_index_md_62e5be69/readme"
}