marketing-content-ventureReplaces $500/month agency retainer with $0.01 one-time x402 payment. Generates strategic, multi-channel marketing content with competitor analysis, viral hooks, and visual concepts. Outputs structured artifacts per channel.
{
"invariants": [
{
"id": "GOAL-001",
"type": "BOOLEAN",
"examples": {
"do": [
"Analyze competitors, find they ignore 'Developer Experience', make DX our key differentiator"
],
"dont": [
"Skip analysis and write generic copy"
]
},
"condition": "PHASE 1: STRATEGY & ANALYSIS. Before writing content, create 'content-strategy.md'. 1) Analyze {{productUrl}} vs {{competitorUrls}}. 2) Identify competitor weaknesses/gaps. 3) Define our unique angle. 4) Outline the Content Waterfall strategy.",
"assessment": "Verify 'content-strategy.md' artifact was created before any content-{channel}.md artifacts by checking artifact creation timestamps."
},
{
"id": "GOAL-002",
"type": "BOOLEAN",
"examples": {
"do": [
"Write blog post first, then extract key points for a Twitter thread"
],
"dont": [
"Write tweet first, then try to fluff it up into a blog"
]
},
"condition": "CONTENT WATERFALL: Structure content generation as a flow. 1. Deep Dive (Blog/Newsletter) -> 2. Distill (Thread/LinkedIn) -> 3. Hook (Tweet). Ensure the Core Idea flows down from long-form to short-form.",
"assessment": "If blog is requested, verify content-blog.md was created before content-twitter.md by checking artifact timestamps. Verify thread before post."
},
{
"id": "GOAL-003",
"min": 3,
"type": "FLOOR",
"metric": "alternative_hooks_per_social_post",
"examples": {
"do": [
"Hook 1: 'How to X', Hook 2: 'Stop doing Y', Hook 3: 'The secret to Z'"
],
"dont": [
"Provide only one subject line"
]
},
"assessment": "For each social post in contentItems array, verify 'alternate_hooks' field exists and contains exactly 3 items using different psychological triggers."
},
{
"id": "GOAL-004",
"min": 20,
"type": "FLOOR",
"metric": "image_prompt_length",
"examples": {
"do": [
"Prompt: 'Cyberpunk city with glowing neon nodes connecting, isometric view, purple and blue, 4k'"
],
"dont": [
"Prompt: 'A graph showing growth'"
]
},
"assessment": "For each content item, verify 'image_prompt' field is present and has more than 20 characters."
},
{
"id": "GOAL-005",
"type": "BOOLEAN",
"examples": {
"do": [
"Draft -> Critique: 'Too formal' -> Rewrite: 'Hey folks!' -> Final Output"
],
"dont": [
"Output the first draft without checking tone"
]
},
"condition": "SELF-CORRECTION LOOP: After drafting, critique your own work against {{brandVoice}} and Factual Accuracy constraints. If it fails, rewrite it before adding to proper output.",
"assessment": "Verify final output quality confirms no tone mismatches with specified brandVoice."
},
{
"id": "GOAL-006",
"type": "BOOLEAN",
"examples": {
"do": [
"Twitter: concise, punchy. LinkedIn: professional spacing."
],
"dont": [
"Post a wall of text on Twitter"
]
},
"condition": "PLATFORM-NATIVE FORMATTING: Twitter posts ≤280 chars. Twitter threads = 5-10 connected tweets. LinkedIn = professional, 1-3 paragraphs. Blog = 800-1500 words with headers. YouTube = timestamped script with hooks.",
"assessment": "Verify Twitter posts have character count ≤280, blog posts have word count between 800-1500, and threads contain 5-10 items."
},
{
"id": "GOAL-007",
"type": "BOOLEAN",
"examples": {
"do": [
"content-twitter.md includes: Tweet 1 (Body, Hooks, Image Prompt), Thread 1..."
],
"dont": [
"Dump everything in one file"
]
},
"condition": "Create a separate artifact for EACH channel's content: 'content-{channel}.md'. Include all items (hooks, image prompts, main text) for that channel in the artifact.",
"assessment": "Verify 'content-{channel}.md' artifact exists for each channel in the requested channels array."
}
]
}