각자 다른 도구를 만들고 있지만, 실제 사용법은 같은 형태로 모입니다. 목표를 박고, 증거로 점검하고, 루프를 설계하는 방식입니다.
Codex와 Claude Code가 모두 “조건이 만족될 때까지 멈추지 않는 세션”으로 간다.
LazyCodex와 Gajae-Code는 plan, work, evidence를 명시적 워크플로우로 만든다.
자동화 버튼이 아니라, 사람이 품질을 지키는 루프 설계 역량이 핵심이 된다.
에이전트가 강해질수록 “명령”보다 “완료 조건”이 중요해진다.
execute → score → check → continue / terminate
OpenAI Goals, LazyCodex, Gajae-Code, GeekNews loop engineering 요약.
코딩 에이전트의 중심 인터페이스가 “한 번 답하고 멈추는 프롬프트”에서 “증거가 나올 때까지 이어지는 목표”로 바뀝니다.
/goal checkout p95 지연 시간을 120ms 아래로 낮춘다. checkout benchmark로 검증하고 correctness suite는 green으로 유지한다. checkout service, benchmark fixtures, 관련 tests만 사용한다. 반복 사이에는 바꾼 점, benchmark 결과, 다음 최선의 실험을 기록한다. benchmark가 실행되지 않거나 유효한 경로가 없으면 시도한 경로, 수집한 증거, blocker, 다음에 필요한 입력을 남기고 멈춘다.
Source: developers.openai.com/cookbook/examples/codex/using_goals_in_codex
Codex가 조사할 여지는 남기되, 최종 결과는 증거로 정직하게 묶는다.
일을 자연어로 설명하고 Codex에게 draft Goal로 바꾸게 한다.
success condition, verification surface, constraints, blocked stop condition을 다시 조인다.
Help me turn this into a strong /goal: I want Codex to keep working on this flaky checkout test until we either fix it with evidence or can clearly explain what is blocking progress.
필요한 누락 정보만 묻고, 바로 사용할 수 있는 더 깨끗한 /goal을 제안한다.
“계속해”가 아니라 무엇이 완료이고, 무엇이 막힘이고, 무엇이 아직 불확실한지를 남긴다.
agent가 행동을 한다. 코드 읽기, 수정, 실행, 검색, 비교.
결과에 점수를 매긴다. 테스트, 벤치마크, 로그, 산출물.
점수가 목표를 충족했는지 비교한다. 기준은 사용자가 박는다.
충족하면 멈추고, 아니면 다음 시도를 고른다.
/goal <조건>이 세션의 완료 조건으로 등록된다.
응답을 끝내고 멈추려는 순간 조건 충족 여부를 검사한다.
충족 전이면 멈춤을 막고 다시 목표를 향해 일하게 만든다.
목표 텍스트 자체를 directive로 삼아 바로 실행한다.
성공하면 목표가 스스로 사라지고, 중간 취소는 /goal clear.
도구는 달라도 사용자는 “완료 조건이 잡힌 긴 세션”을 원한다.
그래서 Codex의 goal contract와 Claude Code의 stop-hook 감각은 같은 방향을 가리킵니다.
Claude Code, Codex, Cursor 같은 범용 앱 위에, 더 강한 계획/실행/증거 레이어를 얹는 흐름입니다.
Socratic interview와 병렬 탐색으로 decision-complete plan을 만든다.
계획의 모든 체크박스가 끝날 때까지 실행한다. durable state가 남는다.
VERIFIED completion까지 반복하고, oracle 검증 전에는 끝내지 않는다.
Source: lazycodex.ai — $ulw-plan, $start-work, $ulw-loop sections
init-deep로 계층형 AGENTS.md를 생성해 큰 repo에서도 로컬 지침을 먼저 읽는다.
ulw-plan이 애매한 일을 결정 가능한 계획으로 바꾼 뒤 실행으로 넘긴다.
ulw-loop는 hopeful status가 아니라 검증된 완료까지 민다.
review-work, remove-ai-slops, frontend-ui-ux, programming, LSP, rules.
Explore → Plan → Implement → Verify → Manual QA.
goal이 커질수록 하네스는 “검증 기본값”을 설치하는 방향으로 간다.
repo 또는 worktree에서 실행하는 external coding-agent harness.
deep-interview → ralplan → ultragoal
병렬 tmux worker가 진짜 도움이 될 때만 team 실행을 붙인다.
Codex CLI, Claude Code, OpenCode, Claw Code 내부 플러그인이 아니라 옆에서 실행한다.
structured planning, persistent evidence, tmux-backed workers, isolated worktree.
bun install -g gajae-code
gjc --tmux --worktree my-task
스킬을 마구 늘리는 방식이 아니라, 이 메서드 자체를 더 잘 만드는 방식으로 Gajae Code는 좋아집니다.
deep-interview는 코드를 건드리기 전에 애매한 요청을 구체적인 요구사항, 경계, 명시적인 비목표로 바꿉니다.
ralplan은 구현 계획을 만들고 비판합니다. 그다음 ultragoal이 승인된 계획을 실행으로 넘기고, 병렬성이 도움이 될 때만 tmux worker를 붙입니다.
ultragoal은 goal, revision, check, completion evidence를 추적해서, 끝난 작업이 hopeful claim이 아니라 검증 가능한 흔적과 함께 남게 합니다.
코딩, 리서치, 문서, 브라우저, 자동화, 사이드 패널. 제품은 super app처럼 넓어집니다.
문제는 넓어질수록 “이 작업을 어떤 방식으로 끝낼 것인가”가 더 중요해진다는 점입니다.
interview, plan, goal, evidence, worker, QA. 범용 도구가 넓힌 표면 위에 작업 규율을 얹습니다.
deep-interview → plan → goal → execute → verify
/goal과 하네스가 가능해지면, 다음 질문은 “어떤 루프를 만들 것인가”가 됩니다.
일이 진화하는 방식의 예고편이다. 반복 작업은 점점 루프로 들어간다.
코드를 직접 리뷰하지 않거나 자동 루프에만 의존하면 품질이 하향 나선에 빠진다.
루프를 설정하되, 직접 프롬프트하고 검증하는 균형이 필요하다.
한 사람은 이해한 일을 더 빨리 하고, 다른 사람은 이해하지 않으려는 데 쓴다.
루프는 그 차이를 모른다. 하지만 엔지니어는 안다.
시작 버튼 누르는 사람이 아니라, 엔지니어로 남을 사람처럼 루프를 만든다.
끝났다고 말할 수 있는 상태, 증거, 제약을 쓴다.
interview, plan, execution, evidence를 명시적 표면으로 만든다.
자동 루프가 품질을 망치지 않도록 사람이 검증 지점과 중단 조건을 설계한다.
end state, evidence, constraints, scope, decision rule, blocker report.
계획, 증거, worker, QA를 도구 밖에 명시한다.
반복 작업을 없애자