Delegating to CDN Agent
Core Principle
Never handle Fastly CDN operations directly. Always delegate to a specialized sub-agent to keep your context clean and costs low.
Recognition Patterns
Delegate when user says:
- •"query fastly for..."
- •"list fastly services"
- •"show cdn configuration"
- •"purge cache"
- •"describe fastly service"
- •"list backends"
- •"show VCL"
- •"clear cdn cache"
- •Any mention of: fastly, cdn, cache, vcl, backends, purge, origin servers, varnish
ExampleJobInc-Specific Triggers
Also delegate when user mentions these ExampleJobInc domains:
- •"pi.examplejobinc-cdn.com"
- •"images.examplejobinc.com"
- •"hls.examplejobinc.com"
- •"assets.examplejobinc.com"
- •"embed.examplejobinc.com"
- •"crushinator" (image processing backend)
How to Delegate
Use the Task tool with a specialized prompt:
code
Task( subagent_type: "general-purpose", description: "Query Fastly CDN", prompt: "<full agent instructions from AGENT-INSTRUCTIONS.md>" )
Agent Prompt Template
When delegating, include:
- •The complete agent instructions (see AGENT-INSTRUCTIONS.md)
- •The user's specific request
- •Clear output format requirements
Example:
code
You are a Fastly CDN specialist. Your job is to query Fastly using shell wrappers and return clean results. <AGENT INSTRUCTIONS HERE> USER REQUEST: List all Fastly services Return a clean summary with: - Service names - Service IDs - Service types - Last updated dates
After Agent Returns
- •Present results cleanly to user
- •Offer follow-up if relevant (e.g., "Would you like to see backends for pi.examplejobinc-cdn.com?")
- •Don't expose mechanics (API calls, tokens, CLI commands) to user
Benefits
- •✅ Main context stays clean
- •✅ Cheaper queries (sub-agent uses less expensive model)
- •✅ Specialized knowledge isolated
- •✅ Scalable pattern for other CDN operations
Example Flow
code
User: "list fastly services"
Main Assistant: [Recognizes Fastly query]
→ Invokes Task tool with agent instructions
→ Agent runs cdn-services wrapper
→ Agent returns formatted results
Main Assistant: "Found 8 Fastly services:
1. pi.examplejobinc-cdn.com - Image processing CDN
2. images.examplejobinc.com - Static images
3. hls.examplejobinc.com - Video streaming
...
Would you like details on any of these?"
Common Query Types
Service Management:
- •"list fastly services"
- •"describe pi.examplejobinc-cdn.com service"
- •"show cdn configuration"
Backend Investigation:
- •"list backends for pi.examplejobinc-cdn.com"
- •"show origin servers"
- •"describe crushinator backend"
VCL Configuration:
- •"list VCL configurations"
- •"show VCL content for version 42"
- •"view custom VCL"
Cache Management:
- •"purge all cache for pi.examplejobinc-cdn.com"
- •"clear cdn cache"
- •"invalidate surrogate key image-cache"
- •"purge specific URL"
Red Flags
DON'T:
- •❌ Try to run fastly-* scripts yourself
- •❌ Attempt Fastly API calls directly
- •❌ Load detailed Fastly CLI knowledge
- •❌ Handle authentication directly
- •❌ Parse complex CDN configurations
DO:
- •✅ Immediately delegate on Fastly keywords
- •✅ Trust the sub-agent's results
- •✅ Present clean summaries to user
- •✅ Suggest relevant follow-up queries
- •✅ Warn about cache purge impact
Cache Purge Safety
When user requests cache purging:
- •Always delegate to sub-agent (never do yourself)
- •Confirm service before agent purges
- •Warn about impact of full cache purges
- •Prefer specific purges (URL/key) over --all
The sub-agent handles this, but you should reinforce warnings in your response.
ExampleJobInc Infrastructure Context
ExampleJobInc uses Fastly for:
- •Image CDN (pi.examplejobinc-cdn.com) - Crushinator-powered image processing
- •Video CDN (hls.examplejobinc.com) - HLS streaming
- •Static assets (images.examplejobinc.com, assets.examplejobinc.com)
- •Website CDN (www.examplejobinc.com)
When user mentions investigating these systems, delegate to Fastly agent.
Version History
- •1.0.0 (2025-10-15): Initial delegation skill created to reduce context pollution