skills/hive/SKILL.md
Hive blockchain CLI skill for hive-tx-cli. Query accounts/content/RC/feed/replies, upload images, and broadcast publish/reply/edit/vote/transfer/community/social/profile/reward/custom-json operations with correct key usage.
npx skillsauth add asgarth/skills hiveInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The hive CLI (@peakd/hive-tx-cli) is the single entrypoint for this skill. All functionality is accessed through its subcommands. Do not create wrapper scripts that only duplicate CLI invocations.
Use hive (@peakd/hive-tx-cli) to query Hive state and broadcast common operations.
# npm/pnpm/bun
npm install -g @peakd/hive-tx-cli
# One-shot (no install)
bunx @peakd/hive-tx-cli account peakd
Use this skill when you need to:
Do not use this skill when:
hive call directly)Follow this general workflow for safe operations:
hive config interactively or set environment variables (HIVE_ACCOUNT, HIVE_POSTING_KEY, HIVE_ACTIVE_KEY)
hive config # Interactive setup
export HIVE_ACCOUNT="your-username"
export HIVE_POSTING_KEY="your-posting-private-key"
hive status, query the target account, or use read-only commands first
hive status # Check configuration status
hive account peakd # Query target account
--wait for commands that support it)
hive vote --url https://peakd.com/@author/permlink --weight 100 --wait
hive content author permlink # Verify post appeared
hive config # Interactive configuration
hive status # Check configuration status
hive account peakd # Query an account
hive vote --url https://peakd.com/@author/permlink --weight 100
hive publish --permlink my-article --title "My Title" --body "Content here" --tags "hive,development" --wait
hive content your-account my-article # Verify it appeared
hive reply author permlink --body "Great post!" --wait
hive vote --url https://peakd.com/@author/permlink --weight 100 --wait
hive transfer --to recipient --amount "1.000 HIVE" --memo "Thanks!" --wait
hive claim --wait
--required-active, and raw active broadcasts~/.hive-tx-cli/config.json with 600 permissionshive config # Interactive setup
hive config --show # Show current configuration
hive config --clear # Clear all configuration
hive config set account <name>
hive config set postingKey <private-key>
hive config set activeKey <private-key>
hive config set node <url>
hive config get account
export HIVE_ACCOUNT="your-username"
export HIVE_POSTING_KEY="your-posting-private-key"
export HIVE_ACTIVE_KEY="your-active-private-key"
export HIVE_JSON_OUTPUT=1 # Machine-friendly output + spinner disabled
⚠️ Active Key Operations: Commands using
--required-activeor the active key can transfer funds or modify account settings. These operations are irreversible.
⚠️ Transfer Risks: Hive transfers cannot be reversed. Always verify the recipient address and amount before executing.
⚠️ Memo Privacy: Memos are publicly visible on the blockchain. Do not include sensitive information in memos.
⚠️ Key Exposure: Never commit private keys to version control. Use environment variables or a secure config file with 600 permissions.
⚠️ Resource Credits (RC): Broadcasting operations consumes RC. Ensure sufficient RC before bulk operations. Check with
hive rc <account>.
Before broadcasting any operation:
hive account <name>)hive rc <account> shows > 0--wait for commands that support it# Account/state
hive account <username>
hive balance <username>
hive rc <username>
hive props
hive block <number>
# Content (author/permlink or URL)
hive content <author> <permlink>
hive content https://peakd.com/@author/permlink
hive replies <author> <permlink>
hive replies https://peakd.com/@author/permlink
hive feed <account> --limit 10
# Raw API
hive call database_api get_accounts '[["username"]]'
hive call condenser_api get_content_replies '["author","permlink"]' --raw
hive publish --permlink my-post --title "My Post" --body "Body" --tags "hive,cli"
hive publish --permlink my-post --title "My Post" --body-file ./post.md --metadata '{"app":"hive-tx-cli"}'
hive publish --permlink my-reply --title "Re" --body "Reply" --parent-url https://peakd.com/@author/permlink
hive publish --permlink my-post --title "My Post" --body "Body" --burn-rewards
hive publish --permlink my-post --title "My Post" --body "Body" --beneficiaries '[{"account":"foo","weight":1000}]'
hive reply <parent-author> <parent-permlink> --body "Nice post" --wait
hive edit <author> <permlink> --body-file ./updated.md --tags "hive,update"
hive delete-comment --url https://peakd.com/@author/permlink --wait
Notes:
publish aliases: post, commentpublish requires --title; use reply for standard replies--wait is available on supported commands to wait for tx confirmationThe --metadata option accepts a JSON string with post metadata. All fields are optional.
Schema:
app: Application identifier (e.g., "hive-tx-cli/2026.1.1")description: Short summary of the post contentimage: Array of image URLs for the post thumbnailtags: Array of post tags (should match --tags)users: Array of mentioned usernamesai_tools: Object indicating AI involvement in creating content
writing_edit: AI assisted with writing/editingmedia_generation: AI generated images/mediaresearch: AI assisted with researchtranslation: AI performed translationpost_draft: AI helped draft the postother: Other AI assistanceGuidelines:
app to the tool you're usingdescription summarizing the post (1-2 sentences)image URLs when the post contains imagesai_tools flags to trueExample:
hive post --permlink my-post --title "My Post" --body "Content" --tags "hive,ai" \
--metadata '{"app":"hive-tx-cli/2026.1.1","description":"A post about Hive and AI tools","image":["https://example.com/image.jpg"],"ai_tools":{"writing_edit":true}}'
hive vote --url https://peakd.com/@author/permlink --weight 100 --wait
hive transfer --to <recipient> --amount "1.000 HIVE" --memo "Thanks" --wait
hive custom-json --id <app-id> --json '{"key":"value"}'
hive custom-json --id <app-id> --json '{"key":"value"}' --required-active myaccount --wait
hive broadcast '[{"type":"vote","value":{"voter":"me","author":"you","permlink":"post","weight":10000}}]' --key-type posting --wait
hive follow <account>
hive unfollow <account>
hive mute <account>
hive unmute <account>
hive reblog --author <author> --permlink <permlink>
hive community search peakd
hive community info hive-12345
hive community subscribers hive-12345
hive community subscribe hive-12345
hive community unsubscribe hive-12345
hive claim
hive delegate <account> "100 HP"
hive profile update --name "My Name" --about "Hive user" --location "Earth"
hive --account myaccount vote --author author --permlink permlink --weight 100
hive --node https://api.hive.blog account peakd
If possible, resize/compress large images before upload.
hive upload --file ./path/to/image.jpg
hive upload --file ./image.png --host https://images.ecency.com
Returns JSON with the uploaded URL.
When HIVE_JSON_OUTPUT=1 is set, commands return machine-friendly JSON output.
{
"success": true,
"data": { ... },
"txId": "abc123..."
}
{
"success": false,
"error": "Error message",
"code": "ERROR_CODE"
}
| Error | Cause | Resolution |
| ----------------------------- | ---------------------------- | ------------------------------------------------------------- |
| Invalid key or Auth error | Wrong key type for operation | Posting key for publish/vote/follow; Active key for transfers |
| Insufficient RC | Not enough Resource Credits | Wait for RC regeneration or delegate HP |
| Transaction expired | Node timing issue | Retry with --wait or switch nodes |
| Account does not exist | Typo in username | Verify account name with hive account <name> |
hive status, check key type matches operation--wait to wait for tx confirmationhive rc <account>, delegate from account with HPhive config set node https://api.hiveworks.comdevelopment
Generate and manipulate images and videos using Venice.ai's privacy-first, uncensored AI API. Use when the user needs to create images from text prompts, edit/inpaint existing images, upscale/enhance image quality, remove backgrounds, or generate videos from text or images. Triggers on requests like "generate an image of...", "upscale this photo", "remove background", "create a video from this image", etc.
testing
Recursively scan a folder tree for affected npm, pnpm, and yarn dependency versions. Use when the user asks to check whether a compromised package version is installed anywhere, scan all subfolders, or verify a package range from an advisory.
development
Build and debug Hive blockchain software with `hive-tx` in JavaScript/TypeScript, including node failover, quorum reads, key-safe signing, and status-aware broadcasting for wallet, content, and custom_json flows.
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.