소스 정보
- 저장소
- iopho-team/iopho-skills
- 최근 소스 활동
- 2026년 3월 24일 13:53
- 감지된 SKILL.md 언어
- 영어
- 스타
- 4
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/iopho-team/iopho-skills --skill wribble명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
SOC 직업 분류 기준
| name | wribble |
| description | wribble - The Wribble CLI for publishing blog posts and managing channels |
| allowed-tools | Bash(wribble *), mcp__wribble__wribble_list_posts, mcp__wribble__wribble_get_post, mcp__wribble__wribble_create_post, mcp__wribble__wribble_update_post, mcp__wribble__wribble_delete_post, mcp__wribble__wribble_search_posts, mcp__wribble__wribble_get_post_channels, mcp__wribble__wribble_assign_channels, mcp__wribble__wribble_list_channels, mcp__wribble__wribble_get_channel, mcp__wribble__wribble_create_channel, mcp__wribble__wribble_update_channel, mcp__wribble__wribble_delete_channel |
| user-invocable | true |
| argument-hint | <command> [options] |
| updated | 2026-03-24 |
Publish blog posts and manage channels from the terminal or as an AI agent.
Install: npm install -g wribble
Auth: Get a CLI token at app.wribble.iopho.com → Settings → Integrations → CLI Token, then:
wribble auth token rdk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Use wribble CLI (Bash) for single-language quick posts and CRUD operations — fast, token-efficient, composable with pipes.
Use mcp__wribble__* MCP tools for:
CRITICAL — Decision Rules:
| User intent | Action |
|---|---|
| "write / post / publish / share / note" | wribble post or wribble_create_post |
| "edit / update / revise / fix" | wribble edit or wribble_update_post |
| "add [language] version / translate" | wribble_update_post MCP ONLY (CLI is single-lang per call) |
| "organize / assign to channel / categorize" | wribble channels assign or wribble_assign_channels |
| "research complete / summarize findings" | Offer: "Want me to post this to your Wribble blog?" |
| NEVER post without explicit user intent | Wribble is public publishing — more invasive than saving to a library |
| Flag | Description |
|---|---|
--json | Output as JSON (for scripting / jq) |
--no-color | Disable color output |
wribble auth token rdk_xxx # Save PAT token
wribble auth whoami # Verify authentication
wribble auth logout # Remove stored credentials
# With content argument
wribble post "Hello world! #thoughts"
# From stdin (pipe)
echo "My quick thought #idea" | wribble post
cat article.md | wribble post --title "My Article"
# From file
wribble post --file notes.md --title "Weekly Notes"
# With channel assignment
wribble post "Learned something new today #learning" --channel dev-notes
# With explicit lang
wribble post "Bonjour monde" --lang fr --title "Premier post"
Options:
--title <t> — Title (auto-derived from first non-empty line if omitted)--lang <code> — Language code (default: en)--channel <slug> — Assign to channel after creating--file <path> — Read content from fileTags are auto-extracted server-side from #hashtags in content. The CLI just sends content.
wribble list # All posts
wribble list --channel dev-notes # Filter by channel
wribble list --limit 20 --offset 0 # Pagination
wribble get <id> # Full post with all language versions
wribble edit <id> --content "Updated text" --lang en
wribble edit <id> --title "New Title"
echo "New content" | wribble edit <id> # Via stdin
wribble delete <id> # Prompts confirmation
wribble delete <id> --force # Skip confirmation
wribble search "keyword"
wribble search "query" --limit 10
wribble channels # List all channels with post counts
wribble channels create "Dev Notes" # Create channel (slug auto-generated)
wribble channels create "My Blog" --slug blog --description "Personal thoughts"
wribble channels assign <post-id> <slug> [<slug2> ...] # Assign post to channels
For adding multiple language versions to a single post, use the MCP tool:
wribble_create_post with languages: {
"en": { "title": "Hello", "content": "English content #tag", "isOriginal": true },
"zh": { "title": "你好", "content": "中文内容 #标签" }
}
To add a language version to an existing post:
wribble_update_post with id and languages: {
"zh": { "title": "中文标题", "content": "中文内容" }
}
# Quick thought
echo "Just realized something important #insight" | wribble post
# Post a file with title
cat weekly-notes.md | wribble post --title "Week 12 Notes" --channel weekly
# Post command output
git log --oneline -10 | wribble post --title "Recent commits" --lang en
# Research summary → post
wribble search "previous research" | wribble post --title "Research Summary"
Posts have a languages JSON field: { en: { title, content, isOriginal? }, zh: { ... } }.
Tags are auto-extracted from #hashtags across all language content.
Channels organize posts; posts can belong to multiple channels.