← Back to Blog
November 11, 2025EngineeringAI Agents

Building Synter with Amp by Sourcegraph

How we built an AI media agent for autonomous cross-platform ad buying using Amp agentic coding framework, frontier models, and 6 major ad platform APIs.

Why "AI Media Agent"?

Traditional paid media management is broken. Agencies charge 10-15% fees, campaigns take weeks to launch, and optimization happens manually (if at all). We saw an opportunity to build an AI media agent that could:

  • Plan campaigns from a brief using frontier LLMs (GPT-4o, Claude 3.5 Sonnet)
  • Launch across 6 platforms (Google, Microsoft/Bing, LinkedIn, Meta, Reddit, X) simultaneously
  • Optimize autonomously with explainable changes and rollback

The result: autonomous media buying that's faster, cheaper, and more data-driven than human-only management.

Enter Amp: Agentic Coding Framework

We chose Amp by Sourcegraph as our development framework because it's purpose-built for agentic systems. Amp provides:

  • Task routing: Send briefs to planning agents, send optimization requests to analysis agents
  • Tool orchestration: Agents can call Google Ads API, LinkedIn Campaign Manager, Meta Marketing API, etc.
  • Audit trail: Every agent action is logged with rationale and metrics
  • BYOK model support: Swap OpenAI for Anthropic or Google without rewriting code

Instead of building task queues, API wrappers, and logging systems from scratch, we leveraged Amp's primitives and focused on domain logic.

Architecture: Multi-Agent System

Synter uses a multi-agent architecture where each agent has a specialized role:

1. Research Agent (Long-Context Models)

Model: Claude 3.5 Sonnet (200k token context)

Responsibilities: Analyze website content, competitor research, industry reports. Extract ICP signals, pain points, and messaging angles. Outputs: personas, value props, creative concepts.

2. Planning Agent (Reasoning Models)

Model: GPT-4o or o-series

Responsibilities: Take campaign brief + research → generate channel mix, budget allocation, audience targeting, keyword lists, ad copy variants. Uses function calling to structure outputs.

3. Creative Agent (Vision Models)

Model: Gemini 1.5 Pro (multimodal)

Responsibilities: Generate ad copy (headlines, body, CTAs), analyze existing creative for patterns, suggest image/video concepts. Multimodal capabilities for creative analysis.

4. Optimization Agent (Fast Reasoning Models)

Model: GPT-4o or Llama 3.3 (cost-effective)

Responsibilities: Monitor performance daily, recommend budget shifts, creative rotations, negative keywords, audience adjustments. Outputs: explainable changes with metrics deltas.

Platform Integrations: 6 Ad Platforms, 1 Unified Interface

Building native integrations with Google Ads, Microsoft Ads, LinkedIn, Meta, Reddit, and X required wiring OAuth flows, API clients, and entity normalization. Here's how we did it with Amp:

OAuth & Scopes

Each platform requires OAuth 2.0 with specific scopes. We built a unified OAuth handler in Amp that:

  • Redirects users to platform authorization pages
  • Stores encrypted tokens (access + refresh) in the database
  • Auto-refreshes tokens before expiry

API Client Abstractions

We created platform-specific clients (e.g., GoogleAdsClient, LinkedInCampaignManagerClient) that handle:

  • Rate limiting and retries
  • Entity normalization (campaigns, ad groups, ads, keywords)
  • Metrics aggregation (impressions, clicks, conversions, cost)

Agent Tools for Platform Actions

Amp's tool system lets agents call platform APIs as functions. Example tools:

  • create_google_ads_campaign() → Creates campaign + ad groups + ads
  • update_linkedin_budget() → Adjusts daily budget
  • add_negative_keywords() → Adds negatives at campaign/ad group level

See full capability matrix: /integrations

Frontier Models: Why Model Selection Matters

Not all tasks need GPT-4o. We use task-specific model routing:

  • Long-context research: Claude 3.5 Sonnet (200k tokens) for website analysis
  • Strategic planning: GPT-4o or o-series for campaign briefs
  • Entity extraction: Gemini 1.5 Pro for structured data
  • Cost-sensitive tasks: Llama 3.3 or Mistral Large for high-volume operations

Amp's BYOK support means customers can bring their own API keys and choose models per task. This keeps costs transparent and avoids vendor lock-in.

Full model matrix: /frontier-models

Explainability & Rollback: Trust Through Transparency

Autonomous doesn't mean black box. Every agent action includes:

  • What changed: Entity, field, old/new values
  • Why: Rationale from the model (e.g., "CAC increased 20% → pausing ad group X")
  • Expected impact: Metrics deltas (projected CAC, ROAS, conversions)
  • Rollback option: One-click revert to previous state

This audit trail is critical for compliance, team transparency, and building trust in AI decisions. Read more: /security-governance

Results: Faster, Cheaper, Smarter

With Amp powering Synter's agentic architecture, we've achieved:

2-3x

Faster campaign launch (minutes vs. days)

35-50%

Lower CAC with AI optimization

$50k-$200k

Annual savings (no agency fees)

What's Next: Agentic Ad Buying at Scale

We're continuing to expand Synter's capabilities with Amp:

  • TikTok and Snapchat integrations (Q1 2026)
  • Multi-touch attribution models (time-decay, position-based)
  • Advanced creative testing (image generation, video analysis)
  • Custom model fine-tuning on customer-specific conversion data

If you're building agentic systems or exploring autonomous media buying, we'd love to hear from you.

Want to try Synter's AI media agent?

Join the waitlist to get early access to autonomous campaign planning, launch, and optimization across 6 platforms.

Join Waitlist →