Docs
Set up CommonGround, and see what Claude can do with it
CommonGround is a markdown wiki that Claude reads before it answers and keeps current, curated by you. It can be yours alone or shared with a team: record a decision once, and whoever asks next gets that answer with the page it came from. Claude runs in your own session on the Claude plan you already have; CommonGround stores and serves the wiki and runs no AI of its own.
There are two ways in, and you can use both. In Claude Code it is a plugin. In Claude Chat, on the web, on desktop and on your phone, it is a connector. Both reach the same wiki.
Last updated 5 October 2026.
Before you start
You need a Claude account, and a CommonGround account with at least one wiki.
CommonGround is in private beta. Creating a wiki needs an invite, which you can request on this page. An invite link from someone who already has a wiki lets you in right away.
- If someone invited you to their wiki, open their link. It creates your account and puts you on that wiki in one step.
- If your own account has been invited, sign in at app.commongroundapp.io and create a wiki there: say whether it is just for you or for a team, and name it.
Set up in Claude Code
The plugin is for Claude Code, in the terminal or in the Claude desktop app. For Claude Chat, use the connector in the next section.
Install the plugin
If the plugin is already installed, go to step 2.
The plugin needs two free programs on this computer: Node.js (version 20 or newer) and git. On a Mac, git comes from Apple the first time it is needed; on Windows, it is Git for Windows. In WSL, install both inside WSL. The prompt further down checks for both before it installs anything.
In a Claude Code session, run these two lines:
/plugin marketplace add serkanterek/commonground-plugin /plugin install commonground@commonground-pluginsOr paste this into a Claude Code chat, in the app or the terminal, and Claude runs the install itself:
Set up CommonGround on this computer for me. Check first, then install. 1. If this is a Mac, first tell me the git check may open Apple's developer tools installer: that is git, and I should accept it and let it finish. Then run `node --version` and `git --version`. CommonGround runs on Node.js 20 or newer, and git is what downloads it. If either one prints no version, stop here: tell me what is missing and why, point me to nodejs.org for Node, and ask me to quit Claude completely, open it again and paste this again. If Node is older than 20, tell me and ask whether to go on. Never install anything unless I ask. 2. Tell me in plain words what you are about to add: the CommonGround plugin for Claude Code. A few commands, a small helper that tells Claude my wiki is there and asks me before anything is published, and a connector for reading my wiki online, which a wiki kept in a folder can leave alone at first. Nothing else is installed. 3. Run these two commands: claude plugin marketplace add serkanterek/commonground-plugin claude plugin install commonground@commonground-plugins If the claude command is not found, say so and walk me through the app instead: open Plugins, add a marketplace from the repository serkanterek/commonground-plugin, then install commonground from its list. 4. Tell me to type /reload-plugins, then /commonground:seed to fill my wiki. The only sign-ins this needs are CommonGround's own. If other tools ask to be authorized, they are not part of it.If Claude Code says a reload is needed, run
/reload-plugins.Then turn updates on: /plugin → Marketplaces → commonground-plugins → Enable auto-update. Claude Code leaves automatic updates off for a marketplace added this way.
Sign in
Open the project you work in and run
/commonground:point, or ask Claude to connect this project to your wiki. The first time, Claude shows a link and a short code. Open the link, sign in to CommonGround, check that the code matches and approve. That signs this machine in once, for every wiki you belong to.Point the project at a wiki
The same command asks which of your wikis this project should read, and how: from a copy kept as a folder of markdown files on your machine, which is faster and is the one it recommends, or live through the connector. It then writes a short note into the project’s
CLAUDE.md, the instructions file Claude Code reads, so Claude knows to consult the wiki there. A project can read a second wiki beside the first: run the command again and say so.Fill the wiki, if it is new
A new wiki is empty. Run
/commonground:seedand Claude agrees a charter with you (who the wiki is for and what belongs in it), then builds the first pages from a short interview, from a folder of notes you already have, or from documents you hand it. You can stop partway and it picks up where you left off. On a shared wiki this step is for admins and curators.Ask
Ask Claude anything the wiki covers. It starts at the wiki’s index, opens only the pages the question needs, and names them in its answer.
The plugin’s commands
The plugin adds 7 commands. Each one is also something you can ask Claude for in plain words.
/commonground:point- Connects the project you are in to one of your wikis, or adds a second wiki beside it. The first run signs this machine in.
/commonground:seed- Fills a new wiki: agrees its charter with you, then builds pages from a short interview or from notes you already have.
/commonground:ingest- Captures something into the wiki: a thought, notes, a transcript, a document or link, a decision.
/commonground:lint- Health-checks the wiki and reports what it finds. It changes nothing.
/commonground:status- Says where you stand: signed in or not, which wiki this project reads, your role, and what to do next.
/commonground:pull- Brings the latest published pages into your local wiki folder.
/commonground:push- Publishes the changes in your local wiki folder, after showing you exactly what will go out and asking.
What the plugin does on your machine
It writes that note into CLAUDE.md and the wiki’s id into the project’s .claude/settings.json. It keeps your sign-in in ~/.commonground, outside any project. If you chose the local copy, the wiki is a folder under ~/CommonGround unless you pick another place. It runs three small scripts: one when a session starts, which brings in what the wiki holds, one when you send a message, which notices a subject the wiki covers, and one before Claude runs a shell command or a connector’s tool, which looks for anything that would publish to a wiki and asks you first. It talks to CommonGround and to nothing else. The plugin’s README lists every file it reads and writes.
The other ways to install, from the app’s plugin browser, for cloud sessions, or for everyone who opens a repository, are on the connect page.
Connect in Claude Chat
Claude Chat reaches your wiki through a connector: an address Claude calls on your behalf. There is no API key to copy. You sign in once in your browser, and Claude keeps that sign-in fresh by itself.
Open your connectors
In Claude Chat on the web or in the Claude desktop app, open Customize, then Connectors.
Add CommonGround
Select Add custom connector, name it CommonGround and give it this address:
https://api.commongroundapp.io/mcpContinue through the dialog and select Add. If it asks how to sign in, choose Sign in now. If it asks how it should identify itself, choose Register automatically.
Sign in
Select Connect. A CommonGround page opens in your browser. Sign in with your CommonGround account.
Approve, and choose a wiki
The page names the app that is asking and the address it will return to. It asks you to let that app read your CommonGround wikis as you, and change them where your role allows. It never reaches a wiki you are not a member of. If you belong to more than one wiki, choose the default: that is the wiki Claude Chat answers from. Select Allow, or Deny to stop.
Ask
Back in Claude the connector shows as connected. In a chat, select + in the message box, then Connectors, and check CommonGround is switched on. Then ask. The first time Claude uses a tool it may ask for your approval.
Custom connectors work on every Claude plan. On Claude’s Free plan you can add one. On Claude’s Team and Enterprise plans an Owner adds the connector for the organization first, under Organization settings, then Connectors, with Add, then Custom. Each member then connects it under Customize.
Once it is connected, it works in your chats on the web, in the desktop app and on your phone.
During the private beta the connector works with every wiki, on Free and on Pro.
The guided setup that fills a new wiki runs in Claude Code. Claude Chat is at its best once the wiki has pages. The shorter connect page has the name and the address to copy.
What Claude can do
The connector gives Claude 16 tools. 9 only read. Of the 7 that write, 1 is open to every member because it files a request and edits nothing, 5 are for admins and curators, and 1 is for admins. Claude is only offered the tools your role allows. In a project that reads more than one wiki it is offered a write tool if your role in any of them allows it, and each wiki still checks your role there.
No tool deletes a page. A save replaces a page’s text with a new version and goes into the wiki’s history, usually with a line on why. Earlier versions are kept in that history, which a local copy of the wiki holds in full. Every tool stays inside your wikis except one: invite_teammate can send an email.
| Tool | What it does | Reads or writes | Who gets it |
|---|---|---|---|
search | Searches the wiki and returns the passages that match, each with the page it came from. | Reads | Member, curator, admin |
get_page | Opens one page in full. | Reads | Member, curator, admin |
get_index | Lists what the wiki holds: every active page with its title, its category and when it last changed. | Reads | Member, curator, admin |
get_history | Shows the latest changes to the wiki, or to one page: who made each one, by email address while that person is a member of the wiki, when, and the reason given for it. The newest 20 unless you ask for more, 100 at most. | Reads | Member, curator, admin |
get_awareness | Sums up what needs attention now: how many change requests are open, how many health-check findings there are, the newest changes and the pages updated most recently. | Reads | Member, curator, admin |
get_coverage | Compares the wiki with its own checklist and says which sections are filled, half filled or empty. | Reads | Member, curator, admin |
lint | Health-checks the wiki and changes nothing: stale pages, pages nothing links to, citations of a source that is missing, weak summaries and category mistakes. | Reads | Member, curator, admin |
list_suggestions | Lists change requests. Admins and curators see all of them; a member sees their own and how each one ended. | Reads | Member, curator, admin |
get_started | Tells you where you stand: your role, the state of the wiki and the most useful next step. | Reads | Member, curator, admin |
suggest_change | Files a change request for a curator when a page is wrong, incomplete or out of date. It edits no page. | Writes | Member, curator, admin |
stage_sources | Stores raw material you hand over (notes, a transcript, a pasted document) in the wiki’s sources folder, so pages can cite it. | Writes | Curator, admin |
save_page | Creates a page, or replaces one with a new version. Each save goes into the wiki’s history, where earlier versions are kept. | Writes | Curator, admin |
save_charter | Writes the wiki’s charter: who the wiki is for, what belongs in it and when Claude should consult it. It replaces the charter that was there. | Writes | Curator, admin |
save_seeding_progress | Remembers how far a guided setup interview has got, so it can pick up where it stopped. It stores the position only, never your answers. | Writes | Curator, admin |
resolve_suggestion | Closes a change request as applied or declined, with a note for the person who filed it. A closed request stays closed. | Writes | Curator, admin |
invite_teammate | Invites a person to a team wiki by email address, with a role and a discipline (the kind of work they do). The invitation can go out by email, which makes this the one tool that reaches someone outside the wiki. | Writes | Admin |
In Claude Code these same tools are used when a project reads the wiki through the connector. With a local copy, Claude reads and edits the files in the folder instead, and nothing is published until you ask it to.
Example prompts
These are written for our public sample wiki, a small team wiki for a made-up gadget company. Put your own subjects in their place. You never name a tool yourself; the middle column shows which ones Claude reaches for.
| Say this | Claude uses | Who can |
|---|---|---|
| “What is in our wiki, and how is it organized?” | get_index | Anyone |
| “How does a gadget get from the workshop to a customer? Name the pages you used.” | search, then get_page | Anyone |
| “What changed in the wiki recently, and who changed it?” | get_history | Anyone |
| “What needs attention in the wiki right now, and what is it still missing?” | get_awareness and get_coverage | Anyone |
| “Health-check the wiki. Which pages are stale, and which does nothing link to?” | lint | Anyone |
| “The rocket skates page should say that a brake retrofit was turned down. File that as a suggestion.” | suggest_change | Anyone, members included |
| “Record this decision: refunds are paid within ten days of a return, decided today. Keep my notes as the source.” | stage_sources, then save_page | Admins and curators |
| “Show the open change requests. Make the change the rocket skates one asks for, then close it as applied.” | list_suggestions, save_page, then resolve_suggestion | Admins and curators |
| “Read the wiki’s charter, then save it again with one more section called Customer complaints. Keep everything else as it is.” | get_page, then save_charter | Admins and curators |
| “Invite my teammate to this wiki as a curator. She is a designer, and her address is (her email address).” | invite_teammate | Admins of a team wiki |
Not sure where you stand? Ask “Where do I stand with CommonGround, and what should I do next?” and Claude tells you your role, the state of the wiki and a sensible next step. That one is get_started.
The invitation in the last row is a real one and can be emailed, so use an address you mean. save_seeding_progress is the one tool no prompt of yours calls: the guided setup uses it to remember its place.
Roles
Every person on a wiki has one of three roles, set by the wiki’s admins. Whoever creates a wiki is its admin, so on a wiki of your own you can do everything.
- Member
- Reads, searches and asks. Can file a change request when a page is wrong, and see what became of it.
- Curator
- Everything a member can do, and writes: saves pages, stores sources, sets the charter and closes change requests.
- Admin
- Everything a curator can do, and manages the wiki: invites people, sets their roles, and on a team wiki revokes a Claude connector that was approved for it.
Your role is checked on every call, so a change takes effect on the next one. In Claude Code with a local copy, anyone can edit their own copy; publishing it is for admins and curators.
What a page looks like
A wiki page is one markdown file. It opens with a short block of fields between two lines of three dashes, and the rest is the page itself. This is what a local wiki folder holds, and it is the format save_page writes.
---
title: Deploys pass through staging first
summary: Since 2026-08-14 every gadget is tested in the staging canyon before it
ships; decided after the rocket skates incident.
status: active
updated: 2026-08-14
tags:
- key-decisions
- how-we-work
sources:
- sources/dev-thread-2026-08-14.md
---
## Decision
Every gadget goes through the staging canyon before it ships. The procedure is in
[How we deploy](runbooks/deploy.md).
## Context
It was decided after the [canyon test of August 11](field-reports/2026-08-11-canyon-test.md),
when the [[Rocket skates]] were never run at full speed before a customer put them on.The fields
A page must have a title and the date it last changed. Everything else is optional.
| Field | Needed | What it holds |
|---|---|---|
title | Required | The page’s name. |
updated | Required | The date of the last change, written as YYYY-MM-DD. |
summary | Optional | One plain line saying what is inside the page: 200 characters at most, and best under 140. It is the page’s line in the index and what a search is matched against. |
tags | Optional | The page’s categories, taken from the list in the wiki’s charter. A page can sit in more than one. |
sources | Optional | Where the page’s facts came from: files in the wiki’s sources folder, or web addresses. |
aliases | Optional | Other names the page goes by, so a link or a search that uses the short name still finds it. |
status | Optional | active, hypothetical or deprecated. A page with no status is active, and only active pages appear in the index and in search. |
created | Optional | The date the page was first written, as YYYY-MM-DD. |
owner | Optional | The person who looks after the page. |
scope | Optional | Only for a wiki that is split by organization: company, department:name, team:name or product:name. Leave it out and the page belongs to the whole wiki. |
section | Optional | dev or pm, on a product’s pages only. |
A field of your own, one this table does not list, is kept exactly as you wrote it. A listed field written with different capitals or punctuation, such as Tags, is refused with the spelling it expects. A misspelled one is kept as a field of your own, so check the spelling if a field seems to be ignored.
The body
Plain markdown. Link to another page where it reads naturally, either as [[Rocket skates]], by the page’s title or one of its other names, or as a markdown link to its file: [the canyon test](field-reports/2026-08-11-canyon-test.md). Links in the text are the only cross-references a wiki has. The health check lists a page that nothing links to. A link to a page that does not exist yet is allowed: it marks something worth writing.
The page’s id
A page’s id is where its file sits in the wiki, without the .md ending: decisions/deploys-pass-staging. The folders are yours to choose. Nothing is laid out for you, and a folder exists once a page is in it.
- Use lowercase words joined by hyphens, with a slash between a folder and a page.
- Leave out
: * ? " < > | \, do not end a name with a dot or a space, and avoid the names Windows keeps for itself, such asconandnul. A Windows machine cannot hold such a file. - Two pages cannot differ only in capital letters. A Mac or a Windows machine would hold them as one file.
indexandlogare taken, and so is anything under.gitor.commonground. The index is written for you on every save. The charter lives atwiki-charter.
Saving through the connector
save_page takes the same three parts: the page’s id, its fields and its body. It also takes the version of the page Claude last read and a line saying why the page changed. If someone else saved the page in the meantime, the save is refused and nothing is overwritten: Claude reads the page again and tries once more. Raw material goes in through stage_sources, lands in the wiki’s sources folder, and is never changed after that.
Troubleshooting
- Signing in goes round in circles
- Finish the sign-in in the browser it opened in, and select Allow on the approval page. If that page says the request is invalid or has expired, start again from Claude: a request left open for a while expires, and one that was in progress while we released an update is dropped. If the same message comes back, remove the connector in Claude and add it again, which makes Claude introduce itself afresh.
- The approval page says you are not on a wiki yet
- There is nothing to connect to until your account has a wiki, so Allow stays switched off. Open an invite link from a teammate, or create a wiki in the app if your account has been invited to the beta, then start the connection again.
- A tool is missing, or Claude says it cannot change the wiki
- That is your role, and it is deliberate. Where you are a member, Claude can read and file
suggest_change, and the wiki refuses any other write. Ask an admin of the wiki to make you a curator. If the new tools do not show up straight away, start a new chat. If inviting someone is refused on a wiki that is just for you, that is by design: invitations belong to team wikis. - The tools vanished in the middle of a session
- That is the connection, not your access. In Claude Code an update to the plugin drops the live connection: run
/mcpto reconnect, or restart the session. In Claude Chat, open Customize, then Connectors: if the connector’s row shows Reconnect, select it and sign in again. Nothing has been lost. - Claude says the wiki is empty
- A new wiki has no pages until someone fills it. An admin or curator runs
/commonground:seedin Claude Code. If you are a member, someone else does that first. - Claude answers from the wrong wiki
- Claude Chat answers from the default wiki you chose when you approved the connector. To change it, remove the connector, add it again and choose the other wiki on the approval page. In Claude Code each project names its own wiki: run
/commonground:pointthere to change it. - Is CommonGround up?
- Open api.commongroundapp.io/health. If it answers with a status of ok, the service is running and the cause is closer to you. In Claude Code,
/commonground:statussays whether this machine is signed in and which wiki the project reads. There is no separate status page yet; if the check fails, write to us.
Disconnecting and deleting
- In Claude Chat
- Open Customize, then Connectors, and select CommonGround. Disconnect signs Claude out and keeps the connector in your list. Remove, in the three-dot menu, takes it off your account.
- In Claude Code
- Open
/plugin, go to the Installed tab and choose Uninstall. If you installed it from our marketplace,/plugin uninstall commonground@commonground-pluginsdoes the same. Your local wiki folder and the note inCLAUDE.mdare yours and stay until you delete them. Deleting the~/.commongroundfolder removes this machine’s copy of the sign-in. It does not end the sign-in: that stays valid on our side until it is revoked, which the next row covers. - On our side
- On a team wiki, an admin can end a connection in the CommonGround app: open Team and find Connected to this wiki. It lists the Claude connectors approved for the wiki, and sign-ins made for another wiki that have reached this one, with when each was last used. Revoke ends that access on its next call. Two things are not in that list yet: a machine signed in with the plugin for this wiki, and anything on a wiki that is just for you, which has no such list. To end one of those, write to hello@commongroundapp.io. If you are not an admin, ask one, or write to us. Removing a person from a team wiki stops every connector and machine of theirs from reaching it.
- Delete a wiki or your account
- Write to hello@commongroundapp.io from the address on the account. There is no delete button in the app yet, so a person does it. Our privacy page says what is removed and what is kept. You can take the wiki with you first: a local copy is the whole wiki with its history.
Support
Write to hello@commongroundapp.io. A person reads it. For a problem with the Claude Code plugin you can also open an issue on the plugin’s GitHub page. It helps to say whether you were in Claude Code or Claude Chat, what you asked, and what Claude answered or the error it showed. Leave out anything private from your wiki.
Security
To report a vulnerability, write to hello@commongroundapp.io with “Security” in the subject. Say what you found, where, and how to reproduce it. We look into every report and reply to the person who sent it. Please give us the chance to fix a problem before you publish it, and do not open other people’s wikis to prove a point. The same contact is published for scanners at /.well-known/security.txt.
How access works, in short: you sign in through your browser and never paste a key. Claude holds a short-lived token that it renews by itself, and we store a one-way hash of the sign-in behind it, with its last four characters and a label so one sign-in can be told from another. Every call is checked against your current membership and role in the wiki it is for, and on a team wiki an admin can revoke a connector at any time.
Privacy and terms
We store your wiki and your account. When Claude calls a tool we receive what that tool needs, such as the words to search for or the page being saved. We do not store your prompts or your conversations with Claude, and we run no analytics. What we keep, for how long, and who processes it for us is on the privacy page. The terms and the refund policy are one page each.