This guide shows how to run two CLI agents in separate PTYs and have them iterate until they agree.
npm installnode ./bin/criticloop.js setupThis writes criticloop.config.json if you choose to save, or runs from in-memory settings.
node ./bin/criticloop.js --task "Design a minimal API and test plan"node ./bin/criticloop.js --interactive --task "Create a UI spec and review it"Copy the template and edit the command to your CLI:
copy examples\criticloop.config.same-model.json criticloop.config.jsonnode ./bin/criticloop.js --task "Create a UI spec and review it"Copy the template and edit both commands:
copy examples\criticloop.config.two-clis.json criticloop.config.jsonnode ./bin/criticloop.js --task "Draft a plan and critique it"Each run creates sessions/<timestamp>/ with:
agentA.logagentB.logtranscript.jsonlsummary.json
On Windows, tail logs like this:
Get-Content -Wait sessions\<timestamp>\agentA.log- If responses cut off, increase
timeoutMsoridleMsin config. - If a CLI prints extra banners, the sentinel helps detect message boundaries.
- For common issues, see
docs/TROUBLESHOOTING.md.