loop-engineering
AI 코딩 에이전트를 활용한 루프 엔지니어링(loop engineering)을 위한 실용적인 패턴, 스타터 및 CLI 도구. 에이전트를 프롬프트하고 오케스트레이션하는 디자인 시스템 (Addy Osmani와 Boris Cherny에게 영감을 받음). `loop-audit`, `loop-init`, `loop-cost` 포함.
파일 탐색기
- add-adopter.yml
- bug-report.yml
- config.yml
- pattern-request.yml
- share-story.yml
- audit.yml
- changelog-drafter.yml
- daily-triage.yml
- publish-goal-audit-bootstrap.yml
- release-goal-audit.yml
- release-goal-init.yml
- release-loop-audit.yml
- release-loop-context.yml
- release-loop-cost.yml
- release-loop-gate.yml
- release-loop-init.yml
- release-loop-mcp-server.yml
- release-loop-sandbox.yml
- release-loop-swarm.yml
- release-loop-sync.yml
- release-loop-worktree.yml
- release-loop.yml
- release-readiness-core.yml
- update-star-history.yml
- validate-patterns.yml
- welcome-contributors.yml
- CODE_OF_CONDUCT.md
- dependabot.yml
- FUNDING.yml
- PULL_REQUEST_TEMPLATE.md
- ruleset-main-protection.json
- LE5.jpeg
- loop-anatomy.jpg
- loop-audit-demo.gif
- loop-cycle-animated.svg
- loop-engineering-logo.jpg
- loop-engineering-logo.svg
- loop-engineering-social-banner.jpg
- patterns-overview.svg
- primitives-infographic.jpg
- section-divider.svg
- social-preview.jpg
- star-history-dark.svg
- star-history.svg
- author-banner.jpg
- showcase.css
- star-history.css
- substack-score-climbs-then-budget-burns.md
- v1.6.0-social-drafts.md
- _config.yml
- adopters.md
- anti-patterns.md
- architecture-diagrams.md
- area-owners.md
- cli-front-door.md
- concepts.md
- failure-modes.md
- GITHUB_PAGES.md
- index.html
- loop-design-checklist.md
- loop-init-validation.md
- multi-loop.md
- operating-loops.md
- pattern-picker.md
- primitives-matrix.md
- primitives.md
- QUICKSTART.md
- RELEASE.md
- safety.md
- star-history.html
- changelog-drafter.md
- ci-sweeper.md
- constraints.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- changelog-drafter.md
- ci-sweeper.md
- constraints.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- changelog-drafter.md
- ci-sweeper.md
- constraints.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- README.md
- changelog-drafter.yml
- ci-sweeper.yml
- daily-triage.yml
- dependency-sweeper.yml
- issue-triage.yml
- post-merge-cleanup.yml
- pr-babysitter.yml
- README.md
- changelog-drafter.md
- ci-sweeper.md
- constraints.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- README.md
- ci-sweeper.md
- daily-triage.md
- issue-triage.md
- pr-babysitter.md
- README.md
- github-propose.json
- github-readonly.mcp.json
- linear.json
- loop-engineering.mcp.json
- README.md
- safe-write-pattern.md
- slack-read.json
- changelog-drafter.md
- ci-sweeper.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- README.md
- changelog-drafter.md
- ci-sweeper.md
- constraints-example.md
- constraints.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- README.md
- changelog-drafter.md
- ci-sweeper.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- README.md
- README.md
- changelog-drafter.md
- ci-sweeper.md
- daily-triage.md
- dependency-sweeper.md
- issue-triage.md
- post-merge-cleanup.md
- pr-babysitter.md
- README.md
- registry.schema.json
- registry.yaml
- alternative_openers.txt
- compressed_version.txt
- MANIFEST.sha256
- MANIFEST_VERIFY.txt
- README.md
- TERMINAL_ART.txt
- sources.md
- adopters-row.md
- aider-appendix.md
- amazon-q-appendix.md
- append-run-log-invalid-json-test.md
- budget-negotiator-docs.md
- changelog-drafter-story.md
- ci-sweeper-story.md
- cline-appendix.md
- codeium-appendix.md
- continue-dev-matrix.md
- contributing-path-abc.md
- cursor-changelog-drafter-example.md
- cursor-ci-sweeper-example.md
- cursor-constraints.md
- cursor-daily-triage.md
- cursor-dependency-sweeper-example.md
- cursor-issue-triage-example.md
- cursor-post-merge-cleanup-example.md
- cursor-pr-babysitter-example.md
- daily-triage-story.md
- dependency-sweeper-story.md
- examples-aider-link.md
- examples-cursor-windsurf-columns.md
- harden-loop-action-command.md
- hermes-ci-sweeper-example.md
- hermes-copy-paste-starters.md
- hermes-examples-readme.md
- hermes-issue-triage-example.md
- hermes-pr-babysitter-example.md
- hermes-quickstart.md
- hermes-readme-index.md
- issue-triage-story.md
- loop-init-validation-checklist.md
- loop-sandbox-story.md
- loop-sync-crlf-tests.md
- loop-worktree-week-two-story.md
- multi-loop-failure-story.md
- multi-loop-story.md
- opencode-constraints-example.md
- post-merge-cleanup-story.md
- pr-babysitter-story.md
- quickstart-loop-action.md
- quickstart-loop-context.md
- quickstart-loop-gate.md
- quickstart-loop-sandbox.md
- quickstart-loop-swarm.md
- quickstart-loop-sync.md
- quickstart-mcp-server.md
- quickstart-minimax-foundry.md
- quickstart-tool-values.md
- quickstart-worktree-lock-import.md
- readiness-core-skill-dedup-test.md
- windows-contributor-notes.md
- windsurf-changelog-drafter-example.md
- windsurf-ci-sweeper-example.md
- windsurf-daily-triage.md
- windsurf-dependency-sweeper-example.md
- windsurf-issue-triage-example.md
- windsurf-post-merge-cleanup-example.md
- windsurf-pr-babysitter-example.md
- zed-appendix.md
- append-run-log.mjs
- append-run-log.test.mjs
- before-after-demo.sh
- check-loop-init-sync.mjs
- ci-audit-gates.sh
- ci-validate-gates.sh
- create-good-first-issues.sh
- generate-audit-demo-gif.py
- generate-contributors.mjs
- generate-star-history.py
- upload-social-preview.sh
- validate-registry.mjs
- SKILL.md
- SKILL.md
- SKILL.md
- SKILL.md
- SKILL.md
- SKILL.md
- SKILL.md
- verifier.md
- SKILL.md
- SKILL.md
- verifier.toml
- SKILL.md
- SKILL.md
- SKILL.md
- SKILL.md
- SKILL.md
- changelog-drafter-state.md.example
- LOOP.md
- README.md
- SKILL.md
- AGENTS.md
- changelog-drafter-state.md.example
- LOOP.md
- opencode.json.example
- README.md
- loop-verifier.md
- SKILL.md
- verifier.toml
- SKILL.md
- SKILL.md
- ci-sweeper-state.md.example
- README.md
- SKILL.md
- AGENTS.md
- ci-sweeper-state.md.example
- LOOP.md
- opencode.json.example
- README.md
- loop-verifier.md
- SKILL.md
- verifier.toml
- SKILL.md
- SKILL.md
- dependency-sweeper-state.md.example
- LOOP.md
- README.md
- SKILL.md
- AGENTS.md
- dependency-sweeper-state.md.example
- LOOP.md
- opencode.json.example
- README.md
- loop-verifier.md
- SKILL.md
- verifier.toml
- SKILL.md
- SKILL.md
- SKILL.md
- issue-triage-state.md.example
- LOOP.md
- README.md
- SKILL.md
- AGENTS.md
- issue-triage-state.md.example
- LOOP.md
- opencode.json.example
- README.md
- SKILL.md
- LOOP.md
- README.md
- STATE.md.example
- loop-verifier.md
- SKILL.md
- LOOP.md
- README.md
- STATE.md.example
- verifier.toml
- SKILL.md
- LOOP.md
- README.md
- STATE.md.example
- SKILL.md
- AGENTS.md
- LOOP.md
- opencode.json.example
- README.md
- STATE.md.example
- loop-verifier.md
- SKILL.md
- verifier.toml
- SKILL.md
- SKILL.md
- LOOP.md
- post-merge-state.md.example
- README.md
- SKILL.md
- AGENTS.md
- LOOP.md
- opencode.json.example
- post-merge-state.md.example
- README.md
- loop-verifier.md
- SKILL.md
- verifier.toml
- SKILL.md
- SKILL.md
- LOOP.md
- pr-babysitter-state.md.example
- README.md
- SKILL.md
- AGENTS.md
- LOOP.md
- opencode.json.example
- pr-babysitter-state.md.example
- README.md
- README.md
- changelog-drafter-week-one.md
- ci-sweeper-infinite-flaky-test.md
- ci-sweeper-symptom-patching-and-circuit-breaker.md
- daily-triage-report-only.md
- dependency-sweeper-week-one.md
- dependency-vs-ci-sweeper-collision.md
- ky-cut-surface-generation-vs-consequence.md
- l1-to-l2-graduation.md
- loop-budget-example.md
- loop-run-log-example.md
- loop-sandbox-ephemeral-isolation.md
- loop-worktree-week-two.md
- multi-loop-collision.md
- multi-loop-coordination.md
- post-merge-cleanup-honest-win.md
- pr-babysitter-week-one.md
- quant-loop-out-of-time.md
- quant-loop-the-verifier-problem.md
- README.md
- score-climbs-then-budget-burns.md
- why-we-killed-ci-sweeper.md
- fleet-inbox.md
- fleet-registry.md
- gate.yaml.template
- goal-budget.md.template
- goal-run-log.md.template
- GOAL.md.template
- loop-budget.md.template
- loop-constraints.md
- loop-run-log.md.template
- memory-budget.md
- memory-tiers.md
- pattern-template.md
- SKILL.md.budget-negotiator
- SKILL.md.goal-scoper
- SKILL.md.goal-verifier
- SKILL.md.issue-triage
- SKILL.md.loop-budget
- SKILL.md.loop-constraints
- SKILL.md.loop-guard
- SKILL.md.loop-intake
- SKILL.md.loop-triage
- SKILL.md.minimal-fix
- SKILL.md.verifier
- STATE.md.template
- auditor.d.ts
- auditor.d.ts.map
- auditor.js
- auditor.js.map
- cli.d.ts
- cli.d.ts.map
- cli.js
- cli.js.map
- reporter.d.ts
- reporter.d.ts.map
- reporter.js
- reporter.js.map
- auditor.ts
- cli.ts
- reporter.ts
- .gitkeep
- SKILL.md
- AGENTS.md
- GOAL.md
- package.json
- auditor.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- contributor-cta.d.ts
- contributor-cta.js
- bundle-assets.mjs
- cli.ts
- contributor-cta.ts
- cli.test.mjs
- .gitignore
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- doctor.d.ts
- doctor.js
- files.d.ts
- files.js
- pass-through.d.ts
- pass-through.js
- status.d.ts
- status.js
- wizard.d.ts
- wizard.js
- cli.ts
- doctor.ts
- files.ts
- pass-through.ts
- status.ts
- wizard.ts
- cli.test.mjs
- files.test.mjs
- CHANGELOG.md
- package-lock.json
- package.json
- README.md
- tsconfig.json
- action.yml
- README.md
- auditor.d.ts
- auditor.js
- autofixer.d.ts
- autofixer.js
- cli.d.ts
- cli.js
- contributor-cta.d.ts
- contributor-cta.js
- reporter.d.ts
- reporter.js
- auditor.ts
- autofixer.ts
- cli.ts
- contributor-cta.ts
- reporter.ts
- auditor.test.mjs
- autofixer.test.mjs
- CHANGELOG.md
- package-lock.json
- package.json
- README.md
- tsconfig.json
- budget-resolver.d.ts
- budget-resolver.js
- cli.d.ts
- cli.js
- context-manager.d.ts
- context-manager.js
- daily-spend.d.ts
- daily-spend.js
- budget-resolver.ts
- cli.ts
- context-manager.ts
- daily-spend.ts
- on-exceed-capture.mjs
- on-exceed-ignore-stdin.mjs
- budget-resolver.test.mjs
- cli.test.mjs
- context-manager.test.mjs
- daily-spend.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- estimator.d.ts
- estimator.js
- bundle-registry.mjs
- cli.ts
- estimator.ts
- estimator.test.mjs
- package-lock.json
- package.json
- README.md
- registry.json
- tsconfig.json
- cli.d.ts
- cli.js
- gate.d.ts
- gate.js
- cli.ts
- gate.ts
- cli.test.mjs
- gate.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- contributor-cta.d.ts
- contributor-cta.js
- bundle-assets.mjs
- cli.ts
- contributor-cta.ts
- cli.test.mjs
- .gitignore
- CHANGELOG.md
- package-lock.json
- package.json
- README.md
- registry.yaml
- tsconfig.json
- cli.d.ts
- cli.js
- metrics.d.ts
- metrics.js
- cli.ts
- metrics.ts
- metrics.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- sandbox.d.ts
- sandbox.js
- cli.ts
- sandbox.ts
- sandbox.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- swarm.d.ts
- swarm.js
- cli.ts
- swarm.ts
- swarm.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- sync.d.ts
- sync.js
- cli.ts
- sync.ts
- sync.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- cli.d.ts
- cli.js
- lock.d.ts
- lock.js
- worktree.d.ts
- worktree.js
- cli.ts
- lock.ts
- worktree.ts
- cli.test.mjs
- lock.test.mjs
- package-exports.test.mjs
- worktree.test.mjs
- package-lock.json
- package.json
- README.md
- tsconfig.json
- index.d.ts
- index.js
- resolver.d.ts
- resolver.js
- index.ts
- resolver.ts
- server.test.mjs
- CHANGELOG.md
- package-lock.json
- package.json
- README.md
- tsconfig.json
- index.ts
- index.test.mjs
- .gitignore
- package-lock.json
- package.json
- README.md
- tsconfig.json
- .gitignore
- _config.yml
- AGENTS.md
- changelog-drafter-state.md
- CODE_OF_CONDUCT.md
- CODEOWNERS
- CONTRIBUTING.md
- CONTRIBUTORS.md
- gate.yaml
- LICENSE
- loop-budget.md
- loop-constraints.md
- loop-run-log.md
- LOOP.md
- package-lock.json
- package.json
- README.md
- RELEASE_NOTES_DRAFT.md
- RELEASE_NOTES_v1.5.0.md
- SECURITY.md
- STATE.md
# 설치 가이드
node설치 및 실행 절차
npm install
프로젝트의 루트 의존성 패키지를 설치합니다.
npm test
레지스트리 및 스크립트 검증 테스트를 실행합니다.
npx @cobusgreyling/loop init . --pattern daily-triage --tool grok
지정된 패턴과 도구로 루프 엔지니어링 템플릿을 초기화합니다.
npx @cobusgreyling/loop doctor .
루프 준비 상태를 진단하고 권장 조치 사항을 확인합니다.
핵심 명령어
npx @cobusgreyling/loop init . --pattern daily-triage --tool grok
스킬, 상태, 예산 파일을 스캐폴딩하고 Loop Ready 점수를 확인합니다.
npx @cobusgreyling/loop doctor .
감사 및 동기화 상태를 점검하여 개선이 필요한 최상위 작업들을 진단합니다.
npx @cobusgreyling/loop audit . --suggest
프로젝트의 루프 준비 상태 점수를 평가하고 개선점을 제안합니다.
npx @cobusgreyling/loop cost
에이전트 루프 실행에 필요한 예상 토큰 비용을 산출합니다.
# CDN으로 사용하기
jsDelivrjsDelivr는 공개 GitHub 리포지토리를 별도 설정 없이 CDN으로 즉시 서빙합니다. 버전과 파일을 고르면 웹페이지에 바로 붙일 수 있는 링크와 예시 코드가 만들어집니다.
릴리즈 타임라인
활발히 관리 중- 2026-07-20 v1.6.0 — Foundry funnel + loop-gate
- 2026-06-30 v1.5.0 — Community Tools Drop
명령어 용어집
이 문서에서 사용된 명령어를 모아봤습니다. 낯선 명령어가 있다면 펼쳐서 확인해보세요.
claude
설명 보기 ▼
claude
코드베이스를 이해하고 자연어 명령을 통해 더 빠르게 코딩할 수 있도록 도와주는 에이전트 기반 코딩 도구.
더 많은 정보: <https://code.claude.com/docs/en/cli-reference>.
claude prompt
프롬프트로 실행:
claude update
`claude`를 업데이트:
claude mcp list
지정된 MCP 서버 목록을 표시:
codex
설명 보기 ▼
codex
OpenAI로 구동되는 터미널용 자연어 코드 어시스턴트.
요청을 수행하기 위해 현재 디렉터리의 파일을 읽고 수정.
더 많은 정보: <https://developers.openai.com/codex/cli/reference>.
codex
현재 디렉터리에서 대화형 Codex 세션을 시작:
codex "{{prompt}}"
프롬프트를 사용해 단일 Codex 명령을 실행:
codex --sandbox workspace-write "{{prompt}}"
프롬프트를 전체 자동 모드로 실행:
node
설명 보기 ▼
node
서버 측 JavaScript 플랫폼 (Node.js).
더 많은 정보: <https://nodejs.org/docs/latest/api/cli.html#options>.
node {{path/to/file}}
JavaScript 파일 실행:
node
REPL(대화형 셸) 시작:
node --watch {{path/to/file}}
지정된 파일을 실행하고 가져온 파일이 변경될 때 프로세스를 재시작 (Node.js 버전 18.11+ 필요):
npx
설명 보기 ▼
npx
이 명령은 `npm exec`의 별칭입니다.
tldr npm exec
자세한 내용은 원본 명령을 참고하세요:
opencode
설명 보기 ▼
opencode
AI 코딩 에이전트.
`auth`, `models`, `web`와 같은 일부 하위명령어는 별도의 사용법 문서를 가짐.
더 많은 정보: <https://opencode.ai/docs/cli/>.
opencode
대화형 TUI 시작:
opencode {{[-c|--continue]}}
가장 최근 세션 이어서 실행:
opencode run "{{message}}"
프롬프트를 직접 전달하여 비대화형으로 실행:
