Quick StartIntegrations › Claude Desktop

Annex — Claude Desktop (Code tab)

Step-by-step setup for the Claude Desktop Code tab with KaKeKiKoKu via MCP

This guide covers integrating KaKeKiKoKu with the Claude Desktop Code tab.

The Code tab is Claude Code Desktop: the same underlying engine as Claude Code CLI, wrapped in a graphical interface with sessions, panes, model picker, permission mode, file views, and an integrated terminal.

That shared engine matters. The Code tab uses Claude Code configuration and project memory: MCP servers in ~/.claude.json or .mcp.json, plus project instructions such as CLAUDE.md and .claude/rules/*.md. Current Desktop builds also load local servers from claude_desktop_config.json into Code sessions.

This guide covers Windows and Linux. Claude Desktop for Linux is now available in beta for Ubuntu and Debian on x64 and arm64. The KaKeKiKoKu integration on Linux Desktop is documented from the shared Claude Code configuration model but remains not tested until a versioned validation is recorded. KaKeKiKoKu does not yet ship a macOS build.

The main KaKeKiKoKu difference from Claude Code CLI is channels. The Code tab does not expose the CLI flag KaKeKiKoKu uses for channels, so KaKeKiKoKu works here in Precise mode: Claude can use the KaKeKiKoKu MCP tools, while KaKeKiKoKu UI actions that would push messages to Claude copy text to the clipboard for you to paste.

Scope. Claude Desktop now has Chat, Cowork, and Code tabs. This guide covers Code, because its project folder, startup instructions, and local development workflow match KaKeKiKoKu. A server added through claude_desktop_config.json can also appear in Desktop Chat, but Chat and Cowork workflows remain outside this setup.

Requirements

Before you start the KaKeKiKoKu integration flow, you need:

  • Git for Windows is required for local Code sessions. Install from git-scm.com/install, then restart Claude Desktop.
  • The claude command is recommended because this guide uses it to manage the shared MCP configuration. If it is missing, follow the Claude Code installation section.
  • Claude Desktop Linux is currently beta and officially supports Ubuntu and Debian on x64 and arm64.
  • Install Claude Desktop through the official APT or .deb path linked from the download page.
  • Install the claude command with Anthropic's Linux installer if it is not already present; the Code tab and CLI share MCP configuration.
↑ Back to top

1. Register KaKeKiKoKu for the Claude Desktop Code tab

The recommended path is the shared Claude Code MCP configuration. If you already registered KaKeKiKoKu for Claude Code CLI under the same OS user, this step is probably done and Desktop should inherit it.

  1. Open a terminal and check whether KaKeKiKoKu is already registered:
    claude mcp list
  2. If the list already contains wuniq, continue to step 2.
  3. If it does not, register KaKeKiKoKu with the command for your operating system.
claude mcp add --transport stdio --scope user wuniq -- wuniq-mcp.exe

Important. Keep the command as the alias wuniq-mcp.exe. Never substitute an absolute path under C:\Program Files\WindowsApps\...; Windows ACLs can cause Permission denied errors.

claude mcp add --transport stdio --scope user wuniq -- /snap/bin/wuniq.wuniq-mcp

Alternative Desktop configuration. Current Claude Desktop builds also load servers from claude_desktop_config.json into Code sessions. That path is useful when you want the same local server in both Desktop Chat and Code, but the shared Claude Code registration above remains the clearest path for Code plus CLI.

↑ Back to top

2. Startup instructions (the second piece of the integration)

This is the second of the two pieces every integration needs. Because the Code tab uses Claude Code project memory, use the same startup-rule file as Claude Code CLI.

  1. In your working directory (the base folder you configured in KaKeKiKoKu), create this structure if it doesn't exist:
    .claude/rules/

    The path is relative to the working directory, not to your home folder.

  2. Inside, create a file called wuniq.md with this content:
    # KaKeKiKoKu Studio (Knowledge Engine)
    
    At the start of every session, run `open list` using the KaKeKiKoKu MCP tool. If it returns projects, `open` each one. If the list is empty, proceed normally — the user may open projects later from the KaKeKiKoKu UI. Never assume the working directory is a KaKeKiKoKu project; the working directory may be a container folder holding multiple projects. Only open paths that `open list` explicitly returns.
    
    Before working on any code file, `read` its KaKeKiKoKu sidecar for context. After changing code, run `sync`.
  3. Save. Claude Code Desktop loads project memory at session start, including rules files under .claude/rules/*.md.

Why don't we put this inside CLAUDE.md?

Your CLAUDE.md (if you have one) is yours. KaKeKiKoKu prefers not to touch it so it doesn't overwrite content you wrote. .claude/rules/wuniq.md is an independent file KaKeKiKoKu controls and you can delete freely without losing anything of your own.

What if I skip this step?

KaKeKiKoKu still works, but Claude will not open your projects automatically. You'll have to ask it to run open list the first time in every session.

↑ Back to top

3. Restart Claude Desktop

Claude Desktop loads local MCP and project configuration when the app or session starts. A full restart removes ambiguity after changing the server list.

  1. Close all Claude Desktop windows.
  2. Quit the background app completely: on Windows use the Claude icon in the system tray; on Linux use the desktop environment's quit action or end the Claude process normally.
  3. Launch Claude Desktop again.

After changing MCP or memory settings, start a new Code session. Existing sessions in the sidebar can keep the old tool set. Use a fresh Local session for the first verification after setup.

↑ Back to top

4. Open the Code tab and verify

  1. In Claude Desktop, open the Code tab.
  2. Start a new Local session and pick your KaKeKiKoKu working directory or a project folder inside it.

    Claude Desktop remembers sessions in the sidebar. Local sessions run on your machine and can use KaKeKiKoKu's local MCP server.

  3. If this is the first time Claude Code Desktop sees this folder, approve the folder/trust prompt.
  4. Ask Claude:

    Run open list with the KaKeKiKoKu tool.

    If everything is wired up correctly, Claude will list the available KaKeKiKoKu projects. If you created step 2, Claude may do this automatically at the beginning of the session.

  5. As an extra check, look at the KaKeKiKoKu UI — the AI connection indicator should turn green when the conversation is active.
↑ Back to top

5. See KaKeKiKoKu inside Claude Desktop

KaKeKiKoKu runs as a local web app, and the Code tab has a built-in browser pane. Put one inside the other and KaKeKiKoKu sits right next to the conversation: one window, one screen, no switching back and forth.

That is more than convenience. The KaKeKiKoKu UI blinks while your AI works — green when it reads knowledge, red when it writes — and the connection indicator shows when Claude is attached. In a separate window you never catch it, because you are looking at the chat. Side by side, you watch your knowledge layer being used as it happens.

This step is optional. KaKeKiKoKu works exactly the same without it.

Before you start

KaKeKiKoKu must already be running. The pane attaches to the KaKeKiKoKu that is up; it never starts one. With KaKeKiKoKu closed you just get an empty pane.

Let Claude set it up

Open a Code session in your working directory and paste this:

Set up KaKeKiKoKu in your browser pane, in my working directory.

1. Find the port. Try http://localhost:5050 first, which is the KaKeKiKoKu
   default. If nothing answers there, read the "KnowledgeEnginePort"
   value from %LOCALAPPDATA%\Wuniq\app-settings.json on Windows. If you
   still cannot determine it, ask me: the port is visible in the address
   bar of the KaKeKiKoKu window.

2. Confirm something is actually listening on that port. If nothing is,
   stop here and tell me to start KaKeKiKoKu first. Do not continue.

3. Create or update .claude/launch.json in my working directory. Add
   this entry, keeping any entries already there:

   {
     "version": "0.0.1",
     "configurations": [
       { "name": "wuniq", "url": "http://localhost:PORT", "port": PORT }
     ]
   }

   Replace PORT with the port you found. Do not add "runtimeExecutable"
   or "runtimeArgs". KaKeKiKoKu is already running, so this entry must only
   attach to it. A start command would launch a second Knowledge Engine,
   which exits without binding a port and leaves a blank pane.

4. Create .claude/rules/wuniq.md if it does not exist, and add these
   lines to it, keeping any content already there:

   At the start of every session, call preview_start with name "wuniq"
   to open the KaKeKiKoKu UI in the browser pane. If the call fails or the
   pane shows a connection error, KaKeKiKoKu is not running: tell me in one
   line and carry on. Do not try to start KaKeKiKoKu yourself.

5. Call preview_start with name "wuniq" now and confirm the UI loaded.

6. Tell me exactly which files you created or changed.

Claude writes two files: .claude/launch.json, which tells the pane where KaKeKiKoKu is, and one line in .claude/rules/wuniq.md — the same file from step 2 — so the pane opens by itself in later sessions. Delete either one and you are back where you started.

Why the port is not hard-coded. 5050 is the default, but you can change it in KaKeKiKoKu, and the prompt reads your actual preference before writing anything. If you ever move KaKeKiKoKu to another port, run the prompt again.

This needs a browser pane. The Code tab in Claude Desktop has one. A plain terminal session does not, so there is nothing to draw KaKeKiKoKu into there — the rest of the integration works the same, you just keep KaKeKiKoKu in its own window.

↑ Back to top

6. Plan, model, and permission mode

Claude Code Desktop uses the same subscription, current model catalog, and core configuration as Claude Code CLI, but you choose interactive options from the interface instead of passing launch flags.

Model

Use the model dropdown next to the send button. Current Claude Code releases may offer aliases such as Default, Best/Fable, Opus, Sonnet, and 1M variants depending on plan and policy. Prefer the live picker over hard-coding a version number. KaKeKiKoKu works through your Claude subscription; it does not use the Anthropic API directly.

Plan mode and permissions

Use the permission/mode selector next to the send button for Plan, Auto, or approval-style workflows. Desktop also has a setting for Bypass permissions mode under Claude Code settings, but KaKeKiKoKu does not require it.

CLI flags that do not carry over

Desktop has equivalents for common interactive flags like model selection and resume, but not for every CLI flag. In particular, KaKeKiKoKu's channels launch flag is a Claude Code CLI launch flag, not a Desktop Code-tab control. That is why this guide keeps Desktop in Precise mode.

↑ Back to top

7. Working in Precise mode

In Precise mode, KaKeKiKoKu cannot push messages to the AI. This changes the daily flow:

Recommended KaKeKiKoKu configuration. Go to KaKeKiKoKu > Settings > Application > AI Sync and choose Precise mode. That replaces automatic push with clipboard copy for all affected functions.

↑ Back to top

8. Troubleshooting

claude is not recognized when you run the commands in step 1

The Claude Code installer does not always add .local\bin to the user PATH, so the terminal cannot find claude. This blocks the very first command of this guide, before KaKeKiKoKu is involved at all.

  1. Check it:
    claude --version
  2. If it doesn’t respond on Windows, paste this in PowerShell, then close it and reopen:
    [Environment]::SetEnvironmentVariable("Path", [Environment]::GetEnvironmentVariable("Path","User") + ";$env:USERPROFILE\.local\bin", "User")
  3. On Linux, the installer only updates the PATH of new shells. Close the terminal where you ran it and open a new one.
  4. As a stopgap you can call the executable by its full path, typically C:\Users\<your-user>\.local\bin\claude.exe.

Reopening the terminal is mandatory either way: the new PATH only applies to processes launched after the change. The Claude Code guide covers the full installation, including the npm alternative.

KaKeKiKoKu doesn't appear as an available tool in the chat

  1. Confirm you are in the Code tab, not a regular Claude chat.
  2. Confirm the session environment is Local. KaKeKiKoKu's installed Windows MCP server runs on your machine.
  3. Run claude mcp list in a terminal and confirm it contains wuniq.
  4. If it is missing, repeat step 1.
  5. Restart Claude Desktop completely, including its tray/background process. The Code-tab MCP registration is loaded at startup.
  6. Open a new Local Code session. Do not verify with an old resumed session after changing MCP config.

Typing /mcp may show Claude's official connector or marketplace UI rather than every local MCP server available to the Code session. The most direct verification is to ask Claude to run open list with the wuniq tool.

claude_desktop_config.json is empty, but KaKeKiKoKu still starts

That is valid. The Code tab reads Claude Code servers from ~/.claude.json and project .mcp.json, so the shared registration can work with an empty Desktop-specific file. Current Desktop builds can additionally load claude_desktop_config.json into Code sessions; it is an alternative source, not a requirement.

claude mcp list shows KaKeKiKoKu, but the Code tab still does not expose it

First complete the restart and new-session steps above. If the issue persists in a fresh Local session, add the same server entry to Claude Desktop's own config file, then quit Desktop fully and open a new Local Code session again.

Open Claude Desktop's local MCP configuration from its settings UI so the app chooses the correct file for your operating system. On Windows the usual path is:

%APPDATA%\Claude\claude_desktop_config.json

Merge this server entry into the file without deleting any existing settings:

{
  "mcpServers": {
    "wuniq": {
      "type": "stdio",
      "command": "wuniq-mcp.exe",
      "args": [],
      "env": {}
    }
  }
}
{
  "mcpServers": {
    "wuniq": {
      "type": "stdio",
      "command": "/snap/bin/wuniq.wuniq-mcp",
      "args": [],
      "env": {}
    }
  }
}

The browser pane shows a connection error instead of KaKeKiKoKu

KaKeKiKoKu is not running, or it is still starting up. The pane attaches to a live Knowledge Engine; it never starts one. Launch KaKeKiKoKu from the Start menu (Windows) or the applications menu (Linux), give it a few seconds, and ask Claude to open the pane again. A freshly installed KaKeKiKoKu can take slightly longer on its first start.

Claude will not start KaKeKiKoKu for you, and that is deliberate. KaKeKiKoKu does not launch your AI client either — each side starts its own process. On Windows the installed executable also lives under C:\Program Files\WindowsApps\, where restrictive ACLs turn external launch attempts into confusing permission errors. And starting KaKeKiKoKu yourself keeps it alive independently of any AI client, which is the same reason the Quick Start recommends starting KaKeKiKoKu before your AI.

Claude doesn't follow the KaKeKiKoKu startup instruction

The Code tab says Git is required

On Windows, install Git for Windows, then quit and reopen Claude Desktop. On Linux, install Git with your distribution's package manager. The Code tab uses Git for project sessions and worktree isolation.

The Code-tab session cannot find installed tools

Claude Desktop inherits Windows user and system environment variables, but it does not read your PowerShell profile. If a tool works in PowerShell but not in the Code tab, restart Claude Desktop after changing PATH, or use the Code tab's local environment editor for session-specific variables.

"Permission denied" or "EPERM" error on Windows

If Claude Code config points to an absolute path inside C:\Program Files\WindowsApps\..., Windows refuses execution due to restrictive ACLs. Remove the old registration and repeat step 1 with the alias:

claude mcp remove wuniq
claude mcp add --transport stdio --scope user wuniq -- wuniq-mcp.exe

KaKeKiKoKu cannot see projects outside /home/ on Linux

The KaKeKiKoKu Snap needs explicit access to projects under /mnt/, /media/, USB drives, or VM shared folders:

sudo snap connect wuniq:removable-media

Then reload KaKeKiKoKu and reopen the project.

Claude Desktop sees KaKeKiKoKu, but KaKeKiKoKu doesn't show as connected in its UI

Still stuck?

Email support@kakekikoku.com with your operating system, Claude Desktop version, the output of claude --version, the output of claude mcp list, and whether your session is Local, Remote, or SSH. KaKeKiKoKu can also generate a diagnostic report (Support function in the app) that captures the infrastructure state — attach it to the email.

↑ Back to top