Web UI Guide

The SourceBrain web interface lets you browse, read, and edit lessons from any browser, no CLI required. This guide covers every page and feature.

Signing in

Sign up

Go to /signup. Enter your email and choose a password (8 characters minimum). Click Create account. You'll be taken to your workspaces list.

Log in

Go to /login. Enter your email and password, click Sign in. Your auth token is stored in the browser's localStorage; it persists across sessions until you sign out.

Sign out

Click Sign out in the bottom-left of the sidebar (visible when inside a workspace) or return to the Workspaces page and click Sign out in the header.

ℹ️
The web UI is cloud-only. It does not have access to your local .sourcebrain/database. Use the CLI for local mode.

Workspaces page

After login you're redirected here if you don't have any workspaces yet, or directly into your first workspace if you do. You can always navigate back by clicking the SourceBrain logo in the sidebar.

My Lessons (your personal space)

Above the workspace list is My Lessons, your own private knowledge base, separate from any team. Lessons here are visible only to you until you share or publish them. It behaves like a workspace (tree, search, history, graph, trash) but never appears in the team list and has no members.

ℹ️
Every plan gets cloud My Lessons. Free saves up to 3 lessons in the cloud (they sync across your devices); Pro syncs unlimited and adds sharing and publishing. For unlimited personal lessons on the Free plan, use local mode, a private, per-machine store you use through the CLI (sourcebrain init --local). From the CLI, the --personal flag targets your cloud My Lessons space.

Creating a workspace

Type a name in the New workspace input at the top of the page and press Enter or click Create. Workspace names must be unique per account and can contain letters, numbers, and hyphens.

Switching workspaces

Click any workspace name in the list to open it. The sidebar will load that workspace's lesson tree.

Inviting team members

Invite people in Settings → Members. Start typing and the field suggests people you already collaborate with (members of your other workspaces and organizations), most relevant first; click one to add them. Typing a full email works for anyone else. If the email has no SourceBrain account yet, you can send a signup invite, and they join the workspace automatically when they register.

Deleting a workspace

Click the Delete button next to the workspace name. You'll be asked to confirm before anything is deleted. Only the workspace owner can delete a workspace. Deletion is permanent; all lessons and version history are removed.

⚠️
Deleting a workspace cannot be undone. Make sure you've exported anything important first, from the Import & export page or with sourcebrain export.

Organizations (Pro)

An organization groups many workspaces behind a single member list: joining the org grants access to every org-visible workspace automatically, and leaving revokes it. On the workspaces page, an org appears as a section heading over its workspaces. Clicking a workspace still opens it directly, and your workspaces outside the org are untouched under "Not in an organization".

Click Members & settings on the org heading to open the org page: invite or remove members (with the same signup-invite fallback), attach or detach workspaces, flip a workspace between org-visible and private, set org-wide AI instructions, and pick a shared context workspace, a cross-repo conventions space whose lessons join search and AI answers in every org workspace. Pro accounts can create up to five organizations from the bottom of the workspaces page.


Once inside a workspace, the left sidebar shows your knowledge tree. Lessons are organized by their paths into an expandable tree.

Browsing the tree

Click a folder node (a path that has children) to expand or collapse it. Click a leaf node (a path with no children) to open the lesson in the main panel. The active lesson is highlighted in indigo.

Creating a new lesson

At the top of the sidebar there's a text input labeled New lesson path. Type the full path you want (e.g. auth/oauth/google) and press Enter. The editor opens immediately in the main panel.

Switching workspaces from the sidebar

Click Switch workspace at the bottom of the sidebar to return to the Workspaces page.


Reading lessons

Click any lesson in the sidebar to open it. The main panel shows:

ElementDescription
Path headingThe full lesson path in monospace font
Metadata lineLast updated timestamp, author email, and version note
ContentLesson text rendered as Markdown with full GFM support (tables, code blocks, checkboxes, etc.)
Edit buttonOpens the split-pane editor (top-right)
History buttonExpands the version timeline below the content

Markdown support

