Skip to content

From sign-up to a searchable index

Guide

A direct path from account creation to one indexed repository and one answered search. Onboarding walks the same path screen by screen.

  1. 01

    Create one workspace

    Create an account and name your organization. Each workspace keeps one code index; Hobby and Pro include one workspace, Pro+ twenty-five, and a team has no cap.

  2. 02

    Connect GitHub

    Open Graph & Index and connect GitHub. You install the GitHub App on the account or organization that owns the code and choose which repositories the installation grants. Nothing outside that grant is read. If the app is already installed there, for example after a connection that expired, choose Link an existing installation instead.

  3. 03

    Choose repositories

    Pick the granted repositories to index, on the branch GitHub reports as default or one you name. Hobby indexes one repository; Pro indexes twenty and Pro+ fifty.

  4. 04

    Watch the index build

    Each repository is mirrored, its files split into syntax-aware chunks and, on Pro and Pro+, embedded. Graph & Index shows the state of each repository: copying, refreshing, current, stale, or failed, with the indexed commit and the file and chunk counts. Hobby refreshes when you press Refresh index; Pro and Pro+ refresh on every push. A refresh GitHub turns away for a moment is tried again by itself.

  5. 05

    Search from Home

    The Home page has one search box. On Pro and Pro+, ask in your own words; a name in the question, like retryDelivery, also matches exactly and shows first. On Hobby, the box matches names in code exactly. Agents keep the full pattern search below.

  6. 06

    Give your agents the same index

    Mint an API key in Manage account → Settings → Access, then follow the MCP guide to connect Codex, Claude Code, or GitHub Copilot CLI. On your desktop, sign muxcode in from its own window and approve the request in mux; no key is copied by hand.

Pattern search (grep_code). Matches the shape of the syntax tree rather than text: foo(\X) finds every call of foo with one argument, whatever that argument is. A backslash marks a placeholder; $X is matched as text and finds nothing. Narrow it with a repository, a language, or a path prefix inside the corpus. Every plan includes it.

Search by meaning (search_code). Ranks chunks by what they mean, not by the words they contain, and returns the repository, file path, start and end lines, a score, and an excerpt. Pro and Pro+.

Ask a question (ask_code). Takes a question in plain words and returns the passages from the index that bear on it, for your agent to read. The answer itself is not written for you. Pro and Pro+.

On Hobby, search_code and ask_code answer 403 with {"error":{"code":"plan_refused"}} rather than quietly returning pattern results.

Context for a task (get_context). One call returns the evidence for a task across the workspace’s repositories, each piece tied to the commit it was read at, plus the files the code graph links to it: what they import, what imports them, their tests, and the routes one repository calls in another. Every plan; semantic matches on Pro and Pro+.

One file on the graph (trace_code). What a file defines, imports and is imported by, its tests and routes, and its owners. Every plan.

Findings. An agent proposes a finding from a context packet (record_context_outcome). It reaches no one until a workspace owner approves it on the Workspace page. An approved finding comes back with context and moves to each new commit while the files it cites stay the same. The MCP guide has the arguments; Onboarding shows the screens.

One mirror is kept per selected repository and re-indexed from the branch you chose. Hobby refreshes only when someone asks for a refresh; Pro and Pro+ refresh on push. A repository whose latest commit differs from its indexed commit is reported as stale, and anyone with the editor or owner role can refresh it from Graph & Index.

Removing a repository removes its mirror and its part of the index.