Before filing
Closest existing issue
none found
Is this new, or an improvement?
New capability — Berd can't do this at all today
The problem, in your terms
I use Goose as the harness. Builder jobs often run longer than Goose's in-process delegate time limit, so the workable pattern is to have the parent chat spawn a new Berd session (berdctl session) and hand the long job to that.
The spawn works. The new chat then shows up in the session list as an unrelated item. There is no indication it came from the parent, so the relationship exists only in my head. Once a few of these are in flight, I cannot tell which child belongs to which conversation.
What you do today
Whoever would have delegated to Builder creates a new session instead. The work gets done. There is no linking — I just remember which chat is the child, or I don't.
What you'd like to see
A visual parent/child relationship in the session list, directory-tree style: a session spawned from another one nests under (or is otherwise clearly tied to) the session that created it. Enough to see lineage at a glance. I am asking for the visual link, not a new way to spawn the session.
Why this belongs in Berd itself
This is session-list UI and session metadata. A skill or agent can already create the child session; it cannot draw the relationship in the sidebar. An automation cannot either. If the parent pointer needs to be recorded when berdctl session create runs from inside another chat, that still has to live in Berd.
Non-goals
- Not asking to raise Goose
delegate timeouts or change how delegate works.
- Not asking Berd to automatically route
Builder (or any subagent) into a new session.
- Not asking for a full file-explorer of every session, grouping, or project tree — just a visual link for spawned children.
- Not asking to change
berdctl session create beyond whatever parent pointer the UI would need.
Alternatives you considered
- Keep using Goose
delegate and accept the hard time cap. Rejected: Builder jobs regularly exceed it.
- Name child sessions by hand so I can find them later. Rejected: still no structural link, and names drift.
berdctl session fork. Different thing — I want a spawned worker chat, not a forked copy of the parent transcript.
Mockups, prior art, or other context
Something as simple as indenting the child under the parent in the session list (like a collapsed directory) would be enough. I do not have a mockup.
Before filing
Closest existing issue
none found
Is this new, or an improvement?
New capability — Berd can't do this at all today
The problem, in your terms
I use Goose as the harness.
Builderjobs often run longer than Goose's in-processdelegatetime limit, so the workable pattern is to have the parent chat spawn a new Berd session (berdctl session) and hand the long job to that.The spawn works. The new chat then shows up in the session list as an unrelated item. There is no indication it came from the parent, so the relationship exists only in my head. Once a few of these are in flight, I cannot tell which child belongs to which conversation.
What you do today
Whoever would have
delegated toBuildercreates a new session instead. The work gets done. There is no linking — I just remember which chat is the child, or I don't.What you'd like to see
A visual parent/child relationship in the session list, directory-tree style: a session spawned from another one nests under (or is otherwise clearly tied to) the session that created it. Enough to see lineage at a glance. I am asking for the visual link, not a new way to spawn the session.
Why this belongs in Berd itself
This is session-list UI and session metadata. A skill or agent can already create the child session; it cannot draw the relationship in the sidebar. An automation cannot either. If the parent pointer needs to be recorded when
berdctl session createruns from inside another chat, that still has to live in Berd.Non-goals
delegatetimeouts or change howdelegateworks.Builder(or any subagent) into a new session.berdctl session createbeyond whatever parent pointer the UI would need.Alternatives you considered
delegateand accept the hard time cap. Rejected:Builderjobs regularly exceed it.berdctl session fork. Different thing — I want a spawned worker chat, not a forked copy of the parent transcript.Mockups, prior art, or other context
Something as simple as indenting the child under the parent in the session list (like a collapsed directory) would be enough. I do not have a mockup.