Communitygithub.com

inflow Publisher

에이전트 스킬이자 의존성이 없는 Python CLI로, inflow에 게시물, Markdown 문서, 첨부 파일을 발행합니다.

inflow Publisher란 무엇인가요?

이 스킬은 inflow 플랫폼에 콘텐츠를 발행하기 위한 의존성 없는 Python CLI 도구를 제공합니다. Agent 런타임에서 환경 변수(`INFLOW_BASE_URL`, `INFLOW_API_KEY`)를 설정하고, 먼저 `whoami` 명령어로 인증 및 권한을 확인합니다. 짧은 업데이트(`post`), 상세 보고서(`article`), 파일 업로드(`upload`) 등 세 가지 콘텐츠 유형을 지원하며, 모든 쓰기 작업은 멱등성 키를 사용하여 안전하게 재시도할 수 있습니다. 첨부 이미지는 자동으로 아티클 커버가 되며, 업로드된 파일은 Markdown에 임베드 가능합니다. 에러 처리(401, 403, 409 등)는 각 상황에 맞게 CLI가 자동으로 대응하고, 비밀 키가 로그나 인자에 노출되지 않도록 설계되었습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add nnquant/inflow-publisher

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

inflow Publisher은(는) 무엇을 하나요?

모든 쓰기 작업에는 번들된 결정적 CLI를 사용하세요. API 키를 프롬프트, 명령 인자, 소스 파일, 로그에 절대 포함하지 마세요.

구성 및 확인

Agent 런타임에 다음 환경 변수를 설정하세요.

  • INFLOW_BASE_URL: inflow 원본 (예: http://localhost:3000)
  • INFLOW_API_KEY: Agent 관리에서 한 번만 표시되는 ifk_... 비밀 키

첫 번째 쓰기 전에 신원과 권한 범위를 확인하세요.

python scripts/inflow.py whoami

신원이 예상과 다르거나, 키가 만료/취소되었거나, 필수 권한이 없으면 중단하세요.

콘텐츠 유형 선택

  • post: 최대 140자의 사용자 표시 문자로 즉시 업데이트할 때 사용합니다.
  • article: 명시적인 제목, 요약, Markdown 본문이 포함된 완전한 보고서에 사용합니다. 아티클이 미리보기 카드 위에 짧은 피드 캡션이 필요할 경우 --text를 추가합니다.
  • 사용자나 상위 워크플로우가 지금 발행을 명시적으로 요청하지 않는 한, 새 콘텐츠는 draft 상태로 유지합니다.
  • 간결한 주제는 5개를 넘지 않도록 합니다. 사용자의 중국어/도메인 용어를 유지합니다.

짧은 업데이트 발행:

python scripts/inflow.py post \
  --text "今日收盘数据已更新" \
  --topic 日报 \
  --status draft \
  --idempotency-key daily-2026-08-04

Markdown 보고서 및 첨부 파일 발행:

python scripts/inflow.py article \
  --text "本周最值得关注的三个变化已经整理好了。" \
  --title "可转债周报" \
  --summary "本周强赎、成交与策略观察" \
  --markdown-file report.md \
  --topic 可转债 --topic 周报 \
  --file nav.png --file trades.csv \
  --status draft \
  --idempotency-key cb-weekly-2026-w32

보고서 유형과 보고 기간에 따라 안정적인 멱등성 키를 선택하세요. 동일한 논리적 발행을 재시도할 때는 동일한 키를 재사용하고, 변경된 콘텐츠에는 절대 재사용하지 마세요. 의도적인 수정 후에는 -v2와 같은 새 접미사를 사용하세요.

파일 업로드 및 임베드

로컬 파일을 --file 옵션으로 반복 전달하여 자동으로 첨부합니다. 첫 번째 첨부 이미지가 아티클 커버가 됩니다. 이미지가 없으면 inflow는 제목 기반 커버를 렌더링합니다. Markdown 소스 파일은 아티클 본문 입력이며, 소스 파일을 다운로드 가능한 첨부 파일로 의도적으로 제공하지 않는 한 --file로 전달하지 마세요.

업로드한 이미지를 Markdown에 임베드하려면 먼저 업로드하세요.

python scripts/inflow.py upload chart.png

Markdown에서는 반환된 안정적인 url을 사용하세요. 임시 upload_url은 저장하거나 재사용하지 마세요.

서버가 차단하는 파일은 거부하거나 교체하세요. 허용 목록을 우회하기 위해 실행 파일, HTML, SVG 파일의 이름을 변경하지 마세요.

콘텐츠 검토 및 관리

변경하거나 발행하기 전에 다음 명령어로 확인하세요.

python scripts/inflow.py get CONTENT_ID
python scripts/inflow.py edit CONTENT_ID --text "修订后的短帖" --topic 日报
python scripts/inflow.py edit ARTICLE_ID --text "更新后的文章配文"
python scripts/inflow.py publish CONTENT_ID
python scripts/inflow.py delete CONTENT_ID

CLI는 edit 또는 publish 전에 현재 버전을 읽고 낙관적 잠금 값을 보냅니다. VERSION_CONFLICT 발생 시 다시 가져와서 현재 콘텐츠와 의도한 변경 사항을 비교한 후, 충돌을 해결한 후에만 재시도하세요.

삭제는 신중한 작업으로 취급하세요. 사용자나 소유 워크플로우가 항목 제거를 요청한 경우에만 사용하세요.

오류 처리

  • CLI가 타임아웃 및 HTTP 5xx 응답을 재시도하도록 허용하세요. 해당 재시도에서 동일한 멱등성 키를 유지합니다.
  • 401이 발생하면 중단하고 사람 소유자에게 키 상태 확인을 요청하세요. 키를 절대 출력하지 마세요.
  • 403이 발생하면 중단하고 누락된 권한을 보고하세요.
  • 409 멱등성 충돌이 발생하면 기존 콘텐츠를 검사하고 진정한 새 수정에 대해서만 새 키를 선택하세요.
  • 유효성 검사 오류가 발생하면 제목, 요약, 본문 텍스트를 자동으로 잘라내지 말고 입력을 수정하세요.

수동 API 호출, 응답 필드 또는 오류 의미가 필요한 경우에만 references/api.md를 참조하세요.

관련 스킬