내가 공개적으로 구축 중인 오픈 소스 AI 마케팅 OS
요약
작성자가 공개적으로 구축 중인 오픈 소스 AI 마케팅 운영 체제(OS)에 대한 소개입니다. 단일 거대 에이전트가 아닌, 명확한 역할을 가진 작은 시스템들의 집합으로 구성된 모듈형 워크플로우를 제안합니다.
핵심 포인트
- 도구의 개수보다 측정 가능한 병목 구간 제거에 집중할 것
- 출처가 인용된 컨텍스트 레이어 구축의 중요성
- 마케팅 업무를 검사 가능한 단위로 분리한 기술 레이어 구성
- Claude 및 Codex를 활용한 SEO, 광고, 블로그 자동화 스택
내가 공개적으로 구축 중인 오픈 소스 AI 마케팅 OS
나의 AI 마케팅 스택은 하나의 거대한 에이전트(Agent)가 아닙니다.
그것은 명확한 역할을 가진 작은 시스템들의 집합입니다. 컨텍스트(Context)는 증거를 검색합니다. SEO 및 광고 기술은 제한된 분석(Bounded analysis)을 수행합니다. 콘텐츠 기술은 연구 내용을 구조화된 자산으로 변환합니다. 미디어 도구는 보유한 자료를 적응시킵니다. Postiz는 승인된 플랫폼 네이티브 초안을 전달받습니다. 인간은 주장, 목적지 또는 출력이 준비되지 않았을 때 실행을 중단합니다.
공유 레이어(Shared layer)는 증거입니다.
다음은 스택을 검사 가능한 상태로 유지하기 위해 내가 사용하는 설치 순서와 운영 모델입니다.
도구의 개수가 아닌 병목 구간부터 시작하라
운영 체제(Operating system)는 더 많은 저장소(Repositories)를 포함한다고 해서 유용해지는 것이 아닙니다.
하나의 구성 요소가 원인, 실패 경계(Failure boundary) 또는 인간의 의사결정을 숨기지 않으면서 측정 가능한 병목 구간을 제거할 때 비로소 유용해집니다.
먼저 한 가지 작업만 선택하십시오:
- 적절한 기업 컨텍스트(Context) 검색
- 보유한 페이지 하나를 감사(Audit)
- 광고 리뷰 하나를 구조화
- 연구 패킷 하나를 브리프(Brief)로 변환
- 보유한 영상 하나를 쇼츠(Short)로 편집
- 승인된 소셜 초안 하나 생성
그 작업을 처음부터 끝까지 실행하십시오. 리뷰 부하를 측정하십시오. 워크플로우가 필요할 때만 다음 구성 요소를 추가하십시오.
레이어 1: 출처가 인용된 컨텍스트 (Source-cited context)
Claude Obsidian이 컨텍스트 레이어입니다.
이 레이어의 역할은 가능한 한 가장 큰 양의 노트를 저장하는 것이 아닙니다. 작업이 시작될 때 관련 출처를 검색하고, 해당 출처의 날짜와 상태를 보여주며, 제한된 다음 행동(Bounded next action)을 생성하는 것이 역할입니다.
작동하는 컨텍스트 루프(Context loop)는 다음과 같습니다:
질문
-> 후보 페이지 검색
-> 출처 및 날짜 검사
...
마지막 단계가 중요합니다. 영구적인 파일이 학습과 동일한 것은 아닙니다. 수정 사항은 나중에 수행될 작업이 적절한 범위 내에서 이를 검색할 수 있을 때에만 운영 메모리(Operational memory)가 됩니다.
레이어 2: 재사용 가능한 마케팅 기술 (Reusable marketing skills)
기술 레이어는 마케팅 업무를 검사 가능한 작업으로 분리합니다.
- Claude SEO는 SEO 감사 (SEO audits), 콘텐츠 점검, 기술적 작업, 그리고 구조화된 리서치 (structured research)를 경로화합니다.
- Codex SEO는 동일한 빌더 주도형 SEO 접근 방식을 Codex 워크플로우에 맞게 조정합니다.
- Claude Ads는 유료 미디어 (paid-media) 검토를 플랫폼, 기여도 (attribution), 예산, 크리에이티브 (creative), 트래킹 (tracking), 그리고 검증 (validation) 단위로 분리합니다.
- Claude Blog는 리서치, 브리프 (briefs), 초안 작성, 사실 확인 (fact checks), 이미지, 현지화 (localization), 그리고 작성 후 품질 관리 (post-write quality control)를 분리합니다.
저장소(repository) 이름이 증거는 아닙니다. 유용한 증거는 다음과 같은 제한된 실행 (bounded run)입니다:
- 정의된 하나의 입력값 (input)
- 가시적인 방법 (method)
- 검토 가능한 출력값 (output)
- 알려진 실패 경계 (failure boundary)
- 다음에 무엇을 할지에 대한 결정
스타(Stars)는 관심을 보여줄 수는 있지만, 그 테스트를 대체할 수는 없습니다.
레이어 3: 소유 미디어 제작 (owned media production)
미디어 레이어는 소유한 소스 자산 (owned source asset)에서 시작해야 합니다.
Claude Shorts는 롱폼 (long-form) 영상을 숏폼 (short-form) 제작 단계로 전환합니다. Banana Claude는 이미지 생성 워크플로우를 다룹니다.
소스 링크는 파생물 (derivative)에 계속 연결되어 있어야 합니다. 이를 통해 쇼츠 (Short), 비주얼, 캡션, 그리고 목적지가 동일한 근거 (underlying claim)와 일치하도록 유지합니다.
비디오의 경우, 출력 계약 (output contract)은 명시적입니다:
- 1080 x 1920
- H.264 비디오
- AAC 오디오
- 자막 삽입 (burned-in captions)
- 화면에 개인적인 경로 또는 자격 증명 노출 금지
- 하나의 CTA (Call to Action)
결정론적 (deterministic) 다이어그램과 캐러셀 (carousels)의 경우, 텍스트와 측정값은 편집 가능한 상태로 유지됩니다. 생성된 일러스트레이션은 텍스트가 없는 상태로 유지되어, 수정할 수 없는 이미지 안에 주장 (claims)이 박제되지 않도록 합니다.
레이어 4: 연결된 퍼블리싱 도구 (connected publishing tools)
이 설정에서 Postiz는 퍼블리싱 레이어 역할을 합니다.
이 애플리케이션은 Railway에 셀프 호스팅(self-hosted)되어 있으며, 그 뒤에는 Redis, Postgres, 그리고 Temporal이 동작하고 있습니다. 현재 인스턴스는 퍼블릭 API (Public API)와 MCP 엔드포인트를 노출합니다. 7개의 소셜 통합(social integrations)이 연결되어 있습니다.
이는 연결의 증명이지, 발행의 증명이 아닙니다.
발행 경로는 아직 단계별로 머물러 있습니다:
로컬 검증 (local validation)
-> 미디어 업로드 (media upload)
-> 대표 제공자 초안 (representative provider draft)
...
Pinterest는 현재 연결된 통합 서비스가 보드(board)를 반환하지 않기 때문에 차단된 상태입니다. Postiz가 실제 보드 ID를 반환할 때까지 해당 에셋은 완료된 상태로 유지되지만 예약되지는 않습니다.
승인 레이어(approval layer)는 실행을 감쌉니다
승인은 스택 옆에 놓인 다섯 번째 도구가 아닙니다. 그것은 공개적인 상태를 변경하는 모든 동작을 둘러싸는 경계입니다.
검토자는 다음 사항을 확인합니다:
- 소스가 주장을 뒷받침하는지
- 변경 가능한 사실(mutable facts)이 갱신되었는지
- 카피(copy)가 해당 플랫폼에 최적화(native)되어 있는지
- 미디어가 게시물에서 설명하는 것과 동일한 시스템을 보여주는지
- 목적지가 존재하며 CTA(Call to Action)와 일치하는지
- 선택된 계정과 시간이 정확한지
- 롤백(rollback) 경로가 존재하는지
자동화는 결정을 준비할 수 있습니다. 하지만 미래의 모든 파생물을 발행할 권한까지 상속받는 것은 아닙니다.
실질적인 설치 순서
1. 컨텍스트 레이어(context layer) 설치
작은 규모의 출처가 인용된 볼트(vault)로 시작하세요. 그 안에 반복되는 마케팅 결정 하나를 넣으세요. 시스템이 올바른 노트, 날짜, 그리고 다음 작업을 검색할 수 있는지 테스트하세요.
2. 하나의 작업을 위한 하나의 기술 추가
측정 가능한 병목 구간을 선택하세요. "SEO 자동화"보다는 소유한 페이지의 SEO 감사(audit)가 더 나은 첫 번째 테스트입니다. "유료 미디어 실행"보다는 광고 계정 하나를 검토하는 것이 더 나은 첫 번째 테스트입니다.
3. 출력 계약(output contract) 정의
컴포넌트가 반드시 반환해야 하는 내용을 작성하세요. 출처, 상태, 우선순위, 제한 사항, 그리고 인간의 체크포인트(human checkpoint)를 포함하세요.
4. 발행은 마지막에 연결
발행은 실수를 증폭시킵니다. 로컬 출력이 안정화되고, 미디어 계약이 검증되었으며, 승인 상태가 명확해진 후에 연결하세요.
5. 품질 비용 측정
도달률(reach)이나 클릭(clicks) 외에도 편집 시간, 수정 사항, 실패 사례, 그리고 검토 부담(review burden)을 추적하세요. 유용한 작업보다 더 많은 정리 작업을 만들어내는 시스템은 추가적인 레이어를 가질 자격이 없습니다.
무엇이 공개되어 있고 무엇이 아직 연결 중인가
위에 언급된 7개의 AgriciDaniel 저장소(repositories)는 2026년 7월 16일 기준으로 공개되어 있었으며 GitHub API를 통해 접근 가능했습니다. 이들의 버전, 설치 경로, 라이선스 및 유지 관리 상태는 날짜가 명시된 권장 사항을 내놓기 전에 반드시 최신 상태로 갱신되어야 합니다.
Postiz 배포는 연결되어 있으며 상태가 양호합니다. 첫 번째 제공업체 프리뷰(provider previews)와 통제된 공개 테스트가 여전히 필요합니다. 2주간의 소셜 배치(social batch)는 해당 경계를 중심으로 구축됩니다.
나는 전체 스택(full stack)을 자율적(autonomous)이라고 부르지 않습니다. 나는 그것을 검사 가능(inspectable)하다고 부릅니다.
그것이 운영상의 이점입니다: 모든 구성 요소는 하나의 작업만을 담당하고, 모든 주장(claim)은 출처를 유지하며, 모든 공개적인 행동은 승인을 위해 멈춥니다.
소스(Sources)
- Claude Obsidian
- Claude SEO
- Codex SEO
- Claude Ads
- Claude Blog
- Claude Shorts
- Banana Claude
- Postiz
- Postiz Public API
무료 AI 마케팅 허브(free AI Marketing Hub)에 참여하여 측정 가능한 단 하나의 마케팅 병목 현상부터 시작해 보세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기