AI agents CLI
The social media CLI your AI agent can run.
One install, and your agent can plan, schedule and measure a whole month across seven networks. Nothing goes live until you say so.
- Claude Code
- Cursor
- Zed
- GitHub Actions
- cron
> Take Friday's changelog, write it up for LinkedIn and X,attach the hero image and schedule both for 6pm.Claude runs:$ zilfu accounts list --space 1 --json$ zilfu media upload --file ./assets/hero.png$ zilfu posts create --space 1 --account 12 --account 15 \--text "This week: realtime comments, faster analytics…" \--account-text 15="Three shipped this week. The long version →" \--at 2026-10-23T18:00:00Zid account_id status scheduled_at502 12 scheduled 2026-10-23T18:00:00Z503 15 scheduled 2026-10-23T18:00:00Z
Built for agents. Readable by you.
Cross out the glue. Keep the control.
Your stack
Deploys automated. Changelog automated. Social still a browser tab.
One install, and your agent runs it too.
Parsing
Scraping a dashboard for what went out.
Every command takes --json.
Setup
An SDK, a client and an OAuth flow.
npm install, then zilfu login.
Headless
A browser session on a server.
ZILFU_TOKEN in an env var.
Reach
One script per network.
Seven networks, one command.
Honest numbers
A zero your agent repeats as fact.
A dash when the network doesn't say.
Trust
Hoping the bot didn't post something weird at 3am.
No publish permission, no publishing. It waits for you.
Approvals, built in.
Invite your agent as a teammate without publish permission. Everything it creates lands in the approval queue, where a person reviews it, comments, or sends it back.
How approvals work$ zilfu posts list --space 1 --status pending_approvalid account_id status scheduled_at502 12 pending_approval 2026-10-23T18:00503 13 pending_approval 2026-10-23T18:00
Sixteen commands. That's the whole thing.
Small enough for an agent to learn from the help text in one read. Go on, type one.
posts
create
Schedule, draft or publish now
--space 1 --account 12 --text "Hi"posts
list
The queue, by status and date
--space 1 --status pending_approvalposts
delete
Pull a post before it goes out
--space 1 --post 502media
upload
A local file in, a reusable URL out
--file ./hero.pnganalytics
overview
One summary row per account
--space 1 --jsonanalytics
account
The full report for one account
--space 1 --account 12analytics
posts
Every published post, ranked
--space 1 --account 12 --sort interactionsspaces
list
Every space the token can reach
--jsonslots
list
Your recurring weekly posting times
--space 1slots
create
Add a time on one or more days
--space 1 --days mon,wed,fri --time 09:00slots
delete
Remove a posting slot
--space 1 --slot 7accounts
list
Connected accounts, with their ids
--space 1zilfu
login
Sign in via browser or token
--webzilfu
whoami
Who the current token belongs to
no flags neededzilfu
health
Is the API up? No auth needed
no flags neededzilfu
logout
Forget the stored credentials
no flags needed
Published on npm as @zilfu/cli. Every flag is in the command reference.
Beyond the terminal.
Hosted MCP server
For agents that speak MCP rather than shell. Fifteen tools over the same ground as the CLI, hosted by us.
zilfu.app/mcp/social-media
REST API
The same endpoints the app runs on. Bearer-token auth, JSON in and out, on every plan.
POST /api/spaces/{space}/posts
Webhooks
Eight signed events as they happen: publishes, failures, new comments, accounts dropping.
post.published · post.failed · +6
Before you hand over the keys.
Which AI assistants and agents work with Zilfu?
Anything that can run a shell command: Claude Code, an agent framework, a cron job, a CI step. There is no SDK to install and no integration to build. The agent runs a command and reads the output. A hosted MCP server and a REST API are there too, if your agent would rather use one of those.
Why a CLI rather than just an API?
Because a CLI is the interface most agents already know how to use. No SDK, no generated client, no auth flow to implement. Every command that talks to the API also takes --json, so what comes back parses without scraping a table.
Is it safe to let an AI agent post for me?
You decide how much rope it gets. Tokens are scoped to your account and revocable any time. Ask the agent for drafts and nothing goes live until you approve, or invite it as a teammate without publish permission and everything it creates goes to the approval queue. Every action shows up in your calendar, so nothing publishes silently.
Which plans include the CLI?
Every plan, starting at $19/month. All sixteen commands are included, with unlimited posts. Higher tiers raise how many accounts you can connect.
How does the agent authenticate?
Run zilfu login --web to authorise in the browser, or set the ZILFU_TOKEN environment variable for a headless agent. One token covers every workspace you belong to, and works on the CLI and the API alike.
Which social networks can an agent publish to?
All seven Zilfu supports: Instagram, TikTok, Facebook, LinkedIn, Pinterest, Threads and X, including multi-account posting, media uploads, and multi-part threads where the network supports them.
Can it read analytics back?
Yes: per space, per account, or per published post, so an agent can look at what landed last month before it plans next month. A metric the network doesn't report prints as a dash, and null in JSON, rather than a zero your agent would repeat as fact.
What about rate limits?
The CLI and the API share per-token rate limits sized for real agent workflows, documented in the docs. Building something heavier? Get in touch and we'll work out the right ceiling.