AOP CLI FAQ
Short answers about the aop command line. For the full walkthrough, see
Command line (aop); for the product, see the Pulson FAQ.
What is the AOP CLI?
Section titled “What is the AOP CLI?”aop (also aop-hermes) is PulseAd’s Agentic Operations command line — the
tool staff use to drive Amazon ad accounts from a terminal, with a workspace per
brand wired to the Pulse Library, the Memory API, Snowflake/Aurora, and the bundled
Amazon Ads / AMC / analytics tools.
Is it the same thing as Pulson?
Section titled “Is it the same thing as Pulson?”No. aop is the operator tool for PulseAd staff; Pulson is the customer
product. They share data backends, but aop is a separate surface — and crucially,
its writes are NOT behind Pulson’s propose→approve gates (only per-tool dry-run).
How do I install it?
Section titled “How do I install it?”With uv, from GitHub:
uv tool install --python 3.11 "git+https://github.com/PulseAd/aop-hermes.git@main"Prerequisites: uv, Python 3.11, and a local Pulse Library. Full steps in Command line (aop).
How do I connect it?
Section titled “How do I connect it?”Run aop setup — it walks the Pulse Library location, the Memory API, and the
model/provider/auth, then registers the GENERAL workspace and runs doctor. See
Connect.
Where do secrets go?
Section titled “Where do secrets go?”AOP-domain secrets (Memory API key, Snowflake/Aurora creds, the Snowflake RSA key)
live in $AOP_HOME/shared.env (gitignored — never commit it). LLM provider keys
are managed by Hermes, not in shared.env.
What’s a workspace / a brand code?
Section titled “What’s a workspace / a brand code?”Workspaces are general (the shared GENERAL) or brand. A brand’s scope
code is uppercased (e.g. ACME), maps to docs/<BRAND_CODE> in the Pulse Library,
and gets its own isolated HERMES_HOME. Enter one with aop launch <BRAND_CODE>.
Does aop go through the product’s approval gates?
Section titled “Does aop go through the product’s approval gates?”No. Its ~45 Amazon Ads write actions are guarded only by per-tool dry_run
flags — there’s no propose→approve valve like the product has. Treat it as a
powerful operator tool, used by staff.
How do I update or reset it?
Section titled “How do I update or reset it?”aop update self-updates from GitHub main and syncs skills. aop clean --dry-run
shows what a reset of $AOP_HOME would remove; aop clean --yes performs it (the
binary stays — remove that with uv tool uninstall aop-hermes).
What does it actually connect to?
Section titled “What does it actually connect to?”The Pulse Library (brand docs), the AOP Memory API, Snowflake and
Aurora, and the bundled aop-tools (Amazon Ads, AMC, analytics, pacing,
RTB, reports). See What it connects to.