북극성을 만들면서 가볍다는 말을 여러 번 다시 생각했다. 저장 공간이나 메모리도 중요하지만, 내가 더 줄이고 싶었던 것은 일을 시킨 뒤 같은 설명과 조작을 반복하는 과정이었다. 이 기준을 바꾸자 브라우저 안에 무엇을 남기고 무엇을 밖으로 뺄지도 달라졌다.
한 번 부탁한 일을 다시 설명하고 있었다
글을 쓰는 업무를 생각하면 차이가 드러난다. 제목과 내용을 정했는데도 어느 창을 사용할지, 어느 계정인지, 첨부가 끝났는지, 이제 다음 버튼을 눌러도 되는지를 매번 다시 판단하면 일이 길어진다. 버튼 하나를 빠르게 누르는 것만으로는 이 반복을 해결할 수 없었다. 요청과 실행 사이에 남아 있는 해석의 양을 줄여야 했다.
초기에는 브라우저 안에 CLI를 넣고 다음 행동을 연결했다. 실행 흐름을 만드는 데는 도움이 됐지만, 이미 아는 순서를 진행할 때도 다시 문맥을 전달하는 구조가 부담이었다. 이 경험을 기능이 많아서 무겁다는 한 문장으로 끝내지 않고, 판단이 필요한 순간과 정해진 절차를 수행하는 순간을 구분하기 시작했다.
세 가지 부담을 따로 적었다
첫째는 읽기의 부담이다. 화면 전체나 긴 대화가 아니라 이번 판단에 필요한 대상과 상태를 얻어야 한다. 둘째는 조작의 부담이다. 같은 업무를 할 때 맞는 기존 탭을 다시 찾지 못해 새 탭을 열거나 이미 넣은 내용을 또 입력하면 조작 수가 늘어난다. 셋째는 판단의 부담이다. 기다리는 동안 달라진 것이 없는지 확인하는 일을 모델이 계속 답변하는 방식으로 처리할 필요는 없었다.
이 세 가지는 같은 수치가 아니다. 문맥 바이트가 줄어든 것과 실제 모델 토큰이 줄어든 것, 메모리가 줄어든 것을 한 개선율로 합치지 않았다. 읽기·조작·판단을 분리해야 어떤 변경이 어떤 부담을 줄였는지 설명할 수 있었다. 성능 소개 문장보다 먼저 측정할 대상의 이름을 정한 셈이다.
이미 확인한 절차를 다시 생각하지 않게 했다
반복 작업의 실행 정의에는 입력과 고정된 순서를 나눠 담았다. 프로그램은 현재 입력을 검사하고 같은 실행 경로를 사용한다. repeatProgram은 한 회의 결과가 verified인지 확인한 뒤 다음 회로 넘어간다. 모델이 매번 다음 클릭을 고르는 반복과는 책임이 다르다. 정상 순서는 프로그램으로 남기고 새로운 판단이 필요한 부분을 드러내는 방향이다.
그렇다고 검증을 줄이지는 않았다. 순서를 자동으로 돌리더라도 어떤 계정과 탭에서 실행하는지, 기대한 결과가 확인됐는지는 남아 있어야 한다. 단계가 짧아졌다는 이유만으로 정확해졌다고 말할 수 없기 때문이다. 에이전트의 부담을 줄인다는 목표는 검사를 건너뛰는 지름길과 함께 사용할 수 없었다.
큰 카탈로그를 작은 입구로 연결했다
현재 외부 MCP 구조에서는 현재 작업을 확인하고 필요한 도구군이나 기존 플러그인을 찾아 쓴다. 모든 세부 설명을 항상 같은 크기로 펼치는 방식보다, 먼저 이름과 용도를 확인하고 필요한 입력 계약을 읽는 방식이 반복 업무에 맞았다. 간단한 발행 경로는 이번 콘텐츠와 날짜를 받고 프로젝트 기본값을 연결한다.
여기서 간단하다는 말은 사용자의 입력이 간단하다는 뜻이다. 내부에는 계정 경계와 파일 선택, 실제 결과 확인이 남아 있다. 화면에서 항목을 숨겼다고 그 책임이 사라진 것은 아니다. 나는 사람이 매번 적을 필요가 없는 정보와 프로그램이 계속 확인해야 할 정보를 서로 다른 곳에 놓았다.
다른 회사의 업무에도 적용할 기준
회사의 일을 자동화할 때도 같은 질문을 할 수 있다. 자주 하는 일인데 매번 사람이 대상을 고르고 같은 자료를 붙이고 진행 상태를 확인하는가. 그렇다면 화면을 하나 더 만드는 것보다 요청·대상·실행·결과의 연결을 먼저 정리하는 편이 도움이 된다. 무엇을 자동으로 채우고 무엇을 이번 입력으로 받아야 하는지 업무를 기준으로 정한다.
예를 들어 대상 계정은 프로젝트에 남겨도 이번 문서의 내용은 새로 받아야 한다. 반복 횟수는 요청에서 정하되 준비한 자료가 모자라면 같은 자료를 복제해 채우지 않아야 한다. 이처럼 생략할 수 있는 반복과 보존해야 할 판단을 함께 적어야 자동화가 사람의 의도를 바꾸지 않는다.
이 글에서 확인한 것과 남겨 둔 것
이 판단은 북극성의 개발 대화와 현재 실행 정의, 외부 MCP 문서를 대조해 썼다. 과거 내장 CLI의 동작을 현재 제품의 기능으로 소개하지 않았고, 이번 집필 때문에 원래 브라우저에서 새 게시를 실행하지 않았다. 내부 모델을 호출하지 않는 저장 실행 경로가 있다는 사실도 전체 대화의 토큰이 없다는 뜻으로 바꾸지 않는다.
이어서 공개한 작업 문맥 모듈은 이 생각 중 대상 선택만 떼어 새로 만든 합성 예제다. 기존 탭을 골라 결과를 돌려줄 뿐 실제 웹사이트를 조작하지 않는다. 독자가 자기 업무에 적용할 때는 신뢰할 문맥을 어디서 얻고 실행 직전에 무엇을 다시 확인할지 정해야 한다. 나는 가벼움을 그 설명까지 덜어내는 말로 사용하지 않기로 했다.