1인 개발팀이 지겨워서 (그래서 이걸 만들었어요)

발행: (2026년 2월 8일 오후 05:21 GMT+9)
11 분 소요
원문: Dev.to

Source: Dev.to

별명: 새벽 2시에 린터 오류에 대해 대량으로 불평하던 내가 결국 그만둔 방법… 대부분

Buildmate 스크린샷

자, 여기 얘기가 있어

3시다. 나는 지쳐서 아마 다섯 번째(아마 여섯 번째) 커피를 마셨다. 화면을 바라보느라 눈이 타들어 가고, 같은 RuboCop 오류와 한 시간 정도 씨름하고 있다.

그 사이클을 알지?

  1. RuboCop 실행 → 오류 3개.
  2. 고치고 다시 실행 → 다른 오류 2개.
  3. 또 고치고 다시 실행 → 오류 5개.

어떻게? 방금 고쳤는데 많아졌어???

(한 번은 변수 이름의 오타를 잡느라 4시간을 보냈다. 네. 시간. 그 얘기는 하고 싶지 않다.)

그래서 나는 새벽 3시에 앉아 내 인생 선택을 고민하며 생각한다: 멋진 걸 만들기 위해 개발자가 된 건데, 왜 세미콜론과 “예상치 못한 입력 끝”이라는 Stack Overflow 답변을 복사‑붙여넣으며 싸워야 할까?

그게 바로 Buildmate를 만든 이유다. 모든 걸 나 혼자 하느라 지쳤거든.

이것은 정확히 무엇인가요?

실제 회사에서는 사람마다 서로 다른 일을 합니다:

  • Developer – 코드를 작성하고 (그리고 끊임없이 구글링)
  • Tester – 모든 것을 고의로 (가능하면) 부숩니다
  • Code reviewer – 누락된 null 체크를 다시 지적합니다
  • PM – 모두가 정신을 잃지 않게 합니다
  • Security person – 모든 것이 잘못됐다고 말합니다

Buildmate는 여러분이 점심(또는 커피)를 먹는 동안 실제로 서로 대화하는 AI 에이전트 형태의 모든 역할을 제공합니다.

Me: "/pm Build user authentication with OAuth"
Buildmate: "Got it"

→ spawns a backend dev (writes the Rails code)  
→ spawns a frontend dev (does the React stuff)  
→ spawns testers (writes tests, runs them)  
→ runs linting in a loop until everything passes  
→ actually RUNS the code to verify it works  
→ fixes its own mistakes automatically  
→ spawns reviewers (finds my mistakes)

Me (drinking coffee): "Nice"

이게 너무 터무니없게 들릴 수 있습니다. 처음에 이것을 작동시켰을 때 저도 믿지 못했어요.

Buildmate 작동 모습

The Linter Loop From Hell (And How I Fixed It)

We’ve ALL been here:

$ rubocop
3 offenses detected
*fixes them carefully*

$ rubocop
2 offenses detected (different ones??)
*fixes those too*

$ rubocop
5 offenses detected
*stares at screen*
*questions existence*

I swear I’ve lost years of my life to this.

The Fix

Enter the Grind Agent. It runs your linters in a loop and fixes stuff automatically—until everything’s green or it gives up after 10 tries.

Grind Agent:
  Iteration 1: rubocop → 3 errors → fixing...
  Iteration 2: rubocop → 0 errors, nice
  Iteration 3: rspec   → 2 failures → fixing...
  Iteration 4: rspec   → all green

  Status: CONVERGED

  Fixed:
  - app/models/user.rb:15 – frozen_string_literal
  - spec/models/user_spec.rb:28 – nil vs empty string

You didn’t do anything. It handled it.

Grind Agent output

Source:

“LGTM”은 실제 코드 리뷰가 아니다

현실적으로: 피곤하고 PR에 파일이 47개나 될 때 “Looks Good To Me”는 실제로는 “세 파일 정도만 보고 포기했다”는 의미입니다. 우리 모두 그런 경험이 있습니다; 인간이라면 당연하죠.

해결책

Eval Agent를 소개합니다. 이 도구는 실제 등급으로 여러분의 코드를 평가합니다.

항목가중치점수
Correctness30 %0.85
Code Quality25 %0.90
Security20 %0.95
Performance15 %0.80
Test Coverage10 %0.75

최종: 0.87 (B)

실제 숫자이며, 탭 vs. 스페이스 논쟁은 이제 그만입니다. “line 47 might have an N+1 query” 같은 문제를 알려주고, “this method does five things—split it up.”처럼 구체적인 개선점을 제시합니다.

Eval Agent report

실제로 스스로 테스트합니다 (이게 바로 멋진 부분)

대부분의 AI 코딩 도구는 코드를 작성하고 작동하길 기대합니다. 코드를 실행하면 충돌하고, 30분 동안 디버깅을 합니다.

저도 그게 지겨웠습니다.

그래서 /verify 명령을 만들었습니다. 이 명령은 실제로 코드를 실행합니다:

  • 백엔드: 개발 서버를 시작하고, 실제 HTTP 요청을 보내며, 응답을 검증합니다.
  • 프론트엔드: 브라우저를 열고, 페이지를 탐색하며, 스크린샷을 찍고, 컴포넌트 렌더링을 확인하고, 콘솔 오류를 찾습니다.

가장 좋은 점: 무언가 실패하면 스스로 고쳐집니다.

[Verification] Creating HeroSection...

[Testing]
- Starting dev server... ✓
- Looking for .hero-section... ✓
- Rendering component... ✓
- No console errors... ✓
- All checks passed! 🎉

