DunSocial CLI
dunsocial npm 패키지의 dun 바이너리를 사용합니다.
npm install -g dunsocial
npx dunsocial …
모든 명령에 --json을 선호하여 출력을 기계가 파싱할 수 있도록 합니다.
원격 호스트(ChatGPT 웹, Claude 웹)는 계속 DunSocial MCP를 사용합니다. 이 CLI는 로컬 에이전트, 터미널 및 CI용입니다.
환경 변수는 ~/.config/dunsocial/config.json을 재정의합니다.
설정
항상: 인증 → 워크스페이스 선택 → 확인 → 계정 나열 → 실행 순서를 따릅니다.
소셜 계정 ID를 임의로 만들지 마십시오. drafts create를 성공적인 게시로 취급하지 마십시오.
대화형 인증
app.dunsocial.com/cli/authorize에서 브라우저 승인:
dun auth login
헤드리스 인증 (CI)
앱의 설정 → CLI에서 PAT(dun_pat_…)를 생성한 후:
export DUN_TOKEN="dun_pat_…"
export DUN_API_URL=https://api.dunsocial.com
DUN_API_URL은 선택 사항입니다(기본값은 프로덕션).
PAT 규칙:
- 하나의 워크스페이스에 바인딩됨; 범위 부족 → 종료 코드
3/ 금지됨 - 다른 토큰, 결제 또는 팀을 관리할 수 없음
- CI에서는 브라우저 세션 토큰보다 PAT를 선호
워크스페이스
대화형:
dun workspace list --json
dun workspace use <id-or-slug> --json
헤드리스 (PAT 필수):
export DUN_WORKSPACE_ID="…"
확인
dun auth status --json
dun workspace current --json
검색 순서
dun auth status --jsondun workspace current --json(또는list+use)dun accounts list --json— 소셜 계정 id를 캡처- 실행 (예약 / 게시 / 초안 / 미디어 / 메모리)
포스트 예약
dun posts schedule \
--text "DunSocial CLI에서 출시했습니다." \
--accounts acc_x,acc_li \
--in 1h \
--json
절대 시간: --at 2026-06-01T09:00:00Z.
지금 게시
dun posts publish --text "dun에서 안녕" --accounts acc_x --json
미디어
먼저 업로드한 후 반환된 에셋 ID를 첨부합니다:
dun media upload ./shot.png --alt "제품 스크린샷" --json
dun posts schedule --text "…" --accounts acc_x --media <assetId> --in 30m --json
초안, 메모리, 스레드
dun drafts create --text "WIP" --platforms x,linkedin --json
dun memory collections list --json
dun memory save --collection <id> --text "…" --json
dun memory search --prompt "…" --collections <id> --json
스레드 파일 형식: [{"content":"1"},{"content":"2"}]
dun posts schedule-thread --account acc_x --file ./thread.json --in 2h --json
파괴적 작업
delete에는 --yes (또는 CI=1)가 필요합니다.
종료 코드
| 코드 | 의미 |
|---|---|
| 0 | 성공 |
| 1 | 사용법 오류 |
| 2 | 인증 오류 |
| 3 | 금지됨 / 범위 부족 |
| 4 | 유효성 검증 오류 |
| 5 | 찾을 수 없음 |
| 6 | 속도 제한 |
| 7 | 네트워크 오류 |
실패 JSON:
{
"ok": false,
"error": {
"code": "validation",
"message": "…",
"details": null
}
}
주의사항
- 워크스페이스 필요:
workspace use,--workspace, 또는DUN_WORKSPACE_ID --accounts는 DunSocial 소셜 계정 id를 기대합니다. 핸들이 아닙니다.- 첨부 전에
media upload로 로컬 파일을 업로드하세요. - 플랫폼별 옵션: 필요 시
--meta '{"reddit":{…}}' - MCP OAuth와 CLI 토큰은 서로 다른 시스템입니다.
도움말
dun --help
dun posts --help