
Security News
PHP Foundation Says Chainguard Broke Security Embargo Ahead of Emergency Patches
The PHP Foundation says Chainguard broke a security embargo ahead of critical RCE patches, as leaks disrupted the coordinated release.
터미널에서 티스토리 블로그 글을 만들고, 다듬고, 발행하는 CLI 도구
티스토리 API를 역분석해서 OpenAI와 엮었습니다. 글감 잡기 → 초안 생성 → 수정 → 발행까지 터미널 안에서 끝납니다.
공식 API가 아닌 비공식 내부 통신을 쓰기 때문에, 학습/실험 용도로 만들었습니다.
/write로 초안을 뽑고, /edit로 고칩니다.필요한 것: Node.js 18+, OpenAI API Key
git clone https://github.com/your-username/viruagent.git
cd viruagent
npm install
cp .env.example .env
# .env 파일 편집
npm start
| 변수 | 필수 | 설명 |
|---|---|---|
OPENAI_API_KEY | O | OpenAI API 키 |
UNSPLASH_ACCESS_KEY | X | Unsplash API 키 (없으면 이미지 삽입 건너뜀) |
Unsplash API 키는 unsplash.com/developers에서 무료로 발급받을 수 있습니다. (시간당 50회 제한)
| 명령어 | 설명 |
|---|---|
/write <주제> | AI가 블로그 글 초안 생성 |
/edit <지시> | 초안 수정 ("더 친근하게 바꿔줘" 같은 식으로) |
/preview | 작성 중인 글 미리보기 |
/publish | 글 발행 |
/set | 카테고리, 공개 설정, 모델, 말투 변경 |
/list | 최근 발행 글 목록 |
/login | 티스토리 세션 갱신 |
/logout | 티스토리 세션 삭제 |
Claude Code에서 자연어로 명령할 수 있습니다.
> viruagent로 블로그에 글 아무거나 써줘 카테고리는 "기타"
카테고리, 공개 여부, 발행 방식을 물어본 뒤 AI가 글을 생성해서 티스토리에 발행합니다.
# 카테고리 목록 조회
node src/cli-post.js --list-categories
# 글 생성 + 발행
node src/cli-post.js --topic "주제" --category 1247460 --visibility public
# 미리보기만 (발행 안 함)
node src/cli-post.js --topic "주제" --dry-run
# 임시저장
node src/cli-post.js --topic "주제" --draft
글 생성 시 본문에 <!-- IMAGE: keyword --> 플레이스홀더가 자동 삽입됩니다. UNSPLASH_ACCESS_KEY가 설정되어 있으면:
[##_Image|kage@..._##])로 변환키가 없으면 이미지 처리를 건너뛰고 글만 발행합니다.
글의 톤, 구조, HTML 스타일은 config/system-prompt.md에서 수정할 수 있습니다.
config/
├── prompt-config.json # 모델, 말투, 이미지 설정
└── system-prompt.md # AI 글쓰기 규칙 (글 유형, HTML 레퍼런스, 톤)
| 유형 | 구조 |
|---|---|
| 튜토리얼 | 준비물 → 단계 → 결과 확인 → 트러블슈팅 |
| 비교/리뷰 | 비교 테이블 + 장단점 → 추천 |
| 리스트 | 번호 소제목 + 항목별 팁 |
| 정보 가이드 | 문제 → 원인 → 해결 → FAQ |
| 인사이트 | 화두 → 근거 → 시사점 → 액션 |
{
"defaultModel": "gpt-4o-mini",
"defaultTone": "정보전달",
"defaultLength": 2500,
"imageSource": "unsplash",
"imagesPerPost": 3
}
실행 로그가 logs/ 폴더에 날짜별로 기록됩니다.
logs/
└── 2026-02-11.log
이미지 업로드 실패, API 오류 등의 디버깅에 활용할 수 있습니다.
[10:30:15.123] [INFO] [unsplash] 이미지 플레이스홀더 3개 발견
[10:30:16.456] [INFO] [unsplash] Unsplash 이미지 찾음 | {"keyword":"laptop"}
[10:30:17.789] [INFO] [tistory] 이미지 업로드 성공 | {"url":"https://blog.kakaocdn.net/..."}
[10:30:17.800] [ERROR] [tistory] 이미지 업로드 실패 | {"status":500}
이 프로젝트는 티스토리의 비공식 내부 API를 사용합니다.
교육/학습 목적으로 만들었습니다.
MIT
FAQs
AI 기반 티스토리 블로그 자동 발행 CLI 도구
The npm package viruagent receives a total of 0 weekly downloads. As such, viruagent popularity was classified as not popular.
We found that viruagent demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
The PHP Foundation says Chainguard broke a security embargo ahead of critical RCE patches, as leaks disrupted the coordinated release.

Security News
PHP releases emergency patches for two critical RCE vulnerabilities as agencies urge organizations to take unpatched sites offline.

Threat Research
/Security News
A supply chain attack compromised LiteLLM 1.107.0 on PyPI and Docker, spreading malware that steals cloud credentials, developer secrets, and AI provider keys.