OpenTacit

To use OpenTacit, your machine needs two things. It needs your member settings: the address of the registry, and the key that identifies your machine. It also needs the wiring that connects your AI coding tools to OpenTacit. One command usually does both.

Ask a colleague or your OpenTacit administrator for an invite link. Then run the line that they send you:

curl -fsSL <join-link> | sh

That one line installs OpenTacit, joins the registry, and wires each AI coding tool that it finds on your machine. If you already have the tacit binary, run this command instead:

tacit join <join-link>

Invite links expire. If the join fails, ask for a new link.

Join by hand

If you have a registry URL and a member key instead of a link, run:

tacit connect --registry https://longreach.tacit.zone --key <your-key>

This command saves your settings and makes sure that they are correct. Then it wires your harnesses. To do the two steps separately, first run tacit connect --registry <url> --key <key>. Then run tacit connect. Use the registry URL exactly as you received it. If your organization serves OpenTacit under a sub-path (for example https://demo.example.com/apps/tacit), the path is part of the address.

Tip: In a Claude Code session, /tacit:setup does the same steps in conversation. It shows you how to enter the key so that the key does not appear in the transcript.

What OpenTacit wires

tacit connect finds the supported harnesses on your machine. There are nine: Claude Code, Codex, Gemini CLI, GitHub Copilot CLI, Cursor, Amp, pi, omp, and opencode. It wires each harness that it finds. For Claude Code, it installs the OpenTacit plugin (commands, skills, hooks, and the MCP server). For each harness, it prints the result as ok, todo (a step that you must complete yourself), or FAIL lines. To wire only one harness, pass --harness, for example tacit connect --harness claude-code.

Tell OpenTacit your cohort

OpenTacit reports outcomes by cohort: team, role, and similar aggregate dimensions. Thus your organization can see where knowledge spreads, and OpenTacit does not track individual persons. The cohort is optional but valuable. It makes reports such as "the payments team adopted this move" possible.

In most cases, your team already has a cohort. Use your team's cohort; do not create a new one. tacit join shows you the list at the end. You can ask for the list again at any time:

tacit cohorts
Cohorts already in use at https://longreach.tacit.zone
(the number after each is how many sessions it has been seen in)

  team       payments 12 · platform 9 · growth 2
  role       engineer 18 · analyst 4
  function   — nobody has set this yet
  domain     backend 7
  harness    claude-code 24 · codex 3   [set for you]

Copy the values that fit and save them:

tacit connect --segment team=payments,role=engineer

Spelling is important, and nothing corrects it. payments and payments-eng are two separate cohorts to every report in the registry. This is the reason to look at the list first. tacit cohorts also tells you when you are the only user of your value. This is usually a typo.

If your team is not on the list, give it a name. Each value works. After you use OpenTacit, the name appears on the list for the next person who joins.

It is not necessary to remember this. You can skip the step. Then, the first time you prompt your agent on a machine with no cohort, a ◆ Tacit line asks for the cohort. The line names the cohorts that your colleagues already use. Reply in plain words ("payments team, engineer — set my OpenTacit cohort"). The agent then saves the cohort for you. If you ignore the line, OpenTacit sends the reminder a maximum of one time each day until you set a cohort. /tacit:setup also does this step in conversation when you are ready.

Add a model key for better suggestions

The local agent works without model access. But suggestions get better when the agent can fit-check candidates with a model. Put a model API key in ~/.tacit-key.env:

TACIT_LLM_API_KEY=<your-key>

The agent reads the key automatically while it runs. No restart is necessary.

Check the connection

  1. Run tacit doctor. Make sure that every line shows ok.
  2. In a coding session, run /tacit:status for a health check of the whole stack, from the registry to the model.
  3. Run /tacit:test for an end-to-end test. It makes sure that retrieval works, checks the local agent, and gives you a prompt that causes a real suggestion to appear.

Files on your machine

PathWhat it is
~/.config/tacit/agent.envYour member settings: registry URL, key, cohort
~/.tacit-technique-memory.jsonYour personal record of adopted and dismissed suggestions. It never leaves your machine.
~/.tacit-key.envYour optional model API key (TACIT_LLM_API_KEY)
~/.tacit-hooks.logThe local agent's log

Your settings file is private to your user account (mode 0600). Environment variables override it. The local agent runs on demand and stops after 15 minutes with no activity. An idle agent is normal, not a fault.

Leave a registry

tacit disconnect is the opposite of connect. It unwires your harnesses and removes your member settings. It touches only the items that connect installed. It also removes your technique-memory file.