/install halo-blog
Halo Blog CLI Skill
A command-line tool skill for managing Halo blog instances.
Installation
npm install -g @halo-dev/cli
Verify:
halo --version
halo --help
Requirements: Node.js >= 22
Quick Start
-
Authenticate (see references/auth.md):
halo auth login --profile local --url http://127.0.0.1:8090 --auth-type bearer --token \x3Ctoken> -
Create a post from Markdown (see content.md for full format rules):
halo post import-markdown --file ./article.md --forceMarkdown files are automatically converted to HTML by default; if conversion fails, falls back to raw Markdown import.
-
List posts:
halo post list
Command Areas
| Area | Commands | Reference |
|---|---|---|
| Authentication | halo auth * |
auth.md |
| Publishing Rules | Markdown → HTML workflow, front matter, visibility checks | publishing.md |
| Posts & Pages | halo post *, halo single-page * |
content.md |
| Themes, Plugins, Attachments, Backups, Moments | halo theme *, halo plugin *, halo attachment *, halo backup *, halo moment * |
operations.md |
| Comments & Notifications | halo comment *, halo notification * |
moderation.md |
| Public Search | halo search * |
search.md |
Shared Conventions
- Profile selection: Use
--profile \x3Cname>when working with multiple Halo instances. - JSON output: Use
--jsonfor scripted or automated workflows. - Non-interactive safety: Destructive commands (
delete,uninstall, overwrite imports) usually require--forcewhen run non-interactively. - Basic Auth requirement: If using basic auth instead of bearer token, ensure Halo is started with
--halo.security.basic-auth.disabled=false.
Common Workflows
Switch between environments
halo auth profile list
halo auth profile use production
Export and import a post
halo post export-json my-post --output ./post.json
halo post import-json --file ./post.json --force
Publish via Markdown file
halo post import-markdown --file ./article.md --force
Upgrade all App Store themes/plugins
halo theme upgrade --all
halo plugin upgrade --all --yes
Search public content without login
halo search --keyword "halo" --url https://www.halo.run
Troubleshooting
- Login fails with anonymous user: Basic auth is likely disabled on the Halo server. Add
--halo.security.basic-auth.disabled=falseto Halo startup flags. - Credential issues: Run
halo auth profile doctorto diagnose keyring/config problems. - Profile not found: Ensure
--profilematches an existing profile fromhalo auth profile list.
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install halo-blog - After installation, invoke the skill by name or use
/halo-blog - Provide required inputs per the skill's parameter spec and get structured output
What is Halo Blog?
Use when managing a Halo blog instance via CLI, including authentication, posts, pages, themes, plugins, attachments, backups, comments, moments, notificatio... It is an AI Agent Skill for Claude Code / OpenClaw, with 92 downloads so far.
How do I install Halo Blog?
Run "/install halo-blog" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Halo Blog free?
Yes, Halo Blog is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Halo Blog support?
Halo Blog is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Halo Blog?
It is built and maintained by AlexShen (@alex-shen1121); the current version is v1.0.5.