7 ms·
Cook: A simple CLI for orchestrating Claude Code
- rc_kas 7mo agoCan someone explain what this is to my n00b brain. I don't get what claude-cli is missing that this adds in?
- transitorykris 7mo agoMaybe not adds in, but wraps around. You could accomplish much of this with fairly simply bash scripts.
- esperent 7mo agoYou could accomplish all of it with claude -p (headless mode).
- brcmthrowaway 7mo agoIndeed. Where are people finding time for these sort of projects.
- injidup 7mo agoThey bootstrap a workflow with a prompt then build an orchestrator off that then prompt it to be converted to an opencode plugin and then prompt a website to be generated advertising it and then prompt a tool that reviews hacker news feedback and automatically incorporates feedback into next generation of the tool. At the end of the week they go to their manager and complain they are out of tokens for the actual job they are being paid for.
- staticvar 7mo agoHaha, not far off. Only difference is I'm not spending my tokens at work. I use this on a side project video game that I'm developing.
- transitorykris 7mo agoAdmittedly I might be missing a flag or two with claude, but how are multiple loops and comparisons of solutions done with just headless mode?
- esperent 7mo agoVia skills.
- loveparade 7mo agoIt's just a prompt.
- hombre_fatal 7mo agoYou have building blocks like "--resume <sessionId>" and "--fork-session". For example, one thing you can do is curate the context of an "immutable" conversation and then reuse it as a base context for other prompts.
- beshrkayali 7mo agoIMO the raw Claude CLI is great for one-off interactive sessions, but as soon as you want repeatable multi-step workflows you’re either copy-pasting prompts forever or hacking your own solution manually. That’s exactly the gap these tools fill. My take on a solution for this is https://ossature.dev https://ossature.dev — .smd spec markdown files + ossature audit / build that gives you DAG orchestration, SHA-traced increments, and tiny focused contexts.
- eloisius 7mo agoIsn’t a repeatable, multi-step workflow exactly what a script or Makefile does?
- beshrkayali 7mo agoYeah bash scripts start clean but the sprawl kicks in quick as the workflow and project becomes more complex. Prompts get copied, deps turn manual, and maintenance of your workflow itself becomes the chore. Ossature swaps that for structured SMDs and optional AMDs. Multiple specs build a clean DAG that drops into an editable plan.toml so everything stays traceable without the mess. Feel free to check the example projects on https://github.com/ossature/ossature-examples https://github.com/ossature/ossature-examples
- wiseowise 7mo ago> Yeah bash scripts start clean but the sprawl kicks in quick as the workflow and project becomes more complex. Then just use Python.
- beshrkayali 7mo agoThat’s what Ossature is :)
- hrmtst93837 7mo ago[flagged]
- 7mo ago
- sghiassy 7mo agoAs a prerequisite you’d want to understand the purpose of Ralph Wiggum Loops But in general this is meta to the CLI agent. So if you were to use the CLI to perform a review of some code. This tool would allow you to loop the output of the code review 5 times onto itself.
- exolab 7mo ago> So if you were to use the CLI to perform a review of some code. This tool would allow you to loop the output of the code review 5 times onto itself. Claude already does that if you ask nicely.
- staticvar 7mo agoTo a certain extent, yes it does! For my cases, I'm often running 3 parallel implementations that get 10 to 20 iterations deep, and then Claude has to sort out the pros and cons of the options and also take the best bits of each. Easy to hit the context window with Claude just running those on its own, so giving `/cook` to Claude, it can offload a bit more via cook and stay higher level.
- niobe 7mo agoThis is for co-ordinating instances of Claude or Codex, not something you do inside each instance.
- rjcorwin 7mo agoClaude and Codex can also use the cook command to coordinate runs of other agents. This is similar to how you can describe a workflow to them of how to use subagents, and they'll try, but this gives them a reliable deterministic way to run those agents. An added benefit of having Claude/Codex/etc. use cook directly is that they are really good at analyzing the traces of what is happening inside of cook and after the fact.
- fortylove 7mo ago[dead]
- rafaamaral 7mo ago[flagged]
- Yiin 7mo agojust use 200usd plan, I forgot what limits are.
- croes 7mo agoYou'll remember it soon
- weird-eye-issue 7mo agoDo you often hit the limits recently on the $200 plan? I don't even come close
- dionian 7mo agoi used to, its much better now. opus 4.6 has been great on tokens
- weird-eye-issue 7mo agoYes, quite a while back, they used to charge a lot more for the Opus tokens
- croes 7mo agoI didn’t often hit the limits with the plus plan but it changed. They same will happen with $200 plan. But the $500 plan will fix that
- anonzzzies 7mo agoHave not hit limits for 2 months now and I use it a lot. I have 200 max as well.
- tmatsuzaki 7mo ago
- shablulman 7mo ago[dead]
- perfmode 7mo ago[dead]
- sbinnee 7mo agoThere is a skill installation option. The skill markdown has 180 lines [1]. My take? I like it. It's concise enough for me to try it out. And I love the webpage. [1] https://github.com/rjcorwin/cook/blob/main/no-code/SKILL.md https://github.com/rjcorwin/cook/blob/main/no-code/SKILL.md
- oefrha 7mo agoGiven that subagents have different thinking/effort behavior from the main agent and very limited control on that front (I’m not completely sure about this but see https://github.com/anthropics/claude-code/issues/14321 https://github.com/anthropics/claude-code/issues/14321 and I’ve also noticed very different behavior when the same prompt is used in the main agent or passed to a subagent), I’m not sure this skill will be the same.
- eknkc 7mo agoAt least in codex you can configure agents as you wish: https://developers.openai.com/codex/subagents https://developers.openai.com/codex/subagents Might work out fine on codex.
- staticvar 7mo agoNice! You found the no-code option that just has the outer agent perform the duties of the workflows that cook describes. It's a bit experimental (the whole thing is really), but it would be nice to get some folks impressions of whether this works well as a pure skill or if y'all find the deterministic nature of the cook script improves reliability.
- eddie-wang 7mo ago[flagged]
- pissedoffadmin 7mo ago[dead]
- xiaolu627 7mo ago[flagged]
- panditaditya21 7mo ago[dead]
- vadepaysa 7mo agoI did a Show HN[0] a few days back with my CLI agent called cook[1] and for a moment I was ecstatic my tool made it to the front page. haha. [0]: https://news.ycombinator.com/item?id=47262711 https://news.ycombinator.com/item?id=47262711 [1]: https://getcook.dev https://getcook.dev
- catlifeonmars 7mo ago[dead]
- staticvar 7mo agoOh haha, small world! Maybe I should add cook (agent) support for cook (orchestration) and then we'll have cook manage subagents via cook!
- deleted 7mo ago[deleted]
- khazhoux 7mo agoHow does this handle when Claude needs user input? To choose an option, grant tool permission, clarify questions…
- facorreia 7mo agoIt seems to be in the spirit of automated vibecoding. I assume it skips all permission checks.
- staticvar 7mo agoBy default it's locked down to the permissions you have granted in your Claude config. If you use the docker sandbox mode, then you can really let it fly as it can issue more commands in a safer environment.
- neilbb 7mo agoIf you impl this as a backend and connect to Telegram bots, agents can just do `$ ask "Should I do this?"` for agent→human and `$ alert "this thing blocked me"` for coder→planner. That's what I'm actually doing — I have 1 manager + 3 designers + 1 researcher + 2 debugger + 1 communicator + any number of temporal coders/reviewers in my setup, all connected to taskwarrior for task-driven-dev
- mizioand 7mo agoThat is pretty cool building the whole dev team of agents and is it still with a star topology of a Manager agent interacting with all the other subagents? I usually spawn 1 Mother Agent in a star topology with 3 subagents Planner, Reviewer, Implementer and them let them talk using Claude built-in agent tool. But the best thing I think was probably that a "do-nothing" setup wizard is part of the workflow. https://github.com/mizioandOrg/claude-planner-reviewer-implementer https://github.com/mizioandOrg/claude-planner-reviewer-imple... Did you have success with running stuff in a pipeline and being requested for input in agent->human needed scenarios?
- 7mo ago
- NikitaCometa65 7mo ago[dead]
- nurettin 7mo agoclaude> "We want to add a title section that shows what page we are currently on, use cook to manage the development process" * coolers whirring, gpus on fire, tokens flying, investors happy, developer goes for 6th break of the day
- NetOpWibby 7mo agoDull colors and a display font used for copy makes this website incredibly unpleasant to read.
- staticvar 7mo agoAh sorry about that. I have weird tastes in design. The README.md is less detailed but covers the basics: https://github.com/rjcorwin/cook/ https://github.com/rjcorwin/cook/
- hmokiguess 7mo agoTwo types of people eh, I thought it was quite enjoyable! Reminded me of a SNES game
- staticvar 7mo agoExactly! That's my vibe. https://rjcorwin.github.io https://rjcorwin.github.io
- jemmyw 7mo agoLooks pretty nice. I think a lot of devs have been making similar tools, I've written my own thing that does a work review loop. I like the interface you've made. I'll probably give it a go, but I'm also reluctant to relinquish the control I have when it's my own code doing orchestration.
- staticvar 7mo agoOh ya, lots of tools out there orchestrating these days, and just writing a script is a valid option. On the control bit, note that if you `cook init` in your project, it generates a COOK.md that lets you template the meta prompt. Claude could probably take a look at how you've been doing it and port it over to COOK.md so it's similar to the prompts you've been using.
- deleted 7mo ago[deleted]
- deleted 7mo ago[deleted]
- kasperstorgaard 7mo agoHow heavy on tokens is this? I don't use these style workflows and am fairly new to claude code, so I assume it's better than 3x tokens when doing 3 passes?
- hasperdi 7mo agoIt's not 3x because of 3 runs; can be more token, can be less. The way of thinking it is, telling Claude to tackle the problem 3 times, each time it may or may not use different approach, fix or improve on things it did previously.
- staticvar 7mo agoThat's right. However if you use the v3 operator, you get three parallel versions being built, and then combined depending on which resolver you use (pick, merge, and compare).
- maCDzP 7mo agoI dunno. I just let Claude build a python script that calls Claude code though subprocess.run(). I recently made a sort of Autoresearch with that approach. The script calls Claude Code to create a hyphotesis, then code based on that, evaluate- rinse and repeat. I am still trying to figure out if I am actually on to something or just burning tokens. Jury is still out.
- jamiemallers 7mo ago[dead]
- staticvar 7mo agoThat's totally a valid approach! Especially for a very specific workflow you are looking for. For the cases I cover in cook, I had done those patterns enough times that I figured it was time to build a tool/skill for Claude so that I didn't have to explain it as much and also not have to wait for claude to code it up, and possibly interpret me wrong. Now ask claude to "/cook race 3 of foo plan with review, pick the best" and it knows what to do.
- dgb23 7mo agoI think you're onto something, but I would add that it's sort of like a live REPL that has an integrated agent but with extra steps. I haven't used python much but I wouldn't be surprised if you can set up a sufficiently powerful REPL with it. I know Julia can do it very well and it's a very similar language. Obviously there are powerful Lisps that do this very well as well.
- scrappyjoe 7mo agoI went quite far down this approach last year; you're welcome to take what you want from my repo - https://github.com/riazarbi/way https://github.com/riazarbi/way
- staticvar 7mo agoHey scrappyejoe, way looks pretty cool. The goal of cook is to be unopinionated, exposing primitives for the shape of workflows as opposed to defining what happens in those workflows. Cook is something that way could use under the hood.
- genthree 7mo agoSemi-on-topic: Anyone know a way to get a good alternative UI on top of Cursor? My company’s tracking how much we use the damn thing (its autocomplete is literally less-useful than standard VSCode, only time it’s consistently good is when it sees me do one thing to a line, sees repeated similar lines after that, and suggests I do it on the next one too, one at a time, and that’s only useful to me because I’ve never actually bothered to learn how to properly use a text editor) so I can’t avoid it, but even on codebases in the hundreds of lines it’s OOM killing things on my 16GB laptop (it, plus goddamn Teams, were eating half the memory by themselves the other day… with Cursor sitting at almost 6GB alone. JFC. On the plus side if this is what software from a company that should be full of experts at using these things looks like, guess our jobs are safe from them… though not from recession and ZIRP unwinding)
- smarx007 7mo agoA noob question: is there a tool that automatically instructs Claude Code to "continue" when the token quota is reset after 5h? I am interested in that more than some rather fancy loops.
- erdmozkn62 7mo ago[dead]
- BANRONFANTHE 7mo ago[dead]
- viditraj 7mo agocan we integrate it with Devin too? seems like it doable
- derodero24 7mo ago[flagged]
- gethwhunter34 7mo ago[dead]
- uxmaniik52 7mo ago[dead]
- staticvar 7mo agoGood to hear that you're having luck with small models. Note that cook exposes a --model param, also workflow specific model params (--model-work, --model-review, etc) so you can have a smaller model implementing a plan and a larger model reviewing the implementation.
- yohamta 7mo agoAI agent orchestration is future. That's where workflow engine shines. I'm doing the same thing using Dagu.sh and I don't use terminal so much anymore.
- staticvar 7mo agoDagu.sh, using yaml files to describe the flow, looks like a nice step up in sophistication from the cook approach that's just trying to make it easy to issue directly from the command line. My 2 cents on the dagu.sh website, it should lead with the demo section (https://docs.dagu.sh/overview/#demo https://docs.dagu.sh/overview/#demo). That helped me connect what it was and how I might use it.
- olivercoleai 7mo ago[dead]
- lazybean 7mo agoThe composability here is really elegant — review v3 pick as a pipeline that "just works" is the kind of DX that makes agent orchestration feel tractable rather than overwhelming.
- theowaway213456 7mo agoem dash + "x rather than y" sentence construction is setting off my brain's LLM detector here.
- bhekanik 7mo ago[dead]
- niobe 7mo agoVery nice. However, I do like to read every agent summary before letting them move on. I'm not sure I'd be able to apply this level of automation to many tasks.
- catlover76 7mo ago[dead]
- 4b11b4 7mo agoI really like the idea but my gut says it would be hard to trust. In the last example... "cleanest result" is not a great definition of done (that's only sort of a nitpick). In general, I feel that removing the decision process (or relegating it to a language model) is not a good idea.
- staticvar 7mo agoYes, plz don't trust it, always review! The idea is that one prompt in Claude Code got you 80% of the way there, but with some automated review/iterate, it gets you 95% of the way there. It's not worth your time to review the 80% done version when you could be reviewing the 95% done version.
- staticvar 7mo agoAlso on that point about keeping humans in the loop on decisions, I've found following the Research-Plan-Implement process where we humans review at each of those stages, to be really helpful. This doc describes the skill I use with my agents so they keep me looped in: https://gist.github.com/rjcorwin/296885590dc8a4ebc64e70879dc04a0f https://gist.github.com/rjcorwin/296885590dc8a4ebc64e70879dc... Then I use cook to iterate and explore during the AI led parts.
- bivlked 7mo agoOne thing i wish more CLI tools did: non-interactive mode. i build bash tools that have interactive prompts for first-time users, but everything the prompt asks also has a CLI flag. makes scripting and CI/CD so much simpler - you can test the exact same code path without mock stdin.
- cdaringe 7mo agoI wrote https://jsr.io/@cdaringe/ralphmania https://jsr.io/@cdaringe/ralphmania which has a lot of feature overlap. cook looks more polished. 1. How do you handle worktree merge conflicts and/or integration validation issues? 2. Can i work straight from a list of requirements? I think i saw you support it… 3. I have my variant write a minimal explainer for every satisfied spec, aka receipts. Its pretty great, because i often review the receipts, and if imperfect, mark as NEEDS_REWORK + notes, and it’ll eventually just pick that up on a future iter
- mizioand 7mo agoA lot of people coming up with these tools to orchestrate agents to do a one-shot implementation in a sandbox (in a server/container/pipeline). I also have a similar - yet different approach - with a Mother Agent (MoMa) planner-reviewer-implementer multi agent pattern that orchestrates a feedback loop using Claude memory between agents. https://news.ycombinator.com/item?id=47437012#47437013 https://news.ycombinator.com/item?id=47437012#47437013 I understood that you have a Judge agent that evaluates independent subagent solo executions and chooses best solution based on ralph algorithm. Did you play with limits on how many solo agents it is sufficient to spawn vs. not getting a better solution? and what is the limit of soloagent solutions that the Judge can compare? (obviously must depend on the complexity and context cost of a solution)
- itsankur 7mo agoIs the form factor what makes this different amongst the 500 that exist? Like CLI vs UIs?
- bean469 7mo agoSurprised that there's no discussion about the prevalence of using TypeScript for developing these CLI agent harnesses. To me it seems concerning that such CLI programs are so chunky and commonly have to use over 1GB of RAM. Might be boomer-talk, but I am used to CLI apps being extremely lightweight and fast (think Total Commander, which has a UI, but is still very lightweight and responsive) I understand that part of the reason is because many of these harnesses are vibe-coded, so plenty is lost in terms of optimization. And, well, because LLMs code best in TypeScript
- odziggy 7mo ago[dead]
- studio-m-dev 7mo ago[flagged]
- 4riel 7mo agoNice tool.