Install
$ agentstack add skill-hamsurang-kit-velog-cli ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
velog-cli Skill
velog is a CLI client for velog.io, a developer blogging platform. It lets you manage blog posts entirely from the terminal — create from markdown files, edit, publish drafts, browse trending posts, and more.
Prerequisites
The velog binary must be installed:
# macOS
brew tap hamsurang/velog-cli && brew install velog-cli
# Cargo (any platform)
cargo install velog-cli
If velog is not found, tell the user to install it first.
Authentication
Most write operations require authentication. Check status before attempting mutations.
# Check if logged in
velog auth status
# Login (interactive — prompts for tokens from browser DevTools)
velog auth login
# Logout
velog auth logout
How to get tokens: The user opens velog.io in their browser, opens DevTools (F12) → Application → Cookies, and copies access_token and refresh_token. The CLI prompts for these during velog auth login.
Credentials are stored at ~/.config/velog-cli/credentials.json and auto-refresh when expired.
Post Management
List Posts
# List your own posts (requires auth)
velog post list
# List your drafts
velog post list --drafts
# Trending posts (filterable by period)
velog post list --trending
velog post list --trending --period week
# Recent posts across velog
velog post list --recent
# Posts by a specific user
velog post list -u
# Control result count (1–100, default 20)
velog post list --limit 50
# Pagination
velog post list --recent --cursor
velog post list --trending --offset 20
Show a Post
# Show your own post by slug
velog post show
# Show another user's post
velog post show -u
The slug is the URL path segment (e.g., my-first-post from velog.io/@user/my-first-post).
Create a Post
# From a markdown file (saved as draft by default)
velog post create -t "Post Title" -f article.md
# From stdin
echo "# Hello World" | velog post create -t "Hello"
# Publish immediately (not draft)
velog post create -t "Title" -f article.md --publish
# With tags and custom slug
velog post create -t "Title" -f article.md --tags "rust,cli,velog" --slug my-custom-slug
# Private post
velog post create -t "Title" -f article.md --publish --private
Edit a Post
# Update content from a file
velog post edit -f updated.md
# Update title
velog post edit -t "New Title"
# Update tags
velog post edit --tags "new,tags"
# Update everything
velog post edit -t "New Title" -f updated.md --tags "new,tags"
Publish a Draft
velog post publish
Delete a Post
# With confirmation prompt
velog post delete
# Skip confirmation
velog post delete -y
Output Formats
All commands accept --format to control output style:
| Format | Use case | Description | |--------|----------|-------------| | pretty | Human reading (default) | Tables, colors, markdown rendering | | compact | AI agents, scripts | Minified JSON on a single line | | silent | CI/CD, exit-code-only checks | Queries emit JSON, mutations emit nothing |
When Claude is running velog commands programmatically, use --format compact to get structured JSON output that's easy to parse:
velog post list --format compact
velog post show my-post --format compact
Common Workflows
Write and publish a blog post
- Write markdown content to a file
- Create as draft:
velog post create -t "Title" -f article.md --tags "tag1,tag2" - Preview on velog.io if needed
- Publish:
velog post publish
Update an existing post
- Find the slug:
velog post list --format compact - Edit:
velog post edit -f updated.md
Browse trending posts for inspiration
velog post list --trending --period week --limit 10
Shell Completions
# Generate completions
velog completions zsh # or bash, fish, elvish, powershell
Error Handling
- Not authenticated: Run
velog auth statusfirst. If not logged in, guide
the user through velog auth login.
- Post not found: Verify the slug with
velog post list --format compact. - Binary not found: Tell the user to install via
breworcargo.
Tips for AI Agent Usage
- Always use
--format compactwhen you need to parse the output programmatically. - Check auth status before attempting create/edit/delete/publish operations.
- When creating posts from user-written content, save to a temp file first, then
pass via -f. This avoids shell escaping issues with stdin piping.
- Default behavior is to save as draft — use
--publishonly when the user
explicitly asks to publish immediately.
- Use
--format silentfor mutations when you only care about success/failure
(check exit code).
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: hamsurang
- Source: hamsurang/kit
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.