오영웅

프로젝트읽기 4

내가 일하는 방법을 AI에게도 남겨두고 싶었다 — ballast

혼자 쓰려고 만든 작업 방식이 회사 업무를 거쳐 오픈소스가 됐다. ballast를 만들고, 사용하고, 계속 고치는 이유를 정리한다.

처음부터 프레임워크를 만들어 공유하려던 것은 아니다.

나는 일을 더 잘하고 싶었다. 그래서 경영과 관리, 기획과 전략, 개발과 기술을 공부하고 접했다. 분야는 달랐지만 실제로 일을 하다 보면 서로 떨어져 있지 않았다.

무엇을 만들지 생각하다가 사용자와 시장을 봐야 했다. 계획을 세우면 구현을 알아야 했고, 만들고 나면 어떻게 알릴지도 고민해야 했다.

그렇게 배우다 보니 생각이 하나 들었다.

내가 일을 이해하고 풀어가는 방식을 AI에게도 남겨두면, 매번 처음부터 설명하지 않아도 되지 않을까?

ballast는 그 생각에서 시작했다.

1. 우선 내가 쓰려고 만들었다

내가 원한 것은 질문에 답을 잘하는 AI만은 아니었다.

어떤 일을 하기로 했는지 이어서 알고, 이미 배운 것을 다음 일에 쓰고, 모르는 부분은 알아보면서 작업을 진행했으면 했다. 내가 한 번 정한 것을 다음 대화에서 다시 정하지 않았으면 했다.

사람과 일할 때도 비슷한 기대를 한다.

처음에는 설명이 필요하다. 하지만 함께 일하면서 배운 것이 쌓이면 다음에는 그 위에서 시작할 수 있다. 매번 같은 지점으로 돌아가면 서로 지친다.

AI와의 작업에도 그 축적이 있었으면 했다.

그래서 필요한 지침과 기록을 정리하며 내가 사용할 체계로 만들기 시작했다. 완성된 업무 이론을 옮긴 것이 아니다. 공부한 것을 써보고, 맞지 않으면 바꾸는 과정이었다.

이번에 배운 것을 다음 일의 출발점으로

매번 같은 설명부터 다시 하지 않기 위해 남기고 싶은 것들.

일하며 배운다
필요한 지침을 정하고, 써보면서 맞지 않는 부분을 고친다.
파일로 남긴다
작업 규칙, 정한 결정, 확인한 지식을 기록한다.
다음 일에 쓴다
이미 정한 기준을 다시 설명하지 않고 그 위에서 시작하려 한다.
기록을 이어 쓰려는 취지다. 지침의 완벽한 준수를 뜻하지는 않는다.본문 · 우선 내가 쓰려고 만들었다

2. 회사에서 써보니 더 구체적인 일이 됐다

혼자 만든 예시만 보고 있었다면 내가 좋아하는 방식에 머물렀을 수 있다.

회사에서 직접 사용하면서는 달랐다. 개발과 설계뿐 아니라 마케팅까지 이어지는 업무에 적용했다. 내가 확인하고 고쳐야 할 것이 실제 작업 안에서 드러났다.

편리했다.

생각을 정리한 뒤 다시 다른 작업으로 옮길 때, 처음부터 모든 내용을 풀어 설명하는 부담을 줄일 수 있었다. 하나의 일을 하며 정한 기준을 다음 일에도 사용하려는 방향이 내게 잘 맞았다.

여기서 말하는 것은 내가 회사 업무에 사용하며 느낀 변화다. 회사 전체의 성과가 몇 배 좋아졌다는 측정 결과를 말하는 것은 아니다.

그래도 직접 사용할 이유는 충분했다. 내가 편하려고 만든 것을 실제로 다시 사용하고 있었기 때문이다.

3. 나만 쓰던 것을 다른 사람에게 주려니

내가 알아보는 설명과 다른 사람이 알아보는 설명은 달랐다.

내가 쓰던 용어에는 내가 겪은 일이 들어 있다. 어디에 무엇을 두고 어떤 순서로 쓰는지 이미 알고 있다. 다른 사람은 그 시작점이 없다.

그래서 공유하려면 다듬어야 했다.

무엇을 하는 도구인지 먼저 설명하고, 어떤 경우에 필요한지 보여주고, 어디까지 동작하는지도 구분해야 했다. 내가 편했다고 해서 처음 사용하는 사람도 같은 과정을 바로 따라갈 수 있는 것은 아니었다.

