Install
openclaw skills install @siyrs/halo-blog-managerManage Halo blogs via API - create/edit/delete posts, manage categories/tags, handle comments, upload media. Use when user asks to manage their Halo blog, post articles, check blog stats, or perform any Halo CMS operations. Triggers on 'halo blog', 'halo cms', 'manage blog', 'post to halo', 'halo api'.
openclaw skills install @siyrs/halo-blog-managerManage Halo blogs through the official API.
When this skill is first used, ask the user for:
https://blog.example.com)Then save credentials to ~/halo-manager/config.json:
{
"blog_url": "https://blog.example.com",
"username": "your-username",
"password": "your-password"
}
Security Note: Never expose credentials in logs, responses, or shared channels.
Halo uses RSA-encrypted password + CSRF token + Session cookie.
/login - Extract CSRF token and RSA public key/login with form data (username, encrypted password, CSRF token)~/halo-manager/session.json{blog_url}/apis/api.console.halo.run/v1alpha1/
| Operation | Method | Endpoint |
|---|---|---|
| List posts | GET | /posts |
| Get post | GET | /posts/{name} |
| Create post | POST | /posts |
| Update post | PUT | /posts/{name} |
| Delete post | DELETE | /posts/{name} |
| Operation | Method | Endpoint |
|---|---|---|
| List categories | GET | /categories |
| Create category | POST | /categories |
| Update category | PUT | /categories/{name} |
| Delete category | DELETE | /categories/{name} |
| Operation | Method | Endpoint |
|---|---|---|
| List tags | GET | /tags |
| Create tag | POST | /tags |
| Update tag | PUT | /tags/{name} |
| Delete tag | DELETE | /tags/{name} |
| Operation | Method | Endpoint |
|---|---|---|
| List users | GET | /users |
| Get current user | GET | /users/- |
| Operation | Method | Endpoint |
|---|---|---|
| List comments | GET | /comments |
| Approve comment | PUT | /comments/{name}/approval |
| Delete comment | DELETE | /comments/{name} |
| Operation | Method | Endpoint |
|---|---|---|
| List attachments | GET | /attachments |
| Upload attachment | POST | /attachments |
| Delete attachment | DELETE | /attachments/{name} |
{
"post": {
"spec": {
"title": "Post Title",
"slug": "post-slug",
"content": "Post content in Markdown",
"rawType": "markdown",
"categories": ["category-name"],
"tags": ["tag1", "tag2"],
"publish": true
}
}
}
/posts/attachments| Status | Meaning | Action |
|---|---|---|
| 401 | Unauthorized | Re-login |
| 403 | Forbidden | Check permissions |
| 404 | Not found | Verify resource exists |
| 500 | Server error | Retry or report |
【操作名称】
请求:{method} {endpoint}
状态:{status_code}
结果:成功/失败
详情:...