Claude SKILLS 파일로 린터를 추가해 엉망진창인 바이브 코딩을 고쳤다
The Claude SKILLS files that fixed my vibe coded mess by adding in linters
핵심 요약
AI 에이전트가 생성한 코드의 품질을 보장하기 위해 린터를 도입하는 '하네스 엔지니어링'의 중요성을 강조함.
- 바이브 코딩의 한계 — AI가 생성한 코드는 리팩토링이 부족하고 가독성이 떨어지는 문제가 있음.
- 하네스 엔지니어링 — AI 에이전트가 궤도를 벗어나지 않도록 린터와 같은 결정론적 제어 장치를 도입함.
- SKILLS 파일 활용 — AI 에이전트가 프로젝트 초기부터 적절한 린터 설정을 갖추도록 유도하는 도구 제공.
- 코드 품질 논쟁 — 린터 도입이 근본적인 코드 구조 문제를 해결할 수 있는지에 대한 커뮤니티 내 의견 대립.
바이브 코딩은 훌륭하다. 에이전트 코딩은 더 훌륭하다. 그런데 뭐가 짜증나는지 아나? 내 코드에 들어간 이모지들이다. 아니면 프로젝트만한 크기의 함수들 말이다. 내가 원하지 않는 게 뭔지 아나? 10만 줄이 넘어가면 모든 게 박살 나서 더 이상 성장할 수 없는 코드베이스다.
우리가 AI로 코딩을 하려면, AI가 궤도를 벗어나지 않도록 환경을 구축해야 한다. 마치 말에게 고삐(하네스)를 채우고 우리가 원하는 곳에 도착할 때까지 그 위에 앉아 있는 것처럼 말이다.
우리는 하네스 엔지니어링을 잘해야 한다.
하네스 엔지니어링에 대해 더 알고 싶다면 여기를 확인해라:
https://openai.com/index/harness-engineering/
하지만 핵심은 이거다. 나는 에이전트와 코딩하다가 작동은 잘 되는데 코드가 개판인 걸 보면 짜증이 난다. 에이전트가 뭔가를 만들고 컴파일이 되면, 다시 돌아가서 리팩토링을 안 한다. 게임을 사랑해서 코딩하는 게 아니니까.
그리고 리뷰어 에이전트도 도움이 안 된다(그냥 눈먼 자가 눈먼 자를 인도하는 격이다).
에이전트를 멈추게 할 결정론적인 무언가가 필요하다. 다행히도, 한때 내 존재의 골칫거리였던 것이 구원자로 나타났다.
린터(Linters)다.
그래서 이 저장소에는 당신이 가장 좋아하는 코딩 에이전트에게 먹일 수 있는 SKILLS 파일들이 있다. 그러면 에이전트가 프로젝트를 설정해서 아주 훌륭한(내 생각엔) 린터 설정을 갖추게 해줄 것이다. 결과물이 나오기까지 시간은 좀 더 걸리겠지만(몇 분 정도), 나중에 엄청난 이득으로 돌아올 것이다.
이제 컴파일이 되면... 코드가 아름답게 작성되었다는 것도 알 수 있을 거다.
여기서 자유롭게 시도해봐라: https://github.com/aperswal/harness-engineering

