Skip to main content

Documentation

Go from install to a useful answer.

The shortest path is Install, Setup, Verify, Query, then connect the agent or editor you already use. Kin is a public beta, and open source under Apache-2.0.

Quickstart

From nothing installed to one answer you can check.

Steps two through five were run end to end on the exact two-file repository step two creates, using the npm-published release in an isolated scratch environment. The PowerShell version of step two writes the same two files. Follow the steps in order; each one says what you should see before you move to the next one. Steps three to five are the same in every shell.

  1. 01

    Install Kin

    One command on macOS, Linux, WSL2 and Windows x64. It installs Kin and registers it with the AI coding tools on the machine. It needs Node.js 20 or newer; the install page carries installers for a machine without it. There is no Windows ARM64 build, so use WSL2 there. Kin lands in ~/.kin/bin and the install adds that directory to your shell profile, so the bare name works in a new shell: reload yours in place on macOS, Linux and WSL2, or open a new PowerShell window on Windows.

    macOS, Linux and WSL2

    npx -y @kinlab/kin setup
    exec "$SHELL" -l
    kin --version

    Windows PowerShell

    npx -y @kinlab/kin setup

    When setup finishes, open a new PowerShell window and run kin --version there.

    Prints the version you just installed, for example kin 0.8.1.

  2. 02

    Prepare a small disposable repository

    Use a repository you do not mind experimenting on. Either version refuses to touch an existing kin-quickstart directory, then creates the same two small files so a mistake costs nothing and you can check every answer below against source you can see right here.

    Create the disposable example: commands and source

    macOS, Linux and WSL2

    if [ -e kin-quickstart ]; then
      printf '%s\n' 'Refusing to overwrite existing kin-quickstart directory.' >&2
      false
    else
      mkdir kin-quickstart &&
      cd kin-quickstart &&
      mkdir src &&
      git init -q -b main &&
      cat > src/greeting.js <<'EOF' &&
    function formatGreeting(name) {
      return `Hello, ${name}!`;
    }
    
    module.exports = { formatGreeting };
    EOF
      cat > src/cli.js <<'EOF' &&
    const { formatGreeting } = require('./greeting');
    
    function main(name) {
      console.log(formatGreeting(name));
    }
    
    main(process.argv[2] || 'world');
    EOF
      git add -A &&
      git commit -q -s -m "Add greeting helper and CLI entry point" &&
      kin init .
    fi

    Windows PowerShell

    if (Test-Path kin-quickstart) {
      Write-Error 'Refusing to overwrite existing kin-quickstart directory.'
    } else {
      New-Item -ItemType Directory -Path kin-quickstart | Out-Null
      Set-Location kin-quickstart
      New-Item -ItemType Directory -Path src | Out-Null
      git init -q -b main
      Set-Content -Path src/greeting.js -Value @'
    function formatGreeting(name) {
      return `Hello, ${name}!`;
    }
    
    module.exports = { formatGreeting };
    '@
      Set-Content -Path src/cli.js -Value @'
    const { formatGreeting } = require('./greeting');
    
    function main(name) {
      console.log(formatGreeting(name));
    }
    
    main(process.argv[2] || 'world');
    '@
      git add -A
      git commit -q -s -m "Add greeting helper and CLI entry point"
      kin init .
    }

    kin init reports what it found (4 entities and 5 relations across the 2 files here) and starts a daemon for this repository.

  3. 03

    Check graph readiness

    Do this before you trust an answer, not after.

    kin graph status

    Reports entity and relation counts, embedding coverage, and parse coverage. On a repository this small you may see a note such as "all entities are Source, role classification may not be working". That means a heuristic had too little code to calibrate against, not that anything failed. What matters here: embeddings report fully indexed, and both files show up under parse coverage.

  4. 04

    Get one answer, and check it against the source

    Ask what calls the helper function, then open the two files above and read the same thing yourself.

    kin refs formatGreeting --kind calls
    Compare with the saved output
    References to 'formatGreeting' -> formatGreeting (Function) @ src/greeting.js
    referenced by 1 entities:
      main @ src/cli.js:3 [Calls] (type_resolved) sites 4

    main in src/cli.js calls formatGreeting in src/greeting.js. Open both files above: that is exactly what they do, so you have checked the answer rather than taken it on faith.

  5. 05

    Connect an agent (MCP)

    Kin exposes the same graph to the AI client you already use.

    kin setup --intent agent

    Configures the MCP entry for every AI client it detects (Claude Code, Cursor, Codex CLI, Gemini CLI, and others) and prints a first prompt to try. Restart the client so it reads the new configuration.

Next

Ask the next question about your own code.

That is the whole path: install, admit a repository, check readiness, get a checked answer, connect an agent. The sidebar picks up from here, grouped by what you are trying to do rather than by how the site is filed. Work with code covers callers and change impact; Connect tools covers the MCP server and the editor extension; Reference and Troubleshoot carry the language, platform and failure detail.