이렇게 해서 새벽 2시에 린터 오류에 대해 계속 불평하던 일을 드디어 멈췄습니다.

OT 발견 ✗

분석 중

  • 컴포넌트가 존재하지만 내보내지 않음
  • 내보내기 추가 중…

재시도 1/3

  • 컴포넌트 발견 ✓
  • 콘솔 오류 없음 ✓

1개의 수정 후 검증 통과.

Enter fullscreen mode

Exit fullscreen mode

컴포넌트를 빌드하고, 테스트했으며, 내보내지 않은 것을 발견하고, 수정했으며, 다시 테스트했습니다. 모두 자동으로 이루어졌습니다.

백엔드도

[Verification] POST /api/users

- Making request...
- Status: 500 ✗

분석

  • user_params 메서드 누락
  • 컨트롤러에 추가…

재시도 1/3

  • 상태: 201 Created ✓

1번 수정 후 검증 통과.

Enter fullscreen mode

Exit fullscreen mode

디버깅에 20분 걸리는 어리석은 실수들? 사라졌다.

스크린샷

Screenshot

보안 (실제로 중요함)

There’s a Security Auditor agent that checks OWASP concerns— injection attacks, authentication problems, XSS, CSRF, etc.

# Security audit logs would appear here

보안 보고서

Found: 2 issues

SeverityIssueFileRecommendation
MEDIUMPossible SQL injectionapp/models/search.rb:45Use a parameterized query
LOWNo rate limiting on loginAdd rack-attack

Verdict: PASS WITH WARNINGS

시작하기

git clone https://github.com/vadim7j7/buildmate.git
cd buildmate
python3 -m venv .venv && .venv/bin/pip install -e .

프로젝트 부트스트랩

# Rails만
buildmate rails /path/to/my-app

# Tailwind UI가 포함된 Next.js
buildmate nextjs /path/to/app --ui=tailwind

# 풀스택 (Rails + Next.js)
buildmate rails+nextjs /path/to/app

# 프리셋 프로필 사용 (예: SaaS)
buildmate --profile saas /path/to/app

명령 실행

/pm "Build user authentication"

작동하는 모습을 확인하세요!

Buildmate 데모

명령어 치트 시트

Command무엇을 수행합니까
/pm "thing"전체 워크플로우 – 계획, 구축, 테스트, 검토
/verify코드를 실행하여 테스트합니다
/verify --component Hero특정 컴포넌트를 테스트합니다
/verify --endpoint /api/users특정 엔드포인트를 테스트합니다
/parallel "a" "b"여러 작업을 동시에 실행합니다
/new-model Name모델, 마이그레이션, 스펙, 그리고 팩토리를 생성합니다
/new-component Name컴포넌트와 해당 테스트를 생성합니다
/security보안 감사를 실행합니다
/eval생성된 코드를 평가합니다

/verify 명령은 새로 도입된 것이며, 솔직히 말해 제가 가장 좋아하는 명령입니다.

FAQ

AI가 실수를 하면 어떻게 되나요?

  • verify 에이전트가 코드를 실행하고 런타임 오류를 잡아냅니다.
  • 문제가 발생하면 자동으로 수정 시도를 합니다(최대 세 번).
  • grind 에이전트가 린트와 타입 오류를 잡아냅니다.
  • eval 에이전트가 결과에 점수를 매겨 품질을 알려줍니다.

내 프로젝트에서도 사용할 수 있나요?
네. Buildmate는 .claude/ 폴더를 생성하고, 요청하지 않는 한 기존 코드를 건드리지 않습니다.

지원되는 프레임워크는 무엇인가요?
Rails, Next.js, FastAPI, React Native 등이며, 더 많은 프레임워크가 곧 추가됩니다.

곧 출시: 웹사이트 클로닝

/analyze-site https://some-cool-website.com
/clone-page https://some-cool-website.com/pricing

이 도구는 모든 사이트를 분석하고 디자인을 추출한 뒤 귀하의 UI 라이브러리를 사용해 귀하의 코드를 생성합니다. 마음에 드는 랜딩 페이지를 복제하고 싶으신가요? 곧 단 한 줄의 명령으로 가능해집니다. 기대해 주세요!

시도해 보기

git clone https://github.com/vadim7j7/buildmate.git
cd buildmate
python3 -m venv .venv && .venv/bin/pip install -e .

buildmate rails /path/to/your-app
/pm "Build something cool"

전체 과정은 약 2분 정도 걸립니다.

이 프로젝트를 지원하세요

Buildmate가 새벽 3시 디버깅 세션에서 당신을 구했다면, 커피 한 잔 사 주세요:

☕ 커피 한 잔 사 주세요

리포지토리를 마음에 들어 별표를 달아 주세요, 그리고 자유롭게 이슈를 열어 주세요—제가 직접 읽습니다.

너무 많은 커피와 함께 늦은 밤에 만들었습니다

— Vadim

Back to Blog

관련 글

더 보기 »

마크다운 파일로 7,600개 태스크를 관리하는 시스템

개요 태스크 하나가 폴더 하나이며, 그 안에 index.md 파일이 존재합니다. YAML frontmatter에 메타데이터를 기록하고, 폴더 구조가 카테고리 역할을 합니다. DB 없이 파일 시스템이 데이터베이스 역할을 합니다. 현재 7,655개 태스크가 94% 완료율로 운영 중입니다....

HTDICS — HTML 사전

GitHub Copilot CLI 챌린지 제출 이것은 GitHub Copilot CLI 챌린지에 대한 제출물입니다 https://dev.to/challenges/github-2026-01-21. 제가 만든 것 HTDI...