Skip to content

feat: 하네스 엔지니어링 단일 에이전트 기준 평가 + --agent 옵션 (#7) - #8

Merged
serithemage merged 15 commits into
mainfrom
feat/issue-7-agent-selection
Jun 16, 2026
Merged

feat: 하네스 엔지니어링 단일 에이전트 기준 평가 + --agent 옵션 (#7)#8
serithemage merged 15 commits into
mainfrom
feat/issue-7-agent-selection

Conversation

@serithemage

Copy link
Copy Markdown
Contributor

배경

이슈 #7: Claude Code만 사용하는 프로젝트가 AGENTS.md·.cursorrules·.github/copilot-instructions.md 부재 때문에 하네스 엔지니어링 점수에서 부당하게 감점되는 문제. 사용 에이전트를 선택하는 옵션이 요청되었다.

변경 사항

① 평가 모델 전환 — 단일 에이전트 기준

  • 여러 에이전트를 모두 갖춰야 만점이던 방식을 가장 잘 갖춰진 단일 에이전트의 완성도 기준으로 재작성
  • 단일 에이전트(컨텍스트 + 안전 + 확장)가 완비되면 100점. 다중 에이전트 지원은 **가산점(타이브레이커)**일 뿐 감점 사유 아님
  • auto 모드: 레포에 실제 구성된 에이전트를 자동 감지해 평가

② 에이전트 선택 옵션

  • --agent <claude|codex|cursor|copilot> CLI 옵션 + .vibeready.json"agent" 필드 (CLI 우선)
  • 지정 시 다른 도구의 설정 파일은 감점·권고에서 완전 배제

구현

  • src/agents.ts (신규) — 에이전트 정의·별칭 정규화·focus 프롬프트
  • src/prompts/analyze.ts — agent 파라미터 + AGENT FOCUS 주입
  • src/config.tsagent 필드 검증 + getEffectiveAgent
  • src/index.ts / src/analyzer.ts — 옵션 배선
  • src/cache.ts — 캐시 키 에이전트별 분리, 스토어 버전 v3
  • tests/agents.test.ts (신규, 14 케이스), README·예제 config 문서화

테스트

  • npm run build 성공, npm test 전체 103 통과 (pre-commit 훅 검증 완료)

Closes #7

🤖 Generated with Claude Code

serithemage and others added 14 commits June 11, 2026 16:32
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- src/git-log.ts: 커밋 로그 사전 추출 + 이슈 참조 통계 (GitHub/Jira/키워드, PR 워크플로 감지)
- 7번째 nice 카테고리 (가중치 0.10, nice 4개 균등 재분배)
- 프롬프트에 Git Log Context 주입 (결정적 통계 + 커밋 제목 샘플 50개)
- 캐시 v2 (구버전 6카테고리 캐시 무효화), git checkout 인젝션 방지
- 문서 갱신 (CLAUDE.md, README, README.ko), 테스트 46/46

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
여러 코딩 에이전트(Claude Code, Codex, Cursor, Copilot) 설정을
모두 갖춰야 만점이던 하네스 엔지니어링 평가를, 가장 잘 갖춰진
단일 에이전트의 완성도 기준으로 전환한다. 다중 에이전트 지원은
가산점(타이브레이커)일 뿐 감점 사유가 아니다.

- 프롬프트: 하네스 카테고리를 단일 에이전트 기준으로 재작성,
  auto 모드에서 레포 구성 에이전트 자동 감지
- --agent <claude|codex|cursor|copilot> CLI 옵션 추가
  + .vibeready.json "agent" 필드 (CLI 우선). 지정 시 다른 도구
  파일(AGENTS.md, .cursorrules 등)은 감점/권고에서 완전 배제
- src/agents.ts 신규: 에이전트 정의·별칭 정규화·focus 프롬프트
- 캐시 키를 에이전트별로 분리, 스토어 버전 v3 범프
- tests/agents.test.ts 신규 + README/예제 config 문서화

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
UTF-8, SHA-1, HTTP-2, ISO-8601 등 표준/스펙/인코딩 토큰이 Jira
이슈 키로 오탐되어 "이슈 트래킹 연동" 점수가 부풀려지는 문제를
수정한다. matchAll + denylist로 흔한 기술 약어 프리픽스를 제외하고,
앞 영숫자 lookbehind로 단어 내부 매칭을 방지한다.

코드 리뷰(PR #8)에서 발견.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@serithemage

Copy link
Copy Markdown
Contributor Author

코드 리뷰 결과 (자동 리뷰)

  • Critical: 없음. 에이전트 선택 기능은 설계대로 동작. 캐시 키 에이전트별 분리, CLI/config 우선순위(getEffectiveAgent), 스토어 버전 v3 범프, execFileSync 인젝션 하드닝 모두 정확.
  • Important 1건 → 본 PR에서 수정 완료: git-log.ts의 Jira 정규식이 UTF-8·SHA-1·HTTP-2·ISO-8601 등 기술 약어를 이슈 참조로 오탐 → matchAll + denylist + lookbehind로 제거 (커밋 e27a6a0, 회귀 테스트 2건 추가).

CI: Node 20/22/24 build-and-test 전부 통과 (105 테스트).

@serithemage
serithemage merged commit 4774ae0 into main Jun 16, 2026
3 checks passed
@serithemage
serithemage deleted the feat/issue-7-agent-selection branch June 16, 2026 04:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Claude Code 를 사용하는 프로젝트에 최적화된 평가용 옵션 추가 요청

1 participant