diff --git a/cmd/olliesrv/server.go b/cmd/olliesrv/server.go index 1a5e028..321e71f 100644 --- a/cmd/olliesrv/server.go +++ b/cmd/olliesrv/server.go @@ -573,6 +573,13 @@ func (s *Server) pathType(path string) string { if len(parts) == 2 { return "dir" } + // agent/new is always accessible — it creates the agent + if len(parts) >= 3 && parts[2] == "new" { + if len(parts) == 3 { + return "file" + } + return "" + } // No agent in empty session. if sess.Core == nil { return "" diff --git a/fs/session/root.go b/fs/session/root.go index e52d390..d6dec59 100644 --- a/fs/session/root.go +++ b/fs/session/root.go @@ -486,7 +486,7 @@ func rootOpen(rs *rootState, name string) (File, error) { if err := CreateAgent(rs, sessID, strings.Fields(strings.TrimSpace(string(data)))); err != nil { return err } - agentResult = "ok" + agentResult = sess.Core.Agent().Name() return nil }, BlockingReadFn: notBlocking,