Skip to main content

Documentation Coverage

This page is the source-to-doc checklist for keeping DotAgents documentation complete across the monorepo. It is intentionally explicit: when code moves, routes are added, or app screens change, update this checklist and run pnpm docs:coverage.


Coverage Standard

Documentation is considered covered only when all of the following are true:

  • Every tracked app, package, server surface, and shipped artifact area has a primary documentation owner.
  • Every desktop renderer page and mobile screen is named in the coverage checklist below.
  • Every Fastify route registered in apps/desktop/src/main/remote-server.ts is listed in Remote API Reference.
  • Agent file examples use current on-disk fields: connection-type in agent.md, and skillsConfig.enabledSkillIds with allSkillsDisabledByDefault in config.json.
  • Platform commands are written with pnpm; the repo does not use npm or yarn.
  • The verifier passes:
pnpm docs:coverage

Source Coverage Matrix

Source areaWhat it ownsPrimary docsNotes
apps/desktopElectron app package, builds, release scripts, desktop runtimeDesktop App, Architecture Deep Dive, Development Setup, Build, Release, DeployThe desktop app is Electron-first; renderer validation alone does not cover desktop behavior.
apps/desktop/src/mainMain process services, LLM loop, MCP, ACP/acpx, config, conversations, remote server, integrations, updaterArchitecture Deep Dive, Remote Server & Mobile Pairing, Remote API ReferenceMain-process services are the source of truth for server routes and privileged behavior.
apps/desktop/src/renderer/srcReact renderer app, routes, settings surfaces, session UI, panel UIDesktop App, Architecture Deep DiveRenderer must use IPC/preload boundaries instead of importing from src/main.
apps/desktop/src/sharedDesktop-only shared types used by main, preload, and rendererArchitecture Deep Dive, this pageCross-app types belong in packages/shared; desktop-only types stay here.
apps/desktop/src/preloadSecure Electron bridge from renderer to main processArchitecture Deep Dive, SecurityTreat this as part of the process boundary.
apps/desktop/dotagents-rsNative keyboard/input binary built by desktop scriptsArchitecture Deep Dive, Development Setup, Build, Release, DeployBuild with pnpm --filter @dotagents/desktop build-rs.
apps/mobileExpo/React Native mobile client, native Android folder, screens, stores, voice, push, connection recoveryMobile App, InstallationNative devices require development builds for expo-speech-recognition.
packages/corePlatform-agnostic config, .agents file parsing, service container, state primitives, test adaptersApps & Packages, Architecture Deep Dive, .agents Protocol, package READMEKeep this package dependency-light and usable outside Electron.
packages/sharedCross-app API contracts, progress/session/message types, providers, colors, language/STT/TTS utilitiesApps & Packages, Architecture Deep Dive, Remote API Reference, package READMEIf mobile and desktop both import it, document the shape here or in the feature doc that owns it.
packages/mcp-whatsappStandalone WhatsApp MCP server and operator command bridgeWhatsApp Integration, package READMECovers MCP tools, environment variables, auto-reply, and operator commands.
docs-siteDocusaurus documentation app and primary website for dotagents.appDevelopment Setup, Build, Release, Deploy, this pageBuild with pnpm --filter docs-site build; keep sidebar generated by categories.
apps/promo-studioRendered marketing/demo clips used by launch materialsThis pageCurrently tracked as rendered media only. Add a package README if source projects/scripts are added.
scriptsRoot installer and release support scriptsDevelopment Setup, Build, Release, Deploy, this pageUse these docs for source install, build, and verification commands.
testsRepo-level integration testsDevelopment Setup, this pagePackage-level tests are documented near each app/package command.

Desktop Renderer Pages

These files are the user-facing desktop page surfaces that must stay covered by Desktop App and Architecture Deep Dive:

Page fileRoute or surfaceDocumentation owner
knowledge.tsx/knowledge knowledge notesDesktop App, Knowledge & Notes
onboarding.tsx/onboarding first-run flowQuick Start, Desktop App
panel.tsx/panel floating panelDesktop App, Voice Interface
sessions.tsx/, /:id, /history, /history/:id sessionsDesktop App
settings-agents.tsx/settings/agentsAgents
settings-capabilities.tsx/settings/capabilitiesMCP Tools, MCP Server Configuration
settings-discord.tsx/settings/discordRemote API Reference, Settings Reference
settings-general.tsx/settings, /settings/generalSettings Reference
settings-loops.tsx/settings/repeat-tasksDesktop App, Settings Reference
settings-mcp-tools.tsxlegacy MCP tools settings surfaceMCP Tools
settings-models.tsx/settings/modelsAI Providers
settings-providers.tsx/settings/providersAI Providers
settings-remote-server.tsxlegacy remote server settings surfaceRemote Server & Mobile Pairing
settings-skills.tsxlegacy skills settings surfaceSkills
settings-whatsapp.tsx/settings/whatsappWhatsApp Integration
setup.tsx/setup setup flowInstallation, Quick Start

Mobile Screens

These mobile screens must stay covered by Mobile App, Remote Server & Mobile Pairing, and feature-specific docs:

Screen filePurposeDocumentation owner
AgentEditScreen.tsxCreate/edit agentsAgents, Mobile App
ChatScreen.tsxText, voice, streaming chat, TTS, hands-free modeMobile App, Voice Interface
ConnectionSettingsScreen.tsxQR pairing, manual API setup, connection testsRemote Server & Mobile Pairing, Mobile App
KnowledgeNoteEditScreen.tsxCreate/edit knowledge notesKnowledge & Notes, Mobile App
LoopEditScreen.tsxCreate/edit recurring loopsMobile App, Settings Reference
OperationsScreen.tsxOperator dashboard for health, logs, tunnels, integrations, updater, actionsRemote API Reference, Mobile App
SessionListScreen.tsxConversation list, search, deletion, resumeMobile App
SettingsScreen.tsxAPI/model/voice/theme settingsMobile App, Settings Reference
SplitChatScreen.tsxMulti-agent comparison chatMobile App, Agent Delegation

Remote Server Route Coverage

pnpm docs:coverage extracts every Fastify route from apps/desktop/src/main/remote-server.ts and requires the exact METHOD /path string to appear in Remote API Reference. This prevents the server and docs from drifting when endpoints are added for mobile, operator dashboards, ACP-injected MCP transports, push, TTS, assets, or integrations.

The same verifier rejects stale agent configuration examples that use the old skill allowlist key or put connection.type inside file-based config.json examples.

Maintenance Checklist

Run this checklist when changing app surfaces:

  1. Add or move a desktop renderer page: update Desktop Renderer Pages.
  2. Add or move a mobile screen: update Mobile Screens.
  3. Add, rename, or delete a remote server route: update Remote API Reference and run pnpm docs:coverage.
  4. Add a package or app under apps/ or packages/: add it to Source Coverage Matrix and the verifier script.
  5. Add a generated media-only area: document what owns the source of truth and whether tracked files are source or output.
  6. Before merging docs work, run:
pnpm docs:coverage
pnpm --filter docs-site build