Soku CLI
모든 AI 에이전트에게 성장 스택을 위한 안전한 명령줄을 제공합니다.
마케팅 데이터를 조회하고, 캠페인을 관리하며, SEO 콘텐츠를 게시하고, Claude Code, Codex, Cursor 또는 모든 터미널에서 반복 작업을 자동화하세요.
npm version
Node.js 20 or newer
MIT license
Website · Agent guide · npm · Contributing
Soku CLI는 이미 Soku 작업 공간에 연결된 도구와 데이터를 타이핑 가능하고 검색 가능한 명령으로 변환합니다. 에이전트는 탭 간에 데이터를 복사하거나, API 키를 공유하거나, MCP 호스트를 실행할 필요 없이 질문에서 답변으로—또는 계획에서 인간 승인된 행동으로—이동할 수 있습니다.
Soku CLI를 사용해야 하는 이유?
- 성장 스택을 위한 단일 인터페이스. Google Ads, Meta Ads, ChatGPT Ads, GA4, PostHog, SEO Hosting, 자동화(automations), Context Hub 등 하나의 인터페이스에서 작업할 수 있습니다.
- 에이전트를 위해 구축되었으며 셸에서도 유용합니다. 명령어는 자체 문서화되어 있으며, 비대화형 출력은 에이전트와 스크립트가 안정적으로 파싱할 수 있는 안정적인 JSON 엔벨로프를 사용합니다.
- 자격 증명(Credentials)은 프롬프트 밖에 머무릅니다. Soku가 인증을 처리하고 연결된 타사 자격 증명을 서버 측에서 주입할 수 있습니다.
- 작성물에는 인간의 게이트가 있습니다. 배포 변경이 필요한 광고 작업은 라이브 상태로 가기 전에 검토 요청을 생성합니다.
- 새로운 기능은 자동으로 도착합니다. 타이핑된 명령어 트리는 Soku의 기능 레지스트리에서 생성되며,
soku call은 미래 호환성(forward-compatible)이 있는 탈출구 역할을 합니다.
빠른 시작
AI 에이전트가 설정하도록 하세요 (권장)
다음 내용을 Claude Code, Codex, Cursor 또는 다른 코딩 에이전트에 붙여넣으세요:
Read https://soku.ai/cli/skill.md, install or update Soku CLI, sign in,
select my workspace, and install all business skills.
에이전트 가이드에서는 설치, 장치 로그인, 작업 공간 선택, 스킬 설치 및 첫 기능 확인 과정을 안내합니다.
수동으로 설정하기
npm install -g @soku-ai/cli
...
전역 설치가 필요하지 않은 경우? npx @soku-ai/cli --help로 시작하세요.
플러그인으로 설치하기
이 저장소는 Claude Code, Cursor, 그리고 Codex를 위한 마켓플레이스 플러그인 역할도 합니다. 이 플러그인은 에이전트에게 Soku CLI를 설치하고, 로그인하고, 사용하는 방법을 가르쳐줍니다. 따라서 CLI 자체를 번들링하지 않기 때문에 npm install -g @soku-ai/cli는 여전히 사용자의 기기에서 실행되어야 합니다 (플러그인의 스킬이 에이전트에게 이 과정을 안내합니다).
claude plugin marketplace add About-Intelligence/soku-cli
claude plugin install soku@soku
- Claude Cowork: 해당 Claude 플러그인은 Soku의 원격 MCP 서버(
https://api.soku.ai/mcp)도 등록하므로, 셸(shell)이 없는 호스트에서도 리뷰 게이트가 적용된 변경 사항을 읽고, 리서치하고, 준비할 수 있습니다. Cowork가 soku 커넥터 승인을 요청하면 로그인하세요.
- Cursor: Customize → Plugins를 열고,
https://github.com/About-Intelligence/soku-cli를 가져와 사용자 또는 프로젝트 범위에서 soku를 설치합니다.
- Codex / ChatGPT: 이 저장소를 클론(clone)하세요. 여기에 있는
.agents/plugins/marketplace.json 파일이 로컬 플러그인 디렉터리에 soku 플러그인을 등록합니다.
비즈니스 스킬(soku-ads-report, soku-google-ads, ...)은 플러그인의 일부가 아닙니다. 필요할 때마다 soku skill install <slug>로 설치하고, soku update skills를 사용하여 최신 상태를 유지하세요.
무엇을 할 수 있나요?
광고 데이터를 답변으로 변환하기
지원되는 모든 광고 플랫폼에 걸쳐 캐시되고 정규화된 리포팅부터 시작합니다:
soku ads list-ad-accounts --platform google
soku ads query-single-dimension \
...
Meta, TikTok 또는 ChatGPT Ads에도 동일한 워크플로우를 사용하거나, 사용자 지정 분석이 필요할 때는 Google Ads GAQL을 활용하세요.
확보 및 제품 동작을 함께 이해하기
soku ga4 list-properties
soku ga4 get-property-overview --property-id <property_id>
...
에이전트가 사용자가 CSV 파일을 내보내도록 요청하지 않고도 캠페인 지출(campaign spend)부터 사이트 트래픽, 그리고 인앱 행동(in-product behavior)까지의 경로를 조사할 수 있게 합니다.
인간이 통제하는 캠페인 변경 사항 생성
soku ads meta campaign create \
--account-id <meta_account_id> \
--name "Launch Test" \
...
배포를 변경하는 쓰기 작업은 즉시 실행되는 대신 검토 ID(review ID)를 반환합니다:
soku review show <review_id>
soku review approve <review_id>
에이전트는 정확한 변경 사항을 준비하고 설명할 수 있지만, 실제로 실행할지 여부는 여전히 사람이 결정합니다.
성장 작업을 게시하고 자동화하기
soku seo-hosting pages put \
--section blog \
...
설계 단계부터 에이전트 친화적 (Agent-native by design)
비대화형 셸(non-interactive shell)에서는 모든 명령어가 예측 가능한 JSON 엔벨로프를 반환합니다:
{"ok":true,"data":{"...":"..."}}
오류는 동일한 형태와 0이 아닌 종료 코드(non-zero exit code)를 사용합니다:
{"ok":false,"error":{"code":"...","message":"..."}}
에이전트에게 단순히 명령어 이름뿐만 아니라, 그 뒤에 숨겨진 워크플로우와 가드레일(guardrails)을 제공하려면 Soku의 에이전트 스킬(agent skills)을 설치하세요:
soku skill install --all --global
soku skill list
soku skill status
번들된 meta 스킬은 skills/soku/SKILL.md에서 사용할 수 있습니다.
명령어 맵
| 영역 | 시작하기 | 일반적인 사용 |
|---|
| 인증(Authentication) | soku auth --help | 로그인, 로그아웃 및 세션 상태 확인 |
| ... | | |
실명한 호출을 하기 전에 soku <네임스페이스> <액션> --help를 실행하세요. 타이핑된 명령어 이름은 kebab-case를 사용하며, soku call과 함께 사용되는 원시 기능 이름(raw capability names)은 snake_case를 사용합니다. | | |
작동 방식
클라이언트 라이브러리(CLI)는 /api/cli/*를 통해 Soku와 통신하며, MCP 호스트가 필요하지 않습니다. 그 타이핑된 명령어들은 src/generated/capabilities.json에서 생성되며, 이 파일은 Soku 백엔드로부터 자동으로 동기화됩니다. 수동으로 해당 파일을 편집하지 마십시오.
새로 출시된 기능에 아직 직관적인 유형의 명령어가 없는 경우에도, 여전히 해당 기능을 발견하고 직접 호출할 수 있습니다:
soku call ads list_ad_accounts -p platform=google
soku call <namespace> <action> --help
개발 (Development)
pnpm install
pnpm typecheck
pnpm test
...
이 프로젝트는 ESM과 NodeNext 모듈 해석을 사용하는 TypeScript로 작성되었습니다. 테스트 파일은 *.test.ts 파일로 같은 위치에 배치되어 있으며, Node의 내장 테스트 러너를 사용하여 실행됩니다. keytar는 선택 사항이며, 사용할 수 없을 경우 자격 증명(credential) 저장소는 파일 기반 스토어로 대체됩니다.
기여 (Contributing)
이슈(Issue)와 풀 리퀘스트(Pull Request)를 환영합니다. 기여하기 전에 CONTRIBUTING.md와 우리의 Code of Conduct를 읽어주십시오. 보안 문제를 신고하려면 SECURITY.md를 사용해 주십시오.
라이선스 (License)
MIT © About Intelligence