Skills halo-blog
Use when managing a Halo blog instance via CLI, including authentication, posts, pages, themes, plugins, attachments, backups, comments, moments, notifications, or public site search.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/alex-shen1121/halo-blog" ~/.claude/skills/clawdbot-skills-halo-blog && rm -rf "$T"
manifest:
skills/alex-shen1121/halo-blog/SKILL.mdsource content
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 <token> -
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 | | auth.md |
| Publishing Rules | Markdown → HTML workflow, front matter, visibility checks | publishing.md |
| Posts & Pages | , | content.md |
| Themes, Plugins, Attachments, Backups, Moments | , , , , | operations.md |
| Comments & Notifications | , | moderation.md |
| Public Search | | search.md |
Shared Conventions
- Profile selection: Use
when working with multiple Halo instances.--profile <name> - JSON output: Use
for scripted or automated workflows.--json - Non-interactive safety: Destructive commands (
,delete
, overwrite imports) usually requireuninstall
when run non-interactively.--force - 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
to Halo startup flags.--halo.security.basic-auth.disabled=false - Credential issues: Run
to diagnose keyring/config problems.halo auth profile doctor - Profile not found: Ensure
matches an existing profile from--profile
.halo auth profile list