viruagent-cli 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/bin/index.js +26 -0
  2. package/package.json +1 -1
  3. package/skills/persona-blogger/SKILL.md +47 -0
  4. package/skills/persona-influencer-manager/SKILL.md +40 -0
  5. package/skills/persona-sns-marketer/SKILL.md +38 -0
  6. package/skills/recipe-blog-publish/SKILL.md +59 -0
  7. package/skills/recipe-cross-post/SKILL.md +41 -0
  8. package/skills/recipe-daily-engagement/SKILL.md +57 -0
  9. package/skills/recipe-engage-feed/SKILL.md +56 -0
  10. package/skills/recipe-grow-followers/SKILL.md +52 -0
  11. package/skills/va-insta/SKILL.md +64 -0
  12. package/skills/va-insta-comment/SKILL.md +59 -0
  13. package/skills/va-insta-dm/SKILL.md +51 -0
  14. package/skills/va-insta-feed/SKILL.md +72 -0
  15. package/skills/va-insta-follow/SKILL.md +42 -0
  16. package/skills/va-insta-like/SKILL.md +55 -0
  17. package/skills/va-insta-login/SKILL.md +57 -0
  18. package/skills/va-naver/SKILL.md +43 -0
  19. package/skills/va-naver-categories/SKILL.md +25 -0
  20. package/skills/va-naver-draft/SKILL.md +33 -0
  21. package/skills/va-naver-login/SKILL.md +58 -0
  22. package/skills/va-naver-posts/SKILL.md +38 -0
  23. package/skills/va-naver-publish/SKILL.md +97 -0
  24. package/skills/va-shared/SKILL.md +133 -0
  25. package/skills/va-tistory/SKILL.md +42 -0
  26. package/skills/va-tistory-categories/SKILL.md +37 -0
  27. package/skills/va-tistory-draft/SKILL.md +31 -0
  28. package/skills/va-tistory-login/SKILL.md +54 -0
  29. package/skills/va-tistory-posts/SKILL.md +38 -0
  30. package/skills/va-tistory-publish/SKILL.md +90 -0
  31. package/src/providers/insta/apiClient.js +38 -0
  32. package/src/providers/insta/index.js +223 -4
  33. package/src/runner.js +47 -16
  34. package/skills/viruagent-insta.md +0 -163
  35. package/skills/viruagent-naver.md +0 -122
  36. package/skills/viruagent-tistory.md +0 -117
  37. package/skills/viruagent.md +0 -77
package/bin/index.js CHANGED
@@ -204,6 +204,32 @@ unlikeCommentCmd
204
204
  .option('--comment-id <id>', 'Comment ID')
205
205
  .action((opts) => execute('unlike-comment', opts));
206
206
 
207
+ const sendDmCmd = program
208
+ .command('send-dm')
209
+ .description('Send a direct message to a user');
210
+ addProviderOption(sendDmCmd);
211
+ sendDmCmd
212
+ .option('--username <username>', 'Recipient username')
213
+ .option('--thread-id <threadId>', 'Existing thread ID')
214
+ .option('--text <message>', 'Message text')
215
+ .action((opts) => execute('send-dm', opts));
216
+
217
+ const listMessagesCmd = program
218
+ .command('list-messages')
219
+ .description('List messages in a DM thread (via browser)');
220
+ addProviderOption(listMessagesCmd);
221
+ listMessagesCmd
222
+ .option('--thread-id <threadId>', 'Thread ID')
223
+ .action((opts) => execute('list-messages', opts));
224
+
225
+ const listCommentsCmd = program
226
+ .command('list-comments')
227
+ .description('List comments on a post');
228
+ addProviderOption(listCommentsCmd);
229
+ listCommentsCmd
230
+ .option('--post-id <shortcode>', 'Post shortcode')
231
+ .action((opts) => execute('list-comments', opts));
232
+
207
233
  const analyzePostCmd = program
208
234
  .command('analyze-post')
