2026-04-04 OSS 비교 분석 및 보강 결정
gstack, 유사 OSS 프로젝트와의 비교 분석 결과 및 ai-rules 보강 방향 결정 기록
changes 2026-04-04 docs/changes/2026-04-04-oss-comparison-and-enhancement.md
작성일: 2026-04-04 목적: gstack, 유사 OSS 프로젝트와의 비교 분석 결과 및 ai-rules 보강 방향 결정 기록
1. 배경
ai-rules의 차별점과 보완점을 파악하기 위해 아래 3단계 분석을 수행했다.
- gstack 심층 비교 — Garry Tan의 Claude Code 가상 엔지니어링 팀 (23 specialists, 8 power tools)
- OSS 리서치 — Vectimus, AgentGuard, ai-rulez, MS agent-governance-toolkit, block/ai-rules 등
- GPT 분석 교차 검증 — GPT가 제안한 보강 방향을 실제 코드/구조와 대조
2. ai-rules의 고유 포지션
다른 프로젝트에서 찾기 어려운 ai-rules 고유 조합:
| 차별점 | 설명 |
|---|---|
| Advisory + Deterministic 이중화 | 텍스트 규칙 + hook 강제를 한 시스템에서 |
| 멀티 도구 adapter | Claude Code, Cursor, Windsurf, OpenClaw 동시 출력 |
| 에이전트 오케스트레이션 | planner/builder/reviewer/security 역할 분리 + 권한 제한 |
| 가역성 등급 (R0/R1/R2) | 작업 위험도 기반 자동/승인/금지 분류 |
| 프로젝트 프로파일 시스템 | core + extension 구조로 멀티 프로젝트 규칙 관리 |
| 기계가독 정책 레이어 | safety-manifest.yaml + JSON Schema + approval-matrix.json |
3. gstack vs ai-rules — 핵심 비교
설계 철학
| 차원 | gstack | ai-rules |
|---|---|---|
| 핵심 메타포 | "가상 엔지니어링 팀" — 실행 워크플로 | "정책 배포 시스템" — 거버넌스 프레임워크 |
| 대상 | 단일 개발자 × 단일 도구 (Claude Code) | 다수 프로젝트 × 다수 AI 도구 |
| 강점 | 실행 가능한 전문가 체인 | 안전장치 + 규칙 일관성 |
gstack에서 가져온 것 (Phase 1 — 구현 완료)
| 항목 | 반영 내용 |
|---|---|
| Investigator 에이전트 | agents/investigator.md 신규 생성. Iron Law: 수정 전 진단 분리. builder의 DIAGNOSE MODE에서 소환 |
| MUST-HOOK 배포 확대 | 09-hooks-guide.md에 tooling 채널 배포 설계 반영. governance.enabled: false 프로젝트의 안전 공백 해소 |
| 디렉토리 스코프 잠금 | 09-hooks-guide.md SHOULD-HOOK에 guard-freeze 패턴 추가 |
gstack에서 가져오지 않은 것
| 항목 | 이유 |
|---|---|
| 런타임 브라우저 데몬 | ai-rules는 규칙 시스템, 런타임 도구 아님 |
| 4개 디자인 에이전트 분리 | minimal footprint 철학에 반함. 1 에이전트 × 4 phase가 적합 |
| 프롬프트 체인 실행 모델 | 멀티 도구 adapter 구조와 충돌 |
| "Boil the Lake" 완성도 철학 | ai-rules는 "Minimal Footprint" 지향 |
4. OSS 리서치 — GPT 분석 검증 결과
GPT가 맞게 짚은 것
예외 승인 추적의 공백 — 정확함.
- confirm-capture.sh는 재확인 토큰만 캡처 (승인 자체 기록이 아님)
- 만료(expiry), 사유(rationale), 승인자 정보 미기록
- HUMAN_AUTHORITY_MODEL.md에 설계는 있으나 구현 미완
GPT가 과대평가한 것
"기계가독 정책 표현이 없다" — 부정확.
- safety-manifest.yaml (regex + approval 등급 + R0/R1/R2) 이미 완성
- governance/schemas/ JSON Schema 3종 이미 완성
- ops/approval-matrix.json (P0~P3) 이미 완성
- 실제 상태: 정책 엔진의 90%가 있고, 의도/근거만 markdown에 잔류
"Capability matrix를 별도로 분리하라" — 불필요.
- agents/*.md frontmatter
tools:+ 10-subagent-patterns.md 권한 테이블이 이미 이 역할 수행
GPT가 놓친 것
ops/디렉토리 전체 (approval-matrix.json, agent-events.example.jsonl)- governance 어댑터의 성숙도 (330줄, preset 병합, safety override, CI workflow 생성)
- confirm-capture.sh + confirmed-actions/ 디렉토리의 존재
5. 보강 결정 — 가져올 것 / 안 가져올 것
즉시 반영 (이번 세션)
| 항목 | 출처 | 반영 방식 |
|---|---|---|
| 예외 승인 만료 + 사유 기록 | MS agent-governance-toolkit | core/03-security.md에 규칙 추가 |
| hook cookbook / 테스트 예제 | sondera hooks | core/09-hooks-guide.md에 예제 추가 |
다음 단계 로드맵
| 우선순위 | 항목 | 출처 | 성격 |
|---|---|---|---|
| 1 | 생성물 freshness CI | gstack skill-docs.yml | CI 워크플로 (sync + diff --exit-code) |
| 2 | diff 기반 선택 실행 | gstack touchfiles.ts | validate.mjs --changed-only 플래그 |
| 3 | LLM 품질 회귀 검증 | gstack skill-llm-eval | core/agents/CLAUDE.md eval 기준 설계 |
| 4 | gate/periodic CI 분리 | gstack evals.yml | PR gate + 주간 cron 이중 구조 |
안 가져오는 것
| 항목 | 이유 |
|---|---|
| Cedar 정식 정책 언어 | safety-manifest.yaml이 이 규모에서 최적 |
| Azure 종속 거버넌스 | 로컬 개발 워크플로 중심 프로젝트 |
| 구조화된 knowledge store (JSONL) | SESSION.md + WORKLOG + FAILURE_LOG + auto memory 4중 구조로 충분 |
| lite preset / quickstart | 외부 채택 수요 확인 전까지 시기상조 |
| 별도 capability matrix 파일 | agents frontmatter + 10-subagent-patterns 테이블로 충분 |
6. 참조
- gstack: https://github.com/garrytan/gstack (MIT, 62.8k stars)
- Vectimus: Cedar 정책 언어 기반 hook enforcement
- AgentGuard: 에이전트 행동 제한 프레임워크
- MS agent-governance-toolkit: 엔터프라이즈 에이전트 거버넌스
- Phase 1 구현: agents/investigator.md, 04-workflow.md, orchestrator.md, builder.md, 10-subagent-patterns.md, 09-hooks-guide.md 수정