From 6fe212a6fcbec4d9ad14c58432b92b90facfe203 Mon Sep 17 00:00:00 2001 From: Ollie Agent Date: Sat, 1 Aug 2026 19:58:00 +0200 Subject: [PATCH] fix: add name= field to agent/new template, support in CreateAgent - Added name= as the first field in agent/new read template - CreateAgent now accepts name= as alias for agent_alias= - gofmt formatting fixes --- fs/session/create.go | 10 +++++++++- fs/session/root.go | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/fs/session/create.go b/fs/session/create.go index 7a3c9c2..322e8db 100644 --- a/fs/session/create.go +++ b/fs/session/create.go @@ -74,6 +74,7 @@ func CreateAgent(rs *rootState, sessName string, args []string) error { cwd := "" remoteTarget := "" systemPromptOverride := "" + name := "" for _, arg := range args { k, v, ok := strings.Cut(arg, "=") if !ok { @@ -83,6 +84,8 @@ func CreateAgent(rs *rootState, sessName string, args []string) error { continue } switch k { + case "name": + name = v case "backend": backendOverride = v case "model": @@ -98,10 +101,15 @@ func CreateAgent(rs *rootState, sessName string, args []string) error { case "system_prompt": systemPromptOverride = v default: - return fmt.Errorf("unknown option %q (valid: backend, model, agent, agent_alias, cwd, remote, system_prompt)", k) + return fmt.Errorf("unknown option %q (valid: name, backend, model, agent, agent_alias, cwd, remote, system_prompt)", k) } } + // If name is provided but no agent_alias, use name as alias. + if name != "" && agentAlias == "" { + agentAlias = name + } + rs.mu.RLock() sess, ok := rs.sessions[sessName] rs.mu.RUnlock() diff --git a/fs/session/root.go b/fs/session/root.go index d6dec59..c3b5587 100644 --- a/fs/session/root.go +++ b/fs/session/root.go @@ -480,7 +480,7 @@ func rootOpen(rs *rootState, name string) (File, error) { if agentResult != "" { return []byte(agentResult + "\n"), nil } - return []byte("cwd=\nbackend=\nmodel=\nagent=\nagent_alias=\nremote=\nsystem_prompt=\n"), nil + return []byte("name=\ncwd=\nbackend=\nmodel=\nagent=\nagent_alias=\nremote=\nsystem_prompt=\n"), nil }, WriteFn: func(data []byte) error { if err := CreateAgent(rs, sessID, strings.Fields(strings.TrimSpace(string(data)))); err != nil {