Lesson content supports GitHub Flavored Markdown including:

  • Headers (# H1, ## H2, etc.)
  • Bold, italic, strikethrough
  • Fenced code blocks with syntax hints
  • Tables
  • Ordered and unordered lists
  • Blockquotes
  • Task lists (- [ ] item)
  • Inline code

Referenced files

A lesson also links to the code it documents. List the files, symbols, and line ranges a lesson references with a refs: frontmatter block (path-like tokens in the body are picked up too). Below each lesson you'll see a Referenced files list, each entry showing the file and its anchor (a #symbol or a :line range).

Click Open in code to jump straight to that location in VS Code. The first time, you'll be asked for the absolute path to your local checkout of the repository (the browser only knows repo-relative paths); it's remembered per workspace after that.


Sharing personal lessons

Lessons in My Lessons are private until you share them. On a personal lesson page, the Sharing panel lets you:

  • Share with people: enter a teammate's email; optionally tick can edit (otherwise it's read-only). They must have a SourceBrain account.
  • Publish to a workspace: copy the lesson into a team workspace so all its members see it ("everyone" = that workspace). The personal original stays private.

Lessons shared with you appear under Shared with me (linked from the sidebar and the Workspaces page). Cloud sharing is a Pro feature.


Backlinks and the graph

Lessons can link to each other with a wikilink: write another lesson's path in double brackets, like [[auth/jwt]] (or [[auth/jwt|JWTs]] to show custom text). Below each lesson you'll see two lists: Referenced by (which lessons link here) and Links to (where this lesson points). A link to a lesson that doesn't exist is shown in red as broken. Every broken link in the workspace is also listed on the Health page, so you don't have to find them one lesson at a time.

Click Graph in the sidebar to see the whole knowledge base as an interactive map: each lesson is a node, each wikilink an edge. Hover a node to highlight its connections, and click one to open it. Broken links appear as dashed red nodes, so gaps in your knowledge base are easy to spot.

💡
The graph is a fast way to find orphaned lessons (nothing links to them) and to navigate clusters of related knowledge without hunting through the tree.

Editing lessons

Click Edit to open the split-pane editor. The left pane is a plain-text editor for writing Markdown. The right pane shows a live rendered preview; it updates as you type.

Saving

Optionally fill in the version note field at the bottom (a short description of what changed, like a commit message). Click Save to create a new version. The lesson page reloads showing the updated content.

Cancelling

Click Cancel to discard changes and return to the read view. The previous content is not affected.

💡
Write a version note when you make a meaningful change; it shows up in the history timeline and makes it easy to understand what changed and why.

Version history

Click History (top-right of a lesson) to expand the version timeline below the content. Each row shows:

ColumnDescription
Version tag"latest" for the current version; v2, v1 etc. for older ones
DateWhen the version was saved
AuthorEmail of the user who saved it (if available)
NoteThe version message, if one was provided

Click History again to collapse the timeline.


Import & export

Open Import & export from the sidebar (under Manage) to move knowledge in and out of a workspace. It works in a team workspace and in your personal My Lessons space.

Export

Assemble every lesson into a single rules file. Pick a format, CLAUDE.md (for Claude and Claude Code), AGENTS.md (for Cursor and other agents.md tools), or plain Markdown, optionally scope it to lessons under a path, then preview the result and Download or Copy it. The output is byte-identical to sourcebrain export, so you can point a tool that doesn't speak MCP at a generated file and regenerate it whenever the lessons change.

Import

Paste an existing CLAUDE.md, AGENTS.md, or Markdown rules file. SourceBrain splits it into one lesson per section, so each becomes individually addressable and anchorable, and nests them under the Save under path you choose. Existing lessons are never overwritten; a path that already exists is reported as skipped.

ℹ️
The web import takes a paste. To import a whole folder of rules files from disk, use the CLI: sourcebrain import <path>. Both share the same section-splitting, and both honor the workspace's lesson limit and approval workflow.

AI Settings

Each workspace has an AI Settings page (at /w/{workspace}/settings) for configuring how AI agents work with that workspace. It has three parts:

SectionPurpose
Workspace AI InstructionsA free-text box of guidance (naming conventions, what to check first, which namespaces matter) that is handed to every agent that connects. Admins only; leave it blank to use the built-in default. Org-wide instructions, set on the org page, are included before these.
MembersInvite people, see roles, and (as an admin) promote/demote or remove members. See below.
Require approval (Beta)Toggle the moderation workflow so non-admin edits need admin approval. See below.
Connect to Claude Desktop / CursorA copy-paste MCP config snippet plus the list of available MCP tools.
AI Context PreviewA live preview of exactly what an agent receives from get_workspace_info: your instructions, the lesson index, and the API reference.
💡
Setting good instructions is the highest-leverage thing you can do here: they shape every AI session against the workspace. See the AI Integration guide for the full picture.

Members and roles

Every workspace member has a role: viewer, member, or admin. The owner is always an admin.

RoleCan do
ViewerRead every lesson and take part in discussion — but cannot add, edit, delete, or import. For stakeholders and contractors who need the context without the ability to change it.
MemberEverything a viewer can, plus write lessons (the permissive default).
AdminEverything a member can, plus invite people, change roles, remove members, edit AI instructions, and moderate requests.
OwnerAn admin who additionally can delete the workspace. Always an admin; can’t be demoted or removed.

People who reach a workspace through an organization rather than a direct invite count as members. Read-only access is always granted per person, so adding a workspace to an org never quietly downgrades anyone.

Manage members in Settings → Members (admin-only controls), or from the CLI with sourcebrain members (invite / role / remove). The invite field suggests people you already work with as you type; an email without an account gets a signup invite instead.

Workspaces in an organization also admit org members automatically (as plain members) while the workspace is org-visible. They don't appear in the member list (which shows direct members only), and promoting an org member to admin here gives them an explicit seat.


Requiring approval (beta)

Admins can turn on Require approval for edits in Settings. While it's on, a non-admin member's lesson add or edit doesn't apply immediately; it becomes a change request that an admin approves (which applies it, credited to the original author) or rejects. Admins' own edits still apply directly.

Review pending requests on the Requests page (it appears in the sidebar when the workflow is on), or from the CLI with sourcebrain requests (approve / reject). It's off by default and marked Beta.


Teams

A team is a sub-group of a workspace with its own member list. Its lessons and plans are visible only to its members; workspace-level lessons (not in any team) stay visible to everyone. Open Teams from the sidebar to create one, add members, and create lessons or plans inside it.

ℹ️
Any workspace member can create a team and becomes its first member. To add someone to a team, add them to the workspace first, then to the team.

Plans

A plan is a forward-looking, status-tracked kind of lesson, for work you're about to do. It moves through a lifecycle:

StatusMeaning
draftBeing written, private to you until you propose it.
proposedPublished to its project (or workspace) for review.
acceptedAgreed on, not started yet.
in_progressBeing built.
doneShipped.
archivedDropped or superseded (revivable to draft).

Create a plan from a project's Create control (pick “Plan”), or via the CLI with sourcebrain plan create. On the plan's page, a status bar shows the current state with one-click buttons to advance it. Because a draft is private, moving it to proposed is what shares it with the right people. Your AI tools see your active plans first via get_workspace_info, and can list/advance them over MCP.

Discussion (beta)

Admins can turn on Discussion in Settings to let members leave plain-text comments on any lesson or plan they can see. It's off by default. Comments are flat and pull-based, with no notifications; you can delete your own, and admins can delete any. Also available from the CLI: sourcebrain comments.


Tips and shortcuts

TipDetail
Deep link to a lessonEvery lesson has a stable URL: /w/{workspace}/{path}. Bookmark or share it.
New lesson URLNavigate to /w/{workspace}/{path}?new=1 to open the editor for a new lesson directly.
Export a rules fileUse the Import & export page (or sourcebrain export) to generate a CLAUDE.md / AGENTS.md; sourcebrain context bundles matches for a one-off AI prompt.
Invite before onboardingInvite teammates before they start adding lessons so their first additions go into the shared workspace.
SourceBrain Docs · SourceBrain