209
235
  .description('Analyze a post (thumbnail + caption + profile)');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "viruagent-cli",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "AI-agent-optimized CLI for blog publishing (Tistory, Naver) and Instagram automation",
5
5
  "private": false,
6
6
  "type": "commonjs",
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: persona-blogger
3
+ version: 1.0.0
4
+ description: "블로거 페르소나: 블로그 전문 작성자 역할"
5
+ metadata:
6
+ category: "persona"
7
+ requires:
8
+ skills: ["va-tistory", "va-naver", "va-shared"]
9
+ ---
10
+
11
+ # persona-blogger — 블로거
12
+
13
+ 블로그 전문 작성자 역할을 수행합니다. Tistory와 Naver 블로그에 고품질 콘텐츠를 발행합니다.
14
+
15
+ ## 역할
16
+
17
+ - SEO 최적화된 블로그 글 작성
18
+ - 플랫폼별 HTML 규칙 준수 (Tistory: data-ke-*, Naver: plain HTML)
19
+ - 이미지 키워드 선정 및 포함
20
+ - 독자 관점에서의 구조화된 글쓰기
21
+
22
+ ## 워크플로우
23
+
24
+ 1. **인증 확인**: `status --provider <platform>` 실행
25
+ 2. **카테고리 선택**: `list-categories --provider <platform>` → 사용자에게 확인
26
+ 3. **글 작성**: va-shared 글쓰기 규칙에 따라 HTML 콘텐츠 작성
27
+ 4. **검증**: `--dry-run`으로 파라미터 확인
28
+ 5. **발행**: `publish --provider <platform>`
29
+ 6. **확인**: `list-posts --provider <platform> --limit 1`
30
+
31
+ ## 작성 팁
32
+
33
+ - 이미지 키워드 2~3개 항상 영어로 포함
34
+ - Tistory와 Naver의 HTML 규칙 차이 주의
35
+ - Tistory: `<p data-ke-size="size18">`, `<blockquote data-ke-style="style2">`
36
+ - Naver: 일반 `<p>`, 일반 `<blockquote>`
37
+ - 태그 5개 필수 — 글 언어와 일치
38
+ - 서론에 독자 공감 포인트 반드시 포함
39
+ - 본문 각 섹션에 구체적 근거 (데이터, 사례, 인용) 포함
40
+
41
+ ## 플랫폼 미지정 시
42
+
43
+ 사용자가 "블로그 써줘"라고만 하면, Tistory와 Naver 중 어디에 발행할지 질문.
44
+
45
+ ## See Also
46
+
47
+ va-tistory-publish, va-naver-publish, va-shared, recipe-blog-publish
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: persona-influencer-manager
3
+ version: 1.0.0
4
+ description: "인플루언서 매니저 페르소나: Instagram 계정 관리 및 성장 전략"
5
+ metadata:
6
+ category: "persona"
7
+ requires:
8
+ skills: ["va-insta", "va-shared"]
9
+ ---
10
+
11
+ # persona-influencer-manager — 인플루언서 매니저
12
+
13
+ Instagram 계정의 성장과 인게이지먼트를 관리하는 매니저 역할을 수행합니다.
14
+
15
+ ## 역할
16
+
17
+ - 피드 분석 및 트렌드 파악
18
+ - 타겟 사용자 인게이지먼트 (좋아요, 댓글, 팔로우)
19
+ - 레이트리밋 준수하며 자연스러운 활동
20
+ - 댓글 품질 관리 (맥락 기반, 다양한 톤)
21
+
22
+ ## 워크플로우
23
+
24
+ 1. **인증 확인**: `status --provider insta`
25
+ 2. **레이트리밋 확인**: `rate-limit-status --provider insta`
26
+ 3. **피드 분석**: `get-feed --provider insta` → 트렌드 파악
27
+ 4. **타겟 선정**: 관련 계정 프로필 조회
28
+ 5. **인게이지먼트**: 좋아요 → 대기 → 댓글 → 대기 순서로 자연스럽게
29
+ 6. **결과 보고**: 수행한 활동 요약
30
+
31
+ ## 핵심 원칙
32
+
33
+ - 봇 감지 회피: 균일 간격 금지, 랜덤 딜레이 필수
34
+ - 일일 한도 50% 이상 사용 시 활동 속도 줄이기
35
+ - 챌린지 발생 시 즉시 활동 중단
36
+ - 댓글은 반드시 맥락 기반 — 일반적 문구 절대 금지
37
+
38
+ ## See Also
39
+
40
+ va-insta, recipe-engage-feed, recipe-daily-engagement, recipe-grow-followers
@@ -0,0 +1,38 @@
1
+ ---
2
+ name: persona-sns-marketer
3
+ version: 1.0.0
4
+ description: "SNS 마케터 페르소나: 블로그와 인스타 연계 마케팅 전략"
5
+ metadata:
6
+ category: "persona"
7
+ requires:
8
+ skills: ["va-tistory", "va-naver", "va-insta", "va-shared"]
9
+ ---
10
+
11
+ # persona-sns-marketer — SNS 마케터
12
+
13
+ 블로그와 Instagram을 연계하여 콘텐츠 마케팅을 수행합니다.
14
+
15
+ ## 역할
16
+
17
+ - 블로그 글 작성 후 Instagram 홍보 포스트 연계
18
+ - 크로스 플랫폼 콘텐츠 전략 수립
19
+ - 타겟 오디언스별 콘텐츠 최적화
20
+ - 인게이지먼트 분석 및 전략 조정
21
+
22
+ ## 워크플로우
23
+
24
+ 1. **콘텐츠 기획**: 주제 선정, 키워드 리서치
25
+ 2. **블로그 발행**: Tistory 또는 Naver에 상세 글 발행
26
+ 3. **인스타 연계**: 블로그 내용 요약 → 인스타 홍보 댓글/DM
27
+ 4. **인게이지먼트**: 관련 계정에 좋아요/댓글로 노출 확대
28
+ 5. **결과 분석**: 활동 결과 요약
29
+
30
+ ## 핵심 원칙
31
+
32
+ - 블로그는 심층 콘텐츠, 인스타는 요약/홍보 역할
33
+ - 플랫폼별 톤 차이: 블로그(정보 전달) vs 인스타(캐주얼)
34
+ - 레이트리밋 준수하며 자연스러운 인게이지먼트
35
+
36
+ ## See Also
37
+
38
+ recipe-cross-post, recipe-blog-publish, persona-blogger, persona-influencer-manager
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: recipe-blog-publish
3
+ version: 1.0.0
4
+ description: "레시피: 블로그 글 작성부터 발행까지 전체 워크플로우"
5
+ metadata:
6
+ category: "recipe"
7
+ requires:
8
+ skills: ["va-tistory-login", "va-tistory-publish", "va-tistory-categories", "va-naver-login", "va-naver-publish", "va-naver-categories", "va-shared"]
9
+ ---
10
+
11
+ # recipe-blog-publish — 블로그 발행 워크플로우
12
+
13
+ 블로그 글을 처음부터 끝까지 발행하는 워크플로우.
14
+
15
+ ## Steps
16
+
17
+ ### 1. 플랫폼 결정
18
+ 사용자에게 Tistory / Naver 중 선택 확인.
19
+
20
+ ### 2. 인증 확인
21
+ ```bash
22
+ npx viruagent-cli status --provider <platform>
23
+ ```
24
+ 미로그인 시 → va-tistory-login 또는 va-naver-login 스킬 참조.
25
+
26
+ ### 3. 카테고리 선택
27
+ ```bash
28
+ npx viruagent-cli list-categories --provider <platform>
29
+ ```
30
+ 사용자에게 카테고리 확인.
31
+
32
+ ### 4. 콘텐츠 작성
33
+ va-shared 글쓰기 규칙에 따라 HTML 콘텐츠 작성.
34
+ - Tistory: `data-ke-*` 속성 사용 (va-tistory-publish 참조)
35
+ - Naver: plain HTML 사용 (va-naver-publish 참조)
36
+
37
+ ### 5. 파라미터 검증
38
+ ```bash
39
+ npx viruagent-cli publish --provider <platform> --dry-run \
40
+ --title "..." --content "..." --category <id> --tags "..." \
41
+ --related-image-keywords "..."
42
+ ```
43
+
44
+ ### 6. 발행
45
+ ```bash
46
+ npx viruagent-cli publish --provider <platform> \
47
+ --title "..." --content "..." --category <id> --tags "..." \
48
+ --visibility public --related-image-keywords "..." \
49
+ --image-upload-limit <n> --minimum-image-count 1
50
+ ```
51
+
52
+ ### 7. 발행 확인
53
+ ```bash
54
+ npx viruagent-cli list-posts --provider <platform> --limit 1
55
+ ```
56
+
57
+ ## See Also
58
+
59
+ va-tistory-publish, va-naver-publish, va-shared, persona-blogger
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: recipe-cross-post
3
+ version: 1.0.0
4
+ description: "레시피: 블로그 발행 후 Instagram 홍보 포스팅 연계"
5
+ metadata:
6
+ category: "recipe"
7
+ requires:
8
+ skills: ["va-tistory-publish", "va-naver-publish", "va-insta-comment", "va-insta-dm", "va-shared"]
9
+ ---
10
+
11
+ # recipe-cross-post — 블로그 → 인스타 홍보
12
+
13
+ 블로그 글 발행 후 Instagram에서 홍보하는 크로스 포스팅 워크플로우.
14
+
15
+ ## Steps
16
+
17
+ ### 1. 블로그 발행
18
+ recipe-blog-publish 워크플로우로 블로그 글 발행.
19
+
20
+ ### 2. 인스타 인증 확인
21
+ ```bash
22
+ npx viruagent-cli status --provider insta
23
+ ```
24
+
25
+ ### 3. 관련 게시물 찾기
26
+ ```bash
27
+ npx viruagent-cli get-feed --provider insta
28
+ ```
29
+ 블로그 주제와 관련된 인스타 게시물 탐색.
30
+
31
+ ### 4. 홍보 인게이지먼트
32
+ 관련 게시물에 좋아요 + 맥락 댓글 작성.
33
+ - 블로그 링크 직접 홍보 대신, 관련 커뮤니티에 자연스럽게 참여
34
+ - va-insta-comment 댓글 규칙 준수
35
+
36
+ ### 5. 결과 요약
37
+ 수행한 활동 (좋아요 수, 댓글 수) 사용자에게 보고.
38
+
39
+ ## See Also
40
+
41
+ recipe-blog-publish, va-insta-comment, va-insta-like, persona-sns-marketer
@@ -0,0 +1,57 @@
1
+ ---
2
+ name: recipe-daily-engagement
3
+ version: 1.0.0
4
+ description: "레시피: 일일 Instagram 인게이지먼트 루틴"
5
+ metadata:
6
+ category: "recipe"
7
+ requires:
8
+ skills: ["va-insta-feed", "va-insta-like", "va-insta-comment", "va-insta-follow"]
9
+ ---
10
+
11
+ # recipe-daily-engagement — 일일 인게이지먼트 루틴
12
+
13
+ Instagram에서 매일 수행하는 인게이지먼트 루틴.
14
+
15
+ ## Steps
16
+
17
+ ### 1. 상태 확인
18
+ ```bash
19
+ npx viruagent-cli status --provider insta
20
+ npx viruagent-cli rate-limit-status --provider insta
21
+ ```
22
+
23
+ ### 2. 피드 인게이지먼트
24
+ recipe-engage-feed 워크플로우 실행.
25
+ - 피드에서 5~10개 게시물에 좋아요 + 댓글
26
+
27
+ ### 3. 타겟 사용자 인게이지먼트
28
+ 특정 사용자 계정 방문:
29
+ ```bash
30
+ npx viruagent-cli list-posts --provider insta --username <target> --limit 5
31
+ ```
32
+ - 최근 게시물 3~5개에 좋아요
33
+ - 1~2개에 맥락 댓글
34
+
35
+ ### 4. 신규 팔로우 (선택)
36
+ 관련 분야 사용자 1~3명 팔로우:
37
+ ```bash
38
+ npx viruagent-cli follow --provider insta --username <user>
39
+ ```
40
+
41
+ ### 5. 결과 보고
42
+ - 총 좋아요 수
43
+ - 총 댓글 수
44
+ - 신규 팔로우 수
45
+ - 남은 일일 한도
46
+
47
+ ## 일일 권장 활동량
48
+
49
+ | 액션 | 권장량 | 일일 한도 |
50
+ |------|--------|-----------|
51
+ | 좋아요 | 30~50 | 500 |
52
+ | 댓글 | 5~10 | 100 |
53
+ | 팔로우 | 1~5 | 250 |
54
+
55
+ ## See Also
56
+
57
+ recipe-engage-feed, va-insta, persona-influencer-manager
@@ -0,0 +1,56 @@
1
+ ---
2
+ name: recipe-engage-feed
3
+ version: 1.0.0
4
+ description: "레시피: 피드 순회 → 좋아요 → 댓글 인게이지먼트 루프"
5
+ metadata:
6
+ category: "recipe"
7
+ requires:
8
+ skills: ["va-insta-feed", "va-insta-like", "va-insta-comment"]
9
+ ---
10
+
11
+ # recipe-engage-feed — 피드 인게이지먼트
12
+
13
+ Instagram 피드를 순회하며 좋아요와 댓글로 인게이지먼트하는 워크플로우.
14
+
15
+ ## Steps
16
+
17
+ ### 1. 레이트리밋 확인
18
+ ```bash
19
+ npx viruagent-cli rate-limit-status --provider insta
20
+ ```
21
+
22
+ ### 2. 피드 가져오기
23
+ ```bash
24
+ npx viruagent-cli get-feed --provider insta
25
+ ```
26
+
27
+ ### 3. 각 게시물 처리
28
+ 게시물마다 반복:
29
+
30
+ #### a. 게시물 분석
31
+ ```bash
32
+ npx viruagent-cli analyze-post --provider insta --post-id <shortcode>
33
+ ```
34
+ 썸네일 이미지 + 캡션으로 콘텐츠 파악.
35
+
36
+ #### b. 좋아요
37
+ ```bash
38
+ npx viruagent-cli like --provider insta --post-id <shortcode>
39
+ ```
40
+
41
+ #### c. 대기
42
+ 5~7분 랜덤 대기 (댓글 레이트리밋).
43
+
44
+ #### d. 댓글 작성
45
+ ```bash
46
+ npx viruagent-cli comment --provider insta --post-id <shortcode> --text "..."
47
+ ```
48
+ va-insta-comment 댓글 규칙 준수.
49
+
50
+ ### 4. 다음 게시물로 반복
51
+
52
+ 레이트리밋 한도에 도달하면 중단하고 사용자에게 보고.
53
+
54
+ ## See Also
55
+
56
+ va-insta-feed, va-insta-like, va-insta-comment, recipe-daily-engagement
@@ -0,0 +1,52 @@
1
+ ---
2
+ name: recipe-grow-followers
3
+ version: 1.0.0
4
+ description: "레시피: 팔로워 성장 전략 — 타겟 인게이지먼트 기반"
5
+ metadata:
6
+ category: "recipe"
7
+ requires:
8
+ skills: ["va-insta-feed", "va-insta-like", "va-insta-comment", "va-insta-follow"]
9
+ ---
10
+
11
+ # recipe-grow-followers — 팔로워 성장 전략
12
+
13
+ 타겟 인게이지먼트를 통한 자연스러운 팔로워 성장 전략.
14
+
15
+ ## 전략 개요
16
+
17
+ 1. 같은 분야 인플루언서의 팔로워 탐색
18
+ 2. 해당 팔로워들의 게시물에 자연스럽게 인게이지
19
+ 3. 지속적이고 일관된 활동으로 노출 확대
20
+
21
+ ## Steps
22
+
23
+ ### 1. 타겟 사용자 분석
24
+ ```bash
25
+ npx viruagent-cli get-profile --provider insta --username <influencer>
26
+ npx viruagent-cli list-posts --provider insta --username <influencer> --limit 10
27
+ ```
28
+
29
+ ### 2. 인플루언서 게시물 인게이지먼트
30
+ 인플루언서의 최근 게시물에 좋아요 + 댓글:
31
+ - 해당 분야에 관심 있는 사용자들이 볼 수 있는 위치에 노출
32
+ - va-insta-comment 규칙에 따라 양질의 댓글 작성
33
+
34
+ ### 3. 관련 사용자 팔로우
35
+ 같은 분야 활발한 사용자 팔로우:
36
+ ```bash
37
+ npx viruagent-cli follow --provider insta --username <user>
38
+ ```
39
+
40
+ ### 4. 일일 루틴 유지
41
+ recipe-daily-engagement 루틴을 매일 실행하여 일관된 활동 유지.
42
+
43
+ ## 핵심 원칙
44
+
45
+ - **자연스러움**: 봇처럼 보이지 않는 자연스러운 활동 패턴
46
+ - **품질**: 양보다 질 — 의미 있는 댓글이 팔로우보다 효과적
47
+ - **일관성**: 매일 조금씩 꾸준히 > 하루에 몰아서
48
+ - **인내**: 팔로워 성장은 시간이 걸림 — 단기 수치에 집착하지 않기
49
+
50
+ ## See Also
51
+
52
+ recipe-daily-engagement, recipe-engage-feed, va-insta-follow, persona-influencer-manager
@@ -0,0 +1,64 @@
1
+ ---
2
+ name: va-insta
3
+ version: 1.0.0
4
+ description: "Instagram 자동화: 명령 개요 및 레이트리밋 규칙"
5
+ metadata:
6
+ category: "overview"
7
+ provider: "insta"
8
+ requires:
9
+ bins: ["viruagent-cli"]
10
+ ---
11
+
12
+ # va-insta — Instagram 자동화 개요
13
+
14
+ Instagram 자동화를 위한 viruagent-cli 가이드. 항상 `--provider insta` 사용.
15
+
16
+ ## 명령 목록
17
+
18
+ | 명령 | 스킬 | 설명 |
19
+ |------|------|------|
20
+ | login | va-insta-login | 로그인 + 챌린지 해결 |
21
+ | like, unlike | va-insta-like | 좋아요/좋아요 취소 |
22
+ | comment | va-insta-comment | 댓글 작성 |
23
+ | follow, unfollow | va-insta-follow | 팔로우/언팔로우 |
24
+ | send-dm, list-messages | va-insta-dm | DM 보내기/목록 |
25
+ | get-feed, get-profile, list-posts, analyze-post | va-insta-feed | 피드/프로필/분석 |
26
+
27
+ ## Rate Limit Safety (신규 계정 기준)
28
+
29
+ | 액션 | 딜레이 | 시간당 | 일일 |
30
+ |------|--------|--------|------|
31
+ | Like | 20~40s | 15 | 500 |
32
+ | Comment | 5~7min | 5 | 100 |
33
+ | Follow | 1~2min | 15 | 250 |
34
+ | Unfollow | 1~2min | 10 | 200 |
35
+ | DM | 2~5min | 5 | 30 |
36
+ | Post | 1~2min | 3 | 25 |
37
+
38
+ 모든 딜레이는 랜덤화되어 자동 적용. 카운터는 세션별 userId로 영속화.
39
+
40
+ ## 레이트리밋 확인
41
+
42
+ ```bash
43
+ npx viruagent-cli rate-limit-status --provider insta
44
+ ```
45
+
46
+ 대량 작업 전 반드시 확인.
47
+
48
+ ## 중요 사항
49
+
50
+ - 신규 계정 (< 20일)은 제한이 더 엄격
51
+ - 균일한 액션 간격은 봇 감지 트리거 — 딜레이는 랜덤화됨
52
+ - challenge 발생 시 브라우저에서 본인 인증 필요
53
+ - 세션 + 카운터: `~/.viruagent-cli/sessions/insta-session.json`
54
+
55
+ ## 환경변수
56
+
57
+ ```
58
+ INSTA_USERNAME=
59
+ INSTA_PASSWORD=
60
+ ```
61
+
62
+ ## See Also
63
+
64
+ va-shared, va-insta-login, va-insta-like, va-insta-comment, va-insta-follow, va-insta-dm, va-insta-feed
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: va-insta-comment
3
+ version: 1.0.0
4
+ description: "Instagram: 게시물에 댓글을 작성합니다."
5
+ metadata:
6
+ category: "command"
7
+ provider: "insta"
8
+ requires:
9
+ bins: ["viruagent-cli"]
10
+ cliHelp: "viruagent-cli comment --help"
11
+ ---
12
+
13
+ # va-insta-comment — 댓글 작성
14
+
15
+ ## 사용법
16
+
17
+ ```bash
18
+ npx viruagent-cli comment --provider insta --post-id <shortcode> --text "comment text"
19
+ ```
20
+
21
+ ### 옵션
22
+
23
+ | 플래그 | 설명 |
24
+ |--------|------|
25
+ | `--post-id` | 게시물 shortcode |
26
+ | `--text` | 댓글 내용 |
27
+
28
+ ## 댓글 목록
29
+
30
+ ```bash
31
+ npx viruagent-cli list-comments --provider insta --post-id <shortcode>
32
+ ```
33
+
34
+ ## 댓글 작성 규칙
35
+
36
+ - 게시물 캡션과 동일한 언어로 작성
37
+ - 이미지/캡션 내용을 구체적으로 언급 — 맥락에 맞는 댓글
38
+ - 1~2문장, 이모지 1~2개
39
+ - 해시태그 금지
40
+ - "Nice post!", "Great content!" 같은 일반적 문구 금지
41
+ - 댓글마다 톤과 스타일 변경 — 패턴 반복 금지
42
+ - 릴스(영상)인 경우, 썸네일 + 캡션으로 맥락 파악
43
+
44
+ ## 스마트 댓글 작성 프로세스
45
+
46
+ 1. `analyze-post --provider insta --post-id <shortcode>` — 썸네일 + 캡션 확인
47
+ 2. 썸네일 이미지를 시각적으로 분석하여 콘텐츠 파악
48
+ 3. 맥락에 맞는 자연스러운 댓글 작성
49
+ 4. `comment --provider insta --post-id <shortcode> --text "..."`
50
+
51
+ ## Rate Limit
52
+
53
+ | 액션 | 딜레이 | 시간당 | 일일 |
54
+ |------|--------|--------|------|
55
+ | Comment | 5~7min | 5 | 100 |
56
+
57
+ ## See Also
58
+
59
+ va-insta, va-insta-feed, va-insta-like
@@ -0,0 +1,51 @@
1
+ ---
2
+ name: va-insta-dm
3
+ version: 1.0.0
4
+ description: "Instagram: DM 보내기 및 메시지 목록 조회"
5
+ metadata:
6
+ category: "command"
7
+ provider: "insta"
8
+ requires:
9
+ bins: ["viruagent-cli"]
10
+ cliHelp: "viruagent-cli send-dm --help"
11
+ ---
12
+
13
+ # va-insta-dm — DM (Direct Message)
14
+
15
+ ## DM 보내기
16
+
17
+ ```bash
18
+ npx viruagent-cli send-dm --provider insta --username <username> --text "message"
19
+ ```
20
+
21
+ 기존 스레드가 있는 경우:
22
+
23
+ ```bash
24
+ npx viruagent-cli send-dm --provider insta --thread-id <threadId> --text "message"
25
+ ```
26
+
27
+ ### 옵션
28
+
29
+ | 플래그 | 설명 |
30
+ |--------|------|
31
+ | `--username` | 수신자 사용자명 |
32
+ | `--thread-id` | 기존 스레드 ID |
33
+ | `--text` | 메시지 내용 |
34
+
35
+ ## 메시지 목록
36
+
37
+ ```bash
38
+ npx viruagent-cli list-messages --provider insta --thread-id <threadId>
39
+ ```
40
+
41
+ 브라우저를 통해 스레드의 메시지를 가져옵니다.
42
+
43
+ ## Rate Limit
44
+
45
+ | 액션 | 딜레이 | 시간당 | 일일 |
46
+ |------|--------|--------|------|
47
+ | DM | 2~5min | 5 | 30 |
48
+
49
+ ## See Also
50
+
51
+ va-insta, va-shared
@@ -0,0 +1,72 @@
1
+ ---
2
+ name: va-insta-feed
3
+ version: 1.0.0
4
+ description: "Instagram: 피드, 프로필, 게시물 목록, 게시물 분석"
5
+ metadata:
6
+ category: "command"
7
+ provider: "insta"
8
+ requires:
9
+ bins: ["viruagent-cli"]
10
+ cliHelp: "viruagent-cli get-feed --help"
11
+ ---
12
+
13
+ # va-insta-feed — 피드 & 프로필 & 분석
14
+
15
+ ## 피드 타임라인
16
+
17
+ ```bash
18
+ npx viruagent-cli get-feed --provider insta
19
+ ```
20
+
21
+ ## 프로필 조회
22
+
23
+ ```bash
24
+ npx viruagent-cli get-profile --provider insta --username <username>
25
+ ```
26
+
27
+ ## 게시물 목록
28
+
29
+ ```bash
30
+ npx viruagent-cli list-posts --provider insta --username <username> --limit 20
31
+ ```
32
+
33
+ | 플래그 | 설명 | 기본값 |
34
+ |--------|------|--------|
35
+ | `--username` | 대상 사용자명 | (필수) |
36
+ | `--limit` | 조회할 게시물 수 | 20 |
37
+
38
+ ## 게시물 분석
39
+
40
+ ```bash
41
+ npx viruagent-cli analyze-post --provider insta --post-id <shortcode>
42
+ ```
43
+
44
+ 반환값:
45
+ - 캡션 텍스트
46
+ - 썸네일 이미지 (base64)
47
+ - 프로필 정보
48
+
49
+ `analyze-post`를 사용해 썸네일 이미지를 시각적으로 분석하고 맥락에 맞는 댓글을 작성할 수 있습니다.
50
+
51
+ ## 게시물 발행
52
+
53
+ ```bash
54
+ npx viruagent-cli publish --provider insta \
55
+ --content "캡션 텍스트 #해시태그" \
56
+ --related-image-keywords "keyword1,keyword2" \
57
+ --image-upload-limit 1 \
58
+ --minimum-image-count 1
59
+ ```
60
+
61
+ | 플래그 | 설명 |
62
+ |--------|------|
63
+ | `--content` | 캡션 텍스트 (해시태그 포함 가능) |
64
+ | `--image-urls` | 직접 이미지 URL 지정 |
65
+ | `--related-image-keywords` | 이미지 자동 검색 키워드 (영어 권장) |
66
+
67
+ 이미지 우선순위: `--image-urls` > `--related-image-keywords` 자동 검색.
68
+ `--content`는 인스타 캡션으로 사용됩니다 (HTML 불필요).
69
+
70
+ ## See Also
71
+
72
+ va-insta, va-insta-comment, va-insta-like