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
This commit is contained in:
Ollie Agent 2026-08-01 19:58:00 +02:00
parent 8b795ad7e6
commit 6fe212a6fc
2 changed files with 10 additions and 2 deletions

View File

@ -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()

View File

@ -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 {