Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
0def090
feat: integrate marketing skills — copywriting, psychology, pricing, …
Mar 30, 2026
2ce5139
fix: correct hooks reference, update README description, remove dead …
Mar 30, 2026
40ad868
fix: correct headlines→hooks link, remove duplicate copywriting entry…
Mar 30, 2026
cb0195b
fix: correct skill-integration headlines→hooks ref, fix copy_framewor…
Mar 30, 2026
986a092
fix: address all review comments on PR #51\n\n- Revert 'headlines' sk…
Mar 30, 2026
db320d4
feat: add impeccable v2 command suite (21 commands)
Mar 31, 2026
53349dd
fix: remove broken README links and stale dev artifact (#54)
Mar 31, 2026
df4f93e
fix: update command count to 21 and strip trailing space in paid-ads …
claude Mar 31, 2026
0bfbd4f
fix: update stale command counts to 21, remove broken seo-audit refer…
claude Mar 31, 2026
9cfaf97
fix: correct broken relative paths in arrange and typeset commands (#54)
claude Apr 1, 2026
421a4da
fix: remove 15-commit circuit breaker from fix-bloom-prs\n\nPRs with …
claude Apr 1, 2026
eb1674f
fix: remove duplicate README entries, normalize link style (#55)
claude Apr 1, 2026
44ae4b7
fix: restore missing README entries, fix broken reference paths (#54)
claude Apr 1, 2026
7480343
ralph-mode: add self-loop protocol for OpenClaw\n\nOpenClaw lacks pos…
claude Apr 6, 2026
96adfb3
chore: sync claude-code-review.yml from main
exiao Apr 7, 2026
fba551e
Merge branch 'main' into ralph-self-loop
exiao Apr 7, 2026
984764f
fix: address claude-review findings
claude Apr 7, 2026
a4c7834
Merge fix/remove-commit-count-limit into recovery branch (theirs wins)
claude Apr 10, 2026
9be64e7
Merge branch 'feat/impeccable-v2-update' into recover/unmerged-branch…
claude Apr 10, 2026
2ca36bb
Merge branch 'ralph-self-loop' into recover/unmerged-branch-work
claude Apr 10, 2026
d3cb041
fix: use OpenClaw skills path in Impeccable install instructions
Apr 11, 2026
748093d
fix: add 31 missing skill directories to README catalog
Apr 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/claude-code-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:

- name: Run Claude Code Review
id: claude-review
uses: anthropics/claude-code-action@v1.0.88
uses: anthropics/claude-code-action@v1
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
use_sticky_comment: true
Expand Down
169 changes: 70 additions & 99 deletions README.md

Large diffs are not rendered by default.

55 changes: 52 additions & 3 deletions content-strategy/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ Source: @thebranding.ai breakdown of multiple creators going viral with the same
3. Deliver value through speech while the visual activity anchors attention
4. Close with soft CTA or open loop

**Example application:** Film hands writing stock tickers on a notepad, scrolling through [Your App], or organizing investment notes while delivering investing insights via voiceover.
**Bloom application:** Film hands writing stock tickers on a notepad, scrolling through the Bloom app, or organizing investment notes while delivering investing insights via voiceover.

| Audience Temp | Best Formats |
|--------------|-------------|
Expand Down Expand Up @@ -272,7 +272,7 @@ This is a full account pillar — not a one-off format. Run it every week.

Place labels at the moment you identify the tactic, not before. Let the source video play 2-3 seconds first, then drop the label as your "aha" moment. Use bold white or colored text, large enough to read on mobile, centered or near the source video panel.

**Example (investing niche):**
**Bloom-specific example:**
- Source: viral TikTok of someone showing their Robinhood portfolio down 40% (2M+ views)
- Labels you'd drop: "LOSS AVERSION" (the emotional hook), "ROUND NUMBER" (they lost exactly $10K, not $9,847), "SCREENSHOT FORMAT" (looks organic, not produced), "NO CTA" (the virality IS the content, no ask)
- Your commentary: explain each label as an investing psychology + content strategy concept simultaneously. Double value for the viewer.
Expand Down Expand Up @@ -462,7 +462,56 @@ The hierarchy: **Posting > Targeting > Platform choice > Repurposing > Scripting

---

> **Load on-demand:** `references/channel-playbook.md` for channel tier list, quiz funnel strategy, and SEO timing.
## Channel Tier List (Bloom / B2C)

What actually works for consumer apps vs. what sounds good but doesn't.

**High-signal channels:**
- TikTok / Instagram Reels — primary B2C organic discovery; recreate before recruiting creators
- Influencer/creator marketing — TikTok/YouTube/Instagram. Lovable ($400M ARR) spends 10x more on influencer marketing than paid social and considers it their key growth driver. Validate formats with your own account first, then hand proven formats to creators. This should be the primary paid channel, not Meta ads.
- Free credits / freemium as marketing — treat free tier as a marketing channel, not a cost center. "Our free giveaways are bigger than paid marketing spend." (Lovable CEO, 20VC March 2026)
- Free SEO tools — high-value lead magnets, easier to rank than blog posts, builds backlinks
- Email marketing — works if sequences are built correctly (see growth skill); people do read emails

**Questionable-signal channels (test carefully):**
- Meta/Facebook ads — Lovable's CEO at $400M ARR: "Meta ads have little incrementality; pass through views which don't materialize into anything. I haven't seen them work in a while." (Lenny's Podcast, Dec 2025). If running Meta ads, watch incrementality closely: are installs you're paying for ones that would have happened organically? Compare install lift when ads are paused vs. running.

**Low-signal channels (avoid or deprioritize):**
- Newsletter sponsorships — expensive and most clicks are bots
- Twitter ads — worst targeting in the industry; not worth the spend
- Google ads — more expensive than Facebook for consumer apps, higher irrelevant clicks
- Referral programs — very hard to make work; only viable with stable conversion and large customer base
- Reddit audience building — ban risk is high; answering long-tail questions can work, but building an audience there doesn't
- Beta directories (BetaList, etc.) — mostly dead; not worth the setup

**Alternative funnel: Quiz-based landing pages**

Instead of Ad → App Store → Install, run Ad → Web Quiz → Personalized Results → App Store. A quiz between the ad and the offer warms cold traffic through micro-commitments. DTC benchmark: cold traffic conversion jumped from 1.2% to 4.7% with a quiz funnel (@DTC_Quizbuilder, $2M in 90 days).

Why it works for apps:
- Each question answered is a small "yes" that compounds (sunk cost)
- Questions seed beliefs and pre-handle objections before the user sees pricing
- Non-completers give you zero-party data for segmented retargeting (someone who answered "I struggle with timing the market" gets a different retargeting ad than someone who answered "I don't know what to invest in")
- The loading/results screen is captive attention: 10-15s where you show testimonials, social proof, and app previews while "calculating their results"

Quiz sequencing that converts:
1. Q1-Q2: Low-friction demographics (age, experience level). Zero cognitive load, starts the yes-chain.
2. Q3-Q4: Aspirational goals ("What's your investing goal?"). Emotional questions hit harder after they've committed.
3. Q5-Q6: Pain points and struggles. Now they've told you their problems.
4. Breather slide with social proof after Q4.
5. Results page → personalized app recommendation → App Store link.

Drop-off benchmarks: Q1 = 30-40% drop-off (normal, biggest filter). Remaining questions: under 15% each. Overall completion: aim for 25%+. If any single question has 10%+ drop-off, simplify it (fewer options, add "None of the above").

Retargeting play: Everyone who takes the quiz but doesn't install gave you data. Segment retargeting by their answers: "tried other investing apps" → ad about why Bloom's AI is different. "Low confidence in stock picks" → ad about AI-powered research. Specific beats generic.

Bloom application: The onboarding flow already asks risk tolerance and goals post-install. A pre-install web quiz version of this would warm traffic before the App Store page, and the data feeds retargeting even if they never install.

Source: @DTC_Quizbuilder thread (https://x.com/DTC_Quizbuilder/status/2010379560769015885)

**SEO timing:**
- Don't prioritize SEO before your first customers — takes months to kick in, and if you pivot the product, the work goes to zero
- When you do SEO: free tools first (easier to rank, more shareable, generate backlinks naturally), then long-tail blog posts with purchase intent, then programmatic data-driven pages

---

Expand Down
4 changes: 1 addition & 3 deletions copywriting/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
---
name: copywriting
description: "Write or improve marketing copy for any surface: pages, ads, app stores, landing pages, Google Ads, TikTok/Meta scripts, push notifications, email campaigns, UGC. Use when the user needs ad copy, ad headlines, conversion-focused text, A/B test variants, landing page text, or page copy. Combines page copy frameworks with direct response principles."
metadata:
version: 1.0.0
description: "Write or improve marketing copy for any surface: pages, ads, app stores, landing pages, TikTok/Meta scripts, push notifications, UGC. Combines page copy frameworks with direct response principles."
---

# Copywriting
Expand Down
2 changes: 1 addition & 1 deletion copywriting/references/7-ugc-script-templates.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Script structures for AI-generated UGC testimonials.

## AI UGC Production Stack

Before scripting, build the production infrastructure. For the full UGC campaign setup (creator sourcing, content rewards, distribution), see the `whop-content-rewards` skill. Summary:
Before scripting, build the production infrastructure. Summary:

**1. Find a reference ad first**
- Use [Meta Ad Library](https://facebook.com/ads/library) or [GetHooked.ai](https://gethooked.ai) — find ads in your category running 30+ days (run duration = proof of return)
Expand Down
2 changes: 0 additions & 2 deletions copywriting/references/natural-transitions.md
Original file line number Diff line number Diff line change
Expand Up @@ -268,5 +268,3 @@ These phrases are overused in AI-generated content:
- "When it comes to the realm of..."
- "This begs the question..."
- "Let's delve into..."

Refer to the seo-research skill for AI writing detection patterns.
3 changes: 1 addition & 2 deletions copywriting/references/references.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

| File | Contents |
|------|----------|
| `references/copy-frameworks.md` | Headline formulas, page section types, and structural templates for page copy |
| `references/copy-frameworks.md` | 14 proven copywriting frameworks (PAS, AIDA, BAB, FAB, ACCA, STAR, etc.) with detailed structures, selection matrix by platform/goal, and when-to-use guidance |
| `references/writing-styles.md` | Voice and tone rules from Ogilvy, Schwartz, Hopkins, Halbert, Sugarman, Caples, Collier. Contains banned phrases list, AI tell patterns, and how human copy sounds. |
| `references/direct-response-frameworks.md` | Extended direct response formulas, long-form copy structures, and classic frameworks (PAS, AIDA, BAB, FAB, ACCA, STAR, etc.) |
| `references/lead-magnet-patterns.md` | Lead magnet post structures, value framing techniques, CTA patterns for social giveaway posts |
60 changes: 60 additions & 0 deletions evaluate-content/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -473,6 +473,66 @@ Use these for faster reviews when a full seven-sweep process isn't needed.
| Seamless | Smooth |
| Cutting-edge | New/Modern |

### Plain English Alternatives

Replace complex or pompous words with simpler ones. Source: Plain English Campaign, plainlanguage.gov.

| Complex | Plain |
|---------|-------|
| absence of | no, none |
| accomplish | do, finish |
| additional | extra, more |
| advise | tell, say |
| allocate | give, share |
| anticipate | expect |
| approximately | about |
| ascertain | find out |
| assistance | help |
| at the present time | now |
| cease | stop, end |
| commence | start, begin |
| communicate | tell, talk |
| consequently | so |
| currently | now |
| demonstrate | show, prove |
| determine | decide |
| discontinue | stop |
| disseminate | spread |
| due to the fact that | because |
| endeavour | try |
| establish | set up, show |
| expedite | speed up |
| facilitate | help |
| for the purpose of | to, for |
| furthermore | also, and |
| implement | carry out, do |
| in accordance with | under |
| in conjunction with | with |
| in order to | to |
| in the event of | if |
| indicate | show, suggest |
| initiate | start, begin |
| moreover | also, and |
| notify | tell |
| obtain | get |
| on behalf of | for |
| owing to | because |
| permit | let, allow |
| prior to | before |
| procure | get |
| provide | give |
| purchase | buy |
| regarding | about |
| reimburse | repay |
| require | need |
| retain | keep |
| subsequently | later |
| sufficient | enough |
| terminate | end, stop |
| utilise | use |

**Phrases to remove entirely:** "a total of," "absolutely," "actually," "at the end of the day," "at this moment in time," "basically," "I am of the opinion that" (use "I think"), "in the final analysis," "it should be understood," "last but not least," "obviously," "of course," "quite," "really," "the fact of the matter is," "to all intents and purposes," "very."

**Watch for:**
- Adverbs (usually unnecessary)
- Passive voice (switch to active)
Expand Down
3 changes: 0 additions & 3 deletions fix-bloom-prs/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,6 @@ The #1 failure mode is pushing speculative fixes that trigger new CI runs, new r

## Circuit Breakers

> **Note:** `$REPO` below refers to the repo slug from preflight output (e.g. `bloom-invest/bloom`). It is set explicitly in the Triage step.


**Repeat fix detection:** Before fixing, check if the last commit on the PR was from a previous cron run (author = "claude" or commit message matches cron fix patterns). If the cron already pushed a fix and the issue persists, the fix didn't work. Comment explaining what you tried and what's still broken. Do not retry the same approach.

**CI-only failures:** If the only issue is a CI failure that looks infrastructure-related (timeout, runner error, network issue, flaky test), re-request the check run instead of pushing code. Use: `gh api repos/$REPO/actions/runs/{run_id}/rerun-failed-jobs -X POST`
Expand Down
4 changes: 2 additions & 2 deletions impeccable/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: impeccable
description: Run impeccable design quality commands on frontend code — audit, critique, polish, animate, normalize, and more. Built on top of the frontend-design skill with 21 steering commands and 10 domain-specific reference files. Use when doing a design QA pass, reviewing UI quality, or refining a frontend component before shipping.
description: Run impeccable design quality commands on frontend code — audit, critique, polish, animate, normalize, and more. Built on top of the frontend-design skill with 21 steering commands and 7 domain-specific reference files. Use when doing a design QA pass, reviewing UI quality, or refining a frontend component before shipping.
---

> **Source:** External skill (frontend-design ecosystem) — local copy, do not modify without checking upstream.
Expand All @@ -10,7 +10,7 @@ description: Run impeccable design quality commands on frontend code — audit,
Design quality layer for Claude Code. 21 commands that audit, review, polish, and refine frontend interfaces. Complements the `frontend-design` skill (vision/direction) with systematic QA passes.

**Source:** https://github.com/pbakaus/impeccable
**Installed at:** `~/clawd/skills/` (frontend-design + 21 individual command skills)
**Installed at:** `~/clawd/skills/` (frontend-design + 7 individual command skills)

## When to Use

Expand Down
4 changes: 3 additions & 1 deletion impeccable/commands/teach-impeccable/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@ Synthesize your findings and the user's answers into a `## Design Context` secti
[3-5 principles derived from the conversation that should guide all design decisions]
```

Write this section to `.impeccable.md` in the project root. If the file already exists, update the Design Context section in place. Then STOP and call the AskUserQuestion tool to clarify whether they'd also like the Design Context appended to CLAUDE.md. If yes, append or update the section there as well.
Write this section to `.impeccable.md` in the project root. If the file already exists, update the Design Context section in place.

Then STOP and call the AskUserQuestion tool to clarify. whether they'd also like the Design Context appended to CLAUDE.md. If yes, append or update the section there as well.

Confirm completion and summarize the key design principles that will now guide all future work.
10 changes: 0 additions & 10 deletions marketing-psychology/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,16 +157,6 @@ Study failed campaigns, not just successful ones. The viral hit you're copying h
| Decision paralysis | Paradox of Choice, Default Effect, Nudge Theory |
| Onboarding | Goal-Gradient, IKEA Effect, Commitment & Consistency |

## Model Definitions

Brief descriptions for models referenced above without dedicated sections:

- **Hick's Law**: More choices = longer decision time. Reduce options to speed up conversions.
- **Activation Energy**: The effort required to start an action. Lower activation energy (fewer clicks, pre-filled forms) to increase uptake.
- **Default Effect**: People stick with pre-selected defaults. Set smart defaults that serve both user and business goals.
- **Nudge Theory**: Small environmental changes guide behavior without restricting choices. Surface the desired action where attention already is.
- **Local vs Global Optima**: Optimizing one part of the funnel can hurt overall performance. Evaluate changes against the full-funnel metric, not just the step being changed.

---

## Related Skills
Expand Down
2 changes: 1 addition & 1 deletion meta-ads/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Daily 4am routine: audit running ads via Meta Marketing API, kill underperformer
## API Credentials

```bash
TOKEN="$META_ACCESS_TOKEN" # Meta Marketing API token
TOKEN=$META_ACCESS_TOKEN # Meta Marketing API token
ACCOUNT="$BLOOM_AD_ACCOUNT_ID" # Bloom ad account (act_...)
API="https://graph.facebook.com/v22.0"
PAGE_ID="$BLOOM_PAGE_ID" # Facebook Page ID
Expand Down
2 changes: 1 addition & 1 deletion paid-ads/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ Account
### Naming Convention
```
[Platform]_[Objective]_[Audience]_[Offer]_[Date]
META_Conv_Lookalike-Customers_FreeTrial_YYYY_Q1
META_Conv_Lookalike-Customers_FreeTrial_2024Q1
```

### Budget Allocation
Expand Down
3 changes: 2 additions & 1 deletion product-marketing-context/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,7 @@ Show the completed document, ask for adjustments, save to `.agents/product-marke

## Related Skills

- **competitive-analysis**: For deeper competitive research and battlecards
- **competitive-analysis**: For deeper competitive research
- **brand-identity**: For visual and verbal brand identity
- **positioning-angles**: For positioning framework development
- **copywriting**: For writing copy using this context
62 changes: 57 additions & 5 deletions ralph-mode/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,12 +152,64 @@ sessions_spawn({

The plugin must be installed in the target project first.

## Philosophy
## Self-Loop Protocol (OpenClaw)

1. **Iteration > Perfection**: Don't aim for perfect on first try. Let the loop refine.
2. **Failures Are Data**: "Deterministically bad" means failures are predictable. Use them to tune prompts.
3. **Operator Skill Matters**: Success depends on writing good prompts, not just having a good model.
4. **Persistence Wins**: Keep trying until success.
OpenClaw doesn't have post-completion hooks like Claude Code. Instead, the loop lives in the agent's behavior. When Ralph Mode is active, follow this protocol at the end of every turn:

### After completing any work:

1. **Re-read** `IMPLEMENTATION_PLAN.md`
2. **Count** remaining incomplete tasks
3. **If tasks remain AND iteration < max:**
- Pick the next highest-priority incomplete task
- Implement it (one task only)
- Run backpressure gates
- Update the plan
- Commit
- Go to step 1
4. **If all tasks complete OR max iterations reached:**
- Run final validation (all gates)
- Emit the completion signal: `█RALPH_COMPLETE█`
- Stop

### Completion signal

The literal string `█RALPH_COMPLETE█` signals the loop is done. Do not emit it until:
- Every task in `IMPLEMENTATION_PLAN.md` is marked done
- All backpressure gates pass
- No known blocking issues remain

If you hit max iterations (default: 10) without completing, emit `█RALPH_TIMEOUT█` instead and list remaining tasks.

### Why this works

The agent continues working within a single turn, using tool calls to implement, test, and commit in sequence. Each "iteration" is a tool-call cycle within the same turn, not a separate session. Context stays fresh because each task is small. If context gets heavy, the agent spawns a sub-agent for the next batch.

### For sub-agent mode (fresh context per iteration)

When the task is large enough to exhaust context:

```
sessions_spawn({
runtime: "subagent",
task: "Read IMPLEMENTATION_PLAN.md at [path]. Pick the next incomplete task. Implement it. Run [gates]. Update the plan. Commit. If more tasks remain, say CONTINUE. If all done, say █RALPH_COMPLETE█.",
cwd: "[repo]",
runTimeoutSeconds: 1800
})
```

The parent checks the sub-agent's output. If it says CONTINUE, spawn another. If `█RALPH_COMPLETE█`, stop.

## Key Rules

- **One task per iteration** — keeps context fresh, avoids drift
- **Plans are disposable** — regenerate cheaply vs. salvage stale ones
- **Lean prompts** — target ~40–60% context utilization ("smart zone")
- **Spawn sub-agents for exploration** — protect main context
- **Self-loop by default** — don't wait for the user between iterations
- **█RALPH_COMPLETE█ is the only exit** — no "seems done", no early stops

---

## References

Expand Down
2 changes: 0 additions & 2 deletions referral-program/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ Expert in viral growth and referral marketing. Design and optimize programs that

## Before Starting

Read `.agents/product-marketing-context.md` for product context.

Gather this context (ask if not provided):

1. **Program Type**: Customer referral, affiliate, or both? B2B or B2C?
Expand Down
1 change: 1 addition & 0 deletions seo-research/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -319,6 +319,7 @@ For full audit checklist, read `references/seo-technical.md`. Critical items:
| `references/eeat-framework.md` | Detailed E-E-A-T criteria |
| `references/quality-gates.md` | Content quality thresholds |
| `references/cwv-thresholds.md` | Core Web Vitals thresholds |
| `references/site-architecture.md` | Site architecture: page hierarchy, URL patterns, navigation, internal linking |
| `references/keyword-seeds.md` | Bloom keyword seed list |

---
Expand Down
Loading
Loading