A Source is a connected tool Dosu learns from, like a GitHub repository, a Slack workspace, or the web. Sources are what give a Library its raw material. This page explains what a Source is, why Sources matter for a growing engineering organization, and how they behave once connected.
What a Source is#
A Source is a connection to a tool your team already uses. Dosu reads the activity there (code, pull requests, issues, discussions, chat threads) and uses it to generate and maintain knowledge.
Sources are added and managed inside a Library. There is no separate organization-wide Sources page. To add or manage Sources, open a Library, or create a new one, at Libraries. When you create a Library, you can connect Sources as part of setup at Connect Sources.
A single Source can belong to more than one Library. If three teams all care about the same monorepo, that one GitHub Source can attach to all three Libraries without being connected three separate times. Each Library keeps its own settings for an attached Source, so the same repo can behave differently depending on the Library it lives in.
Connecting a Source grants Dosu read access. Dosu does not post anything back to a tool until you create an Agent for that platform.
Why Sources matter#
Knowledge in a growing engineering organization is scattered. It lives in pull request descriptions, in long Slack threads, and in the heads of people who may move teams or leave. Sources are how Dosu reaches the knowledge that's already there, instead of asking your team to copy it into yet another wiki.
For platform and infrastructure teams managing many repositories, Sources are one place to decide what Dosu learns from across the organization. Connect the repos and channels that hold the real context, group them into Libraries by team or product area, and Dosu turns that activity into current Documents that people and coding agents can use.
Available Sources#
The Sources you can select today:
- GitHub: repositories, issues, pull requests, discussions, and repository metadata. See Connect GitHub.
- Slack: channel messages and threads. Requires the Teams plan. See Connect Slack.
- Notion: workspaces and pages. Requires the Teams plan. See Connect Notion.
- Web: public websites and documentation, accessed in real time. See Web Search.
Web is different from the others. Dosu does not crawl, index, or store website content. A Web Source is a setting that lets Dosu reach the web at query time and pull in what it needs to answer right then. Nothing from the web is saved to the Library in advance.
Other Sources, including GitLab, Confluence, Coda, and Microsoft Teams, exist in Dosu but are not yet generally available to select in the app. If you need one of these, contact Dosu about access.
How Sources behave#
Once a Source is connected, Dosu keeps it in sync and puts it to work.
- Syncing. GitHub stays current through webhooks, so code, issues, pull requests, and discussions update as events happen. Slack syncs messages as they are posted. Web is the exception and is read live at query time rather than synced.
- Generating knowledge. Dosu uses Source activity to draft Documents inside the Library, both from your own request (Save This Answer, Generate Docs) and on its own as work ships.
- Staying current. Monitors watch a Source for changes worth documenting and flag outdated knowledge, so a Document does not quietly drift away from the code it describes.
- Serving answers. Once a Source feeds a Library, that knowledge is available to people through Agents on GitHub and Slack, and to coding agents through the Dosu MCP Server.
You stay in control of what Dosu does with this material. Drafts go through Review before they are posted or published, so nothing reaches your repository or docs without someone approving it, unless you choose to auto-accept.
Notes and limits#
- Sources connect at the organization level and attach to one or more Libraries. Adding or removing a Source from a Library takes effect for every Agent in that Library.
- Removing a Source from one Library does not remove it from the other Libraries to which it is attached.
- A Source attached to a public Library is readable by anyone who can see that Library, so be deliberate about which Sources you attach to public Libraries.