Dosu Documentation Platform#
The Dosu Documentation Platform is a managed infrastructure for automated documentation generation, maintenance, and storage designed for software engineering teams. The platform functions as an intelligent knowledge base system for engineering teams and AI agents that automatically keeps technical documentation synchronized with code changes through data source syncing and documentation maintenance mechanisms.
Dosu addresses the persistent challenge of documentation drift by monitoring pull requests and automatically updating affected documentation when code changes are merged. The platform generates documentation by analyzing code, conversations, issues, and pull requests, then synthesizes findings into structured documents with citations. This automation eliminates manual documentation updates, allowing teams to maintain accurate technical documentation without additional overhead.
The platform operates through a hierarchical architecture consisting of organizations, spaces, deployments, and data sources. It integrates with development platforms including GitHub and Slack, providing real-time synchronization and automated responses to questions. Documentation updates occur as frequently as pull requests are merged, with no manual intervention required.
Architecture#
Platform Components#
Dosu implements a four-level hierarchical structure that provides multi-tenant isolation and flexible configuration:
Organization: The top-level container manages account-wide settings, team members with role-based access control, and billing. Three organizational roles exist: Owner (full control, one per organization), Admin (manage members, deployments, data sources, and view billing), and Member (view deployments and data sources, interact with platform features). A Dosu account is required to manage the organization's knowledge base, but GitHub and Slack users do not need Dosu accounts to interact with the platform.
Spaces: Projects within an organization with independent knowledge bases that can be configured separately. Spaces support two visibility modes: private (restricted to organization members) and public (allowing unauthenticated users to view and query documentation). Public spaces enable GitHub URL mirroring by replacing github.com with github.dosu.com in repository URLs, and all public spaces are browsable at app.dosu.dev/explore.
Deployments: Platform connections to specific GitHub repositories or Slack workspaces. Each deployment is configured independently, determining how Dosu behaves in that location. Deployments support three response modes: Mention Mode (responds only when @mentioned), Auto Draft Mode (generates draft responses for review), and Auto Reply Mode (automatic responses without review).
Data Sources: Content repositories that are indexed and searched. Data sources are connected at the organization level and then linked to individual deployments, controlling which context Dosu draws from when responding in different locations.
Knowledge Base System#
The knowledge base provides centralized storage for generated documentation and indexed content from connected data sources. The system uses real-time webhook-based synchronization for GitHub, Slack, and Notion (via Nango), ensuring immediate indexing of changes.
Documents exist in two states: drafts and published. Draft documents can be reviewed and edited before publication. Published documents become available for question-answering and are monitored for staleness when pull requests are opened. All generated documentation includes citations linking to source material, maintaining traceability throughout the knowledge base.
The platform's storage infrastructure uses PostgreSQL with enum types for data integrity and implements a workflow-based synchronization architecture with queue partitioning for scalable multi-tenant processing.
Documentation Generation#
Generate Docs Feature#
The Generate Docs feature provides automated document creation from code, issues, pull requests, and conversations. When a user requests documentation, Dosu executes a three-step process: (1) searches selected data sources for relevant information, (2) gathers context from code, discussions, issues, and PRs, and (3) synthesizes findings into a structured document with citations.
Users create documents by navigating to the Documents section, clicking "+ New", entering a document name, providing instructions describing the desired content, selecting which data sources Dosu should research, and clicking "Generate". Generation typically takes a few minutes. Documents start as drafts that can be reviewed and edited before publication.
The platform includes a one-click documentation feature that analyzes recently merged pull requests and suggests documentation topics based on code changes. Each suggestion includes pre-filled titles and instructions, allowing users to generate immediately or customize the instructions first.
Document Lifecycle#
The document lifecycle progresses through four stages: creation (user provides topic, instructions, and data source selection), draft state (review and editing phase), publication (makes document available for Q&A and monitoring), and maintenance (automatic updates triggered by PR merges). Once published, Dosu references the document when answering questions on GitHub and Slack and monitors related code for changes.
Documentation Maintenance#
Maintain Docs Feature#
The Maintain Docs feature monitors pull requests for changes that affect published documentation. When a PR is opened or marked ready for review, Dosu analyzes code changes and checks them against published documentation. If any documents are related to the changes, Dosu posts a comment on the PR with links to those documents.
When a PR is merged, Dosu reviews the changes again and updates related documentation. Each update includes a link back to the PR showing what changed. Draft PRs are ignored until marked ready for review. The system checks all published documents in the knowledge base against PR changes, not just those generated by Dosu. Changelog pages are excluded from staleness checks.
Three requirements must be met for Maintain Docs to function: the document must be published (drafts and pending documents are not monitored), the repository must be connected as a data source, and Stale Doc Check must be enabled in deployment settings (enabled by default). An auto-publish option controls whether documentation updates are published automatically or require manual review before publishing.
Data Source Integrations#
Supported Platforms#
Dosu supports multiple data source integrations. GitHub integration includes repositories, issues, PRs, discussions, and wikis. Slack integration covers channel messages and threads. Web integration handles public websites and documentation. Confluence integration (Beta) includes spaces and pages. Coda integration (Beta) covers workspaces and documents.
Synchronization Behavior#
Synchronization frequency varies by data source type. Real-time synchronization applies to GitHub via webhooks for immediate indexing, Slack as messages are posted, and Notion through real-time webhooks via Nango.
Periodic synchronization applies to Confluence (every 5 minutes), Coda (every 5 minutes), and Web sources (re-crawled periodically with pages cached for up to 1 day).
Setup and Configuration#
Data source setup requires platform-specific app installation and permission grants for read/write access. After installation, the system performs automatic initial sync of history. For Slack channels configured as data sources, the platform backfills up to 1000 thread roots so existing conversations become part of the knowledge base.
Platform Configuration#
Organization Settings#
Organization settings include organization name and avatar customization, member management with three-tiered role-based access control, and billing and subscription management. The access control model distinguishes between dashboard access (requiring Dosu accounts) and integration access (no accounts required for GitHub or Slack users).
Space Settings#
Space settings are managed at Settings > Spaces and include configuration for independent knowledge bases per space. Visibility can be set to public or private, with public spaces enabling unauthenticated access and GitHub URL mirroring. Additional settings control auto-assign topics, suggest new topics functionality, custom style guidelines for generated content, and data source connections at the space level.
Deployment Settings#
Deployment configuration includes response mode selection (Mention, Auto Draft, or Auto Reply), agent objectives configuration for both GitHub and Slack deployments (find duplicates, surface documentation, surface conversations, surface tickets, surface code, suggest changes/workarounds), auto-labeling rules for GitHub, custom response guidelines to enforce tone and formatting requirements, and stale doc check toggle.
Documentation Settings#
Documentation-specific settings include an Auto Publish toggle controlling whether generated documentation publishes automatically or requires manual review, a Suggest New Topics toggle enabling PR analysis for documentation opportunities, and custom instructions for shaping how the documentation agent writes content.
Platform Integrations#
GitHub Integration#
GitHub integration requires installation of the Dosu GitHub App. The app requests read access to repository contents, metadata, administration, actions, checks, and commit statuses, plus read/write access to issues, comments, PRs, reviews, and discussions.
After installation, the system automatically syncs repositories, collaborators, and labels. The integration provides webhook-based real-time synchronization, PR monitoring and commenting capabilities, issue and discussion response functionality, and auto-labeling for issues and pull requests. Triage permission or higher is required to create data sources or deployments for a repository.
Slack Integration#
Slack integration requires installation of the Dosu Slack App. The app requests channel access permissions (read channel info, message history, join channels), messaging permissions (send messages, add reactions), and user info permissions (read profiles and emails for user identification).
Private channels require explicit invitation using /invite @Dosu before Dosu can access them. The integration provides channel monitoring and response capabilities, message synchronization for the knowledge base, and backfills up to 1000 thread roots when configured as a data source.
Usage Workflows#
Initial Setup#
Organizations begin by installing platform apps for GitHub and Slack, creating data sources to specify which content Dosu should index, creating deployments to define where Dosu operates, and configuring settings for response behavior and documentation generation preferences.
Documentation Generation Workflow#
The documentation generation workflow follows eight steps: navigate to the Documents section in the dashboard, click "+ New" to create a new document, enter a descriptive document name, provide instructions describing what should be documented, select which data sources Dosu should research, click "Generate" to start the process (typically takes a few minutes), review the generated draft for accuracy and completeness, and publish the document to make it available for Q&A and monitoring.
Maintenance Workflow#
The automated maintenance workflow operates in four stages: when a PR is opened, Dosu analyzes changes against published documentation; Dosu comments on the PR with links to related documents; when the PR is merged, Dosu automatically updates affected documentation; and updates either auto-publish or require manual review depending on configuration settings.
Additional Features#
Auto-Labeling#
The platform provides automatic label application to GitHub issues and pull requests. The system analyzes content, repository label taxonomy, and historical labeling patterns to select appropriate labels. Label sets are configurable per deployment, and the system learns from manual corrections to improve accuracy over time.
Response Capabilities#
Dosu provides Q&A functionality on GitHub issues and discussions, Q&A in Slack channels, knowledge base search across all connected data sources, and citation-backed answers linking responses to source material. When someone asks a question, Dosu searches indexed code, documentation, past issues, and other connected data sources to find relevant context, then generates a response synthesizing the findings with citations.
Suggested Documentation#
The platform analyzes recently merged pull requests to identify documentation opportunities. When changes are detected, Dosu generates suggestions with pre-filled titles and instructions based on what changed in the code. This feature helps teams proactively identify documentation gaps created by code changes.
Related Topics#
The Dosu Documentation Platform relates to several broader technology domains. In knowledge base management, it represents an automated approach to maintaining searchable documentation repositories. For documentation automation, it exemplifies event-driven documentation updates triggered by code changes. Within CI/CD integration, it extends continuous integration practices to documentation maintenance. As a developer productivity tool, it reduces manual documentation overhead and context switching. Among technical documentation platforms, it distinguishes itself through automated maintenance capabilities rather than manual authoring workflows.