Set up Claude Code
Kenaz, a Kameas AI product.
The quickest way is kenaz init. It sets up Claude Code, Claude Desktop's Code tab and Codex in one go.
With kenaz init (recommended)
Install Kenaz, then run:
kenaz init
kenaz init puts kenaz on your PATH, signs you in, finds Claude Code and Claude Desktop, and runs kenaz setup claude for you, showing its diff and asking first.
See Install → Then run kenaz init for every step and option.
Restart Claude Code afterwards, then run /kenaz:status in a session to check the connection.
Set up Claude Code by itself
To set up only Claude Code, run setup with the kenaz you installed:
kenaz setup claude
If kenaz isn't on your PATH yet, use its full path: ~/.kenaz/install/current/bin/kenaz setup claude on macOS and Linux, or & "$env:LOCALAPPDATA\Programs\Kenaz\current\bin\kenaz.exe" setup claude on Windows.
Setup starts the local relay if it isn't running, and then does two things:
-
It adds the plugin to Claude Code.
- If you already added the
kenazmarketplace from GitHub (kameas-ai/kenaz-plugin), setup uses it, and installs the plugin from it if it isn't installed yet. That plugin runskenazfrom yourPATH. - Otherwise, setup registers the plugin from your download. It first checks every file of the installed archive against its
bundle.json, and refuses a modified, incomplete or mixed-version archive. It then writes a per-user copy of the plugin under the Kenaz state directory, with the MCP server and hook commands pointing at thiskenazby its full path, and registers that copy withclaude plugin marketplace addandclaude plugin install kenaz@kenaz. The installed archive itself is never changed.
- If you already added the
-
It points Claude Code's telemetry at the local relay. It adds these keys to the
envblock of your Claude Code settings file (~/.claude/settings.json, or$CLAUDE_CONFIG_DIR/settings.json):"CLAUDE_CODE_ENABLE_TELEMETRY": "1","OTEL_LOGS_EXPORTER": "otlp","OTEL_METRICS_EXPORTER": "otlp","OTEL_EXPORTER_OTLP_PROTOCOL": "http/protobuf","OTEL_EXPORTER_OTLP_ENDPOINT": "http://127.0.0.1:<relay port>","OTEL_LOG_USER_PROMPTS": "0","OTEL_LOG_ASSISTANT_RESPONSES": "0","OTEL_LOG_TOOL_DETAILS": "0","OTEL_LOG_TOOL_CONTENT": "0","OTEL_LOG_RAW_API_BODIES": "0"Nothing is sent to Kameas Fleet until you opt in.
kenaz setup claude and kenaz setup codex show you a diff of the changes to your Claude Code or Codex settings file and ask before writing it (--dry-run only shows the diff; --yes skips the question). Setup saves a backup copy next to the file. kenaz setup --undo claude (or --undo codex) removes the settings setup added and puts back the values it replaced; if you haven't edited the file since, it is restored exactly.
Before the diff, setup also lists the claude plugin commands it will run.
Re-running setup changes nothing; running it from a newer installed version re-registers that one.
If claude isn't on your PATH, setup uses the copy of Claude Code that Claude Desktop ships (macOS).
Restart Claude Code afterwards, then run /kenaz:status in a session to check the connection.
Options
kenaz setup claude [--yes] [--dry-run] [--traces] [--env E] [--bundle DIR | --no-bundle]
kenaz setup --undo claude [--yes] [--dry-run] [--env E]
| Option | What it does |
|---|---|
--dry-run | Show the diff and change nothing. |
--yes | Apply without asking. Without it, setup asks, and makes no changes when it isn't run in a terminal. |
--traces | Claude Code only: also export traces (beta). |
--env E | Kameas Fleet environment: prod (default), stage or dev. |
--bundle DIR | Register this extracted archive's plugin, replacing the kenaz marketplace from GitHub. --undo removes it and prints the command that adds the GitHub marketplace back. |
--no-bundle | Never register a downloaded archive's plugin; the plugin runs kenaz from your PATH. |
If setup stops or warns
- "Claude Code already has a "kenaz" plugin marketplace … that setup did not register": you added a
kenazmarketplace from somewhere other than GitHub'skameas-ai/kenaz-plugin, for example a local folder. Remove it (claude plugin marketplace remove kenaz) and run setup again. The plugin is never registered twice. - "setup already configured …; run
kenaz setup --undofirst": setup is recorded against a different settings file (for example,CLAUDE_CONFIG_DIRchanged). Undo first. - "the Kenaz plugin (kenaz@kenaz) is installed in Claude Code but turned off": see Troubleshooting.
- "the Kenaz plugin from GitHub starts
kenazfrom PATH, and kenaz is not on PATH": runkenaz initto putkenazon yourPATH, then restart Claude Code.
kenaz setup doctor checks what setup configured for each tool.
Claude Desktop (Code tab)
Claude Desktop's Code tab is covered by the same setup: kenaz init or kenaz setup claude sets it up too, and needs no separate step.
Local Code tab sessions run Claude Code and read the same ~/.claude/settings.json, including the env block and the plugin registration.
Sessions over SSH read the settings on the remote machine instead, so set up Kenaz there too.
After kenaz init changes your PATH, quit and reopen Claude Desktop so it sees the change.
From the kenaz marketplace
These are the self-install steps shown on the Agent harnesses page in Kameas Fleet.
They install the plugin from GitHub, and the plugin then runs kenaz from your PATH, so first install the kenaz program from a download, as on the Install page.
In Claude Code:
/plugin marketplace add kameas-ai/kenaz-plugin
/plugin install kenaz@kenaz
/kenaz:login
/kenaz:login asks Claude Code to run kenaz login in a terminal; you can also run it yourself.
Then, in your terminal, run kenaz init (or kenaz setup claude).
Setup finds the marketplace you added and uses it, so the plugin isn't registered twice, and points Claude Code's telemetry at the relay.
Restart Claude Code. Without the setup step, the plugin's commands and tools work, but Claude Code sends nothing to the relay.
For administrators: managed settings
To make the plugin available to everyone in your organization, deploy Claude Code managed settings.
This is the same template as on the Agent harnesses page in Kameas Fleet. To print it for your Kenaz version, run kenaz setup print-managed claude (add --raw for only the file, or --port N to pin another relay port).
Deploy it as managed-settings.json:
- macOS:
/Library/Application Support/ClaudeCode/managed-settings.json - Linux:
/etc/claude-code/managed-settings.json - or in the Claude admin console, under server-managed settings.
Merge it with any managed settings you already deploy.
{
"extraKnownMarketplaces": {
"kenaz": {
"autoUpdate": true,
"source": {
"repo": "kameas-ai/kenaz-plugin",
"source": "github"
}
}
},
"enabledPlugins": {
"kenaz@kenaz": true
},
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "1",
"OTEL_LOGS_EXPORTER": "otlp",
"OTEL_METRICS_EXPORTER": "otlp",
"OTEL_EXPORTER_OTLP_PROTOCOL": "http/protobuf",
"OTEL_EXPORTER_OTLP_ENDPOINT": "http://127.0.0.1:4318",
"OTEL_LOG_USER_PROMPTS": "0",
"OTEL_LOG_ASSISTANT_RESPONSES": "0",
"OTEL_LOG_TOOL_DETAILS": "0",
"OTEL_LOG_TOOL_CONTENT": "0",
"OTEL_LOG_RAW_API_BODIES": "0"
}
}
Distributing this configuration makes Kenaz available. It does not opt anyone in. You are responsible for any notice your developers are owed under the laws that apply to them, and for any works-council or employee-representative consultation those laws require. Subscription Agreement §3.7.
Notes:
- This installs the
kenazplugin for every user, and they can't disable it. - Locking the telemetry destination against user overrides needs Claude Code 2.1.217 or later.
- Claude Desktop sessions take environment variables from the app's launch environment, which wins over settings
env. - If port 4318 is taken on a machine, the relay there uses another port, and
kenaz doctorreports the mismatch. - Each developer still needs the
kenazprogram on theirPATH, from a download or your device-management tool, and signs in once withkenaz login. Managed settings never sign anyone in or turn on telemetry classes for them: nothing is sent until each member signs in and opts in.
Claude and Claude Code are trademarks of Anthropic, PBC. OpenAI and Codex are trademarks of OpenAI. Kenaz and Kameas are trademarks of Kameas AI, Inc. Kenaz for Claude Code and Codex is an independent product of Kameas AI, Inc. and is not affiliated with, endorsed or sponsored by Anthropic or OpenAI.