Connections

How ingestion works

What ctx| prepares after you connect a repository, and how to read indexing states.

Ingestion turns a connected repository into context that Search, Chat, the knowledge graph, and MCP can use. It is asynchronous: a repository can appear in ctx| before every capability is ready.

The four stages

Read the selected source

ctx| resolves the selected repository and default branch, then prepares a working copy for indexing. Private repositories require the GitHub App or clone credentials to remain valid.

Build code navigation

ctx| builds lexical and structural indexes so agents can search code, list files, and retrieve relevant source without reading an entire repository into one prompt.

Extract technical context

Model-assisted extraction identifies systems, APIs, libraries, infrastructure, instructions, and relationships. Those findings become evidence-backed claims in the organization knowledge graph.

Publish readiness

The repository status tells you whether work is pending, in progress, complete, or complete with issues. Search and graph preparation are separate, so one capability can be ready before another.

Read the repository state

StateMeaningWhat to do
Pending indexingThe source is selected but ingestion has not started.Choose Index now.
Indexingctxis preparing search and graph context.
IndexedThe current ingestion run completed.Test a known question in Chat or MCP.
Complete with issuesUseful context exists, but one indexing capability failed.Open the row menu and choose Retry indexing after resolving the cause.
Failedctxcould not complete the repository run.

Indexed does not mean infallible

Ingestion creates search indexes and inferred graph claims; it does not certify an answer as correct. Ask agents to cite files and verify risky decisions against the current source.

Three layers

Connected content lives in up to three layers, and they are not the same thing:

  1. Warehouse: bytes in git, either the source repository itself or connector Markdown committed to a context repository.
  2. Search: the code and text index over that tree. Chat and MCP can retrieve anything warehoused.
  3. Graph: typed nodes and claims. Only kinds an extractor was written for appear here. Connector Markdown is parsed from its frontmatter into Issue, Team, Thread, and PullRequest nodes; it is never read as instructions. Cross-tool links are joined by URL or identifier.

When a context-repository change touches only connector content, ingestion skips the code extractors and runs the connector extractors alone.

Keeping context current

Repository changes can trigger another ingestion run. Connector-generated content follows the same path after it reaches the context repository.

If a repository is stale or a run failed, use Retry indexing. You no longer need to remove and add the repository merely to start a fresh run. Use Unindex only when the repository should stop contributing to Search, Chat, MCP, and the graph.