about summary refs log tree commit diff
AgeCommit message (Collapse)Author
8 daysAdd openai-models.Arun Isaac
We need to fetch the list of available models so we can advertise to the client.
8 daysAdd json-get.Arun Isaac
8 daysGeneralize json-post to json-request.Arun Isaac
8 daysExpose run-tea-loop interface from (kaagum tea).Arun Isaac
This encapsulates (kaagum tea) better. tea-loop and initial-state are really internal implementation details that should not be exposed.
8 daysRecognize that OpenRouter and OpenAI have different URI path prefixes.Arun Isaac
8 daysDocument default values of arguments in --help.Arun Isaac
8 daysAttach models to sessions.Arun Isaac
This will let the user change the model mid-session without having to commit to one from the beginning.
9 daysAdvertise agent info from config.scm.Arun Isaac
9 daysAdd project title to config.scm.Arun Isaac
9 daysPackage emacs-agent-shell-kaagum.Arun Isaac
9 daysAdd Emacs agent-shell integration.Arun Isaac
9 daysUpdate pronunciation of kaagum.Arun Isaac
This was a hangover from the old name that wasn't updated when renaming.
9 daysUse italics instead of quotation marks.Arun Isaac
9 daysUse Unicode left and right quotation marks.Arun Isaac
9 daysRename project to kaagum.Arun Isaac
kaakaa reminds too many Europeans of shit. 😅
10 daysRaise &tool-call-parse-failure when required arguments are missing.Arun Isaac
spec->tool-call promises to raise &tool-call-parse-failure, not &tool-call-failure.
10 daysLet tool kinds be constants, rather than functions.Arun Isaac
It makes little sense for a tool kind to be a function of the tool call arguments.
10 daysAdd search tool.Arun Isaac
10 daysGeneralize list tool.Arun Isaac
10 daysError out when reading binary files.Arun Isaac
10 daysError out when reading non-existent files.Arun Isaac
10 daysAllow the read tool to subset lines.Arun Isaac
10 daysMake tool parameters optional by default.Arun Isaac
It's more likely a tool will have one or two required parameters followed by many optional parameters.
10 daysStrip message fields based on role.Arun Isaac
11 daysRefactor sending agent requests into separate function.Arun Isaac
Incidentally, this refactor fixes a bug whereby agent requests would be registered even when tool calls were pre-approved/pre-rejected and no permission requests were sent out.
11 daysMake acp-message-json a lens.Arun Isaac
12 daysAdd /tools command.Arun Isaac
12 daysAdd markdown table builder function.Arun Isaac
12 daysPass tools to slash commands.Arun Isaac
This is becoming a hodge-podge of arguments passed in to slash commands. We need a more principled approach in the future.
12 daysMove state/session lenses right after <state>/<session> types.Arun Isaac
12 daysExpose persistent permissions to the user.Arun Isaac
12 daysImplement persistent tool permissions.Arun Isaac
We store a list of allowed and rejected tools in the session state, and pass it on to spec->tool-call so it can set an appropriate tool call status. Then, request permission from the client only if the tool call hasn't been pre-approved or pre-rejected.
12 daysRefactor, introducing the state-cwd lens.Arun Isaac
12 daysDocument pending-approval tool call status.Arun Isaac
pending-approval was missed out earlier in a documentation bug.
12 daysRefactor permission selection decoding.Arun Isaac
Refactor permission selection decoding to be less tightly coupled to the JSON from the client.
12 daysSend tool call results to the client as a vector of content.Arun Isaac
In a tool_call_update, the content field must be a vector of association lists, not just an association list.
12 daysDo not repeat tool title, kind and rawInput.Arun Isaac
It is enough to send the tool title, kind and rawInput the first time when the tool call is created. There is no need to send these fields repeatedly in subsequent updates. Subsequent updates need only mention fields that have actually changed.
12 daysSend tool_call_update instead of tool_call for tool call updates.Arun Isaac
A sessionUpdate of "tool_call" must only be sent when the tool call is created. Further updates must send a sessionUpdate of "tool_call_update".
12 daysNotify client about new tool call before asking for permission.Arun Isaac
12 daysAbstract out construction of agent_message_chunk notifications.Arun Isaac
12 daysImplement /cwd command.Arun Isaac
12 daysImplement slash commands.Arun Isaac
13 daysCatch and report files that don't exist.Arun Isaac
13 daysMention file path in title of read tool.Arun Isaac
13 daysProvide title, kind and rawInput to client when requesting permission.Arun Isaac
13 daysSanitize arguments in spec->tool-call.Arun Isaac
13 daysCheck for tool existence in spec->tool-call.Arun Isaac
13 daysHandle tool call parse failures early.Arun Isaac
Report tool call parse failures immediately to the LLM without bothering the client with permission requests; only notify the client.
13 daysParse tool call arguments early.Arun Isaac
Parse tool call arguments in spec->tool-call and raise an exception on failure.
13 daysProcess tool calls one at a time.Arun Isaac
We process tool calls one at a time using a new function next-state-tool-call. We refactor next-state-llm-response to use next-state-tool-call.