Can Kaimon ping claude? #30
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
kahliburke/Kaimon.jl#30
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
I'm experimenting with having claude help debug some heavy simulations of mine.
These simulations can take 5-10 minutes to set up (initialize all the relevant arrays), then 5 mins to many hours to run.
One thing I've found Claude not particularly good with, is pinging kaimon if the latest
excompleted. If I don't watch closely, it may "forget" to do it altogether if the first N pings didn't return.Questions:
stdoutas messages are printed? During a simulation run, I have regular@infostatements with progress information. I see this in REPL, but it seems like the agent can't see the output tostdoutuntilexcompleted.Some alternative workarounds, where these tools seems to have better support, include:
Any thoughts on this?
@haakon-e In general there has not been a method for that reverse communication. However, I'm working on some new functionality in 2.0.0 which will address this. Also recently there has been work on an Agent Control Protocol ACP as a sibling to MCP which addresses these use cases.
Thank you! I'll hold my breath for v2!
2.0 adds this by inverting the relationship: Kaimon can spawn and own an agent session and drive it programmatically.
agent_open— spawn a headlessclaudein a directory; returns anagent_id. Events stream on the gate bus channelagent:<id>.agent_send/agent_run— send it a user turn (it arrives as if you typed it).agent_runblocks and returns the assistant text;agent_sendis fire-and-forget.agent_status/agent_list/agent_interrupt/agent_close— lifecycle.For your long-sim workflow: open a Kaimon-owned agent in the project, and from your Julia code, when the computation finishes, call
agent_send/agent_runto message the agent ("sim done, here are the results, continue"). That is Kaimon messaging the agent as if it were you — your second question.The one thing this doesn't do is wake an external Claude Code/Desktop session that's driving Kaimon as an MCP client — MCP has no unsolicited server→client wake. (During a running
exthat client does get progress notifications on the open stream, but once it stops waiting there's no way to ping it.) The Kaimon-owned agent above is the supported way to get the "notify me when it's done" loop.More broadly, the agent layer is built on the ACP (Agent Client Protocol) data model, so it's vendor-neutral by design — every backend normalizes to it. A real ACP-client backend (any ACP-compliant agent, not just
claude) is the natural next step; the event model is already in place, it just needs the wire transport.See the AI Agent Sessions docs (
docs/src/agents.md). Shipping in 2.0.@haakon-e It's out! Closing this issue.