Ecto OpenClaw Skill - ClawHub
Do you want your AI agent to automate Ecto workflows? This free skill from ClawHub helps with cli utilities tasks without building custom tools from scratch.
What this skill does
Ghost.io Admin API CLI for managing blog posts, pages, tags, and content.
Install
npx clawhub@latest install ectoFull SKILL.md
Open original| name | description |
|---|---|
| ecto | Ghost.io Admin API CLI for managing blog posts, pages, tags, and content. |
ecto - Ghost.io Admin API CLI
Manage Ghost.io blogs via the Admin API. Supports multi-site configuration, markdown-to-HTML conversion, and JSON output for scripting.
Quick Reference
Authentication
ecto auth add <name> --url <ghost-url> --key <admin-api-key>
ecto auth list
ecto auth default <name>
ecto auth remove <name>
Environment overrides: GHOST_URL, GHOST_ADMIN_KEY, GHOST_SITE
Posts
ecto posts [--status draft|published|scheduled|all] [--limit N] [--json]
ecto post <id|slug> [--json] [--body]
ecto post create --title "Title" [--markdown-file file.md] [--stdin-format markdown] [--tag tag1,tag2] [--status draft|published]
ecto post edit <id|slug> [--title "New Title"] [--markdown-file file.md] [--status draft|published]
ecto post delete <id|slug> [--force]
ecto post publish <id|slug>
ecto post unpublish <id|slug>
ecto post schedule <id|slug> --at "2025-01-25T10:00:00Z"
Pages
ecto pages [--status draft|published|all] [--limit N] [--json]
ecto page <id|slug> [--json] [--body]
ecto page create --title "Title" [--markdown-file file.md] [--status draft|published]
ecto page edit <id|slug> [--title "New Title"] [--markdown-file file.md]
ecto page delete <id|slug> [--force]
ecto page publish <id|slug>
Tags
ecto tags [--json]
ecto tag <id|slug> [--json]
ecto tag create --name "Tag Name" [--description "desc"]
ecto tag edit <id|slug> [--name "New Name"] [--description "desc"]
ecto tag delete <id|slug> [--force]
Images
ecto image upload <path> [--json]
Site Info
ecto site [--json]
ecto settings [--json]
ecto users [--json]
ecto user <id|slug> [--json]
ecto newsletters [--json]
ecto newsletter <id> [--json]
Webhooks
ecto webhook create --event <event> --target-url <url> [--name "Hook Name"]
ecto webhook delete <id> [--force]
Events: post.published, post.unpublished, post.added, post.deleted, page.published, etc.
Multi-Site
Use --site <name> to target a specific configured site:
ecto posts --site blog2
Common Workflows
Create and publish from markdown:
ecto post create --title "My Post" --markdown-file post.md --tag blog --status published
Pipe content from stdin:
echo "# Hello World" | ecto post create --title "Quick Post" --stdin-format markdown
Schedule a post:
ecto post schedule future-post --at "2025-02-01T09:00:00Z"
Batch publish drafts:
for id in $(ecto posts --status draft --json | jq -r '.posts[].id'); do
ecto post publish "$id"
done
Limitations
- Ghost API does not support listing images or webhooks
- Member/subscription management not available via Admin API
- Read-only access to users
Full Docs
Run ecto --ai-help for comprehensive documentation.