From 8b3b6bd2817431f0f89cfa97be700ebf22a5cd1e Mon Sep 17 00:00:00 2001 From: Levi Neely Date: Tue, 14 Apr 2026 19:29:50 +0200 Subject: [PATCH] agent: add Core.Close() to manage session tmpdir lifecycle Co-Authored-By: Claude Sonnet 4.6 --- pkg/agent/core.go | 7 +++++++ pkg/agent/types.go | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/pkg/agent/core.go b/pkg/agent/core.go index 546a6fa..ddbbb72 100644 --- a/pkg/agent/core.go +++ b/pkg/agent/core.go @@ -300,6 +300,13 @@ func NewAgentCore(cfg AgentCoreConfig) Core { } } +// Close releases resources for this session, including its tmpdir. +func (s *agentCore) Close() { + if s.sessionID != "" { + os.RemoveAll("/tmp/ollie/" + s.sessionID) //nolint:errcheck + } +} + func (s *agentCore) prompt() string { return fmt.Sprintf("[%s :: %s] ", s.loopcfg.Backend.Name(), s.agentName) } diff --git a/pkg/agent/types.go b/pkg/agent/types.go index 3a62daf..6d8dde0 100644 --- a/pkg/agent/types.go +++ b/pkg/agent/types.go @@ -93,6 +93,10 @@ type Core interface { // SystemPrompt returns the fully rendered system prompt for this session. SystemPrompt() string + + // Close releases resources associated with the session, including its + // temporary directory under /tmp/ollie/. + Close() } // PromptFIFO is a simple thread-safe FIFO for queued prompts.