Setup in detail
jevlin setup is everything after the binary: it registers you with the search platform, writes your config, puts the command on your PATH, and sets up the coding agents it finds. This page says what each question does and how to answer it without a terminal.
Before it asks anything
Install globally, as the quickstart shows, then run:
jevlin setup
Setup registers with the search platform and stores the key it gets back. There is no key to copy or paste.
What it refuses
Setup refuses to run from an npx cache or a project's node_modules, whose paths would disappear. It also refuses a binary someone else could replace, because your agents' hooks and skills and your PATH will name it:
- one under the temporary directory;
- one where the file, or a directory above it, is owned by another user or writable by every user. The sticky bit is no exception.
A directory its group can write is accepted when that group is your own or one whose members can already become root (admin, wheel, sudo, root), which is how Homebrew's prefix is set up. For any other group, such as Debian's staff on /usr/local, setup prints a warning naming the directory and goes on. On Windows only the temporary-directory rule applies.
To fix a refusal, move the binary somewhere only you can write, such as ~/.local/bin, and run it from there. agents install and agents prefer refuse the same, since they write the same path.
The questions
| it asks | what your answer does |
|---|---|
| Use it? [Y/n] | Only when a previous installation is set aside beside ~/.jevlin. Setup first says where it is and what it holds. Yes brings back your wallet, registration, key, payout address and claim link, and skips the questions they answer. See Removing and coming back. |
| Enable mining rewards? [y/N] | A bare Enter is no, and search still works. Yes also enrolls this installation in mining and asks for a payout address. Change your mind later with jevlin mining enable or jevlin mining disable. See Earning with mining. |
| Payout address (leave empty to create a wallet here): | Asked only after yes to mining. Paste a twilight1… address, or leave it empty: it asks for a keyfile passphrase twice, then prints the 24-word recovery phrase once. Have paper ready. |
| Add them to ~/.zshrc? [Y/n] | Or ~/.bashrc, whichever your shell reads. One marked block puts the binary on PATH and sets JEVLIN_CONFIG, plus JEVLIN_WALLET_DIR when a wallet was made here. No just means longer commands. On Windows it asks Set them for your user? and sets PATH and JEVLIN_CONFIG only. |
| Set up the coding agents found on this machine now? [Y/n] | Writes a skill and, where the agent supports them, hooks into its config. You see the plan first, with what made each agent count as present. See Integrations. |
| Switch? [y/N] | Asked only when Codex's config has a setting of your own that its permission profile would change. It shows every line it would write. A bare Enter is no, which sets up the other agents and leaves Codex as it is. See Codex. |
Only an answer you typed counts. Interrupt a question, or close its input, and setup stops there with a non-zero exit, recording and writing nothing. An interrupted Enable mining rewards? is asked again next time.
Answering without a terminal
| flag | effect |
|---|---|
-yes | Answers yes to the profile and agents questions, terminal or not. Answers Use it? only at a terminal. Never answers the mining question or Codex's Switch?. Without -yes or a terminal, setup leaves the profile and agents alone and prints the command for each. An agent that could not be set up is reported, and setup still exits 0. |
-dry-run | Lists every file it would write or move, and changes nothing. |
-no-profile | Leaves the shell profile (Windows: user environment) alone, even with -yes. |
-no-agents | Skips agent detection, even with -yes. -with still sets up what it names. |
-with <id> | Sets up claude, codex, cursor, opencode, pi or hermes, found or not. Repeatable. |
-home <dir> | A separate installation in that directory. It leaves your profile and agents alone, even with -yes, and prints the jevlin agents install -config command for it. |
For a scripted first answer to the mining question, JEVLIN_MINING=1 with no terminal writes [mining] enabled = true into the config, and JEVLIN_PAYOUT_ADDRESS writes the address. See Environment variables.
The claim link
After the mining questions, and before the shell profile, setup prints a link where you claim your agent on platform.jevlin.ai, and waits up to three minutes for you to visit it. You need not do it then: search already works, and using an agent later finishes the claim on its own.
The link is kept in ~/.jevlin/claim.json, beside your stored key, and only for the agent it was issued to. An interrupted registration is finished on the next run, never registered twice. A lost or damaged local record is rebuilt from the platform. A lost claim link is replaced: for a registration that is still unclaimed, a foreground jevlin connect asks the platform for a fresh link and prints it. The old code is dead the moment a new one is minted, which is why only a connect you run does this, never a background resume.
jevlin connect # re-run onboarding by hand, print the claim link
jevlin connect -force # replace the credential; only when the platform no longer recognizes the key
Run -force only on purpose. See Troubleshooting.
Then check
jevlin status # what this installation has and has not completed
jevlin agents status # which agents are set up, and how each was found
jevlin doctor # one line per check
jevlin search -format model "what is proof of authority consensus"
Restart any agent that was already open.
Running setup again
Nothing needs removing first: update the binary, then run jevlin setup. It keeps your wallet, identity, key and recorded searches, asks the mining question only if it has no answer, and lets connect finish or repair its own onboarding. It updates its profile block and agent files in place, reporting one already correct as "nothing to write: already set up".
For an installation elsewhere, set JEVLIN_HOME to it; setup has no other way to find it. setup -home <dir> alone makes a separate installation. For a clean start, move ~/.jevlin aside; see Removing and coming back.
What setup writes
| path | what |
|---|---|
~/.jevlin/jevlin.toml | The config. An existing config is loaded first and refused if it does not load; one with a [miner] table is left byte for byte. See Configuration. |
~/.jevlin/credentials.json | The search key, owner-only. |
~/.jevlin/state/, intake/, sessions/, spool/ | Identity and authorization, recorded searches, lineage files. See Files and locks. |
~/.jevlin/wallet/ | Only when setup made a wallet. |
| your shell profile | One block between # >>> jevlin >>> and # <<< jevlin <<<. |
| each agent's config | A skill and hooks; see the agent's page under Integrations. |