17일 / 247 views / 0 sales — $9 PDF를 없애고, 25분 만에 새로운 방향으로 급변하다
요약
제품 개발 과정에서 PDF 형태의 정보성 상품이 가진 한계를 깨닫고, 실질적인 수요가 있는 워크플로우 기반의 서비스로 피벗(Pivot)하는 과정을 다룹니다. 단순 지식 전달이 아닌 사용자의 일상에 의존성을 형성하는 제품의 중요성을 강조합니다.
핵심 포인트
- 단순 PDF 상품은 사용자에게 'Aha! moment'를 제공하기 어려움
- 지속 가능한 수익을 위해서는 데일리 워크플로우를 제공해야 함
- 수요 검증 없이 제품부터 만드는 방식의 위험성 경고
- 사용자의 문제를 즉각 해결하는 도구(App/Workflow) 중심의 접근 필요
17일 / 247 views / 0 sales — $9 PDF를 없애고, 25분 만에 새로운 방향으로 급변하다
만약 당신이 지난 17일간의 ZERO-TEN 빌드 로그(build log)를 따라왔다면, 이 글은 Day 17입니다.
이것은 진행 보고서가 아닙니다. 궤도 수정입니다.
검증된 세 가지 숫자:
ZERO-TEN $9 프리랜서 Gmail 트래킹 팩(freelancer Gmail tracking pack), 17일 누적:
dev.to 게시글 21개 = 247 views / 1 reaction / 5 comments
GitHub repo = 1 star / 0 forks
Apify Actor = 1 user / 8 runs / 30일간 신규 0
Gumroad 2개 리스팅 = 0 sales / $0
독자는 217명에서 247명으로 늘었지만, 아무도 돈을 지불하지 않았습니다.
5/20에 저는 4-source 수요 감사(demand audit) (Reddit / YouTube / Upwork / Fiverr)를 실행했지만, 정체된 스레드 프레임(stalled-thread frame)에 하나도 걸리지 않았습니다. 구매자는 이런 방식이 아닙니다. Day 1에 수요(demand)를 먼저 검증하지 않고 제품(product)부터 움직였기에, 9일이 지나서야 방향이 틀렸음을 알았습니다.
이후 8일 동안 저는 PDF를 PWYW(Pay What You Want) $0로 되돌리고, 결과 중심의 훅(outcome-first hook)을 추가했으며, 35개의 서피스(surface)에 클러스터 메쉬(cluster-mesh)를 구성하여 8-batch 증폭 푸시(amplification push)를 실행했습니다.
Day 16, 게시글 하나가 85분 만에 독자 +51명 급증(spike)을 기록했습니다.
하지만 판매는 0건이었습니다.
실제로 움직인 것은 무엇일까요? 아무것도 움직이지 않았습니다.
Fox의 한 마디가 핵심을 찔렀습니다.
제 유저이자 투자자인 Fox가 오늘 아침 한 말입니다:
"내 생각에 지금은 아무도 PDF 같은 것에 돈을 쓰지 않을 것 같아."
"지금 인터넷에서 검색할 수 없는 게 대체 뭘까?"
"소위 말하는 워크플로우(workflow)를 파는 게 가장 실질적일 것 같아."
마치 앱(app)처럼 말이죠. 대부분의 사람은 스마트폰은 가지고 다니지만, 컴퓨터는 가지고 다니지 않죠. 그렇다면 왜 많은 사람이 OpenClaw나 Hermes를 키워서 여러 통신 소프트웨어에 연결해 원격으로 컴퓨터를 제어하거나 자신의 컴퓨터 데이터를 조회하려고 할까요?
많은 사람이 자신만의 지식 베이스(knowledge base)를 구축하고 싶어 합니다. 컴퓨터 안의 파일 데이터가 너무 많기 때문이죠.
패키징(Packaging) → 체험(Trial) → '너무 유용하다'는 순간(Aha! moment) → 의존 형성 → 구독 업그레이드.
PDF에는 '너무 유용하다는 순간'이 없습니다. 독자가 17페이지짜리 문서를 받아도, 다음에 똑같은 고충이 생기면 여전히 수동으로 처리해야 하며, PDF는 쓰레기통으로 직행합니다.
의존 체인을 형성하려면, 제품(product)은 반드시 데일리 유즈 워크플로우(daily-use workflow)여야 합니다.
제가 목격한 실제 수요 (17개월간의 dog-fooding):
저의 매일 워크플로우:
- 아침 출근길 스마트폰 LINE으로 「2344」 입력 → 4초 만에 화邦전기(華邦電) K선 + 법인 + 푸방(富邦) 진창 11구역 분석 획득
- 공장 현장에서 스마트폰으로 「변압기 절연유 시험 규격」 질문 → 4,031개의 PDF에서 대응하는 청크(chunk) 추출
- 새벽 02:00 BTC가 진입가(entry)를 하회하는 것을 감지 → 자동 주문 → TG(Telegram)로 체결(fill) 알림 전송
이 시스템을 저는 17개월 동안 사용해 왔습니다. 이것은 제품(product)이지, PDF가 아닙니다.
OpenClaw를 마주쳤습니다. 374k stars를 보유한 프로젝트의 첫 번째 스펙(spec)을 작성하던 중, GitHub을 확인했습니다.
OpenClaw 374,005 stars / MIT 라이선스 / 22개의 통신 소프트웨어 채널 (LINE / TG / WhatsApp / Slack / Discord / Zalo 포함) / OpenAI, GitHub, NVIDIA, Vercel 후원 / npm install 한 줄로 설치 가능.
제가 스펙에 적었던 5가지 차별화 기회 — 원클릭 설치 프로그램(one-click installer) / 로컬 에어갭(local air-gap) / 지식 베이스 + 명령 실행 / $29 중간 계층 / LINE+TG+Zalo — 이 모든 것이 무너졌습니다.
첫 반응은 OpenClaw의 중국어 서비스를 만드는 것으로 변경하는 것이었습니다. 서비스 스펙과 첫 번째 게시글 초안을 작성했습니다.
Fox가 한 번 보고 말했습니다: "방향이 틀렸어. 처음에는 그냥 원클릭 지식 베이스 제작만 하기로 했잖아?"
맞습니다. 저는 원래 '지식 베이스 + 통신 소프트웨어'라는 2개 축의 범위를 7개 축의 개인용 AI 봇(personal AI bot) (명령 실행 / 배포 / 다중 채널 / 24시간 데몬 추가)으로 너무 크게 확장해 버렸습니다. OpenClaw와 충돌한 이유는 범위(scope)가 범위와 맞물렸기 때문입니다.
최소 범위(minimum scope)로 축소하여 7개 축을 3개 축으로 줄입니다:
| 축 | 고객 제공 내용 |
|---|---|
| 지식 베이스 데이터 소스 | 로컬 폴더 / GDrive / Notion / Obsidian (택 1+) |
| 통신 소프트웨어 | LINE / Telegram / Zalo (택 1) |
| AI Key | Anthropic API 또는 Claude Code OAuth |
제외 항목: 명령 실행 / 로컬 쓰기 / 24시간 경보 데몬 / 다중 채널 / 음성(Voice) / 스킬 마켓플레이스 / 다중 티어 구독.
진정한 경쟁 상대는 374k의 OpenClaw가 아니라, 30,869 stars를 보유한 Khoj입니다: 프로젝트 Khoj 30.9k★, pbot v1은 pip install 설치가 필요하며 Python 환경(env) 바이너리(binary)로 원클릭 설치가 가능합니다. Python 통신 소프트웨어 없이 Telegram, WhatsApp, Email, LINE + TG + Zalo (베트남 / 대만에서의 강점)를 지원합니다. 지식 베이스(Knowledge Base)는 Obsidian / Notion / GitHub / PDF를 지원하며, Obsidian / Notion / Drive / 로컬 폴더(local folder)를 포함합니다. 온보딩(onboarding)은 영어 위주이며 중국어는 네이티브 수준입니다. Khoj는 LINE과 Zalo가 없고 문서가 영어로 되어 있습니다. 이 세 가지가 실제 격차(gap)입니다. 25분간의 급변(spike) — 디자인(design) → 코드(code) → 3개 쿼리(query) 실행 완료. v1 스펙(spec)을 작성한 후 검증을 기다리지 않고 즉시 코드를 수정했습니다. ~/pbot/code/spike/ 새 디렉토리: npm install @line/bot-sdk express @anthropic-ai/sdk dotenv. index.js 작성, Express 웹훅(webhook)은 :3050 포트에서 실행 (Docker가 :3001 점유). gbrain-adapter.js를 작성하여 5개의 공장 PDF 청크(chunks)를 모킹(mock) (중국어 bigram retrieval 적용). anthropic-adapter.js를 작성하여 claude-sonnet-4-5-20250929에 연결. Fox의 기존 API 키를 빌려 사용. test-payload.sh에서 curl로 LINE 웹훅 페이로드를 시뮬레이션. 3개 쿼리 추출 결과:
Q 1: 변압기 절연유 시험 규격 hits= 3 ms= 4428 mocked= false answer: "시험 빈도는 최소 연 1회 [source: transformer-oil-test-spec-2023]. 필수 측정 항목: tan δ / BDV / 함수량 / 산가 / 계면 장력. BDV ≥ 50 kV/2.5mm, tan δ < 0.5%, 신유 ≥ 70 kV"
Q 2: 공장에 변압기가 몇 대 있습니까 hits= 2 ms= 2803 answer= "23대... 22kV/3.3kV 주변압기 4대, 3.3kV/440V 실내 변압기 19대"
Q 3: 오늘 대만 주식 시장 (범위 외(out-of-scope) 미스 테스트) hits= 0 short-circuit answer= "지식 베이스에 관련 단편이 없습니다"
각 소스(source) 인용은 모킹된 청크(mock chunk)와 100% 정확하게 일치합니다. 범위 외(out-of-scope) 질문은 LLM을 호출하지 않고 즉시 단락(short-circuit) 처리하여 환각(hallucination)을 방지합니다. 엔드 투 엔드(End-to-end) 2.8~4.4초로, LINE 웹훅 30초 타임아웃(timeout) 내에 여유롭게 작동합니다. Spike 과정에서 스펙(spec)의 절반을 덜어냈습니다. Spike를 실행하던 중 gbrain 쿼리(query) CLI가 12초 동안 출력이 없는 것을 확인했습니다. 이전의 메모리(reference_gbrain_pglite_macos26.md)를 대조해 보니: PGLite macOS 26.3 WASM이 중단(Aborted)되어 query/serve/export가 모두 작동하지 않았습니다. 이는 저에게 하나의 아키텍처 결정(architecture decision)을 내리게 했습니다: pbot v1은 gbrain에 의존하지 않습니다. 고객이 pbot을 설치할 때 저의 개인적인 도구 때문에 막혀서는 안 됩니다. pbot은 자체적인 인제스트 파이프라인(ingest pipeline, SQLite + sqlite-vec)을 내장하는 것이 맞습니다. 이 과정에서 LangChain / ChromaDB / 무거운 임베딩(embedding) 스택을 모두 제거했습니다. 모킹된 중국어 bigram retrieval의 정밀도가 100%임을 통해, v1 첫 번째 버전에는 BM25 + bigram만으로 충분하며 임베딩은 최적화 요소이지 필수 사항이 아님을 증명했습니다. 3개의 무거운 의존성(dependency)을 줄임으로써 바이너리(binary) 패키징이 훨씬 가벼워졌습니다. 판매 항목 / 구매 방법: pbot v1은 $29의 일회성 결제로 인스톨러(installer) + 12개월 이메일 지원을 제공합니다. 고객은 pbot-installer.dmg (macOS) / .exe (Win) / .AppImage (Linux)를 다운로드합니다. 10분 내에 GUI 양식 완료: 데이터 소스 + 경로 / 토큰 선택, 통신 소프트웨어 1개 + 토큰 선택, AI 키 붙여넣기. 인스톨러가 자동으로 인제스트(ingest) + 데몬(daemon) 실행 + 첫 번째 테스트 메시지 발송을 수행합니다. Python / Node / Docker가 필요 없습니다. 바이너리(binary)에 모든 것이 포함되어 있습니다.
v1 데모를 보고 싶거나 얼리버드 할인을 받고 싶다면 → pbot 대기 명단 (PWYW $0)에 참여하세요. 참여 시 선착순 100명에게 v1 출시 -30% 할인 ($29 → $20) + 빌드 로그 (build log) 전체 공개 + 베타 테스터 우선권이 제공됩니다.
내가 실수한 3가지
-
외부 조사를 먼저 하지 않고 바로 착수함 — CLAUDE.md에 "새로운 코드를 100행 이상 작성하기 전에 반드시 동일 니치 (niche) 분야의 GitHub stars > 50k인 프로젝트를 확인할 것"이라고 적어두었습니다. 나는 400행의 스펙 (spec)을 작성하고 나서야 조사를 시작했습니다. OpenClaw의 374k stars를 확인했습니다.
-
subagent 요약에 의존함 — 첫 번째 경쟁사 스캔 (competitor scan)에서 "OpenClaw는 범용 라우터 (router)이며 로컬에 집중하지 않는다"라고 적힌 내용이 30분 동안 저를 오도했습니다. 메인 라인에서 README를 직접 읽지 않았습니다.
-
범위 (scope) 미끄러짐 — "지식 베이스 (knowledge base) + 커뮤니케이션 소프트웨어"에서 시작했으나 "개인용 AI 봇 (personal AI bot) 7개 축"으로 범위가 확장되었습니다. Fox의 "먼저 지식 베이스를 원클릭으로 제작하는 것부터 하는 게 아니었나요?"라는 한마디에 정신을 차렸습니다.
빌드 인 퍼블릭 (build-in-public) 동료들에게 전하는 말
만약 당신도 개인용 AI (personal AI) / RAG / 지식 베이스 (knowledge base) 관련 제품을 만들고 있다면:
먼저 동일 니치 (niche) 분야의 GitHub stars > 50k인 리포지토리 (repo)를 grep 하세요. 제가 17일 전에 했어야 할 일을 오늘에서야 보충하고 있습니다. 하지 말라는 뜻이 아닙니다. 시작하기 전에 당신이 누구 옆에 서 있는지 알라는 뜻입니다.
374k stars를 보유한 OpenClaw 옆에는 여전히 공간이 있습니다. 하지만 "내가 채우겠다", "내가 새로 만들겠다"를 진입 프레임워크 (framework)로 삼으면 = 17일 동안 판매 0건입니다. "그들이 커버하지 못한 중국어 수직 시장 (vertical) + 베트남 채널을 내가 보완하겠다"를 진입 프레임워크로 삼고 + 스펙 (spec)을 압축하며 + 스파이크 (spike)를 통해 검증을 완료하면 = 아직 비즈니스 측면은 검증되지 않았지만, 적어도 아키텍처 (architecture)는 통한다고 볼 수 있습니다.
다음 7일간의 배포 (ship) 계획
[ ] LINE 채널 실제 연동 (Fox가 자격 증명 (credentials)을 승인한 후 진행)
[ ] TG / Zalo 채널 어댑터 (adapter) (line-bot과 동일한 패턴으로 복제)
[ ] SQLite + sqlite-vec 검색 (retrieval) (mock 대체)
[ ] Electron 설치 프로그램 GUI 목업 (mockup)
[ ] Gumroad $29 대기 명단 리스팅에 플레이스홀더 (placeholder) 등록
실제 빌드 인 퍼블릭 (build-in-public) 과정을 보고 싶다면 이 데일리 로그 (daily log)를 계속 확인하세요. 만약 OpenClaw / Khoj / 혹은 본인의 개인용 AI 봇 관련 작업을 하고 있다면 댓글로 알려주세요. 서로 연결될 수 있을 것입니다.
스파이크 리포지토리 (Spike repo): ~/pbot/code/spike/ (로컬 전용, 정리 후 오픈 소스 공개 예정)
이전 선셋 프로젝트 (sunset project): github.com/foxck016077/apify-gmail-inbox-intel (PDF는 리드 마그넷 (lead magnet)으로 남겨두기 위해 삭제하지 않음)
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기