오픈소스로 공개하는 일은 그 과정을 포함했다.[1]

코드를 올려놓는 것만으로는 내가 얻은 경험까지 전달되지 않는다. 다른 사람이 자기 일에서 사용해볼 수 있어야 공유가 된다고 생각했다.

4. 지금의 ballast를 어떻게 설명할까

공개된 ballast는 Claude Code와 Codex에서 사용하는 플러그인이다. 작업에 필요한 규칙과 결정, 확인한 지식을 파일로 남기고 다음 작업에서 사용하도록 돕는 구성이다.[1]

여기서 구분할 것이 있다.

공개 README에서도 규칙을 전달하는 훅과 모델이 따라야 하는 지침을 나눠 설명한다. 규칙이 전달됐다는 것과 모델이 모든 지침을 완벽하게 지킨다는 것은 같은 보장이 아니다.[1]

나는 이런 차이를 감추고 싶지 않다.

도구를 신뢰하려면 잘되는 부분만큼 어떤 방식으로 동작하는지도 알아야 한다. 기대한 대로 되지 않았다면 무엇을 고쳐야 하는지 찾을 수 있어야 한다.

내가 이 프로젝트를 계속 개선하는 이유도 거기에 있다. 내가 배우는 만큼 작업 방식이 달라지고, 그 변화가 도구에도 들어간다.

5. 다른 분야에서도 해보고 싶었다

회사에서 사용한 경험을 공유하다 보니 결과물도 보여주고 싶어졌다.

이런 방식으로 무엇을 만들 수 있을까?

그래서 rutter, showhow, cicerone, ingot처럼 성격이 다른 프로젝트를 작업했다. 같은 형태의 앱을 반복해서 만든 것이 아니다. 마케팅 지침도 있었고, 업무 문서를 만드는 도구도 있었고, 채용 지원과 이미지 압축을 다루는 작업도 있었다.

각 분야에서 알아야 할 내용과 결과를 확인하는 방식은 달랐다. 그 차이를 배우며 작업을 이어갈 수 있다는 점이 좋았다.

결과물은 네 프로젝트를 정리한 글에 따로 남겼다. 그것들을 보여주는 공간으로 Alpha Court도 다시 만들었다.

지금은 지식을 다루는 방식을 고치고 있다

2026년 9월 현재, ballast에서는 지식관리 체계를 개편하고 있다.

구체적인 설계는 아직 공개하지 않으려 한다. 이번에 공유하고 싶은 것은 구현 방식보다 내가 원하는 결과다.

더 많은 자료를 넣었다고 서로 맞지 않는 말이 늘어나지 않았으면 한다. 필요한 것을 찾기 위해 모든 내용을 한꺼번에 떠안지 않았으면 한다. 새로 배운 것이 이전의 잘못을 고치고, 다음 작업에 실제로 사용됐으면 한다.

사람이 일하면서 배우고 방법을 고쳐가는 것처럼, 에이전트와의 작업도 이어졌으면 한다.

이것은 지금 만들고 있는 목표다. 이미 모든 문제를 해결했다는 소개는 아니다. 업데이트한 뒤 실제로 사용하면서 결과를 보여주고 싶다.

나도 같이 배우고 있다

ballast를 만들었다고 내가 일을 잘하는 방법을 모두 안다고 생각하지는 않는다.

오히려 만들고 사용하면서 더 배워야 할 것이 보인다. 다른 분야에 적용하면 익숙한 방식이 통하지 않는 부분도 생긴다. 그때 다시 공부하고 고친다.

처음에는 나 혼자 쓰고 싶었다.

지금은 내가 편해진 경험을 다른 사람과 나누고 싶다. 그리고 그 사람이 자기 일에서 사용하며 알게 된 것도 다시 배울 수 있었으면 한다.

완성된 나를 복제하는 도구라기보다, 내가 배우고 일하는 과정을 함께 발전시키는 도구에 가깝다.

그래서 아직도 만들고 있다.


출처와 주석

  1. ballast 공개 저장소와 README, 2026-09-06 확인. 이 글의 제작 동기와 회사 실사용 경험은 작성자 자신의 설명이며, README에 적힌 기능과 구분한다. 최신 사용 방법은 저장소 문서를 기준으로 한다. ↩︎ ↩︎ ↩︎