Browse docs

← All docs

docs / features-team.md

Working with collaborators

If someone who owns a repository has the cix GitHub App installed, and GitHub says you're a collaborator on it, your ordinary queries can read their index. You don't index that repository yourself.

This is the one case where a repository is already covered before you do anything.

What has to be true

Three things, all checked at read time:

  • The repository has an owner with the App installed, and that owner isn't you.
  • You have no index of your own for that repository. If you have one, yours is used.
  • Your cix account has a verified GitHub identity, and GitHub confirms you're a collaborator on that repository.

If any of them fails, nothing changes — you read your own index, exactly as before.

Note — collaborator status is checked against GitHub itself, not against a list kept inside cix. Access follows the repository, and revoking someone on GitHub revokes it here.

Why this beats indexing it again

Two people indexing the same repository build two copies of the same thing. The wasted work is the smaller cost.

The real problem is precedence: reads prefer your own index. A stale personal copy quietly shadows the owner's fresh one, and the answers degrade in a way that looks like nothing happened. Not building the second copy avoids the whole failure mode.

cix init tells you when a repository is already covered this way.

If you already made a duplicate

If you indexed a repository whose owner also has it indexed, yours wins even as it ages. Retire it so reads fall through to theirs:

shell
$ cix index --retire

It previews what would be removed and asks before doing anything.

Heads — retiring removes your own index for that repository. If you have symbols on a branch the owner's index has never seen, those go with it.

Private indexes are not shared

An index built with cix index --push is yours alone and cannot be read by anyone else, collaborator or not. Reading someone's index requires the App path.

That's the main reason to prefer the GitHub App when you have the choice. See How cix gets your code.

Publishing an index to a team

Publishing a repository's index to a named team, so members fetch it explicitly, is not generally available yet. Today, collaborator access above is the supported way for more than one person to read one index.

Each person still enables the repositories they want indexed — granting someone access on GitHub doesn't make a repo appear in their cix account. See Working across repositories and What stays private.

Next: Branches and worktrees.