[ANN] Kaimon.jl — opening the gate between AI agents and Julia

Kaimon.jl v1.2 — Your Tools, Your Rules

Kaimon is an MCP server for Julia that gives AI agents full access to Julia’s runtime — code execution, debugging, profiling, testing, semantic search, and more — all managed from a terminal dashboard.

v1.2 introduces a full extension system, TCP remote sessions, background jobs, and cross-project semantic search. If you’ve been wanting to give your AI agent domain-specific Julia tools, now you can — just drop a kaimon.toml into any existing Julia project.

What’s New Since v1.0

Extension System

Turn any Julia project into an extension by adding a kaimon.toml manifest. Export functions with typed signatures and Kaimon reflects them into MCP tools automatically. Each extension runs in its own subprocess and auto-connects via the Gate — Kaimon handles lifecycle management, auto-restart on crash, and tool namespacing.

# kaimon.toml
[extension]
namespace = "myext"
module = "MyExtension"
tools_function = "create_tools"
description = "My domain tools."

Extensions can also provide TUI panels — lightweight interactive views that render inside the dashboard. Tool handlers push live state updates to their panels via Gate.push_panel(), and the panel reads them on the next frame. No polling, no eval parsing — just real Julia objects over PUB/SUB.

A complete working example at examples/HelloExtension.jl demonstrates tools, panels, shutdown hooks, and the full manifest.

TCP Gate — Remote Julia Sessions

Connect to Julia sessions on remote machines over TCP with SSH tunnel support and token authentication. Run heavy computation on a beefy server while Kaimon manages the session from your laptop.

Gate.serve(mode=:tcp, port=9876)

The TUI auto-discovers TCP sessions with configurable polling and exponential backoff on connection failures.

Background Jobs

Long-running evaluations automatically promote to background jobs after 30 seconds. Running code can report progress with Gate.stash() and Gate.progress(), and agents check status with check_eval. Jobs persist to SQLite so results survive TUI restarts.

# Inside a long computation:
Gate.stash("epoch", epoch)
Gate.stash("loss", loss)
Gate.progress("Epoch $epoch: loss=$loss")

Cross-Project Semantic Search

Qdrant vector search now works across all indexed projects at once. Search by meaning, not just keywords — Kaimon chunks your source files, embeds them with a local Ollama model, and stores vectors in Qdrant. The TUI provides a full collection management interface with indexing, reindexing, and directory configuration.

Session Restart

Restart Julia sessions from the TUI or from the REPL with Gate.restart(). The session ID is preserved across restarts so the agent doesn’t lose its connection — it just keeps working.

Debugger Integration

Set @infiltrate breakpoints in your code and inspect variables interactively when they’re hit. The TUI shows a dedicated Debug tab with locals, a REPL console for evaluating expressions at the breakpoint, and full @exfiltrate support for capturing values without pausing.

The Full Toolbox

Kaimon provides 40+ MCP tools across these categories:

  • Code execution — persistent REPL sessions with streaming output and concurrent eval
  • Navigation — go-to-definition, document symbols, workspace search, type info
  • Testing — run test suites with live progress, failure details, and filtering
  • Profiling@profile with flamegraph-ready output
  • Formatting — JuliaFormatter integration
  • Linting — Aqua.jl quality checks
  • Debugging@infiltrate breakpoints, variable inspection, expression evaluation
  • Semantic search — natural language code search over Qdrant indexes
  • Package management — add/remove packages in connected sessions
  • Extensions — domain-specific tools as separate Julia packages

All coordinated from a TUI dashboard that shows connected sessions, tool call activity, server health, search indexes, and extension status.

Install

]app add https://github.com/kahliburke/Kaimon.jl#v1.2.0

Requires Julia 1.12+. Works with Claude Code, VS Code (Copilot/Continue), Cursor, Gemini CLI, Antigravity, and other MCP clients.

Docs: kahliburke.github.io/Kaimon.jl
GitHub: github.com/kahliburke/Kaimon.jl

12 Likes