콘텐츠로 이동

Bonie Architecture Overview

Bonie는 Claude Code 전용 플러그인 스위트로, 4-Layer 모델 기반의 코딩 에이전트를 luxtra 팀에 제공한다.

What is this

Bonie는 하나의 marketplace 설치로 활성화되는 플러그인 모음이다. 팀원이 Claude Code를 사용할 때 스택별 전문 지식, 팀 컨벤션, 테크리드 수준의 피드백을 자동으로 제공한다.

Why it exists

Claude Code는 강력하지만 프로젝트/팀 맥락 없이 범용적으로 동작한다. 매 세션마다 동일한 규칙을 설명하거나, skill을 직접 호출하는 것은 비효율적이다. Bonie는 이 gap을 메우기 위해 자동 로드 우선 원칙으로 설계되었다 — 팀원이 별도의 학습 없이 Claude Code를 사용하는 것만으로 팀의 표준과 전문 지식이 적용된다.

Key concepts

  • Plugin Suite — 단일 marketplace로 묶인 복수의 플러그인 집합
  • 4-Layer Model — 범용(Primitives) → 팀 규칙(Team Rules) → 스택 지식(Stack Skills) → 페르소나(Lead Persona)
  • Auto-load First — 사용자의 명시적 호출 없이 description/path 기반으로 자동 활성화
  • Main-bundlebonie 하나 설치 시 전체 스위트가 함께 활성화

System view

block-beta
  columns 1

  block:suite["Bonie Plugin Suite"]
    columns 1

    block:l4["Layer 4: Lead Persona"]
      columns 3
      review["Code Review"]
      advisor["Decision Advisor"]
      mentor["Team Mentoring"]
    end

    block:l3["Layer 3: Stack Skills"]
      columns 5
      lang["lang"]
      devops["devops"]
      git["git"]
      design["design"]
      security["security"]
    end

    block:l2["Layer 2: Team Rules"]
      columns 2
      guides["guides/"]
      project["project/"]
    end

    block:l1["Layer 1: Primitives (8 plugins)"]
      columns 4
      bonie["bonie"]
      todo["todo"]
      doc["doc"]
      context["context"]
      persona["persona"]
      dir["dir"]
      observer["observer"]
      reviewer["reviewer"]
    end

    block:infra["Infrastructure"]
      columns 1
      infra_flow["marketplace.json ← plugin.json ← settings.json"]
    end
  end

Components

Layer 1: Primitives

  • Responsibility — 프로젝트/스택 무관 공통 워크플로우
  • Inputs — 사용자 명시 호출 (/bonie:init, /todo:plan)
  • Outputs.claude/ 스캐폴딩, TODO.md 기반 실행 계획
  • Dependencies — 없음 (최하위 레이어)

Layer 2: Team Rules

  • Responsibility — luxtra 팀 컨벤션, 코드 스타일, 의사결정 패턴
  • Inputs.claude/rules/ 디렉토리의 markdown 파일
  • Outputs — 세션 컨텍스트에 규칙 주입
  • Dependencies — L1 (.claude/ 구조 필요)

Layer 3: Stack Skills

  • Responsibility — 언어/프레임워크/인프라별 전문 지식
  • Inputs — 파일 확장자/경로 기반 자동 매칭
  • Outputs — 컨벤션, 패턴, 트러블슈팅 지식 주입
  • Dependencies — L1 (primitives), 다른 카테고리에는 의존 안 함

Layer 4: Lead Persona

  • Responsibility — 테크리드의 판단 기준과 피드백 방식 반영
  • Inputs — Claude 자동 위임 (description 기반)
  • Outputs — 코드 리뷰, 의사결정 조언, 멘토링
  • Dependencies — L1~L3 정보를 종합하여 판단

Interactions

설치 → 초기화 → 세션

sequenceDiagram
    participant User
    participant Marketplace
    participant Bonie as bonie plugin
    participant Project as .claude/

    User->>Marketplace: bonie 설치
    Marketplace->>Bonie: 전체 plugins 활성화

    User->>Bonie: /bonie:init
    Bonie->>Project: .claude/ 스캐폴딩

    Note over User, Project: 세션 시작

    User->>Project: CLAUDE.md + rules/ 로드
    Project->>Bonie: skill descriptions 컨텍스트 주입
    User->>Bonie: 프롬프트 → skill 자동 매칭
    Bonie->>User: 전문 지식 적용된 응답

세션 라이프사이클

flowchart TD
    SS["SessionStart"] --> Load["CLAUDE.md + rules/ 로드"]
    Load --> Skills["plugin skills description 컨텍스트 주입"]
    Skills --> Todo["TODO.md 현재 상태 확인 (todo hook)"]
    Todo --> Loop

    subgraph Loop["작업 루프"]
        direction TB
        Prompt["사용자 프롬프트"] --> SkillMatch["skill 자동 매칭"]
        SkillMatch --> AgentDel["agent 자동 위임 (필요시)"]
        AgentDel --> Hooks["PreToolUse / PostToolUse hooks"]
        Hooks --> Update["TODO.md 진행 상태 업데이트"]
        Update --> Prompt
    end

    Loop --> SE["SessionEnd / compact"]
    SE --> Snapshot["snapshot.json 생성"]

Scope

In scope - Claude Code plugin system 기반의 팀 코딩 에이전트 - 4-Layer 모델 설계와 구현 - luxtra 팀 내부 사용

Out of scope - 범용 오픈소스 배포 — 추후 고려하지만 현 단계에서는 다루지 않음 - Claude Code 외 다른 AI 코딩 도구 지원