Disco ParrotDisco Parrot Home
Docs
Request a Demo

Repository documentation & wiki

Every repository gets its own set of docs that lives in the platform, reads like a notebook, and the agent reads the same way it reads your code. How to fill the pages without writing them, edit and organize them by hand, and where they live and why.

Most teams keep their real knowledge about a service in three places that all go stale: a README nobody updates, a wiki nobody opens, and the head of the one engineer who has been there longest. Disco Parrot gives every repository a fourth place that does not go stale, because the agent that reads the docs to do its work is the same one that surfaces where they have gone wrong. Each repository has its own set of pages, they live in the platform next to the work, and the agent reads them in the middle of a run the way it reads your code.

This page is the how-to for the pages themselves: what a doc page is, how to get a repository's foundation written for you instead of by you, how to edit and organize the pages by hand, and where they live. For the scheduled review that keeps them current, see documentation health reviews; for the concept behind treating docs as a working artifact, read repository documentation. This page is about authoring and onboarding; that one is about the review loop.

What a doc page is

Every page is markdown, and that is a decision, not a default. There is no proprietary block format, no embed registry, nothing new to learn, and nothing that locks the content to this product: the same plain text a person reads is the text the agent reads, with no rendering layer in between to drift out of sync. A page carries a small, flat shape: a title, a path that the tree uses to group it, an optional category, and a scope that pins it to one repository. That is the whole record.

The shape is deliberately thin, because the point is that the docs read like a notebook your team keeps, not a content management system you administer.

The scope is what makes these repository docs rather than loose pages. A repository's pages are scoped to that repository, written as repo:owner/name, so the docs for your Insights service are its own set and never bleed into another repository's. A separate workspace-wide scope holds pages that belong to no single repository. When the agent works in a sandbox cloned from a repository, the docs it can reach are that repository's, which is what keeps a large workspace's documentation legible instead of one undifferentiated pile.

The tree (a view of paths)ArchitectureOverviewData flowConventionsAPIThe record (one page)titleData flowpatharchitecture/data-flowcategoryarchitecture (optional)scoperepo:orcette/insightspath
A page is markdown plus a flat record: a title, a path, an optional category, and a scope that pins it to one repository. The tree on the left is just a view of the paths.
info
Repository docs are not your uploaded files

This page is about the docs a repository keeps about itself: the architecture overviews, the conventions, the API pages, the decision records. Uploaded documents, the PDFs and Office files you import from your machine, Google Drive, or OneDrive and attach to a plan or a bug, are a separate library covered under the work model. Both live in Disco Parrot, but they are different stores with different jobs: repository docs are written and edited as living pages, while uploaded files are versioned attachments that travel with a piece of work. Do not expect a PDF you attached to a bug to show up in a repository's doc tree, or the reverse.

Get the docs without writing them

You can fill a repository's docs by hand. Most teams do not want to start from a blank tree, and they do not have to. The faster path is repo onboarding, a Flow that spins up a sandbox against the repository, reads the code, and writes the foundation pages for you.

Onboarding is something you run, not something that happens to you. Connecting a repository does not kick it off; you launch the onboarding Flow when you want a repository's docs bootstrapped, which means a new connection never spends an agent run you did not ask for, and you can re-run it deliberately when the code has moved far enough to be worth re-reading. Onboarding writes only into the platform's doc store; it does not touch your repository's committed files, so your README.md and any docs/ folder you already keep in Git stay exactly as your team wrote them.

add_photo_alternate
Screenshot to capture
The repo onboarding launch dialog, dark theme. A modal titled 'Run repo onboarding' over the repository page. A line reads 'Repository: orcette/insights'. A short summary of what the run does: 'Reads the code in a sandbox and writes the foundation docs (architecture, conventions), then domain and API pages, then decision records.' A 'Run in background' toggle (off) with helper text 'Leave on to let checkpoints auto-advance; turn off to review each pass'. A note line 'Writes to the platform doc store, not to your repository files'. Primary button 'Launch onboarding', secondary 'Cancel'. Header 'Insights API . Onboarding'.
save as: public/docs-media/repo-onboard-launch.png
Caption when added: Onboarding is a run you launch deliberately. It writes into the platform's doc store, never into your repository's committed files.

The Flow works in passes, and the order is the point. It reads the repository and plans what is worth documenting, then writes the foundation, the architecture and conventions a newcomer needs first. After that it writes the domain and API pages, and last the decision records and quality references. A human checkpoint sits after the foundation is written, before the domain pass begins, and a second sits after the domain pass, before the decision records, so you get two moments to read what the agent has produced before it builds deeper on top of it. Send the run to the background and the checkpoints auto-advance; sit with it and they wait for you.

Crawl and planread the repoFoundationarchitecture, conventionsDomain and APIhow it worksDecision recordsand quality refsSync to docspages landcheckpointcheckpoint
Onboarding writes in passes, foundation first. A checkpoint pauses after the foundation and again after the domain set, so you read each layer before the agent builds on it. Run it in the background and the checkpoints auto-advance.

When the Flow finishes, the foundation pages are in the repository's docs, written by the agent. From that moment they are yours: edit them, reorganize them, delete the ones you do not want, exactly as you would a page you typed yourself. Running onboarding again does not pile up duplicates. It writes to the same pages by their path, so a second run updates the foundation in place rather than leaving you two architecture pages to reconcile.

info
A re-run rewrites the pages it regenerates

Because a re-run writes to the same path, it replaces the content of any foundation page it produces again, hand edits and all. The update is in place, not a merge: for the pages it regenerates, the agent's fresh draft wins. If you have hand-corrected a foundation page and want to re-run onboarding after the code has moved, copy your changes out first, or re-run knowing that page will be redrawn from the current code. Pages a re-run does not produce, anything you wrote yourself under a new path, are left untouched.

add_photo_alternate
Screenshot to capture
A repo onboarding Flow run in progress, dark theme. A run timeline with named steps down the left: 'Crawl and plan' (complete, green check), 'Foundation docs' (complete, green check, sub-label 'architecture, conventions'), 'Domain and API docs' (running, cyan pulse, a 'Checkpoint cleared' chip), 'Decision records and quality' (pending, grey, a small flag glyph marking an upcoming checkpoint), 'Sync to docs' (pending, grey). A right-hand summary card reads 'Repository: orcette/insights . Pages written: 6 . Status: analyzing'. Header 'Repo onboarding'.
save as: public/docs-media/repo-onboard-flow.png
Caption when added: Repo onboarding reads the repository and writes its foundation pages in passes, pausing at a checkpoint before the domain set and again before the decision records.

Edit and organize by hand

Whether the agent wrote a page or you did, you edit it the same way, on the repository's own Documentation tab. The surface reads like a wiki and edits like a notebook: a tree of pages on the left, the page itself in the center, and a markdown editor when you switch a page into edit mode.

The tree is built from the paths on the pages. A page whose path is architecture/data-flow files itself under an architecture folder; group pages by giving them a shared path prefix, and the tree assembles the folders for you. There is no separate folder object to create and keep in sync, which means moving a page between folders is just changing its path, and a folder exists exactly as long as a page lives under it.

Four actions cover the whole surface. You create a page like this:

  1. Name it, and the identifier is derived from the title so you are not hand-managing slugs.
  2. Drop it under a folder, either an existing one you pick or a new path you type.
  3. Write the body in markdown and save.

You edit a page in place: the title up top, the markdown body in the center, save or cancel. You organize by editing the path, the same field that put the page in the tree in the first place. And when a repository accumulates pages it has outgrown, you clear them out in a batch: hold the modifier key to select several pages in the tree at once, and delete the lot behind a single confirmation rather than one page at a time.

