Skip to content
Command line (CLI)

postemi: the command line tool

Installing, the output contract, date handling, and why a scheduler needs a command line tool.

Installation

Package
postemi
Command
postemi
Install
npm install -g postemi
Availability
Available on the Pro plan and above, with the same permissions as the API. See the Plans page.
npm install -g postemi
postemi --version
postemi --help

First commands

postemi auth:login          # sign in through the browser
postemi auth:status         # which workspace this machine is linked to
postemi integrations:list   # the connected channels, with IDs

All other commands expect this value as the channel ID. List it once and save it.

The output contract

JSON on stdout, everything else on stderr

Results go to stdout as JSON. Status messages and errors go to stderr. On failure, the command exits non-zero. That's what makes the output safe to pipe to other commands, and lets the caller know what happened.

# only the channel IDs
postemi integrations:list | jq -r '.[].id'

# in a scheduled run, errors go to the log and the JSON to the consumer
postemi posts:list --startDate ... --endDate ... > calendar.json 2>> errors.log

Dates and time zones

Always provide an unambiguous date. There are two valid ways to specify it:

  • ISO 8601 with an explicit offset: 2026-12-31T12:00:00Z or 2026-12-31T12:00:00+01:00.
  • A time without an offset and a specified time zone: "2026-12-31 12:00" with the --timezone Europe/London flag.
An error instead of guesswork

If you provide a date without an offset and don't set a time zone using the flag, the POSTEMI_TIMEZONE variable, or postemi config:set timezone, the command exits with an error. That's intentional. A post scheduled for the wrong time without warning is much worse than an error message.

postemi config:set timezone Europe/London
postemi config:get timezone

For agents

The package includes a SKILL.md file that describes every command and flag. An agent with terminal access can learn to use the CLI from that file, without reading a website.

If your agent connects directly instead of working through a shell, use the MCP server instead.

Commands

Is something missing from this page? Email [email protected] or use the form on the Help page.