Skip to content

Campaign agents

Campaign is where Pulson acts. The product describes it as: “check what is slipping, decide what to change, and keep budget, bidding, and targeting actions in one place.” Read Capabilities alongside this — every real change is gated, and live budget writes reach Amazon for one pilot brand (KISS) today.

The Campaign agents page — the guide card, the campaign agents, and Execution History

  • What it does: Compose Amazon Marketing Cloud analyses in natural language or SQL, auto-execute them against your AMC instance, track status (succeeded/failed/pending), and review the result tables and charts. Builds an audience/performance picture you can’t get from standard reports.
  • Actions: None. It runs queries and returns results — it changes nothing.
  • Powered by: AMC agents in pulsead-agents — a router that sends a request to an advisor (answers AMC questions) or a writer (generates and saves AMC SQL; SELECT/WITH only). In ai-api, AMC query build/execute are chat tools; the REST routes are read-only.
  • Default: active.

Campaign Optimizer — propose, then chat-approve

Section titled “Campaign Optimizer — propose, then chat-approve”
  • What it does: A unified place to list campaigns and request bid/budget changes or campaign creation via sidebar chat. It tracks every adjustment request with before/after metrics, status, and the affected scope.
  • Actions: Propose-change, human-gated. You ask for a change in natural language; it applies to live campaigns through Amazon Ads only after you approve each directive in chat. It is not autonomous.
  • Powered by: Action Chat’s Action sub-agent and its ads_* mutation tools (ads_adjust_budget, ads_pause_campaign(s), ads_update_campaigns, ads_adjust_bids, ads_update_keywords, ads_update/create_targets, ads_create_campaign, …), each wrapped in the approval flow. History comes from the campaign-execution read routes.
  • Default: active.

Budget Automation — autonomous, under policy

Section titled “Budget Automation — autonomous, under policy”
  • What it does: Runs a bundled cycle — Monitor → Rebalance → Optimize → Execute → Verify — that detects pacing/out-of-budget issues, proposes product-group budget moves and bid adjustments, executes under an auto-approval policy, routes anything failed or held to a review queue, and learns the result as the next cycle’s baseline.
  • Actions: Autonomous within a policy gate. This is the only campaign agent that can change live budgets/bids without per-change chat approval — the auto-approval policy decides what auto-executes vs. what’s held for review.
  • Powered by: the Optimize Cycle pipeline in pulsead-agents — six agents (input_checker → monitor → rebalancer → optimizer → executor → verifier) with two human approval gates (after rebalance, after allocation) when auto-approval is off. A 1-minute scheduler runs due cycles.
  • Default: inactive — it turns on only after a cycle has run for the brand, or you toggle it on.
  • They never change your account silently. Campaign Optimizer requires a chat approval per directive; Budget Automation acts only within an explicit auto-approval policy and sends the rest to review.
  • Autonomous budget writes are not broadly live. The Optimize Cycle executor sends real budget changes to Amazon only for KISS; for every other brand it computes and records the decision but sends nothing (no-op “success”). See Capabilities.
  • AMC Builder doesn’t act — it’s read-only insight.
  • They don’t bypass roles or guardrails. Viewer-role users can’t approve campaign changes; budget changes pass size guardrails (≤50% / ≤$10k / ≥$1) and a per-brand amazon_ads_mode (disabled / dry-run / live).

How a change works, end to end (Campaign Optimizer)

Section titled “How a change works, end to end (Campaign Optimizer)”
  1. Open the agent for the slipping campaign, in the current scope.
  2. Review what Pulson found — the change candidates and the reasoning.
  3. Propose. The Action sub-agent writes a pending action request and shows an approval card. Nothing has changed on Amazon yet.
  4. Approve. A permitted user approves within the ~5-minute window; viewers are blocked, guardrails apply.
  5. Apply. A separate, deterministic step executes the approved change via pulsead-agents → Amazon, and the run lands in Execution History showing what changed, what still needs approval, and what needs follow-up.

How an autonomous cycle works (Budget Automation)

Section titled “How an autonomous cycle works (Budget Automation)”

input_checker validates brand prerequisites → monitor pulls 7-day + MTD performance → rebalancer computes product-group budgets and proposes them (gate 1) → optimizer allocates to campaigns and proposes (gate 2) → executor patches budgets on Amazon (only for KISS; others no-op) → verifier re-checks and auto-corrects drift. With auto-approval off, it pauses at each gate for a human; with it on (per brand/stage), it chains through.

The same Action sub-agent also exposes, from the campaign surface:

  • Performance Diagnose — finds declining SP/SB/SD campaigns, root-causes them, and recommends 1–5 actions (read-only; applying is a separate gated step).
  • Keyword automation (back-office) — keyword_harvester proposes profitable exact-match keywords; waste_keyword_pauser proposes pausing zero-click spend. Both propose → approval card → gated mutation.