add_photo_alternate
Screenshot to capture
The new-page dialog over the repository Documentation tab, dark theme. A modal titled 'New page' with a 'Title' text field reading 'Warehouse sync', below it a 'Folder' field showing a path picker open to a list ('architecture', 'conventions', 'domain', 'api') with a 'New folder' affordance and a free-text path input prefilled 'domain/warehouse-sync', and a small helper line 'Identifier: domain-warehouse-sync (from title)'. Primary button 'Create page', secondary 'Cancel'. The doc tree is dimmed behind the modal. Header 'Insights API . Documentation'.
save as: public/docs-media/repo-docs-create-page.png
Caption when added: Creating a page: name it, drop it under an existing folder or a new path you type, and the identifier follows from the title.
add_photo_alternate
Screenshot to capture
The repository Documentation tab, dark theme, split layout. Left: a doc tree sidebar with folders 'Architecture' (expanded, children 'Overview', 'Data flow'), 'Conventions', 'Domain', 'API', 'Decision records', 'Quality', plus an 'Expand all / Collapse all' control and a 'New page' button at the top. Two tree rows are highlighted with checkmarks and a selection toolbar reads '2 selected . Select all . Delete'. Center: a rendered markdown page titled 'Data flow' with a breadcrumb 'Architecture / Data flow', a body with a heading, a paragraph, a fenced code block, and a small table; an 'Edit' button top-right. Header 'Insights API . Documentation'.
save as: public/docs-media/repo-docs-wiki.png
Caption when added: The docs surface: a tree built from page paths on the left, the rendered page in the center, an editor a click away, and multi-select for clearing pages out in a batch.
add_photo_alternate
Screenshot to capture
The repository Documentation tab with a page in edit mode, dark theme. A 'Title' input at the top reads 'Conventions'. Below it a full-height markdown editor showing raw markdown source (a heading line, a bullet list, a fenced code block) in a monospace font, with a live word-count caption in the corner. A breadcrumb 'Conventions' sits above. Top-right shows a primary cyan 'Save' button and a secondary 'Cancel'. The doc tree is still visible on the left. Header 'Insights API . Documentation'.
save as: public/docs-media/repo-docs-edit-mode.png
Caption when added: A page in edit mode: the title up top, the markdown body in the center, save or cancel. The same editor whether the agent wrote the page or you did.
lightbulb
Paths are the whole filing system

There is no folder to create, rename, or delete as a separate step. The tree is a view of the paths, so the path field is where you both file a page and move it. Name paths the way you would name folders on disk, with a shared prefix for things that belong together, and the tree organizes itself.

Where the docs live, and why there

A repository's docs live in the platform's own document store, the same place the agent reads them from, not in a docs/ folder committed to GitHub. That is a deliberate choice, and it is the choice that makes the rest of the loop cheap.

Keeping the docs in the platform is what makes a health review cheap enough to be worth running. When an approved fix is a write to the same store the agent already reads, applying it is a click.

If the docs lived only as files in your repository, every drift fix would be a second pull request to open, review, and merge, which is exactly the weight that stopped anyone from making those fixes in the first place. The docs sit where the agent reads them and where a person can correct them in one move, and that proximity is the whole reason they stay current instead of rotting in a folder nobody opens.

GitHubyour sourceCode and Git historyBranch protectionsYour committed READMERepository docsthe platform storeArchitecture, conventionsMarkdown pages in a treeScope repo:owner/nameUploaded libraryattached to workPDFs and Office filesFrom Drive, OneDrive, diskVersioned, on plans and bugs
Three places, three jobs. Your source stays in GitHub. A repository's docs are living markdown pages in the platform store. Uploaded files are a separate, versioned library that travels with a plan or a bug.

The trade you are reading correctly: these pages are not your repository's committed README.md, and they do not open a pull request when they change. They are a living knowledge base that the platform keeps and the agent uses, separate from the source it documents. Your code stays in GitHub where your team governs it; the docs about that code live where the agent and the review can keep them honest.

How the agent reads the docs

The docs are not only somewhere a person goes to read. They are somewhere the agent goes to read, at the start of a run, so it works against your conventions instead of inventing its own. When an agent starts working in a repository's sandbox, the platform looks for one of the repository's orientation pages, an index, an overview, an architecture page, or a conventions page, and loads it into the agent's context before it takes its first action. The agent that is about to touch your code starts by reading what your team wrote about it.

A repository with no pages yet costs nothing here. The agent starts cold, the way any agent would, and the first time it reaches for a page that is not there, that miss is itself the signal that tells the next review what the foundation is still missing. The orientation grows from empty as you and onboarding fill it in.

