Skip to content

How ctxman compares ​

Two kinds of tools prepare code for language models. Context packers (Repomix, Gitingest, code2prompt, Aider's repo map) run on your machine and turn a repository into text a model can read. Code-context platforms (Sourcegraph, GitHub Copilot, Augment Code, Unblocked) index code on a server, often with tickets, chat and wikis, and serve it to their own assistant and to other agents over MCP.

ctxman is a context packer with the controls teams ask platforms for: token budgets, a policy file and an audit log, PR and history context, and an MCP server, all without an account or a server.

ctxmanopen source, localRepomixopen sourceGitingestopen sourcecode2promptopen sourceAider repo mapopen sourceSourcegraphenterpriseGitHub CopilotenterpriseAugment CodeenterpriseUnblockedenterprise
Context
Runs without an account or serverYesYesYesYesYesNoNoNoNo
Token counts you can see, per fileYesYesPartly or limitedPartly or limitedPartly or limitedNot documentedNot documentedNot documentedNot documented
Token counts per functionYesNoNot documentedNoNot documentedNot documentedNot documentedNot documentedNot documented
Fit context into a token budgetYesPartly or limitedNoNoPartly or limitedPartly or limitedNot documentedPartly or limitedPartly or limited
Signatures-only view of the codeYesYesNot documentedPartly or limitedYesNot documentedNot documentedNot documentedNot documented
Dependency or symbol graphYesNoNot documentedPartly or limitedYesYesNot documentedPartly or limitedPartly or limited
Pull-request context or reviewYesPartly or limitedNot documentedYesNot documentedPartly or limitedYesYesYes
Commit history and decisions in contextYesYesNot documentedYesNot documentedYesNot documentedNot documentedYes
Tickets, chat and wiki as sourcesNoNoNot documentedNoNot documentedPartly or limitedYesYesYes
Ranked or semantic code searchPartly or limitedPartly or limitedNot documentedNoNoPartly or limitedYesYesNot documented
Secrets masked before exportYesPartly or limitedNot documentedNot documentedNot documentedNot documentedNot documentedNot documentedNot documented
Several repositories at oncePartly or limitedNoNoNoNot documentedYesYesYesYes
Interfaces
Command lineYesYesYesYesYesYesYesYesYes
MCP server for agentsYesYesNot documentedYesNot documentedYesYesYesYes
Library or HTTP APIYesYesYesYesPartly or limitedYesYesPartly or limitedYes
GitHub Action for CIYesYesNot documentedNot documentedNot documentedNot documentedNot documentedNot documentedNot documented
Deployment and governance
Include/exclude rules in the repositoryYesYesYesYesYesYesYesYesPartly or limited
Organisation-wide exclusion policyPartly or limitedNoNoNoNoYesYesNot documentedPartly or limited
Audit log of what was sharedYesNoNoNoNoYesYesPartly or limitedYes
SSO, SCIM and rolesNoNoNoNoNoYesYesYesYes
Self-hosted or air-gappedYesYesYesYesYesYesPartly or limitedNot documentedYes
Open sourceYesYesYesYesYesNoPartly or limitedNoNo

Yes · Partly or limited · No · Not documented · * hover for details

Notes on individual cells
  • Sourcegraph — Runs without an account or server: Needs a Sourcegraph instance
  • Gitingest — Token counts you can see, per file: Total count only
  • code2prompt — Token counts you can see, per file: Its README calls the counts estimates
  • Aider repo map — Token counts you can see, per file: /tokens shows the chat usage
  • Repomix — Fit context into a token budget: --token-budget fails the run when over; it does not pick files
  • Aider repo map — Fit context into a token budget: The repo map is trimmed to --map-tokens
  • code2prompt — Signatures-only view of the code: --entity-map in a feature build
  • code2prompt — Dependency or symbol graph: --entity-map lists entities, no graph
  • Repomix — Pull-request context or review: --include-diffs adds working-tree and staged diffs
  • ctxman — Commit history and decisions in context: ctxman why and ctxman pr mine commits, references, owners and ADRs
  • Sourcegraph — Commit history and decisions in context: commit_search and diff_search MCP tools
  • Unblocked — Commit history and decisions in context: Code, PRs and team discussions
  • ctxman — Ranked or semantic code search: BM25 ranked search; embeddings through the optional ctxman ask
  • Repomix — Ranked or semantic code search: grep over a packed output (MCP)
  • Repomix — Secrets masked before export: Secretlint leaves suspicious files out instead of masking
  • ctxman — Several repositories at once: --multi-repo over configured local repositories; no shared index
  • ctxman — Organisation-wide exclusion policy: .ctxman/policy.json or CTXMAN_POLICY, enforced by the CLI, API and MCP server; not a barrier against a local user
  • ctxman — SSO, SCIM and roles: No accounts: it runs on your machine
Sources and method

Open-source tools: their READMEs, CLI help and package registries. Enterprise products: official documentation and pricing pages. “Not documented” means we found no official source either way. Checked 2026-10-09; products change quickly.

Where ctxman is different ​

  • Token counts you can check. Every file and function has a count, for the encoding of the model you target, and ctxman count --api gets Claude's exact count from Anthropic. None of the enterprise products we looked at documents user-visible token counts.
  • A budget, not a hope. ctxman pack --budget and ctxman map --tokens fill a token budget with the highest-ranked files and functions and never exceed it; --max-tokens turns it into a CI check.
  • Why the code looks like this. ctxman why file:function collects the commits, referenced issues, owners, co-changed files and design notes behind a function, from git and the repository. Platforms such as Unblocked do this with Slack, Jira and Confluence on their servers; ctxman stays on the machine and covers what git and the repository record.
  • Governance without a server. A policy file in the repository (or one set by the organisation with CTXMAN_POLICY) denies paths, requires redaction and caps export size for the CLI, the API and the MCP server alike, and every export is written to an audit log.

What ctxman doesn't do ​

ctxman has no hosted index, no single sign-on or roles, and doesn't read tickets, chat or wikis. If you need answers across a whole organisation's repositories and discussions, with permissions enforced per user, a platform such as Sourcegraph or Unblocked is built for that, and ctxman can still prepare the context you send to it.

The table records what each product documents as of 2026-10-09. Corrections are welcome in [an issue](https://github.com/hakkisagdic/ctxman/issues/34).

Released under the MIT License.