Distribution Package
Complete audit of all files included in the MultiTerminal distribution package.
Package Overview
| Total Package Size | ~385 MB |
| Total File Count | ~1,262 files |
| Runtime | Self-contained .NET 8 (Windows x64) |
| Architecture | x64 only |
| Target OS | Windows 10/11 |
System Requirements
- OS: Windows 10 (version 1809+) or Windows 11, x64
- WebView2 Runtime: Required (pre-installed on Windows 11; download for Windows 10)
- Node.js 18+: Required for MCP server functionality
- Claude Code CLI: Required for terminal agent sessions
- Disk Space: ~400 MB for application + runtime data
- RAM: 4 GB minimum, 8 GB recommended (WebView2 panels use Chromium)
1. Core Application
The main executable and its direct dependencies.
| File | Purpose | Required |
|---|---|---|
MultiTerminal.exe | Main executable (self-contained .NET 8 host) | Yes |
MultiTerminal.dll | Application assembly (all C# code) | Yes |
MultiTerminal.deps.json | Dependency graph for .NET runtime | Yes |
MultiTerminal.runtimeconfig.json | Runtime configuration (framework version, GC settings) | Yes |
MultiTerminal.dll.config | Application configuration (app settings) | Yes |
WeifenLuo.WinFormsUI.Docking.dll | DockPanelSuite - docking window framework | Yes |
WeifenLuo.WinFormsUI.Docking.ThemeVS2015.dll | VS2015 dark/light theme for DockPanelSuite | Yes |
System.Data.SQLite.dll | SQLite managed wrapper | Yes |
SQLite.Interop.dll | SQLite native interop library | Yes |
2. .NET Runtime (384 DLLs)
The self-contained deployment includes the entire .NET 8 runtime. This eliminates the need for users to install .NET separately.
| Namespace Group | Count | Purpose |
|---|---|---|
System.* |
~190 | Core .NET Base Class Library: collections, IO, networking, security, threading, XML, LINQ, reflection, serialization |
Microsoft.AspNetCore.* |
~86 | ASP.NET Core web framework: HTTP server (Kestrel), MVC, routing, authentication, CORS, SignalR connections, diagnostics |
Microsoft.Extensions.* |
~46 | Dependency injection, configuration, logging, hosting, caching, HTTP client factory, options pattern |
Microsoft.* (other) |
~12 | CSharp runtime, WinForms designer, Visual Basic compatibility, JSInterop, diagnostics |
| Runtime infrastructure | ~50 | coreclr.dll, clrjit.dll, hostfxr.dll, hostpolicy.dll, mscorlib.dll, GC, ETW, DAC, native helpers |
Key runtime infrastructure files
| File | Role |
|---|---|
coreclr.dll | Core CLR execution engine |
clrjit.dll | JIT compiler |
clrgc.dll | Garbage collector |
hostfxr.dll | Host framework resolver |
hostpolicy.dll | Host policy (assembly loading) |
mscorlib.dll | Core library facade |
netstandard.dll | .NET Standard compatibility shim |
System.Private.CoreLib.dll | Core type system implementation |
createdump.exe | Crash dump utility |
mscordaccore.dll | Data access component (debugging) |
mscordbi.dll | Debug interface |
3. WebView2 Runtime
WebView2 provides the Chromium-based rendering engine for all HTML panels. The WebView2 Runtime must be installed on the system; these DLLs are the .NET bindings.
| File | Purpose |
|---|---|
Microsoft.Web.WebView2.Core.dll | Core WebView2 .NET bindings |
Microsoft.Web.WebView2.Core.xml | XML documentation for Core |
Microsoft.Web.WebView2.WinForms.dll | WinForms integration control |
Microsoft.Web.WebView2.WinForms.xml | XML documentation for WinForms |
Microsoft.Web.WebView2.Wpf.dll | WPF integration control (used by settings dialog) |
Microsoft.Web.WebView2.Wpf.xml | XML documentation for WPF |
WebView2Loader.dll | Native loader - finds and initializes WebView2 Runtime |
WebView2 Runtime Note
The WebView2 Runtime (Evergreen) must be installed separately on the target machine. Windows 11 includes it by default. For Windows 10, download from Microsoft's WebView2 download page. The DLLs above are only the .NET wrapper; the actual Chromium engine (~150 MB) lives in the system WebView2 Runtime installation.
4. HTML Panels (14 files)
Each UI panel is rendered via WebView2 using a self-contained HTML file with embedded CSS and JavaScript.
| File | Panel | Purpose |
|---|---|---|
ActivityPanel/panel.html | Activity Panel | Real-time activity feed showing tool usage, builds, and agent events |
AgentPanel/agent-panel.html | Agent Panel | Observe spawned Claude Code team agents and their transcript activity |
ChatPanel/chat-panel.html | Chat Panel | Inter-terminal messaging UI for point-to-point and broadcast chat |
Controls/TaskHudPanel/task-hud.html | Task HUD | Heads-up display overlay showing current task and checklist status |
FilePreviewPanel/file-preview.html | File Preview Panel | WebView2-based file preview for HTML, Markdown, images, and other file types |
Controls/TerminalStatusBar/statusbar.html | Terminal Status Bar | 3-row status bar: folder path, model/git info, context usage meter |
InboxPanel/inbox-panel.html | Inbox Panel | Notification center for task updates, messages, and checklist transitions |
OfficePanel/panel.html | Office Panel | Team office view showing terminal status and agent presence |
ProfilePanel/panel.html | Profile Panel | Team member profiles with specialties, availability, and avatars |
ProjectPanel/panel.html | Project Panel | Project management: registration, agent assignment, MCP config, paths |
StartScreen/start-screen.html | Start Screen | Welcome screen with project list and quick-launch options |
TaskLifecycleBoard/lifecycle-board.html | Task Lifecycle Board | Detailed task lifecycle view with checklist progression |
TasksPanel/tasks-panel.html | Tasks Panel (Kanban) | Kanban board with columns: To Do, In Progress, Done |
Terminal/terminal.html | Terminal | ConPty terminal emulator rendered in WebView2 |
5. Localization (13 Languages)
Satellite assemblies for .NET runtime localization. Each folder contains translated resource DLLs for framework error messages and system strings.
| Folder | Language |
|---|---|
cs/ | Czech |
de/ | German |
es/ | Spanish |
fr/ | French |
it/ | Italian |
ja/ | Japanese |
ko/ | Korean |
pl/ | Polish |
pt-BR/ | Portuguese (Brazil) |
ru/ | Russian |
tr/ | Turkish |
zh-Hans/ | Chinese (Simplified) |
zh-Hant/ | Chinese (Traditional) |
6. Database Files
Databases are created at runtime in the user's AppData directory. They are not included in the distribution package.
| Database | Location | Purpose |
|---|---|---|
multiterminal.db |
%APPDATA%\multiterminal\multiterminal.db |
Main database (all in one file): kanban tasks, team profiles, activity feed, inbox, terminal registrations, helper sessions, projects, agents, MCP config, knowledge entries (6 categories) + code digests + FTS5 index, session lineage/messages, and the code graph |
messages.db |
%APPDATA%\multiterminal\messages.db |
Inter-terminal message delivery queue: queued messages with retry tracking and expiry |
Database Notes
- All databases are SQLite and created automatically on first run
- Schema migrations run automatically when new columns or tables are needed
- To start fresh, delete the database files; the application will recreate them
- To migrate to a new machine, copy the
%APPDATA%\multiterminal\folder
7. Configuration Files
| File | Purpose | Editable |
|---|---|---|
MultiTerminal.runtimeconfig.json |
Specifies .NET 8 framework version and runtime options (GC mode, thread pool) | Advanced only |
MultiTerminal.deps.json |
Dependency manifest used by the .NET host to locate assemblies | No (auto-generated) |
MultiTerminal.dll.config |
Application configuration file (connection strings, app settings) | Yes |
8. Claude Integration
The .claude/ folder in the project root configures Claude Code behavior for agents working in this project.
| Path | Purpose |
|---|---|
.claude/CLAUDE.md | Project instructions loaded into every agent's context at startup (~16 KB). Contains architecture reference, patterns, task-specific file guides. |
.claude/project.json | Project identity (ID, name, timestamps). Used by MultiTerminal to track the project. |
.claude/settings.json | Project-level Claude Code settings |
.claude/settings.local.json | Local permission presets for MCP tools and commands (not committed to git) |
.claude/agents/ | Specialist agent definitions (8 files): code-reviewer, debugger, devils-advocate, security-auditor, session-distiller, session-summarizer, test-designer, verifier |
.claude/hooks/ | Claude Code hooks (9 files): inbox-check-hook.js, project-context-hook.js, safety-hook.js, subagent-office-hook.js, task-to-agent-hook.js, session-status-hook.js, pipeline-trigger-hook.js, active-context-hook.js, notification-hook.js |
.claude/skills/ | Custom skill definitions (slash commands like /kanban-task, /new-project) |
.claude/rules/ | Additional behavioral rules for agents |
9. Third-Party Licenses
THIRD-PARTY-NOTICES.md in the repository root documents all third-party dependencies and their licenses. Key dependencies:
| Library | License | Purpose |
|---|---|---|
| DockPanelSuite 3.1.0 | MIT | Dockable window framework (VS-style panels) |
| Microsoft.Web.WebView2 | BSD-style | Chromium-based embedded browser control |
| System.Data.SQLite | Public Domain | SQLite database engine for .NET |
| .NET 8 Runtime | MIT | Self-contained runtime |
| ASP.NET Core | MIT | Web framework for REST API |
Critical Files Checklist
These files must exist in the deployment directory or the application will not launch:
Launch-Critical Files
MultiTerminal.exe- Entry pointMultiTerminal.dll- Application codeMultiTerminal.runtimeconfig.json- Runtime bootstrapMultiTerminal.deps.json- Assembly resolutioncoreclr.dll- CLR execution engineclrjit.dll- JIT compilerhostfxr.dll- Framework host resolverhostpolicy.dll- Assembly load policySystem.Private.CoreLib.dll- Core type systemWebView2Loader.dll- WebView2 native loaderMicrosoft.Web.WebView2.Core.dll- WebView2 bindingsMicrosoft.Web.WebView2.WinForms.dll- WinForms WebView2 controlSystem.Data.SQLite.dll- Database engineSQLite.Interop.dll- Native SQLiteWeifenLuo.WinFormsUI.Docking.dll- Panel docking
Optional Files (Size Reduction)
These can be excluded to reduce package size if the related functionality is not needed:
| Category | Approx. Size | Impact of Removal |
|---|---|---|
| Localization folders (13 languages) | ~15 MB | Framework error messages display in English only |
publish/ subfolder |
Variable | Duplicate build output; can be removed if not using as staging area |
XML documentation files (*.xml) |
~5 MB | No IntelliSense for WebView2 APIs (development only) |
Debug symbols (*.pdb) |
~2 MB | No stack traces with line numbers in crash reports |
Microsoft.Web.WebView2.Wpf.dll |
~100 KB | WPF-based settings dialog will not work (WinForms dialogs unaffected) |
createdump.exe, mscordaccore*.dll, mscordbi.dll |
~15 MB | No crash dump generation or post-mortem debugging |
Directory Structure
Top-level layout of the Deploy folder:
Deploy/
+-- MultiTerminal.exe (main executable)
+-- MultiTerminal.dll (application assembly)
+-- *.dll (384 runtime + framework DLLs)
+-- *.json, *.config (configuration files)
+-- ActivityPanel/ (activity feed HTML)
+-- AgentPanel/ (agent observation HTML)
+-- ChatPanel/ (messaging HTML)
+-- Controls/
| +-- TaskHudPanel/ (task HUD overlay HTML)
| +-- TerminalStatusBar/ (status bar HTML)
+-- FilePreviewPanel/ (file preview HTML)
+-- InboxPanel/ (notifications HTML)
+-- OfficePanel/ (team office HTML)
+-- ProfilePanel/ (team profiles HTML)
+-- ProjectPanel/ (project management HTML)
+-- StartScreen/ (welcome screen HTML)
+-- TaskLifecycleBoard/ (task lifecycle HTML)
+-- TasksPanel/ (kanban board HTML)
+-- Terminal/ (terminal emulator HTML)
+-- tools/ (bundled utilities: rg.exe for ripgrep code search)
+-- runtimes/ (native runtime libraries)
+-- cs/, de/, es/, fr/, ... (13 localization folders)
+-- publish/ (staging build output)
Installer
The installer/ directory in the source tree contains the Inno Setup installer configuration and supporting scripts:
| File | Purpose |
|---|---|
installer/MultiTerminal.iss | Inno Setup script defining the installer (file selection, registry, shortcuts) |
installer/build-installer.ps1 | PowerShell script to compile the installer from the build output |
installer/post-install.js | Node.js post-install hook: registers MCP servers, creates config files |
installer/post-uninstall.js | Node.js post-uninstall hook: cleans up MCP registrations |