Founder Video
pexoai/pexo-skills
Make a founder video with Pexo — built for solo founders and small teams.
Grassroots-first campaign design for anyone being outspent — startups vs.
$ npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install bencium/bencium-marketplace insurgent-campaign --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/bencium/bencium-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/insurgent-campaign/skills/insurgent-campaign .claude/skills/insurgent-campaign && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "insurgent-campaign" agent skill from https://github.com/bencium/bencium-marketplace/tree/main/insurgent-campaign/skills/insurgent-campaign into .claude/skills/insurgent-campaign/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "insurgent-campaign", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/bencium/bencium-marketplace/tree/main/insurgent-campaign/skills/insurgent-campaignType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install bencium/bencium-marketplace insurgent-campaign --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bencium/bencium-marketplace.git skills-src && mkdir -p .agents/skills && cp -r skills-src/insurgent-campaign/skills/insurgent-campaign .agents/skills/insurgent-campaign && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "insurgent-campaign" agent skill from https://github.com/bencium/bencium-marketplace/tree/main/insurgent-campaign/skills/insurgent-campaign into .agents/skills/insurgent-campaign/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "insurgent-campaign", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install bencium/bencium-marketplace insurgent-campaign --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bencium/bencium-marketplace.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/insurgent-campaign/skills/insurgent-campaign .cursor/skills/insurgent-campaign && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "insurgent-campaign" agent skill from https://github.com/bencium/bencium-marketplace/tree/main/insurgent-campaign/skills/insurgent-campaign into .cursor/skills/insurgent-campaign/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "insurgent-campaign", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/bencium/bencium-marketplace.git --path insurgent-campaign/skills/insurgent-campaign--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install bencium/bencium-marketplace insurgent-campaign --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bencium/bencium-marketplace.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/insurgent-campaign/skills/insurgent-campaign .gemini/skills/insurgent-campaign && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "insurgent-campaign" agent skill from https://github.com/bencium/bencium-marketplace/tree/main/insurgent-campaign/skills/insurgent-campaign into .gemini/skills/insurgent-campaign/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "insurgent-campaign", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install bencium/bencium-marketplace insurgent-campaignInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/bencium/bencium-marketplace.git skills-src && mkdir -p .github/skills && cp -r skills-src/insurgent-campaign/skills/insurgent-campaign .github/skills/insurgent-campaign && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "insurgent-campaign" agent skill from https://github.com/bencium/bencium-marketplace/tree/main/insurgent-campaign/skills/insurgent-campaign into .github/skills/insurgent-campaign/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "insurgent-campaign", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install bencium/bencium-marketplace insurgent-campaign --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bencium/bencium-marketplace.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/insurgent-campaign/skills/insurgent-campaign .opencode/skills/insurgent-campaign && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "insurgent-campaign" agent skill from https://github.com/bencium/bencium-marketplace/tree/main/insurgent-campaign/skills/insurgent-campaign into .opencode/skills/insurgent-campaign/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "insurgent-campaign", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
insurgent-campaignGrassroots-first campaign design for anyone being outspent — startups vs.
Insurgent Campaign is an agent skill from bencium/bencium-marketplace. Grassroots-first campaign design for anyone being outspent — startups vs. incumbents, NGOs vs. corporate comms, movements vs. state-backed machines, solo brands vs. big-budget competitors. Ideates awareness, launch, fundraising, mobilization, community-build, counter-narrative, referral, founder-story, and coalition campaigns. Triggers on "campaign plan", "marketing strategy", "ad budget", "should I advertise", "paid vs organic", "launch plan", "grassroots", "low budget marketing", "NGO campaign", "outspent"…
Its SKILL.md is about 12k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including reference files (for example `references/asymmetry-audit-table.md`, `references/authenticity-playbook.md` and `references/campaign-archetypes.md`).
It sits in Marketing & SEO, covering Product launch strategy, Go-to-market strategy and Influencer and creator marketing. The repository describes itself as: comprehensive skills based on the Anthropic Skills guide and our design and development philosophy. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 5de46a3. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Insurgent Campaign loads about 12k tokens when it runs, and up to ~33k if it reads all its reference files. Until then it costs about 226 tokens; SKILL.md has 6,626 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from bencium/bencium-marketplace at commit 5de46a3, republished under its MIT licence (© bencium). 6,626 words, ~12,325 tokens.
.claude/skills/insurgent-campaign/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.A campaign-design skill for organizations and people who cannot win by outspending. It ideates campaign concepts across every major archetype, audits the user's spend asymmetry against their competition, assembles an insurgent channel stack, sets strict boost gates on any paid spend, and produces a lift-test plan so the user measures incremental impact rather than vanity metrics.
Paid media scales attention. Organic narrative and grassroots networks scale trust. When trust is the bottleneck — and in 2025–2026, for most underdogs, it is — additional ad spend hits diminishing and then negative returns. Saturation, inauthenticity, and narrative incoherence produce reactance, not persuasion. The leverage point is not reach; it is credibility and message-market fit.
Empirical spine:
references/hungarian-case-study.md.The same curve bends commercial advertising. The skill treats paid as an amplifier of proven organic winners, never as a standalone channel.
Apply when the user:
Also apply when no explicit "campaign" is named but the user is debating where to invest time and money for distribution.
The skill runs in seven stages (1, 2, 3, 3a, 4, 5, 5b). Do not skip stages; later stages depend on the user's answers and selections from earlier ones. Stage 3a (MMF Gate) can refuse the full campaign plan and route the user to validation work instead. Stage 5 ends with a shape selection — Stage 5b only begins once the user has picked one of the three shapes.
This skill is designed to be portable across agent environments. Where the workflow
says "ask the user," use whatever structured-question facility your environment
provides (in Claude Code that is the AskUserQuestion tool, batching up to 4
questions per call); if no structured tool exists, ask in plain text and wait for
the user to reply before continuing. Either way, never invent answers.
Resume Protocol (idempotency). Before producing any output, scan the
conversation for prior skill output. If a section's heading (## N. <name>)
is already present in the conversation, do not regenerate it. Pick up at the
first stage whose Contract preconditions are satisfied AND whose output
section(s) are not yet in the conversation. If the user explicitly asks to
restart, restart from Stage 1; otherwise resume rather than rerun. This makes
the skill safely re-invokable: a second call in the same conversation produces
only the next incremental section, never duplicates or regressions to earlier
stages. Scope: idempotency holds within a single conversation; if prior output exists only in an external file or a previous session, paste it into the conversation first or restart from Stage 1.
Stage Contracts. Each stage below opens with a Contract block declaring inputs, outputs, preconditions, postconditions, and failure modes. The contract is the structural boundary — it is what makes the stage retry-safe, error- explicit, and self-describing. Treat the contract as binding: if the preconditions are not met, do not enter the stage; if a failure-mode trigger fires, take the declared action rather than improvising.
Contract
[ask] for a still-pending question); mode is determined.The skill has three intake modes. Pick the mode that matches the user's brief before asking any questions.
Mode A — Full-brief mode. The user has volunteered all 8 fields below up front (in a pasted brief, a prior plan, a detailed message). Skip the interview entirely, confirm understanding in one sentence, and proceed to Stage 2.
Mode B — Interview mode. The user explicitly asks to be scoped ("help me figure out what this campaign should be," "walk me through it," "interview me"). Ask the 8 questions below in batches of ≤4 per turn, using the environment's structured question facility if one exists (see the structured-tool note in the Workflow section above). Do not invent answers. Do not merge questions.
Mode C — Default mode (for terse briefs). The user gave a short brief (≤2 sentences) without asking for an interview. This is the common case. Do NOT run the full 8-question interview — it turns a 12-word prompt into an interrogation. Instead:
Always-capture fields (ask once, batched). Four fields are too material to default silently; getting them wrong produces a generic plan. Ask the user in one batch of up to 4 questions covering:
references/sector-riders.md
(cohort-education, b2b-saas, ngo, consumer-brand, political-civic,
personal-brand), or other with a one-sentence description. The sector
rider materially changes Stage 4 channel weighting and Stage 5 archetype
defaults.If one of these four fields is already clearly present in the user's brief, drop it from the question batch. Only ask what is missing.
Default-with-flag fields. The remaining fields default silently but are surfaced in an Assumptions table at the top of the final deliverable (Stage 5 output). The user can confirm or adjust inline after reading the plan:
| Field | Default under terse brief |
|---|---|
| Competition (specifics) | Abstract — "cohort-based courses in the category," "mid-size SaaS competitors," etc. Use the heuristic questions in references/asymmetry-audit-table.md to classify asymmetry qualitatively. Never invent specific competitor names. |
| Existing channels / traction | "Starting from zero" unless the user's brief, working directory, or CLAUDE.md clearly indicates an existing newsletter, community, or follower base. |
| Bottleneck | Trust (the 2025–2026 default for almost every underdog campaign). |
| Time window | 60 days to a single dated anchor moment (event, launch, election), then recurring cadence. |
| Capacity | 6h/week. |
Escalation rule. If a missing field would materially change the Stage 3 asymmetry classification or the Stage 4 primary-function choice, do not default it — add it to the question batch. Example: if the user mentions "our whole team is posting already" but does not specify which channels, ask, because it changes the channel stack.
Assumptions table is mandatory under Mode C. Open the final deliverable with a table listing every defaulted field and its assumed value. End the deliverable with: "Confirm or adjust any row in the Assumptions table and I will re-run the affected stages."
Regardless of mode, the campaign plan is grounded in these 8 fields:
references/asymmetry-audit-table.md heuristics. Never invent names.
(Defaults in Mode C; user can sharpen in the Assumptions confirmation.)Contract
other).[incumbent] placeholder or category descriptor in every concept; never invent a name.Before any audit or channel work, generate at least five distinct campaign concepts,
drawn from different archetypes in references/campaign-archetypes.md. Do not converge
early. The point is to give the user a shaped menu to choose from.
For each concept, produce:
references/channel-tier-stack.md this
concept leans on (Tier 1/2/3/4).Anti-fabrication rule for concept names, theses, and hooks. If the user named a
specific competitor in the brief, use the name. If the user said "well-known incumbent,"
"market leader," "the dominant player," or otherwise did not name one, do not fill in
the blank with your best guess. Stay at the level of abstraction the brief gave you.
Use the category descriptor (e.g., "the $400-per-seat monitor"), the behavior
("the enterprise billing tax"), or a bracketed placeholder ([incumbent]) that the user
will fill in. Concept names like "We Quit Sentry" or "DataDog Alternative" — invented
from the category description rather than the brief — violate the Stage 1 anti-fabrication
rule and must not appear in Stage 2 output. This applies equally to SEO keyword lists,
earned-media pitch hooks, and any downstream section that inherits the concept name.
Industry-peer rule. The anti-fabrication rule covers any competitor name absent from the brief — not only invented names, but widely-known industry peers to a brief-named incumbent. If the brief names one dominant player (e.g., the user says "we're outspent 100x by [market leader]"), do not add the obvious #2 or #3 from the same category on your own ("LexisNexis and Westlaw," "Salesforce and HubSpot," "Datadog and New Relic") as if their presence were implied context. Use escape-hatch phrasing instead: "the other major [category] platforms," "[incumbent]-class tools," or "the dominant [category] incumbents." This applies in every section — Stage 2 concepts, Stage 4 SEO, Stage 5 competitor saturation, Stage 5b earned-media targets and ad-copy hooks, and any other downstream output. The discipline does not relax in any later stage. "Everyone in the industry knows it exists" is not a licence to name it.
After presenting the five concepts, ask the user to pick one (or more) to push through Stage 3–5.
Contract
references/asymmetry-audit-table.md; the concept(s) the user selected from Stage 2.Classify the user's spend asymmetry using the table in references/asymmetry-audit-table.md.
Report back one sentence: Your asymmetry is <level>. This means <what it means for your strategy>. Do not hedge. Do not offer a "balanced" recommendation if the user is at
categorical — it would be misleading.
Then run a Preconditions Check. The insurgent playbook wins when preconditions are
present; asymmetry alone is not enough. Score the user's situation against the six factors
that made the Hungarian case work (see references/hungarian-case-study.md for the full
mechanism). Ask or infer:
Score 0–6. Tell the user the count plainly and what it implies:
Contract
Before assembling a channel stack, verify the campaign is solving a distribution problem, not an MMF problem. Distribution amplifies signal; it cannot manufacture it. A founder's great LinkedIn post cannot sell a product nobody wants, and a movement's best volunteer network cannot turn out voters for a message that does not name their pain.
Ask the user three yes/no questions. Do not skip any. If the user does not know the answer to one, treat that as a "no" — absence of evidence is evidence of absence for MMF.
Scoring:
Report the MMF verdict at the top of the Stage 3 section of the final output so the user sees it before the channel stack.
Contract
3/3 proceed OR 2/3 with validation cycle attached. If verdict is 0–1/3 refuse, this stage MUST NOT execute.references/authenticity-playbook.md.other → flag rider mismatch in Assumptions table, proceed with the closest rider, name which rider assumptions do not apply.Function before cost. Before picking channels, pick the campaign's primary function
against the user's bottleneck (from Stage 1 Q6). Use the function table at the top of
references/channel-tier-stack.md:
A mild-asymmetry user with a trust bottleneck should not be routed to paid amplification just because they can afford it. Route by function first; allocate within that function by cost/asymmetry second.
Apply the sector rider. After the function choice but before allocation, open
references/sector-riders.md and apply the rider matching the user's sector
(captured in Stage 1). The rider adjusts:
Do not overwrite the function-first choice. The rider layers on top. If the rider and the function choice conflict (e.g., B2B SaaS rider biases toward founder-LinkedIn but the function choice is demand capture), surface the conflict and name both paths rather than collapsing to one.
If the user picked "other" for sector, flag the mismatch in the Assumptions table and proceed with the closest rider — naming which of the rider's structural assumptions do not apply.
Then assemble the channel stack using references/channel-tier-stack.md. Allocation
rules layer on top of the function choice and the sector rider:
references/authenticity-playbook.md)
before reconsidering.Output the stack as a prioritized list with: (a) the primary function chosen, (b) the channels mapped to that function, (c) an estimated weekly effort commitment per channel, (d) the 70/30 (or 80/20) split in plain numbers.
Anti-fabrication carries through. The Stage 2 anti-fabrication rule applies to
every element of the Stage 4 output: SEO keyword examples, long-tail query lists,
directory/review-site references, competitor saturation descriptions, and any sample
copy shown inline with the stack. If the brief did not name the incumbent, the
incumbent's proper noun must not appear in this stage in any casing — not
title-case ("Sentry alternative"), not lowercase ("sentry alternative"), not
hyphenated, not as part of a compound keyword or URL. Search-query examples that
would otherwise require a brand name must either retain the [incumbent] bracketed
placeholder for the user to fill in, or be rewritten as non-brand equivalents
("error monitoring for small teams," "application monitoring under $100/seat",
"lightweight APM for node.js"). This applies equally to Stage 5's competitor
saturation map and to every Stage 5b output section (## 8–## 11): the
banned-token discipline does not relax downstream of Stage 2.
Contract
Given the selected concept + channel stack, produce only the two items below.
Stage 5 ends with the user picking one of the three shapes; do not generate any
of the Stage 5b output (## 8–## 11) until the selection has been made.
Competitor saturation map. Before shapes, before ad copy, before anything: for each of the top 2 named competitors (or top 2 competitor categories if the user did not name specific ones — see Principles), produce:
(a) What they saturate — the channels, visual style, message tropes, production value, and emotional register the competitor is flooding. Be specific: "paid-heavy LinkedIn carousels with stock illustrations and growth-hack CTAs," not "social media ads."
(b) The absence that becomes your signal. What is the competitor doing that your refusal to do becomes the positioning? Worked examples:
(c) One-sentence positioning line the user commits to holding across the campaign. This is the single sentence every piece of content must reinforce.
Three alternative campaign shapes for executing the concept, with tradeoffs. Examples
of shapes: community-first (start with 100 real people, grow through word of mouth),
earned-media-first (one newsworthy action drives press + organic amplification),
search-capture-first (dominate long-tail high-intent queries where demand already
exists). Use the alternative-generator pattern — do not collapse to one recommendation
prematurely; let the user choose. Each shape must include at least one flagship piece
of content structured as Self / Us / Now (Marshall Ganz's organizing framework —
see references/authenticity-playbook.md): the leader's lived experience, the shared
community reality, and the specific time-bound ask. If the user cannot tell their Self
story, drop the founder-led shape and route to community-first, earned-media-first, or
search-capture-first instead.
Stop point. Output only sections ## 6 (Competitor Saturation Map) and ## 7
(Three Alternative Campaign Shapes), then end the turn with an explicit request:
"Pick one of the three shapes (or ask me to revise them) and I will produce the
First-30-Days plan, ad copy, lift-test, and anti-vanity dashboard." Do not
generate ## 8–## 11 until the user names a shape. If the user's initial brief
already pre-selected a shape (rare), confirm that selection in one sentence and
proceed to Stage 5b.
Contract
Begin only after the user has picked one of the three shapes from Stage 5. If no selection has been received, ask for it and stop. The four items below are produced against the one selected shape — not all three.
First-30-days action list — concrete weekly actions for weeks 1–4, mapped to the chosen shape. Each action has an owner (if multiple people), an effort estimate, and a clear success signal.
Capacity is a hard constraint. After drafting the week-by-week list, sum total weekly effort. If it exceeds the user's stated capacity (Stage 1 Q8, default 6h/week), cut the lowest-ROI actions until total effort fits inside the ceiling. Name the cuts explicitly: "I am cutting X and Y because the draft came to 14h/week and you said 6h/week. These are the actions to re-add if you can carve out more time later." Do not ship a plan the user cannot execute.
Earned-media actions must be specific or flagged. Every earned-media action in the list must include:
If the skill does not know specific targets in the user's niche (because the user did not name them and the skill cannot invent names — see Principles), assign target research as the week-1 action and set success criteria for the research itself (e.g., "produce a ranked list of 15 targets with RSS + contact channel by Friday").
Community-build is a multi-week sub-campaign, not a line item. If a Slack / Discord / WhatsApp / Circle community node is in the channel stack, it gets its own block in the first-30-days list, not one line at 1h/week:
Ad copy + boost rules — only if paid has a role in the chosen stack:
references/authenticity-playbook.md).references/channel-tier-stack.md).references/lift-test-templates.md)
before continued spend.Lift-test / measurement plan — mandatory, no exceptions. One concrete experiment
using the templates in references/lift-test-templates.md. Template selection:
Anti-vanity metric dashboard — the short list of metrics the user should track and the longer list of metrics they should explicitly ignore. Examples:
Produce the final deliverable in this exact order so the user can scan it and act:
# Insurgent Campaign Plan — <user / project name>
## 0. Assumptions (required under Mode C — default mode; omit under Mode A/B)
<table: field → assumed value, flagging every default applied from Stage 1 so the user can confirm or adjust inline at the end>
## 1. Campaign Ideas (5+ concepts across archetypes)
<concepts with thesis, archetype, primary tier, authenticity hook, MVP>
## 2. Selected Concept
<the one (or more) the user picked>
## 3. Spend Asymmetry Verdict
<mild / severe / categorical, one sentence explaining what it means>
## 3a. Message-Market-Fit Gate
<3-question score, verdict (confirmed / borderline / failed), and — if borderline or failed — the validation cycle the user must run before proceeding>
## 4. Channel Tier Stack
<prioritized channel list with weekly effort>
## 5. 70/30 (or 80/20) Allocation
<organic % / paid %, with rationale>
## 6. Competitor Saturation Map (Stage 5 output)
<per competitor: what they saturate, the absence that becomes your signal, one-sentence positioning line>
## 7. Three Alternative Campaign Shapes (Stage 5 output — end the turn here; await shape selection)
<three shapes with tradeoffs>
## 8. First-30-Days Action List (Stage 5b output — only after shape selection)
<week 1–4 concrete actions, scaled to stated capacity with cuts named>
## 9. Ad Copy + Boost Rules (Stage 5b output, if paid applies)
<creative direction + 24–48h gate + frequency cap + refusal note if categorical>
## 10. Lift-Test / Measurement Plan (Stage 5b output)
<one concrete experiment with threshold>
## 11. Anti-Vanity Metric Dashboard (Stage 5b output)
<track list / ignore list>Completeness — do not compress the final deliverable. This is the payload, not a summary of it; the user should never have to run follow-up rounds to pull out the full plan. Fill every applicable section in full prose, not headline fragments. For each recommendation include the why — the mechanism, the tradeoff, the diminishing-returns or authenticity logic behind it — not just the conclusion; the reasoning is what lets the user hold the discipline after the run ends. Concretely: each campaign concept carries its full thesis + archetype + primary tier + authenticity hook + MVP; the channel stack names weekly effort per channel; the action list spells out week-by-week actions with the cuts named; the lift test states hypothesis, control/test groups, duration, incremental metric, and decision threshold. Brevity in structure (scannable headings, tables) is the goal; brevity in content is a failure. If a section does not apply (e.g. no paid in the stack), state why in one line rather than dropping it silently.
One-page summary of the per-stage Contracts above. Use this when reviewing an output to check whether a declared failure-mode action was actually taken.
| Stage | Trigger | Required action |
|---|---|---|
| 1 | Always-capture field missing under Mode C | Ask in the question batch; do not default silently |
| 1 | Missing field changes Stage 3 / Stage 4 outcome | Escalate into the batch even if normally defaulted |
| 2 | Competitor unnamed in brief | Use [incumbent] / category descriptor; never invent |
| 2 | Cannot generate 5 distinct archetypes | Say so; present what you have; do not pad |
| 3 | Preconditions score 0–2 | Refuse full playbook; route to building preconditions |
| 3 | Asymmetry numbers absent | Ask heuristic questions; do not assume a level |
| 3a | MMF score 0–1/3 | Produce only Section 3a + refusal; STOP — do not generate Sections 4–11 |
| 3a | MMF score 2/3 | Insert validation cycle before Section 4 |
| 3a | User does not know a signal | Treat as a "no" |
| 4 | Categorical asymmetry + broad cold-paid request | Refuse; route to Tier 1/2 + counter-positioning |
| 4 | Sector = other | Flag rider mismatch; proceed with closest rider |
| 4 | Function ↔ sector-rider conflict | Surface both paths; do not collapse silently |
| 5 | End of stage without shape selection | Repeat the ask; STOP — do not produce Sections 8–11 |
| 5 | User cannot tell Self-story | Drop founder-led shape; route to community / earned-media / search |
| 5b | Entered without named shape | Ask for selection; do not produce any Section 8–11 |
| 5b | Drafted effort exceeds capacity | Cut lowest-ROI actions; name the cuts |
| 5b | Earned-media targets unknown | Flag week-1 research with method; do not invent outlets |
| 5b | Paid does not apply in stack | Omit Section 9; do not produce placeholder copy |
| 5b | Categorical asymmetry + paid in stack | Produce counter-positioning refusal in Section 9, not cold-paid creative |
references/campaign-archetypes.md — 15+ archetypes the ideation engine draws from.references/asymmetry-audit-table.md — decision table for classifying spend asymmetry.references/channel-tier-stack.md — Tier 1–4 channels with 2025–2026 benchmark data.references/authenticity-playbook.md — founder voice, kitchen-table framing,
counter-positioning, narrative coherence.references/lift-test-templates.md — six lift-test templates (geo-holdout, conversion-lift, synthetic-control, micro-lift, brand-keyword holdout, zero-budget UTM).references/sector-riders.md — six sector-specific overlays applied in Stage 4.references/hungarian-case-study.md — Tisza vs. Fidesz 2026 worked example.© bencium, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (references) in insurgent-campaign/skills/insurgent-campaign of bencium/bencium-marketplace.
Open the folder on GitHubat commit 5de46a3
Insurgent Campaign next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Insurgent Campaign this skillbencium/bencium-marketplace | 446 | — | ~12k | Automated safety check: Pass | MIT | |
| Founder Videopexoai/pexo-skills | 804 | — | ~1.4k | Automated safety check: Pass | MIT | |
| Marketing For Foundersnpc-live/clawfirm | 156 | — | ~911 | Automated safety check: Pass | None | |
| Marketing StrategistCoWork-OS/CoWork-OS | 480 | — | ~893 | Automated safety check: Pass | MIT | |
| Create Content Campaignopenvetta/open-vetta | 290 | — | ~628 | Automated safety check: Pass | Apache-2.0 | |
| Running MarketingGTM-Strategist/gtm-strategist-skills | 264 | — | ~7.8k | Automated safety check: Pass | MIT |
pexoai/pexo-skills
Make a founder video with Pexo — built for solo founders and small teams.
npc-live/clawfirm
Practical marketing advisor for technical founders building SaaS, apps, or startups from 0 to their first 10/100/1000 users.
CoWork-OS/CoWork-OS
Comprehensive marketing strategy across 25 disciplines — positioning, copywriting frameworks, buyer psychology, SEO, CRO, paid ads, funnel architecture, content strategy, growth loops, analytics…
openvetta/open-vetta
Plan and build a coherent multi-asset image/video content campaign from a brief, including concept candidates, authority assets, hero selection, derivative assets, shots, and delivery formats.
GTM-Strategist/gtm-strategist-skills
A skill your agent uses when the user wants to build an ongoing marketing engine, create a content strategy, set up social media publishing, plan influencer partnerships, or run email and paid ad…
LeoYeAI/openclaw-master-skills
Full-stack e-commerce marketing strategy builder. An agent skill from LeoYeAI/openclaw-master-skills.
bencium/bencium-marketplace
Reviews codebases, architectures, PRs, and technical plans for vanity engineering — code and systems built for the developer's ego, resume, or intellectual pleasure rather than delivering user or…
bencium/bencium-marketplace
A skill your agent uses when detecting ambiguous user intent, hedging language, open-ended framing, personal context before requests, or when unsure whether user wants exploration vs direct answer.
bencium/bencium-marketplace
Review user journeys, public content, and codebases for potentially relevant EU AI Act provisions, with exact official citations, evidence gaps, application dates, and plain-language next actions.
bencium/bencium-marketplace
Detect and remove AI-generated markers from Hungarian text, making it sound like a native Hungarian speaker wrote it.
bencium/bencium-marketplace
Professional typography rules for UI design, web applications, software interfaces, and all screen-based text.
bencium/bencium-marketplace
A decision-support framework that evaluates systems, architectures, and strategies through the entropy (decay) vs negentropy (growth) lens, while surfacing tacit knowledge gaps.
Categories
Grassroots-first campaign design for anyone being outspent — startups vs. Insurgent Campaign is an agent skill from bencium/bencium-marketplace. Grassroots-first campaign design for anyone being outspent — startups vs.
Insurgent Campaign fits situations like: marketing strategy; should I advertise; paid vs organic; low budget marketing.
Run `npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a claude-code`. Or copy the skill folder (insurgent-campaign/skills/insurgent-campaign in bencium/bencium-marketplace) into .claude/skills/insurgent-campaign in your project. Claude Code loads it when a task matches its description.
Run `npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a codex`. Or copy the skill folder (insurgent-campaign/skills/insurgent-campaign in bencium/bencium-marketplace) into .agents/skills/insurgent-campaign in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add bencium/bencium-marketplace --skill insurgent-campaign -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/insurgent-campaign, .gemini/skills/insurgent-campaign, .github/skills/insurgent-campaign and .opencode/skills/insurgent-campaign in your project.
SKILL.md names no scripts, command-line tools or credentials: Insurgent Campaign is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Insurgent Campaign is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 12k tokens (SKILL.md is roughly 49k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 20k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Insurgent Campaign: Founder Video (pexoai/pexo-skills, 804 stars), Marketing For Founders (npc-live/clawfirm, 156 stars), Marketing Strategist (CoWork-OS/CoWork-OS, 480 stars) and Create Content Campaign (openvetta/open-vetta, 290 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
bencium (a GitHub user) maintains it in bencium/bencium-marketplace, which has 446 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 4, 2026.
Source: bencium/bencium-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.