The criticism about the labeling is valid and I oversold. For clarity, this is what the agent sees:
`spawn`: "Create a spawned child node under your node."
`fork`: "Create a forked child node (inherits parent context) under your
node."
The novelty is less about the distinction between the two, it's the tree generation. I would have served you better, if I just left out the parts that aren't critical to the novelty. Thank you for taking the time to comment.
In all honesty, "would have written it myself but I was too eager to get it out the door" doesn't really make sense to me. You're acknowledging that you took a shortcut to get it out the door (blog post as tech debt is a new one!) - does that mean you'd like to write something up yourself eventually?
I hope so, and would like to read it. In particular, since this is presented as research, I'd be very interested to read about your experimental observations that show the risks/costs/edge cases/limits of this pattern. As it stands, there's no indication of self-critique or really any process of systematic evaluation of the solution.
I enjoyed this! Thank you for taking the time to write it. I like it because I identify with your experiences way more than I do with the standard AI braggy boilerplate. Cheers.
And I deserve and accept the gentle snark at the beginning. I will be sure to let you know when I post something, I'll take your notes :)
on Wednesday, I had a dream about agents. Thursday evening, I talked to Claude about trees. That same night, I pushed out the post. There wasn't much rigor involved but yes I will explore more and report back to you!
DAG-scheduling is a solved issue. If you really need to impement an autonomous LLM agent workflow engine, use a DAG. Just have the LLM declare the edges.
My suggestion is to not do any of that but use a traditional workflow engine / project management tools if you need to boost productivity in processes /projects. You're code quality will improve and your programming skills won't deteriorate. At no cost in productivity.
i noticed the same, so in the README, I describe `cord` as a protocol:
```
This repo is one implementation of the Cord protocol. The protocol itself — five primitives, dependency resolution, authority scoping, two-phase lifecycle — is independent of the backing store, transport, and agent runtime. You could implement Cord with Redis pub/sub, Postgres for multi-machine coordination, HTTP/SSE instead of stdio MCP, or non-Claude agents. See RFC.md for the full protocol specification.
```
Thank you for the suggestion, I will explore this in the next iteration. I'm learning how to translate how humans do context management into how agents should do them
If context window is infinite and performance isn't constrained, the subagent stuff isn't necessary. Until then, harnesses are for context management and parallelism.
`spawn`: "Create a spawned child node under your node."
`fork`: "Create a forked child node (inherits parent context) under your node."
The novelty is less about the distinction between the two, it's the tree generation. I would have served you better, if I just left out the parts that aren't critical to the novelty. Thank you for taking the time to comment.
reply