That is also what closes the loop with the health review. When the agent goes looking for a page that does not exist, that gap is captured as a signal. When a page is wrong and someone corrects the agent in chat, the correction is captured too. Those signals are what the next review reads, so the drift the agent hit on Tuesday is a proposal in Monday's batch. The docs do not stay current because someone remembered to update them; they stay current because the agent that relies on them is the same one surfacing where they are wrong.

01edit_note
A signal is captured
A user correction in chat, a PR review comment, a repeated question, a stale reference, an agent self-correction.
02inventory_2
The review batches signals
A scheduled run reads the recent signals against the wiki and produces proposals: update, create, restructure, or deprecate.
03rule
A person decides
Approve the surgical edits, reject the ones that miss, edit a replacement, or apply the batch in bulk at high confidence.
04check_circle
The wiki updates in place
Only the approved edits land. Each one stamped with the AI source mark and recorded in version history.
The loop the health review closes. Evidence from real activity becomes proposals; a person decides; the wiki stays in step with the code.

A repository, documented end to end

Maya has just connected the Insights service as the Insights API repository, and the docs tree is empty. Rather than write the architecture page from scratch, she launches repo onboarding against it. The Flow spins up a sandbox, crawls the repository, and stops at the first checkpoint with the foundation drafted: an architecture overview and a conventions page. She reads them, fixes one sentence about how the service talks to the warehouse, and clears the checkpoint. The Flow writes the domain and API pages, pauses again before the decision records, and she lets that one run to the end.

When the run finishes, the Insights API repository has a real doc tree, its foundation written from the code. Maya opens the conventions page, switches it to edit, and adds the one rule the agent could not have inferred: that the team always writes its CSV exports through the shared formatter. She saves. The next engineer who runs an agent against Insights API gets a sandbox whose agent has already read that conventions page, so it reaches for the shared formatter without being told. The page Maya wrote once is now the thing that keeps every future run on the rails.

Permissions

Reading a repository's docs goes with the platform-docs.read scope, which every member and viewer carries, so anyone in the workspace can read what a repository documents. Creating, editing, organizing, and deleting pages go with platform-docs.manage.

Running and managing the onboarding Flow has its own pair: onboarding.read to see a repository's onboarding state and what it produced, and onboarding.manage to launch, reset, or clear it. The split is the usual one. Reading is open so the docs serve the whole team; changing what they say, and running the agent that writes them, is held by the people you trust to decide what your documentation says.

Why repository docs work this way

The reason documentation rots is never that people do not value it. It is that keeping it current was always somebody's twelfth priority, and the cost of an update, find the page, edit it, open a pull request, get it reviewed, was high enough that the update lost every time to more urgent work. Disco Parrot does not fix that by asking people to care more. It fixes it by moving the docs to where the cost of keeping them current is nearly zero: a living store the agent reads and a person edits in one move, with onboarding to write the first draft and a review to catch the drift.

The pieces are ordinary on their own, markdown pages, a tree, an editor. What makes them work is where they sit. The docs are close enough to the work that the agent reads them mid-run, close enough to a person that a fix is a click, and close enough to the health review that drift becomes a proposal instead of a slow decay. The knowledge that used to live in one engineer's head lives on a page the whole team can read and the agent can act on.

For a planner, repository docs are the one place the team's understanding of a service is written down the same way for everyone, so a plan is built against shared facts instead of whatever each person half-remembers. You run onboarding once, and the architecture and conventions are there for the next person, or the next agent, to plan from.

For an engineer, the docs read and edit like a notebook: markdown, a tree built from paths, an editor a click away. Onboarding writes the foundation the code can already explain, so you spend your time on the one convention it cannot infer, not on transcribing what the code already says.

For a lead, the docs stop being a project that never ships and become a working artifact that maintains itself. The knowledge that walked out the door with every departure now sits on a page, and the agent reading it on every run is the thing that keeps it honest.

For the person who has to sign off on letting an agent near the team's knowledge base, the boundary is clean: the docs live in the platform's store, not in your source; the agent reads them and a person decides what they say; and onboarding is a run you launch deliberately, not an automatic process you have to trust. The agent helps write the docs, but a person owns every word that stays.