rhachet-roles-bhrain 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/roles/architect/briefs/brains.replic/arc000.sources.[catalog].md +178 -0
- package/dist/roles/architect/briefs/brains.replic/arc101.concept.llm.[article].md +25 -0
- package/dist/roles/architect/briefs/brains.replic/arc102.concept.repl.[article].md +33 -0
- package/dist/roles/architect/briefs/brains.replic/arc103.concept.replic-brain.[article].md +35 -0
- package/dist/roles/architect/briefs/brains.replic/arc104.concept.context-window.[article].md +40 -0
- package/dist/roles/architect/briefs/brains.replic/arc105.concept.system-prompt.[article].md +44 -0
- package/dist/roles/architect/briefs/brains.replic/arc106.concept.tool-definition.[article].md +59 -0
- package/dist/roles/architect/briefs/brains.replic/arc107.concept.tool-call.[article].md +54 -0
- package/dist/roles/architect/briefs/brains.replic/arc108.concept.tool-result.[article].md +58 -0
- package/dist/roles/architect/briefs/brains.replic/arc109.concept.agentic-loop.[article].md +62 -0
- package/dist/roles/architect/briefs/brains.replic/arc110.concept.reasoning-trace.[article].md +58 -0
- package/dist/roles/architect/briefs/brains.replic/arc111.concept.react-pattern.[article].md +65 -0
- package/dist/roles/architect/briefs/brains.replic/arc112.concept.reflexion-pattern.[article].md +68 -0
- package/dist/roles/architect/briefs/brains.replic/arc113.concept.tree-of-thoughts.[article].md +76 -0
- package/dist/roles/architect/briefs/brains.replic/arc114.concept.self-consistency.[article].md +73 -0
- package/dist/roles/architect/briefs/brains.replic/arc115.concept.lats-pattern.[article].md +78 -0
- package/dist/roles/architect/briefs/brains.replic/arc116.concept.context-compaction.[article].md +71 -0
- package/dist/roles/architect/briefs/brains.replic/arc117.concept.subagent.[article].md +71 -0
- package/dist/roles/architect/briefs/brains.replic/arc118.concept.extended-thinking.[article].md +69 -0
- package/dist/roles/architect/briefs/brains.replic/arc119.concept.mcp.[article].md +78 -0
- package/dist/roles/architect/briefs/brains.replic/arc120.concept.session.[article].md +67 -0
- package/dist/roles/architect/briefs/brains.replic/arc121.concept.message.[article].md +79 -0
- package/dist/roles/architect/briefs/brains.replic/arc122.concept.plan-and-solve.[article].md +80 -0
- package/dist/roles/architect/briefs/brains.replic/arc150.concepts.treestruct.[article].md +126 -0
- package/dist/roles/architect/briefs/brains.replic/arc201.blueprint.claude-code.[article].md +417 -0
- package/dist/roles/architect/briefs/brains.replic/arc201.blueprint.claude-code.zoomin.reason.[article].md +507 -0
- package/dist/roles/architect/briefs/brains.replic/arc202.blueprint.codex.[article].md +354 -0
- package/dist/roles/architect/briefs/brains.replic/arc300.blueprints.comparison.[catalog].md +284 -0
- package/dist/roles/thinker/briefs/style.words.lowercase.md +0 -0
- package/dist/roles/thinker/briefs/term=brain.atomic_vs_replic.md +8 -0
- package/package.json +39 -37
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/.rhachet/term.referent.foci.ponder.que.concept/2025-08-28T02:43:27.729Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/.rhachet/term.referent.foci.ponder.que.context/2025-08-28T02:43:27.729Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/.rhachet/term.referent.goal/2025-08-28T02:43:27.728Z.b1869db890614951.md +0 -3
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/.rhachet/term.referent.md.foci.ponder.que.concept/2025-08-28T02:44:23.033Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/.rhachet/term.referent.md.foci.ponder.que.context/2025-08-28T02:44:23.033Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/.rhachet/term.referent.md.goal/2025-08-28T02:44:23.031Z.852c92045a674148.md +0 -4
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/term.referent/2025-08-28T02:44:30.724Z.2f5896cb587117da.md +0 -44
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/term.referent.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/term.referent.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/term.referent.goal.md +0 -3
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/term.referent.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/term.referent.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/librarian.context/.rhachet/term.referent.md.goal.md +0 -4
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].i2.md.feedback/2025-08-19T05:29:09.411Z.66a0b5fa5d6c4880.md +0 -1
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].i2.md.feedback/2025-08-19T05:30:52.866Z.c1ad1fe6df73a851.md +0 -1
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].i2.md.foci.ponder.que.concept/2025-08-19T05:27:55.753Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].i2.md.foci.ponder.que.context/2025-08-19T05:27:55.754Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].i2.md.goal/2025-08-19T05:27:55.751Z.c8232988c046d948.md +0 -10
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].md.foci.ponder.que.concept/2025-08-19T05:26:12.617Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].md.foci.ponder.que.context/2025-08-19T05:26:12.617Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<catalogize>.vs_diverge.[article].md.goal/2025-08-19T05:26:12.615Z.68cf5d37ff5abc75.md +0 -4
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>._.[article].frame.tactical.i3.via_rhachet.with_template.md.foci.ponder.que.concept/2025-08-19T05:21:17.678Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>._.[article].frame.tactical.i3.via_rhachet.with_template.md.foci.ponder.que.context/2025-08-19T05:21:17.679Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>._.[article].frame.tactical.i3.via_rhachet.with_template.md.goal/2025-08-19T05:21:17.676Z.b35533aecf461c68.md +0 -6
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-19T05:18:01.113Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-19T05:18:01.115Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>._.[article].frame.tactical.md.goal/2025-08-19T05:18:01.112Z.b35533aecf461c68.md +0 -6
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>.tactics.[catalog].md.foci.ponder.que.concept/2025-08-19T05:33:21.987Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>.tactics.[catalog].md.foci.ponder.que.context/2025-08-19T05:33:21.988Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/.rhachet/<demonstrate>.tactics.[catalog].md.goal/2025-08-19T05:33:21.985Z.1f3884998db3b338.md +0 -6
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article]/2025-08-19T05:26:25.275Z.8a56710c0bb0b7f5.md +0 -62
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].i2/2025-08-19T05:28:06.500Z.30e7bf815db7709b.md +0 -43
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].i2/2025-08-19T05:29:19.551Z.f4d48288c7f7b0b2.md +0 -43
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].i2/2025-08-19T05:31:05.482Z.875d98d92fe452d1.md +0 -46
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].i2.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].i2.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].i2.md.goal.md +0 -10
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<catalogize>.vs_diverge.[article].md.goal.md +0 -4
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical/2025-08-19T05:18:27.266Z.f1bb2e1f049133a5.md +0 -64
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical.i3.via_rhachet.with_template/2025-08-19T05:21:27.536Z.05c9744a2208309b.md +0 -74
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical.i3.via_rhachet.with_template.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical.i3.via_rhachet.with_template.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical.i3.via_rhachet.with_template.md.goal.md +0 -6
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>._.[article].frame.tactical.md.goal.md +0 -6
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>.tactics.[catalog]/2025-08-19T05:33:41.302Z.78d520797f9769bd.md +0 -68
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>.tactics.[catalog].md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>.tactics.[catalog].md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/librarian.tactics/.rhachet/<demonstrate>.tactics.[catalog].md.goal.md +0 -6
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.feedback/2025-08-17T23:42:52.441Z.9b5920a5f2286358.md +0 -1
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.feedback/2025-08-17T23:45:56.905Z.c41b7ee6c012dca7.md +0 -1
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.feedback/2025-08-17T23:46:26.625Z.550b8cabb776137d.md +0 -1
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-17T23:39:04.903Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-17T23:40:21.876Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-17T23:45:04.183Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-17T23:39:04.904Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-17T23:40:21.877Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-17T23:45:04.183Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.goal/2025-08-17T23:39:04.900Z.f214cfb2b02fab75.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.goal/2025-08-17T23:40:21.875Z.f214cfb2b02fab75.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<cluster>._.[article].frame.tactical.md.goal/2025-08-17T23:45:04.181Z.f214cfb2b02fab75.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.2.md.foci.ponder.que.concept/2025-08-18T05:06:49.996Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.2.md.foci.ponder.que.context/2025-08-18T05:06:49.997Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.2.md.goal/2025-08-18T05:06:49.995Z.528e7ccdbef5d0cb.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.3.md.foci.ponder.que.concept/2025-08-18T05:07:30.952Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.3.md.foci.ponder.que.context/2025-08-18T05:07:30.953Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.3.md.goal/2025-08-18T05:07:30.951Z.528e7ccdbef5d0cb.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.4.md.foci.ponder.que.concept/2025-08-18T05:08:11.227Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.4.md.foci.ponder.que.context/2025-08-18T05:08:11.227Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.4.md.goal/2025-08-18T05:08:11.225Z.528e7ccdbef5d0cb.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.5.md.foci.ponder.que.concept/2025-08-18T05:09:02.755Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.5.md.foci.ponder.que.context/2025-08-18T05:09:02.756Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.5.md.goal/2025-08-18T05:09:02.754Z.508a8c044b22bfae.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.6.md.foci.ponder.que.concept/2025-08-18T05:10:31.565Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.6.md.foci.ponder.que.context/2025-08-18T05:10:31.566Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.6.md.goal/2025-08-18T05:10:31.563Z.528e7ccdbef5d0cb.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.feedback/2025-08-18T04:50:08.771Z.6e29435be57e631a.md +0 -1
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-18T04:46:51.081Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-18T04:47:37.299Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-18T05:06:06.947Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.concept/2025-08-18T05:11:59.370Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-18T04:46:51.082Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-18T04:47:37.300Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-18T05:06:06.948Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.context/2025-08-18T05:11:59.371Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.goal/2025-08-18T04:46:51.080Z.528e7ccdbef5d0cb.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.goal/2025-08-18T04:47:37.295Z.528e7ccdbef5d0cb.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.goal/2025-08-18T05:06:06.946Z.528e7ccdbef5d0cb.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>._.[article].frame.tactical.md.goal/2025-08-18T05:11:59.369Z.516579c7a92b1b26.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.grades_from_context.[article].1.md.foci.ponder.que.concept/2025-08-18T05:24:03.742Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.grades_from_context.[article].1.md.foci.ponder.que.context/2025-08-18T05:24:03.743Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.grades_from_context.[article].1.md.goal/2025-08-18T05:24:03.740Z.7ea13f40fae958b9.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].2.md.feedback/2025-08-18T05:04:11.112Z.fea716c6bf1c6c9c.md +0 -1
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].2.md.foci.ponder.que.concept/2025-08-18T05:02:13.370Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].2.md.foci.ponder.que.context/2025-08-18T05:02:13.371Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].2.md.goal/2025-08-18T05:02:13.368Z.729168a4a51a9613.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.feedback/2025-08-18T04:59:17.249Z.b1420bd7f9bbf0df.md +0 -1
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.feedback/2025-08-18T05:00:20.066Z.4841bbfbba6596ed.md +0 -1
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.concept/2025-08-18T04:57:14.512Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.concept/2025-08-18T04:58:36.622Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.concept/2025-08-18T05:01:28.058Z.1dbacaa56e249af8.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.context/2025-08-18T04:57:14.513Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.context/2025-08-18T04:58:36.623Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.context/2025-08-18T05:01:28.059Z.20883c047b5b3927.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.goal/2025-08-18T04:57:14.510Z.5d9b39222bdebaab.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.goal/2025-08-18T04:58:36.621Z.763f2b6f96e5eb78.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/.rhachet/<triage>.persp.implicit_question.[article].md.goal/2025-08-18T05:01:28.057Z.729168a4a51a9613.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical/2025-08-17T23:40:32.469Z.9a45a5da431061b7.md +0 -69
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical/2025-08-17T23:43:00.496Z.e6c9d14fe7f196ad.md +0 -86
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical/2025-08-17T23:45:09.820Z.496c31f5f6478ddb.md +0 -69
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical/2025-08-17T23:46:02.394Z.ccbb435804f9a033.md +0 -85
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical/2025-08-17T23:46:32.399Z.06fdb8bc5d327e89.md +0 -85
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<cluster>._.[article].frame.tactical.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical/2025-08-18T04:47:52.480Z.a284db9ffbba3805.md +0 -85
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical/2025-08-18T04:50:13.483Z.a284db9ffbba3805.md +0 -85
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical/2025-08-18T05:06:18.798Z.2b58e354810a1e6d.md +0 -85
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical/2025-08-18T05:12:09.225Z.f31c12b3cfed3c70.md +0 -86
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.2/2025-08-18T05:06:57.408Z.c68a7710adf0181d.md +0 -71
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.2.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.2.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.2.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.3/2025-08-18T05:07:43.297Z.82dd27d4f2ae7e71.md +0 -81
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.3.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.3.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.3.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.4/2025-08-18T05:08:20.573Z.19580b96c25a8226.md +0 -77
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.4.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.4.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.4.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.5/2025-08-18T05:09:06.597Z.523fa2836b3552d3.md +0 -66
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.5.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.5.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.5.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.6/2025-08-18T05:10:40.958Z.699e0e76881302b5.md +0 -65
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.6.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.6.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.6.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>._.[article].frame.tactical.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.grades_from_context.[article].1/2025-08-18T05:24:12.067Z.79b6025bbedf68c2.md +0 -48
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.grades_from_context.[article].1.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.grades_from_context.[article].1.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.grades_from_context.[article].1.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article]/2025-08-18T04:57:24.261Z.a3e52f604602d423.md +0 -70
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article]/2025-08-18T04:58:44.342Z.92ba73d496dee2fd.md +0 -64
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article]/2025-08-18T04:59:24.899Z.49858373ac837709.md +0 -64
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article]/2025-08-18T05:00:28.230Z.17eef006aff2c2e2.md +0 -64
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article]/2025-08-18T05:01:38.340Z.9b64674c53f1407d.md +0 -72
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].2/2025-08-18T05:02:20.019Z.ec140a5feadeddb3.md +0 -58
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].2/2025-08-18T05:04:14.999Z.d3ae0f1e525de35b.md +0 -65
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].2.md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].2.md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].2.md.goal.md +0 -3
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.concept.md +0 -13
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].md.foci.ponder.que.context.md +0 -12
- package/dist/roles/thinker/briefs/thinker.tactics/.rhachet/<triage>.persp.implicit_question.[article].md.goal.md +0 -3
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
# blueprint: openai codex
|
|
2
|
+
|
|
3
|
+
## .what
|
|
4
|
+
|
|
5
|
+
openai codex is a cloud-based coding agent that runs tasks in isolated sandbox containers, enabling parallel task execution, background processing, and integration with github workflows.
|
|
6
|
+
|
|
7
|
+
## .why
|
|
8
|
+
|
|
9
|
+
codex represents a different architectural approach than claude code: cloud-first with network isolation, parallel task model, and deep github integration. comparing these architectures reveals tradeoffs in the replic brain design space.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## core agentic loop
|
|
14
|
+
|
|
15
|
+
### pseudocode
|
|
16
|
+
|
|
17
|
+
```python
|
|
18
|
+
def run_cloud_task(task_description, repository, environment):
|
|
19
|
+
# provision isolated cloud container
|
|
20
|
+
container = provision_sandbox(
|
|
21
|
+
repository=repository,
|
|
22
|
+
environment=environment,
|
|
23
|
+
network_access=False # disabled by default
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
# clone repository into container
|
|
27
|
+
container.clone_repo(repository)
|
|
28
|
+
|
|
29
|
+
# run setup script if defined
|
|
30
|
+
if environment.setup_script:
|
|
31
|
+
container.run(environment.setup_script)
|
|
32
|
+
|
|
33
|
+
# agentic loop within sandbox
|
|
34
|
+
context = initialize_context(task_description)
|
|
35
|
+
|
|
36
|
+
while True:
|
|
37
|
+
response = llm.generate(
|
|
38
|
+
messages=context,
|
|
39
|
+
tools=SANDBOX_TOOLS,
|
|
40
|
+
model="gpt-5-codex"
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
if response.has_tool_calls:
|
|
44
|
+
for tool_call in response.tool_calls:
|
|
45
|
+
# execute within sandbox (no external network)
|
|
46
|
+
result = container.execute(tool_call)
|
|
47
|
+
context.append(result)
|
|
48
|
+
|
|
49
|
+
# run tests after code changes
|
|
50
|
+
if is_code_change(tool_call):
|
|
51
|
+
test_result = container.run_tests()
|
|
52
|
+
context.append(test_result)
|
|
53
|
+
else:
|
|
54
|
+
# task complete
|
|
55
|
+
break
|
|
56
|
+
|
|
57
|
+
# propose changes
|
|
58
|
+
return container.create_pr_proposal()
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### key characteristics
|
|
62
|
+
|
|
63
|
+
| aspect | implementation |
|
|
64
|
+
|--------|----------------|
|
|
65
|
+
| execution environment | isolated cloud container |
|
|
66
|
+
| network access | disabled by default (configurable) |
|
|
67
|
+
| loop type | async, runs in background |
|
|
68
|
+
| parallelism | multiple tasks can run simultaneously |
|
|
69
|
+
| termination | agent decides task complete, proposes PR |
|
|
70
|
+
|
|
71
|
+
### sources
|
|
72
|
+
|
|
73
|
+
- [Codex Cloud Architecture](https://developers.openai.com/codex/cloud/) — cloud sandbox docs
|
|
74
|
+
- [Codex Security Guide](https://developers.openai.com/codex/security/) — isolation model
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## context management
|
|
79
|
+
|
|
80
|
+
### strategy: full context with large windows
|
|
81
|
+
|
|
82
|
+
unlike claude code's compaction approach, codex leverages large context windows and cloud execution:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
┌────────────────────────────────────────┐
|
|
86
|
+
│ CODEX CONTEXT MODEL │
|
|
87
|
+
├────────────────────────────────────────┤
|
|
88
|
+
│ [task description] │
|
|
89
|
+
│ [repository state] │
|
|
90
|
+
│ [execution history] │
|
|
91
|
+
│ [test results] │
|
|
92
|
+
│ [full file contents as needed] │
|
|
93
|
+
│ │
|
|
94
|
+
│ (no explicit compaction — session │
|
|
95
|
+
│ scoped to single task completion) │
|
|
96
|
+
└────────────────────────────────────────┘
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### context characteristics
|
|
100
|
+
|
|
101
|
+
| aspect | approach |
|
|
102
|
+
|--------|----------|
|
|
103
|
+
| session length | single task (not open-ended) |
|
|
104
|
+
| history accumulation | full for task duration |
|
|
105
|
+
| compaction | not prominent; tasks are bounded |
|
|
106
|
+
| persistence | task artifacts saved, context ephemeral |
|
|
107
|
+
|
|
108
|
+
### sources
|
|
109
|
+
|
|
110
|
+
- [Codex CLI Features](https://developers.openai.com/codex/cli/features/) — context handling
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## tool interface
|
|
115
|
+
|
|
116
|
+
### sandbox tools
|
|
117
|
+
|
|
118
|
+
| category | capabilities |
|
|
119
|
+
|----------|--------------|
|
|
120
|
+
| filesystem | read, write, edit files in workspace |
|
|
121
|
+
| execution | run commands, tests, builds |
|
|
122
|
+
| git | commit, branch, diff |
|
|
123
|
+
| github | create PRs, read issues |
|
|
124
|
+
|
|
125
|
+
### network isolation
|
|
126
|
+
|
|
127
|
+
```
|
|
128
|
+
┌────────────────────────────────────────┐
|
|
129
|
+
│ CODEX SANDBOX │
|
|
130
|
+
├────────────────────────────────────────┤
|
|
131
|
+
│ │
|
|
132
|
+
│ [Agent]───[Filesystem] │
|
|
133
|
+
│ │ │
|
|
134
|
+
│ └────[Shell Execution] │
|
|
135
|
+
│ │ │
|
|
136
|
+
│ └────[Git Operations] │
|
|
137
|
+
│ │
|
|
138
|
+
│ ┌─────────────────────────────────┐ │
|
|
139
|
+
│ │ NETWORK: BLOCKED BY DEFAULT │ │
|
|
140
|
+
│ │ (can be enabled by admin) │ │
|
|
141
|
+
│ └─────────────────────────────────┘ │
|
|
142
|
+
│ │
|
|
143
|
+
└────────────────────────────────────────┘
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### sandboxing methods
|
|
147
|
+
|
|
148
|
+
| environment | method |
|
|
149
|
+
|-------------|--------|
|
|
150
|
+
| local (cli) | seatbelt (macos), seccomp+landlock (linux) |
|
|
151
|
+
| cloud | isolated containers |
|
|
152
|
+
|
|
153
|
+
### sources
|
|
154
|
+
|
|
155
|
+
- [Codex Security Guide](https://developers.openai.com/codex/security/) — sandboxing details
|
|
156
|
+
- [Codex SDK](https://developers.openai.com/codex/sdk/) — tool interface
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## parallel task pattern
|
|
161
|
+
|
|
162
|
+
### multi-task execution
|
|
163
|
+
|
|
164
|
+
```
|
|
165
|
+
┌─────────────────────────────────────────────────────┐
|
|
166
|
+
│ USER REQUEST │
|
|
167
|
+
│ "Fix auth bug AND add logging to API endpoints" │
|
|
168
|
+
└──────────────────────┬──────────────────────────────┘
|
|
169
|
+
│
|
|
170
|
+
┌────────────┴────────────┐
|
|
171
|
+
│ │
|
|
172
|
+
┌─────▼─────┐ ┌──────▼─────┐
|
|
173
|
+
│ Task 1 │ │ Task 2 │
|
|
174
|
+
│ (auth bug)│ │ (logging) │
|
|
175
|
+
│ │ │ │
|
|
176
|
+
│ Container │ │ Container │
|
|
177
|
+
│ A │ │ B │
|
|
178
|
+
└─────┬─────┘ └──────┬─────┘
|
|
179
|
+
│ │
|
|
180
|
+
│ [run in parallel] │
|
|
181
|
+
│ │
|
|
182
|
+
┌─────▼─────┐ ┌──────▼─────┐
|
|
183
|
+
│ PR #1 │ │ PR #2 │
|
|
184
|
+
└───────────┘ └────────────┘
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### task lifecycle
|
|
188
|
+
|
|
189
|
+
1. task created (via chat, github, slack, etc.)
|
|
190
|
+
2. container provisioned with repo
|
|
191
|
+
3. agent executes in background
|
|
192
|
+
4. tests run automatically after changes
|
|
193
|
+
5. PR proposed when complete
|
|
194
|
+
6. user reviews and merges
|
|
195
|
+
|
|
196
|
+
### sources
|
|
197
|
+
|
|
198
|
+
- [Codex Cloud Architecture](https://developers.openai.com/codex/cloud/) — parallel execution
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## reasoning strategy
|
|
203
|
+
|
|
204
|
+
### test-driven iteration
|
|
205
|
+
|
|
206
|
+
codex emphasizes running tests as the verification mechanism:
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
[Write code change]
|
|
210
|
+
│
|
|
211
|
+
↓
|
|
212
|
+
[Run tests automatically]
|
|
213
|
+
│
|
|
214
|
+
├── tests pass → continue
|
|
215
|
+
│
|
|
216
|
+
└── tests fail → iterate
|
|
217
|
+
│
|
|
218
|
+
↓
|
|
219
|
+
[Analyze failure]
|
|
220
|
+
│
|
|
221
|
+
↓
|
|
222
|
+
[Fix and re-run]
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
### implicit CoT/ReAct
|
|
226
|
+
|
|
227
|
+
reasoning is embedded in the agent's approach but not always explicitly visible to users.
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## github integration
|
|
232
|
+
|
|
233
|
+
### workflow triggers
|
|
234
|
+
|
|
235
|
+
| trigger | action |
|
|
236
|
+
|---------|--------|
|
|
237
|
+
| @codex mention | create task from issue/PR |
|
|
238
|
+
| slack command | create task |
|
|
239
|
+
| chat interface | create task |
|
|
240
|
+
| api call | create task |
|
|
241
|
+
|
|
242
|
+
### pr proposal flow
|
|
243
|
+
|
|
244
|
+
```
|
|
245
|
+
[Task completes in sandbox]
|
|
246
|
+
│
|
|
247
|
+
↓
|
|
248
|
+
[Generate diff + description]
|
|
249
|
+
│
|
|
250
|
+
↓
|
|
251
|
+
[Propose as draft PR]
|
|
252
|
+
│
|
|
253
|
+
↓
|
|
254
|
+
[User reviews]
|
|
255
|
+
│
|
|
256
|
+
┌────┴────┐
|
|
257
|
+
│ │
|
|
258
|
+
[merge] [request changes]
|
|
259
|
+
│
|
|
260
|
+
↓
|
|
261
|
+
[new task]
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
### sources
|
|
265
|
+
|
|
266
|
+
- [Codex Cloud Architecture](https://developers.openai.com/codex/cloud/) — github integration
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
270
|
+
## model
|
|
271
|
+
|
|
272
|
+
### gpt-5-codex
|
|
273
|
+
|
|
274
|
+
- purpose-built for codex workloads
|
|
275
|
+
- optimized for code understanding and generation
|
|
276
|
+
- supports tool use
|
|
277
|
+
- available via api key or chatgpt subscription
|
|
278
|
+
|
|
279
|
+
### sources
|
|
280
|
+
|
|
281
|
+
- [Introducing Upgrades to Codex](https://openai.com/index/introducing-upgrades-to-codex/) — model details
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
## benchmark performance
|
|
286
|
+
|
|
287
|
+
| benchmark | notes |
|
|
288
|
+
|-----------|-------|
|
|
289
|
+
| SWE-bench | competitive performance |
|
|
290
|
+
| practical tasks | strong on isolated, test-driven tasks |
|
|
291
|
+
| pr proposals | high quality with context |
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
## architectural summary
|
|
296
|
+
|
|
297
|
+
```
|
|
298
|
+
┌────────────────────────────────────────────────────────┐
|
|
299
|
+
│ OPENAI CODEX │
|
|
300
|
+
├────────────────────────────────────────────────────────┤
|
|
301
|
+
│ ┌──────────────────────────────────────────────────┐ │
|
|
302
|
+
│ │ TASK QUEUE │ │
|
|
303
|
+
│ │ [task 1] [task 2] [task 3] ... (parallel) │ │
|
|
304
|
+
│ └──────────────────────────────────────────────────┘ │
|
|
305
|
+
│ │ │
|
|
306
|
+
│ ┌──────────────────────▼──────────────────────────┐ │
|
|
307
|
+
│ │ CLOUD SANDBOX (per task) │ │
|
|
308
|
+
│ │ ┌────────────────────────────────────────┐ │ │
|
|
309
|
+
│ │ │ Repository Clone │ │ │
|
|
310
|
+
│ │ │ + Environment Setup │ │ │
|
|
311
|
+
│ │ │ + Network Isolation │ │ │
|
|
312
|
+
│ │ └────────────────────────────────────────┘ │ │
|
|
313
|
+
│ │ │ │ │
|
|
314
|
+
│ │ ┌─────────────────▼────────────────────────┐ │ │
|
|
315
|
+
│ │ │ AGENTIC LOOP │ │ │
|
|
316
|
+
│ │ │ while not done: │ │ │
|
|
317
|
+
│ │ │ response = llm.generate() │ │ │
|
|
318
|
+
│ │ │ execute_tools() │ │ │
|
|
319
|
+
│ │ │ run_tests() # automatic │ │ │
|
|
320
|
+
│ │ │ iterate_if_failing() │ │ │
|
|
321
|
+
│ │ └──────────────────────────────────────────┘ │ │
|
|
322
|
+
│ └──────────────────────────────────────────────────┘ │
|
|
323
|
+
│ │ │
|
|
324
|
+
│ ┌──────────────────────▼──────────────────────────┐ │
|
|
325
|
+
│ │ PR PROPOSAL │ │
|
|
326
|
+
│ │ [diff] [description] [test results] │ │
|
|
327
|
+
│ └──────────────────────────────────────────────────┘ │
|
|
328
|
+
└────────────────────────────────────────────────────────┘
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
---
|
|
332
|
+
|
|
333
|
+
## concepts utilized
|
|
334
|
+
|
|
335
|
+
- [llm](./arc101.concept.llm.[article].md)
|
|
336
|
+
- [context-window](./arc104.concept.context-window.[article].md)
|
|
337
|
+
- [agentic-loop](./arc109.concept.agentic-loop.[article].md)
|
|
338
|
+
- [tool-call](./arc107.concept.tool-call.[article].md)
|
|
339
|
+
- [tool-result](./arc108.concept.tool-result.[article].md)
|
|
340
|
+
- [session](./arc120.concept.session.[article].md) (task-scoped)
|
|
341
|
+
- [react-pattern](./arc111.concept.react-pattern.[article].md) (implicit)
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
## key differences from claude code
|
|
346
|
+
|
|
347
|
+
| aspect | claude code | codex |
|
|
348
|
+
|--------|-------------|-------|
|
|
349
|
+
| execution | local or sdk | cloud sandbox |
|
|
350
|
+
| network | controlled | blocked by default |
|
|
351
|
+
| parallelism | subagents | multiple tasks |
|
|
352
|
+
| context | compaction | task-bounded |
|
|
353
|
+
| integration | cli + ide | github + slack + api |
|
|
354
|
+
| pr workflow | manual | auto-proposed |
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
# blueprints comparison catalog
|
|
2
|
+
|
|
3
|
+
## .what
|
|
4
|
+
|
|
5
|
+
a systematic comparison of replic brain architectures across key dimensions: loop architecture, context management, tool interface, subagent patterns, git integration, and performance.
|
|
6
|
+
|
|
7
|
+
## .why
|
|
8
|
+
|
|
9
|
+
comparing architectures reveals the design tradeoffs in the replic brain space. understanding why different systems make different choices informs future architecture decisions and helps practitioners select the right tool for their needs.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## architectural comparison matrix
|
|
14
|
+
|
|
15
|
+
| dimension | claude code | codex |
|
|
16
|
+
|-----------|-------------|-------|
|
|
17
|
+
| **execution** | local/sdk | cloud sandbox |
|
|
18
|
+
| **loop type** | single-threaded, synchronous | async, background |
|
|
19
|
+
| **network** | controlled (permissions) | blocked by default |
|
|
20
|
+
| **parallelism** | subagents | multiple tasks |
|
|
21
|
+
| **context** | compaction | task-bounded |
|
|
22
|
+
| **model** | claude-sonnet/opus | gpt-5-codex |
|
|
23
|
+
| **interface** | cli, ide extensions | github, slack, api, ios |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## dimension analysis
|
|
28
|
+
|
|
29
|
+
### 1. loop architecture
|
|
30
|
+
|
|
31
|
+
#### claude code: single-threaded with subagent delegation
|
|
32
|
+
```
|
|
33
|
+
main loop ────────────────────────►
|
|
34
|
+
│
|
|
35
|
+
└──► subagent (isolated context)
|
|
36
|
+
│
|
|
37
|
+
└──► returns summary
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
- synchronous within session
|
|
41
|
+
- user interacts directly with main loop
|
|
42
|
+
- subagents for context isolation and parallel work
|
|
43
|
+
|
|
44
|
+
#### codex: async task-based with parallel execution
|
|
45
|
+
```
|
|
46
|
+
task queue ────────────────────────►
|
|
47
|
+
│
|
|
48
|
+
├──► task 1 (container A) ──► PR
|
|
49
|
+
│
|
|
50
|
+
├──► task 2 (container B) ──► PR
|
|
51
|
+
│
|
|
52
|
+
└──► task 3 (container C) ──► PR
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
- asynchronous, runs in background
|
|
56
|
+
- multiple tasks execute in parallel
|
|
57
|
+
- each task gets isolated container
|
|
58
|
+
|
|
59
|
+
#### tradeoff
|
|
60
|
+
| aspect | claude code | codex |
|
|
61
|
+
|--------|-------------|-------|
|
|
62
|
+
| interactivity | high (real-time) | low (async) |
|
|
63
|
+
| parallelism | via subagents | native multi-task |
|
|
64
|
+
| user feedback | immediate | at task completion |
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
### 2. context management
|
|
69
|
+
|
|
70
|
+
#### claude code: compaction via summarization
|
|
71
|
+
```
|
|
72
|
+
[context fills] ──► [summarize] ──► [continue]
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
- auto-summarization when approaching 200k limit
|
|
76
|
+
- enables unbounded session length
|
|
77
|
+
- trades verbatim history for longevity
|
|
78
|
+
|
|
79
|
+
#### codex: task-bounded full context
|
|
80
|
+
```
|
|
81
|
+
[task starts] ──► [full context] ──► [task ends]
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
- no explicit compaction needed
|
|
85
|
+
- tasks are bounded in scope
|
|
86
|
+
- fresh context per task
|
|
87
|
+
|
|
88
|
+
#### tradeoff
|
|
89
|
+
| aspect | claude code | codex |
|
|
90
|
+
|--------|-------------|-------|
|
|
91
|
+
| session length | unbounded | task-scoped |
|
|
92
|
+
| history loss | yes (via summarization) | no (per task) |
|
|
93
|
+
| complexity | higher (compaction logic) | lower |
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
### 3. tool interface
|
|
98
|
+
|
|
99
|
+
#### claude code: builtin + MCP extensibility
|
|
100
|
+
```
|
|
101
|
+
┌─────────────────────────────────────┐
|
|
102
|
+
│ [25+ builtin tools] │
|
|
103
|
+
│ + [MCP servers for custom tools] │
|
|
104
|
+
│ + [permission-based access] │
|
|
105
|
+
└─────────────────────────────────────┘
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
#### codex: sandbox-restricted tools
|
|
109
|
+
```
|
|
110
|
+
┌─────────────────────────────────────┐
|
|
111
|
+
│ [file, shell, git tools] │
|
|
112
|
+
│ [network blocked by default] │
|
|
113
|
+
│ [test execution built-in] │
|
|
114
|
+
└─────────────────────────────────────┘
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
#### tradeoff
|
|
118
|
+
| aspect | claude code | codex |
|
|
119
|
+
|--------|-------------|-------|
|
|
120
|
+
| extensibility | high (MCP) | limited |
|
|
121
|
+
| security | permission-based | sandbox isolation |
|
|
122
|
+
| web access | yes (controlled) | blocked (default) |
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### 4. subagent patterns
|
|
127
|
+
|
|
128
|
+
#### claude code: typed subagents
|
|
129
|
+
```
|
|
130
|
+
Task(subagent_type="Explore", prompt="...")
|
|
131
|
+
Task(subagent_type="Plan", prompt="...")
|
|
132
|
+
Task(subagent_type="general-purpose", prompt="...")
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
- explicit types with different capabilities
|
|
136
|
+
- isolated context per subagent
|
|
137
|
+
- can use different/cheaper models
|
|
138
|
+
|
|
139
|
+
#### codex: parallel task containers
|
|
140
|
+
```
|
|
141
|
+
[Task A: Container 1] ──► PR #1
|
|
142
|
+
[Task B: Container 2] ──► PR #2
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
- each task is essentially a "subagent"
|
|
146
|
+
- full container isolation
|
|
147
|
+
- natural parallelism
|
|
148
|
+
|
|
149
|
+
#### tradeoff
|
|
150
|
+
| aspect | claude code | codex |
|
|
151
|
+
|--------|-------------|-------|
|
|
152
|
+
| granularity | fine (subagents within session) | coarse (separate tasks) |
|
|
153
|
+
| model flexibility | per-subagent | per-task |
|
|
154
|
+
| coordination | parent context | independent |
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
### 5. git integration
|
|
159
|
+
|
|
160
|
+
#### claude code: user-driven commits
|
|
161
|
+
```
|
|
162
|
+
[changes made]
|
|
163
|
+
│
|
|
164
|
+
└──► user: "commit this"
|
|
165
|
+
│
|
|
166
|
+
└──► git add + git commit
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
- only commits when explicitly asked
|
|
170
|
+
- guardrails against dangerous operations
|
|
171
|
+
- manual push
|
|
172
|
+
|
|
173
|
+
#### codex: auto-proposed PRs
|
|
174
|
+
```
|
|
175
|
+
[task completes]
|
|
176
|
+
│
|
|
177
|
+
└──► auto-generate PR proposal
|
|
178
|
+
│
|
|
179
|
+
└──► user reviews + merges
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
- automatic PR creation
|
|
183
|
+
- built-in github integration
|
|
184
|
+
- streamlined review workflow
|
|
185
|
+
|
|
186
|
+
#### tradeoff
|
|
187
|
+
| aspect | claude code | codex |
|
|
188
|
+
|--------|-------------|-------|
|
|
189
|
+
| automation | low (user-driven) | high (auto-PR) |
|
|
190
|
+
| control | high | lower |
|
|
191
|
+
| workflow fit | cli/local dev | github-centric |
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
### 6. performance dimensions
|
|
196
|
+
|
|
197
|
+
#### benchmark comparison
|
|
198
|
+
|
|
199
|
+
| benchmark | claude code | codex |
|
|
200
|
+
|-----------|-------------|-------|
|
|
201
|
+
| SWE-bench (verified) | ~49% | competitive |
|
|
202
|
+
| HumanEval | strong | strong |
|
|
203
|
+
| practical tasks | strong (interactive) | strong (batch) |
|
|
204
|
+
|
|
205
|
+
#### reasoning strategy effectiveness
|
|
206
|
+
|
|
207
|
+
| strategy | claude code | codex |
|
|
208
|
+
|----------|-------------|-------|
|
|
209
|
+
| react-style | implicit | implicit |
|
|
210
|
+
| extended thinking | yes (configurable) | via model |
|
|
211
|
+
| test-driven | user-initiated | automatic |
|
|
212
|
+
|
|
213
|
+
#### token efficiency
|
|
214
|
+
|
|
215
|
+
| aspect | claude code | codex |
|
|
216
|
+
|--------|-------------|-------|
|
|
217
|
+
| context usage | compacted | full per task |
|
|
218
|
+
| model calls | single-threaded | parallel |
|
|
219
|
+
| cost model | per-session | per-task |
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## shared patterns
|
|
224
|
+
|
|
225
|
+
despite architectural differences, both systems share:
|
|
226
|
+
|
|
227
|
+
1. **agentic loop** — generate → tool → observe → repeat
|
|
228
|
+
2. **tool-based interaction** — structured tool calls, not free-form execution
|
|
229
|
+
3. **git awareness** — understand and manipulate repositories
|
|
230
|
+
4. **test integration** — verify changes via tests
|
|
231
|
+
5. **llm-driven reasoning** — model decides actions
|
|
232
|
+
6. **safety constraints** — guardrails on dangerous operations
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## divergent approaches
|
|
237
|
+
|
|
238
|
+
| decision point | claude code choice | codex choice |
|
|
239
|
+
|----------------|-------------------|--------------|
|
|
240
|
+
| where to run | user's machine | openai's cloud |
|
|
241
|
+
| how to isolate | permissions + subagents | containers + network block |
|
|
242
|
+
| how to scale | session compaction | bounded tasks |
|
|
243
|
+
| how to integrate | cli + MCP | github + slack + api |
|
|
244
|
+
| when to commit | on user request | auto-propose PR |
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## insights
|
|
249
|
+
|
|
250
|
+
### pattern: cloud vs local tradeoff
|
|
251
|
+
- **cloud** (codex): easier deployment, better isolation, async-first
|
|
252
|
+
- **local** (claude code): immediate feedback, user control, privacy
|
|
253
|
+
|
|
254
|
+
### pattern: compaction vs bounding
|
|
255
|
+
- **compaction**: enables unbounded sessions but loses detail
|
|
256
|
+
- **bounding**: preserves detail but scopes to single tasks
|
|
257
|
+
|
|
258
|
+
### pattern: permission vs sandbox
|
|
259
|
+
- **permission**: flexible but requires trust decisions
|
|
260
|
+
- **sandbox**: restrictive but eliminates classes of risk
|
|
261
|
+
|
|
262
|
+
### correlation: architecture → use case
|
|
263
|
+
| architecture | best for |
|
|
264
|
+
|--------------|----------|
|
|
265
|
+
| claude code | interactive development, exploration, refactoring |
|
|
266
|
+
| codex | batch tasks, CI integration, github workflows |
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
270
|
+
## sources
|
|
271
|
+
|
|
272
|
+
- [Building Effective Agents](https://www.anthropic.com/research/building-effective-agents)
|
|
273
|
+
- [Codex Cloud Architecture](https://developers.openai.com/codex/cloud/)
|
|
274
|
+
- [AI Coding Agents Benchmark](https://render.com/blog/ai-coding-agents-benchmark)
|
|
275
|
+
- [Claude Code vs Cursor Deep Comparison](https://www.qodo.ai/blog/claude-code-vs-cursor/)
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## related briefs
|
|
280
|
+
|
|
281
|
+
- [arc201.blueprint.claude-code.[article].md](./arc201.blueprint.claude-code.[article].md)
|
|
282
|
+
- [arc202.blueprint.codex.[article].md](./arc202.blueprint.codex.[article].md)
|
|
283
|
+
- [arc109.concept.agentic-loop.[article].md](./arc109.concept.agentic-loop.[article].md)
|
|
284
|
+
- [arc117.concept.subagent.[article].md](./arc117.concept.subagent.[article].md)
|
|
File without changes
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
|
|
2
|
+
- brains come in two fundamental frames
|
|
3
|
+
- atomic = llm direct invocation
|
|
4
|
+
- e.g., `atomic:openai:o4`
|
|
5
|
+
- e.g., `atomic:anthropic:claude-opus-v4.3`
|
|
6
|
+
- replic = llm behind a repl (read-execute-print-loop)
|
|
7
|
+
- e.g., `replic:openai:codex`
|
|
8
|
+
- e.g., `replic:anthropic:claude-code`
|