OpenAgentsControl: 사용자의 코딩 패턴을 학습하여 일관된 코드를 생성하는 AI 에이전트
요약
OpenAgentsControl은 사용자의 코딩 패턴을 학습하여 일관된 프로덕션 레디 코드를 생성하는 AI 에이전트 프레임워크입니다. OpenCode를 기반으로 컨텍스트 관리와 팀 워크플로를 확장하여, 모델에 상관없이 팀의 코딩 표준을 유지하도록 돕습니다.
핵심 포인트
- 사용자 정의 코딩 패턴을 통한 일관된 코드 생성
- 승인 게이트 시스템으로 인간의 통제권 유지
- MVI 원칙을 적용한 토큰 효율적 컨텍스트 관리
- Claude, GPT, Gemini 등 다양한 모델 지원
- 팀 단위의 코딩 표준 공유 및 자동 상속
사용자의 코딩 패턴을 학습하여 매번 일치하는 코드를 생성하는 AI 에이전트.
🎯 패턴 제어 (Pattern Control) - 패턴을 한 번 정의하면 AI가 영구적으로 사용합니다.
✋ 승인 게이트 (Approval Gates) - 실행 전 검토하고 승인하세요.
🔁 반복 가능한 결과 (Repeatable Results) - 동일한 패턴 = 동일한 품질의 코드
📝 편집 가능한 에이전트 (Editable Agents) - AI 동작을 완전히 제어할 수 있습니다.
👥 팀 협업 준비 완료 (Team-Ready) - 모든 팀원이 동일한 패턴을 사용합니다.
다국어 지원: TypeScript • Python • Go • Rust • C# • 기타 모든 언어*
모델 불가지론 (Model Agnostic): Claude • GPT • Gemini • MiniMax • 로컬 모델 (Local models)
오픈 소스 AI 코딩 프레임워크인 OpenCode를 기반으로 구축되었습니다. OAC는 OpenCode를 전문화된 에이전트, 컨텍스트 관리 (Context management), 그리고 팀 워크플로 (Team workflows)로 확장합니다.
대부분의 AI 에이전트는 당신의 코드베이스를 모르는 개발자를 채용하는 것과 같습니다. 그들은 일반적인 (Generic) 코드를 작성합니다. 당신은 코드를 다시 쓰고, 리팩토링 (Refactoring)하고, 불일치를 수정하는 데 수 시간을 소비합니다. 토큰 (Tokens)은 낭비되고, 시간은 허비되며, 실제 작업은 이루어지지 않습니다.
예시:
// AI가 제공하는 것 (일반적인 코드)
export async function POST(request: Request) {
const data = await request.json();
...
OpenAgentsControl은 에이전트에게 당신의 패턴을 사전에 학습시킵니다. 에이전트는 당신의 코딩 표준, 아키텍처 (Architecture), 보안 요구 사항을 이해합니다. 구현하기 전에 계획을 제안하며, 검증과 함께 점진적으로 실행합니다.
결과: 대대적인 재작업 없이 바로 배포 가능한 프로덕션 레디 (Production-ready) 코드.
🎯 컨텍스트 인식 (Context-Aware, 당신의 비밀 병기)
에이전트는 코드를 생성하기 전에 당신의 패턴을 로드합니다. 코드는 시작부터 당신의 프로젝트와 일치합니다. 리팩토링 (Refactoring)이 필요 없습니다.
📝 편집 가능한 에이전트 (내장된 플러그인이 아님)
에이전트의 동작을 완전히 제어할 수 있습니다. 마크다운 (Markdown) 파일을 직접 편집하세요. 컴파일도 필요 없고, 특정 업체에 종속 (Vendor lock-in)되지도 않습니다. 워크플로를 변경하고, 제약 조건을 추가하며, 팀에 맞게 커스텀하세요.
✋ 승인 게이트 (Human-Guided AI, 인간이 가이드하는 AI)
에이전트는 실행 전 '항상' 승인을 요청합니다. 제안 → 승인 → 실행. 당신이 통제권을 유지합니다. "세상에, AI가 방금 뭘 한 거지?"와 같은 당혹스러운 순간은 없습니다.
⚡ 토큰 효율성 (Token Efficient, MVI 원칙)
최소 실행 정보 (Minimal Viable Information, MVI) 설계. 필요한 것만, 필요한 시점에 로드합니다. 200행 미만의 컨텍스트 파일, 지연 로딩 (Lazy loading)을 통해 더 빠른 응답을 제공합니다.
👥 팀 준비 완료 (반복 가능한 패턴, Repeatable Patterns)
당신만의 코딩 패턴을 한 번만 저장하세요. 팀 전체가 동일한 표준을 사용합니다. 컨텍스트를 리포지토리 (Repo)에 커밋하세요. 새로운 개발자는 팀의 패턴을 자동으로 상속받습니다.
🔄 모델 불가지론 (Model Agnostic)
어떤 AI 모델 (Claude, GPT, Gemini, 로컬 모델)이든 사용할 수 있습니다. 특정 벤더에 종속되지 않습니다 (No vendor lock-in).
풀스택 개발 (Full-stack development): OAC는 프론트엔드 (Frontend)와 백엔드 (Backend) 작업을 모두 처리합니다. 에이전트들이 협력하여 UI부터 데이터베이스 (Database)까지 완전한 기능을 구축합니다.
| 기능 | OpenAgentsControl | Cursor/Copilot | Aider | Oh My OpenCode |
|---|---|---|---|---|
| 패턴 학습 | ✅ 내장된 컨텍스트 시스템 | ❌ 패턴 학습 불가 | ❌ 패턴 학습 불가 | |
| 승인 게이트 (Approval Gates) | ✅ 항상 필요함 | ❌ 자동 실행 | ❌ 완전 자율형 | |
| 토큰 효율성 | ✅ MVI 원칙 (80% 절감) | ❌ 전체 컨텍스트 로드 | ❌ 전체 컨텍스트 로드 | ❌ 높은 토큰 사용량 |
| 팀 표준 | ✅ 공유된 컨텍스트 파일 | ❌ 사용자별 설정 | ❌ 팀 지원 없음 | |
| 에이전트 동작 수정 | ✅ 직접 편집 가능한 마크다운 (Markdown) 파일 | ❌ 독점적/내장됨 | ✅ 설정 파일 | |
| 모델 선택 | ✅ 모든 모델, 모든 제공자 | ✅ 다중 모델 | ||
| 실행 속도 | 빠름 | 빠름 | ✅ 병렬 에이전트 | |
| 오류 복구 | ✅ 인간 가이드 검증 | ✅ 자기 수정 (Self-correcting) | ||
| 최적 용도 | 프로덕션 코드, 팀 단위 | 빠른 프로토타입 | 개인 개발자 | 파워 유저, 복잡한 프로젝트 |
OAC를 사용해야 하는 경우:
- ✅ 확립된 코딩 패턴이 있는 경우
- ✅ 리팩터링 (Refactoring) 없이 바로 배포 가능한 코드를 원하는 경우
- ✅ 품질 관리를 위한 승인 게이트가 필요한 경우
- ✅ 토큰 효율성과 비용을 중요하게 생각하는 경우
다른 도구를 사용해야 하는 경우:
Cursor/Copilot: 빠른 프로토타입 제작, 패턴은 중요하지 않은 경우
Aider: 단순한 파일 편집, 팀 협업이 필요 없는 경우
Oh My OpenCode: 병렬 에이전트를 통한 자율 실행이 필요한 경우 (제어보다 속도 우선)
전체 비교: 상세 분석 읽기 →
선행 조건 (Prerequisites): OpenCode CLI (무료, 오픈 소스) • Bash 3.2+ • Git
단 한 줄의 명령어로:
curl -fsSL https://raw.githubusercontent.com/darrenhinde/OpenAgentsControl/main/install.sh | bash -s developer
설치 프로그램이 아직 OpenCode CLI가 설치되어 있지 않다면 이를 설정합니다.
또는 대화형(interactive) 방식:
curl -fsSL https://raw.githubusercontent.com/darrenhinde/OpenAgentsControl/main/install.sh -o install.sh
bash install.sh
curl -fsSL https://raw.githubusercontent.com/darrenhinde/OpenAgentsControl/main/update.sh | bash
사용자 지정 위치(예: ~/.config/opencode)에 설치한 경우
--install-dir PATH
를 사용하세요.
opencode --agent OpenAgent
> "사용자 인증 시스템을 생성해줘"
진행 과정:
- 에이전트가 요청을 분석합니다.
- 계획을 제안합니다 (사용자가 승인).
- 검증(validation)과 함께 단계별로 실행합니다.
- 필요할 때 전문가(specialists)에게 작업을 위임합니다.
- 프로덕션 준비가 된(production-ready) 코드를 배포합니다.
그게 전부입니다. 기본 모델과 즉시 작동하며, 별도의 설정이 필요하지 않습니다.
Claude Code를 선호하시나요? OpenAgents Control은 Claude Code 플러그인으로도 사용할 수 있습니다!
설치 방법:
- 마켓플레이스 등록:
/plugin marketplace add darrenhinde/OpenAgentsControl
- 플러그인 설치:
/plugin install oac
- 컨텍스트(context) 파일 다운로드:
/oac:setup --core
- 개발 시작:
로그인 엔드포인트 추가해줘
주요 기능:
- ✅ 승인 단계(approval gates)가 포함된 6단계 워크플로우 (6-stage workflow)
- ✅ 컨텍스트 인식 코드 생성 (Context-aware code generation)
- ✅ 7개의 특화된 서브 에이전트 (task-manager, context-scout, context-manager, coder-agent, test-engineer, code-reviewer, external-scout)
- ✅ 9개의 워크플로우 기술(skills) + 6개의 사용자 명령(commands)
- ✅ 유연한 컨텍스트 탐색 (.oac config, .claude/context, context, .opencode/context)
- ✅ GitHub, 워크트리(worktrees), 로컬 파일 또는 URL로부터 컨텍스트 추가 가능
- ✅
/oac:plan을 통한 간편한 기능 계획 수립
문서(Documentation):
- 플러그인 README - 전체 플러그인 문서
- 최초 설정 (First-Time Setup) - 단계별 가이드
- 빠른 시작 (Quick Start) - 빠른 참조
상태: BETA - 활발히 테스트 중이며 초기 사용자(early adopters)를 위한 준비가 완료되었습니다.
AI 코드의 문제점: 사용자의 패턴과 일치하지 않습니다. 이로 인해 리팩터링(refactoring)에 수 시간을 허비하게 됩니다.
OAC 솔루션: 패턴을 한 번만 가르치세요. 에이전트가 이를 자동으로 로드합니다. 처음부터 코드가 일치합니다.
사용자의 요청 (Your Request)
↓
ContextScout가 관련 패턴을 발견함
...
/add-context
6가지 간단한 질문에 답변하세요:
- 기술 스택(tech stack)은 무엇인가요? (Next.js + TypeScript + PostgreSQL + Tailwind)
- API 엔드포인트 예시를 보여주세요 (코드를 붙여넣으세요)
- 컴포넌트 예시를 보여주세요 (코드를 붙여넣으세요)
- 명명 규칙(naming conventions)은 무엇인가요? (kebab-case, PascalCase, camelCase)
- 코드 표준(code standards)이 있나요? (TypeScript strict, Zod validation 등)
- 보안 요구 사항(security requirements)이 있나요? (입력값 검증, 매개변수화된 쿼리 등)
결과: 이제 에이전트가 사용자의 정확한 패턴과 일치하는 코드를 생성합니다. 리팩터링(refactoring)이 필요 없습니다.
MVI (Minimal Viable Information, 최소 유효 정보) = 필요한 것을, 필요한 시점에만 로드합니다.
전통적인 방식 (Traditional approach):
- 전체 코드베이스 컨텍스트(codebase context)를 로드함
- 요청당 막대한 토큰 오버헤드(token overhead) 발생
- 느린 응답 속도 및 높은 비용
OAC 방식:
- 관련 패턴만 로드함
- 컨텍스트 파일이 200줄 미만임 (빠른 로드 가능)
- 지연 로딩 (Lazy loading, 에이전트가 필요한 것만 로드)
- 작업의 80%가 격리된 컨텍스트(isolation context)를 사용함 (최소한의 오버헤드)
실질적인 이점:
효율성: 전체 코드베이스를 로드하는 것에 비해 낮은 토큰 사용량
속도: 더 작은 컨텍스트로 더 빠른 응답
품질: 사용자의 패턴과 일치하는 코드 (리팩터링 불필요)
팀의 문제점: 모든 개발자는 코드를 다르게 작성합니다. 일관성 없는 패턴은 유지보수를 어렵게 만듭니다.
OAC 솔루션: 팀의 패턴을 .opencode/context/project/에 저장하세요.
이를 리포지토리(repo)에 커밋하면, 모두가 동일한 표준을 사용하게 됩니다.
워크플로우 예시:
# 팀 리더가 패턴을 한 번 추가함
/add-context
# 팀 표준에 따라 질문에 답변함
...
결과: 팀 전체에 걸쳐 일관된 코드가 생성됩니다. 스타일 논쟁이 사라지고, 리팩터링을 위한 PR(Pull Request)도 필요 없습니다.
대부분의 AI 도구: 일반적인 코드 생성 → 사용자가 리팩터링
OpenAgentsControl: 사용자의 패턴 → AI가 일치하는 코드 생성
1. 사용자의 컨텍스트 추가 (1회 수행)
↓
2. ContextScout가 관련 패턴을 발견함
...
🎯 컨텍스트 인식 (Context-Aware)
ContextScout가 관련 패턴을 발견합니다. 에이전트는 코드를 생성하기 전에 사용자의 표준 (Standards)을 로드합니다. 코드는 처음부터 사용자의 프로젝트와 일치합니다.
🔁 반복 가능성 (Repeatable)
동일한 패턴 → 동일한 결과. 한 번 설정하면 영구적으로 사용 가능합니다. 팀 단위 작업에 완벽합니다.
⚡ 토큰 효율성 (Token Efficient, 80% 감소)
MVI 원칙: 필요한 것만 로드합니다. 8,000 토큰 → 750 토큰. 막대한 비용 절감이 가능합니다.
✋ 인간 가이드 (Human-Guided)
에이전트가 계획을 제안하면, 실행 전 사용자가 승인합니다. 품질 게이트 (Quality gates)가 실수를 방지합니다. 자동 실행으로 인한 돌발 상황이 없습니다.
📝 투명성 및 편집 가능성 (Transparent & Editable)
에이전트는 사용자가 직접 편집할 수 있는 마크다운 (Markdown) 파일입니다. 워크플로를 변경하고, 제약 사항을 추가하며, 동작을 커스터마이징할 수 있습니다. 특정 벤더 종속 (Vendor lock-in)이 없습니다.
1. ContextScout - 스마트 패턴 발견 (Smart Pattern Discovery)
코드를 생성하기 전에, ContextScout가 컨텍스트 파일에서 관련 패턴을 발견합니다. 우선순위에 따라 순위를 매깁니다 (Critical → High → Medium). 불필요한 작업 낭비를 방지합니다.
2. 편집 가능한 에이전트 (Editable Agents) - 완전한 제어 (Full Control)
동작 방식이 플러그인에 내장된 Cursor/Copilot과 달리, OAC 에이전트는 마크다운 (Markdown) 파일입니다. 직접 편집할 수 있습니다:
nano .opencode/agent/core/opencoder.md # 로컬 프로젝트 설치 시
# 또는: nano ~/.config/opencode/agent/core/opencoder.md # 글로벌 설치 시
# 프로젝트 규칙 추가, 워크플로 변경, 동작 커스터마이징
3. ExternalScout - 실시간 문서화 (Live Documentation) 🆕
외부 라이브러리를 사용 중인가요? ExternalScout가 최신 문서를 가져옵니다:
- 공식 소스 (npm, GitHub, 문서 사이트)에서 실시간 문서 확보
- 오래된 학습 데이터 문제 없음 - 항상 최신 상태 유지
- 에이전트가 외부 의존성 (External dependencies)을 감지하면 자동으로 트리거됨
- 프레임워크, API, 라이브러리 등을 지원
4. 승인 게이트 (Approval Gates) - 돌발 상황 방지
에이전트는 다음 작업 전에는 '항상' 승인을 요청합니다:
- 파일 쓰기/편집
- bash 명령 실행
- 하위 에이전트 (Subagents)에게 위임
- 모든 변경 사항 적용
사용자가 제어권을 유지합니다. 실행 전에 계획을 검토하십시오.
5. MVI 원칙 - 토큰 효율성 (Token Efficiency)
빠른 로딩을 위해 설계된 파일 구조:
- 개념 (Concepts): <100 라인
- 가이드 (Guides): <150 라인
- 예시 (Examples): <80 라인
결과: 전체 코드베이스 (Codebase)를 로드하는 것에 비해 토큰 사용량이 낮습니다.
6. 팀 패턴 (Team Patterns) - 반복 가능한 결과
.opencode/context/project/에 패턴을 저장합니다.
. 저장소(Repo)에 커밋합니다. 팀 전체가 동일한 표준을 사용합니다. 새로운 개발자는 패턴을 자동으로 상속받습니다.
가장 적합한 용도: 시스템 학습, 일반적인 작업, 빠른 구현
opencode --agent OpenAgent
> "사용자 인증 시스템을 생성해줘" # 기능 구축 (Building features)
> "Next.js에서 인증을 어떻게 구현하나요?" # 질문 (Questions)
...
작동 방식:
- ContextScout를 통해 패턴을 로드합니다.
- 계획을 제안합니다 (사용자가 승인).
- 검증(Validation)과 함께 실행합니다.
- 필요할 때 전문가(Specialists)에게 위임합니다.
완벽한 용도: 처음 사용하는 사용자, 단순한 기능, 워크플로우 학습
가장 적합한 용도: 복잡한 기능, 다중 파일 리팩토링 (Multi-file refactoring), 프로덕션 시스템 (Production systems)
opencode --agent OpenCoder
> "사용자 인증 시스템을 생성해줘" # 풀스택 기능 (Full-stack features)
> "의존성 주입 (Dependency injection)을 사용하도록 이 코드베이스를 리팩토링해줘" # 다중 파일 리팩토링 (Multi-file refactoring)
...
작동 방식:
발견 (Discover): ContextScout가 관련 패턴을 찾습니다.
제안 (Propose): 상세한 구현 계획을 세웁니다.
승인 (Approve): 사용자가 검토하고 승인합니다.
실행 (Execute): 검증과 함께 점진적인 구현을 진행합니다.
검증 (Validate): 테스트, 타입 체크 (Type checking), 코드 리뷰를 수행합니다.
배포 (Ship): 프로덕션 준비가 된 코드를 생성합니다.
완벽한 용도: 프로덕션 코드, 복잡한 기능, 팀 개발
가장 적합한 용도: 사용자의 도메인에 맞춘 완전한 맞춤형 AI 시스템 구축
opencode --agent SystemBuilder
> "고객 지원 AI 시스템을 생성해줘"
대화형 위저드(Interactive wizard)가 오케스트레이터 (Orchestrators), 하위 에이전트 (Subagents), 컨텍스트 파일 (Context files), 워크플로우 (Workflows) 및 명령어를 생성합니다.
완벽한 용도: 도메인 특화 AI 시스템 생성
OpenAgent- 일반적인 작업, 질문, 학습 (여기서 시작하세요)
OpenCoder- 프로덕션 개발, 복잡한 기능
SystemBuilder- 맞춤형 AI 시스템 생성
ContextScout- 스마트 패턴 발견 (당신의 비밀 병기)
TaskManager- 복잡한 기능을 원자적 하위 작업(atomic subtasks)으로 분해
CoderAgent- 집중적인 코드 구현
TestEngineer- 테스트 작성 및 TDD (테스트 주도 개발)
CodeReviewer- 코드 리뷰 및 보안 분석
BuildAgent- 타입 체크 (Type checking) 및 빌드 검증
DocWriter- 문서 생성
ExternalScout- 외부 라이브러리를 위한 실시간 문서 검색 (오래된 학습 데이터에 의존하지 않음)
NEW!- 추가적인 카테고리 전문가: 프론트엔드 (frontend), 데브옵스 (devops), 카피라이터 (copywriter), 기술 작가 (technical-writer), 데이터 분석가 (data-analyst)
/add-context
-
당신의 패턴을 추가하기 위한 대화형 위저드 (wizard)
/commit -
관례적인 형식 (conventional format)을 갖춘 스마트 git 커밋
/test -
테스트 워크플로우 (workflows)
/optimize -
코드 최적화
/context -
컨텍스트 (Context) 관리
-
그리고 7개 이상의 생산성 명령어
에이전트에 의해 자동으로 로드되는 당신의 코딩 표준:
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기