sourcebook
AI 에이전트가 변경하는 것을 잊은 파일을 찾아냅니다.
코드 변경을 위한 안전 계층입니다. sourcebook은 git diff의 완전성을 분석하여 수정되었어야 하지만 수정되지 않은 파일을 표시합니다. 규칙 기반 구조 감지와 AI 기반 의미론적 분석을 결합했습니다. 깨끗한 diff에서는 오탐(false positive)이 전혀 없습니다.
npx sourcebook init # sets up Claude Code hooks + generates CLAUDE.md
npx sourcebook check # check your current diff for missing files
npx sourcebook scan-history # see what you've been missing감지 대상
AI 에이전트가 핸들러를 변경했습니다. 테스트도 업데이트했나요? 관련 모듈은요? 이전 값을 참조하는 설정 파일은요?
sourcebook은 저장소의 실제 구조와 diff를 대조하여 확인합니다:
누락된 테스트 파일 — 소스 파일은 변경되었으나 테스트 파일은 변경되지 않음
관련 모듈 — 변경한 파일이 가져오거나(import) 가져와지는 파일
공동 변경 동반 파일 — git 커밋에서 역사적으로 함께 변경되는 파일
허브 파일 영향 범위 — 50개 이상의 의존성을 가진 파일을 수정함
--ai 옵션 사용 시: 모듈 간 의미론적 관계, 마이그레이션이 필요한 필드 이름 변경, 오래된 유효성 검사 로직 등을 감지합니다.
Related MCP server: Carto MCP Server
주요 통계
지표 | 결과 |
완전성 게이트 | 100% 정확함 (30/30 diffs) |
오탐률 | 깨끗한 diff에서 0% |
테스트 파일 감지 | 73% |
관련 모듈 감지 | 71% |
AI 분석 비용 | 실행당 약 $0.012 |
네 가지 인터페이스
1. CLI
어떤 diff에서든 실행하세요. 별도의 설정이 필요 없습니다.
npx sourcebook check # check staged/unstaged changes
npx sourcebook check --ai # add AI semantic analysis (requires ANTHROPIC_API_KEY)
npx sourcebook check --quiet # exit code only (for CI/scripts)
npx sourcebook check --branch main # compare vs a branch2. Claude Code 훅
명령어 하나로 pre-commit 훅을 연결합니다. 에이전트가 파일을 편집하면 sourcebook이 diff를 확인하고, 커밋이 반영되기 전에 에이전트가 누락된 부분을 확인할 수 있습니다.
npx sourcebook init # generates CLAUDE.md + installs hooks3. MCP 서버
공식 MCP 레지스트리에 게시되었습니다. 에이전트는 필요에 따라 저장소 구조, 영향 범위, 규칙 및 공동 변경 데이터를 쿼리할 수 있습니다.
npx sourcebook serveMCP 클라이언트에 추가하세요:
{
"mcpServers": {
"sourcebook": {
"command": "npx",
"args": ["-y", "sourcebook", "serve", "--dir", "/path/to/your/project"]
}
}
}4. GitHub 앱 (출시 예정)
모든 풀 리퀘스트에 대한 자동 완전성 검사. 대기자 명단에 등록하세요.
명령어
명령어 | 설명 |
| 현재 diff의 완전성 분석 |
| AI 기반 의미론적 분석 추가 (ANTHROPIC_API_KEY 필요) |
| 종료 코드만 반환 — 발견 시 1, 깨끗할 시 0 |
| 구조화된 JSON 출력 |
| HEAD와 브랜치 비교 |
| 사용자 지정 공동 변경 결합 임계값 (0-1) |
| Claude Code 훅 설정 + CLAUDE.md/AGENTS.md 생성 |
| 최근 커밋에 대한 소급 스캔 |
| Claude Code 훅 설치 또는 확인 |
| Repo Truth Map 생성 (2.5D 시각화) |
| MCP 서버 시작 |
| 수동 편집 내용을 유지하면서 재분석 |
| 변경될 내용 표시 (변경 사항 발견 시 종료 코드 1) |
| 소스 변경 시 컨텍스트 파일 자동 재생성 |
| 자연어로 코드베이스 지식 쿼리 |
작동 원리
계층 A — 규칙 기반 (LLM 미사용, 1초 미만)
공동 변경 분석 — git 기록에서 함께 변경되는 파일을 추출합니다.
auth.ts를 수정했는데 커밋의 88%에서session.ts와 함께 변경되었다면, sourcebook은session.ts를 표시합니다.테스트 파일 감지 — 명명 규칙 및 공동 변경 기록을 통해 소스 파일과 테스트 파일을 매핑합니다.
임포트 그래프 — 의존성 그래프를 구축하고 변경된 파일이 가져오거나(import) 가져와지는 파일들도 업데이트가 필요한지 확인합니다.
허브 감지 — 팬인(fan-in, 많은 의존성)이 높은 파일을 수정했을 때 표시합니다. 이러한 변경은 영향 범위가 큽니다.
계층 B — AI 기반 (실행당 약 $0.012)
diff와 의존성 컨텍스트를 Claude Sonnet으로 전송합니다. 계층 A가 볼 수 없는 의미론적 관계(마이그레이션이 필요한 필드 이름 변경, 이전 스키마를 가정하는 유효성 검사 로직, 임포트 링크가 없는 모듈 간 의존성 등)를 포착합니다.
모든 AI 제안에는 의존성 인용이 필요합니다. 환각(hallucination)된 파일 경로는 필터링됩니다. 완전성 게이트는 오탐이 없음을 보장합니다. diff가 실제로 완전하다면 계층 B는 침묵합니다.
구성
# Required for --ai flag only
export ANTHROPIC_API_KEY=sk-ant-...다른 구성은 필요하지 않습니다. sourcebook은 저장소의 git 기록과 파일 구조를 직접 읽습니다.
언어 지원
언어 | 임포트 그래프 | Git 분석 | 규칙 감지 |
TypeScript / JavaScript | 전체 | 전체 | 전체 |
Python | 전체 | 전체 | 전체 |
Go | 전체 | 전체 | 전체 |
Rust | 전체 | 전체 | 부분 |
연구
분위기가 아닌 실제 벤치마크를 기반으로 구축되었습니다:
유효성 검사 결과 확인 — 방법론 및 정확도 데이터
벤치마크: 19개 작업, 10개 저장소, 4개 언어 — 제어된 에이전트 성능 테스트
자동 생성된 컨텍스트가 에이전트를 더 나쁘게 만드는 이유 — 우리의 접근 방식을 형성한 ETH Zurich의 발견
라이선스
BSL-1.1 — 소스 공개, 무료 사용 가능, 호스팅 서비스로 제공 불가. 2030년 3월 25일에 MIT로 전환됩니다. 자세한 내용은 LICENSE를 참조하세요.
sourcebook.run · GitHub · npm · @maroond_
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Appeared in Searches
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/maroondlabs/sourcebook'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
