lionelndong
- 61 skills
- 0 followers
- last month last updated
- ▌ Update Topic Gaps · lionelndongCompare an existing article's section coverage to the current SERP (Semrush phrase_organic + Firecrawl page extraction) and to the related-term / question landscape (phrase_related + phrase_questions). Find topics ranking pages cover that the article doesn't, and propose new sections.
- ▌ Apexcharts · lionelndong bundleAI skill for building ApexCharts.js charts and data visualizations. Use when the user asks to create, configure, or troubleshoot any chart using ApexCharts (line, area, bar, pie, donut, radialBar, scatter, bubble, heatmap, candlestick, boxPlot, radar, polarArea, rangeBar, rangeArea, treemap). Covers correct data formats, lifecycle, formatters, tree-shaking, SSR, and framework integration. In React / Vue / Angular projects, prefer the framework wrapper packages (`react-apexcharts`, `vue3-apexcharts`, `ng-apexcharts`) over the core API.
- ▌ Format For Publish · lionelndong bundleConvert the cited draft into a Strapi-ready package — clean markdown body + Strapi-shaped JSON payload + a README with paste/publish instructions. Pushes directly to Strapi via API when STRAPI_API_TOKEN is set. With --auto-publish (or BLOG_AGENT_AUTO_PUBLISH=1), publishes the article live (publishedAt = now) instead of as draft.
- ▌ Geo Citation Audit · lionelndongMeasure pleasur.ai's AI-citation share across ChatGPT / Perplexity / Gemini / Google AI Overviews for the tracked query list, using SemRush (data API for AIO-presence screening + AI Toolkit via browser for share-of-voice / mention + citation gaps) and direct engine queries. Scores each query into the GEO ledger and surfaces the highest-leverage gaps to fix. The GEO Lead's core measurement loop.
- ▌ Generate Screenshot · lionelndong bundleFor each [SCREENSHOT placeholder] in the cited draft, generate a deep-link URL pointing to the brand's tool/report so the editor can capture the screenshot manually. URL placeholders only — no headless browser automation.
- ▌ Outline Adversarial · lionelndongSkeptical pushback on the outline before drafting starts. Asks whether the outline is MECE, BLUF, problem-agitate-solution; whether it covers the topic better than the SERP top-5; whether sections duplicate; whether each section earns its visual. One revision pass on FAIL (BLOG_AGENT_OUTLINE_REVISION_BUDGET, default 1).
- ▌ Visual Prompt Craft · lionelndong bundleCraft Higgsfield-grade, hyper-structured image-generation prompts for every blog visual. MANDATORY before any image generation call (generate-visuals, Replicate, GPT-Image, Nano Banana). A weak one-line prompt is a gate failure — every [VISUAL] placeholder gets a full structured prompt built with this skill first.
- ▌ Visuals Adversarial · lionelndongSkeptical pushback on visual placement — both density and quality. Reads the annotated outline plus the visuals manifest and asks (a) whether the article hits the density target from editorial-principles-visuals.md, (b) whether each [VISUAL:...] earns its place, (c) whether sections without one would benefit. One revision pass on FAIL (BLOG_AGENT_VISUALS_REVISION_BUDGET, default 1).
- ▌ Content Gap Analysis · lionelndongLayer 1b of the keyword research pipeline. Finds keyword opportunities by comparing the brand's blog against competitors AND by expanding seeds + modifiers via Semrush (phrase_fullsearch / phrase_related). Auto-discovers competitors via domain_organic_organic when none are provided, derives the keyword gap via domain_domains, tags every row with `gap_mode`, and outputs a candidate-keyword CSV ready for downstream BID/AIO vetting.
- ▌ Research Adversarial · lionelndongSkeptical pushback on the research dossier before it feeds the outline. Asks whether claims are cited, whether surprising findings are actually surprising, whether we missed the strongest competitor angle. One revision pass on FAIL (BLOG_AGENT_RESEARCH_REVISION_BUDGET, default 1).
- ▌ Seed Modifier Prompt · lionelndongLayer 1a of the keyword research pipeline. Generates seed keywords (broad niche terms) and modifiers (best, how-to, vs, calculator, etc.) from brand-config so the keyword multiplier has a real foundation to expand from. Replaces the "AI gives you generic keywords" problem with the structured 10-second hero prompt.
- ▌
- ▌ Cluster Planner · lionelndongLayer 6 of the keyword research pipeline. Organizes the vetted keyword queue into money clusters (from clusters.md), picks each cluster's keystone vs supporting articles, tracks coverage, and PROPOSES new clusters from high-business-value topics or live products not yet covered — so the blog strategy expands as the company grows. Emits cluster-tagged queue + cluster-map.md + cluster-proposals.md.
- ▌ Keyword Question Mining · lionelndongLayer 1d of the keyword research pipeline. Mines question-shaped keywords from Semrush phrase_questions (per surviving seed) plus People-Also-Ask strings from the SERP. Appends rows to keyword-ideas.csv with source=question_mining (or merges to source=both when the keyword already exists) and a question_subtype column. Cap of 100 rows per run.
- ▌ Update Product Mentions · lionelndongFind brand products that should be added to an existing article. Compares the article's current product mentions to the brand-config product list and proposes natural insertion points.
- ▌ Keyword Research Pipeline · lionelndong bundleMaster orchestrator for the keyword research pipeline. Chains topic-discovery → seed/modifier ideation → competitor + AI-search gap analysis → question mining → BID method → AIO cannibalization check → adversarial redteam → final ranked queue. Same anti-context-bloat pattern as /blog-pipeline (every layer is an Agent dispatch, never a Skill fork).
- ▌ Squeeze Max Traffic · lionelndongPost-draft pass that expands a drafted article to capture the FULL keyword family — keywords the page already or could rank for, plus the Ahrefs Content Gap (keywords competitors rank for but we don't) — by weaving the worthwhile ones in as natural added paragraphs/sections. NOT keyword stuffing. Triggered after /draft, before /quality-check.
- ▌ Contagious Why Things Catch On · lionelndong bundleKnowledge base from "Contagious: Why Things Catch On" by Jonah Berger. Use when applying Berger's STEPPS framework for word of mouth, virality, social currency, triggers, emotion, social proof, practical value, and storytelling, studying the book, or referencing its concepts.
- ▌ Linkbuild Competitor Mining · lionelndongOff-page playbook (Lesson 9, link building). Mines our competitors' backlink profiles via Ahrefs to produce a VETTED link-prospect list — their "superfans" (sites linking to several of a competitor's best-by-links pages), their "power-linkers" (sites linking to multiple competitors but NOT to us), and their fresh new links — filtered for relevance and de-duped against sites that already link to us. The Link Intersect method, encoded. Output is a prospect queue for /outreach; it does NOT send anything.
- ▌ Serp Research · lionelndongTurn accepted search evidence into an intent, competitor, and information-gain brief.
- ▌
- ▌ Keyword Vet Aio · lionelndong bundleEvaluate Google AI Overview presence and click-cannibalization risk for BID-passing Pleasur.ai Stage 01 keyword candidates using current Ahrefs evidence. Use after BID validation and before prioritization, in either presence-only or human-approved deep-completeness mode.
- ▌ Keyword Vet Bid · lionelndong bundleValidate Pleasur.ai Stage 01 blog-keyword candidates with the Business potential, Intent, and Difficulty method using current Ahrefs evidence. Use before AIO vetting and prioritization to reject poor business fits, mismatched search intent, and SERPs the brand cannot realistically win.
- ▌ Draft And Rewrite · lionelndongWrite a useful, author-consistent article and substantively improve it before verification.
- ▌ Candidate Selection · lionelndongSelect one publishable SEO opportunity from verified Ahrefs evidence.
- ▌ Keyword Prioritization · lionelndong bundleDeterministically score, route, rank, and select at most one fully vetted Pleasur.ai Stage 01 blog-keyword candidate using product-fit-dominant business value, traffic opportunity, brand fit, DR-relative winnability, and a free-seeker penalty. Use only after BID and AIO evaluation are complete.
- ▌ Product And Author Truth · lionelndongBind content to live product proof and an accountable author voice.
- ▌ Adversarial Quality Gate · lionelndongDecide whether an article deserves publication through hard checks and skeptical comparison.
- ▌ Portfolio And Measurement · lionelndongImprove existing content and close the learning loop without cannibalizing new-content work.
- ▌ Claims Links Product Proof · lionelndongVerify the article’s factual, product, citation, and link integrity before visual production.
- ▌ Preview Publish Live Audit · lionelndongProduce a clean publishing payload, validate it, publish once when authorized, and verify the rendered result.
- ▌ Outline And Article Promise · lionelndongProduce an answer-first outline that makes the research decision executable.
- ▌ Draft · lionelndong bundleExpand an annotated outline into full article prose using brand voice anchored in example articles, hitting the outline's per-section depth targets. Triggered after /product-mentions.
- ▌ Outline · lionelndong bundleCreate a structured H2/H3 outline with BLUF openers and MECE coverage, bound by the research dossier's beat spec. Triggered after /research and /brand-reference.
- ▌ Preview · lionelndong bundleRender the cited draft as an HTML preview styled like the brand's blog so the writer can review the article in browser before publishing.
- ▌ Check Pr · lionelndong bundleChecks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions. Waits for pending checks to complete, categorizes issues as actionable or informational, and optionally fixes and resolves them. Use when the user wants to check a PR/MR/CL, address review feedback, or prepare a change for submission.
- ▌ Greploop · lionelndong bundleIteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments. Triggers Greptile review, fixes all actionable comments, pushes/re-shelves, re-triggers review, and repeats. Use when the user wants to fully optimize a PR/MR/CL against Greptile's code review standards.
- ▌ Research · lionelndong bundleGather keyword metrics, related terms, questions, full SERP benchmark, top-page extractions, and deep web research for a target keyword, then emit a beat spec the outline must satisfy. Triggered by /research <keyword> or as the first content stage of /blog-pipeline.
- ▌ Skill Eval · lionelndongTest a pipeline stage's skill file by running the stage WITH and WITHOUT the skill on the same input, comparing outputs, and proposing skill edits. Ryan Law principle 3 — recursive self-improvement. Run after any board complaint about a stage, and monthly per core stage.
- ▌ Draft Score · lionelndongLightweight ContentShake AI self-check the /draft stage can call before saving. Returns just SEO + Quality scores (no full optimization) so the writer knows whether the draft is in winning territory before /quality-check runs. Fails soft when SEMRUSH_API_KEY is unset.
- ▌ Update Draft · lionelndongConsolidate all update audits (claims, product-mentions, topic-gaps) into a single revised article. Preserves the original voice; applies only the audited changes.
- ▌ Blog Pipeline · lionelndongRoute one Paperclip child stage of the PLE new-content routine, producing hash-verifiable evidence and a fail-closed handoff.
- ▌ Quality Check · lionelndong bundleBenchmark-relative quality gate. Scores the draft against the research dossier's beat spec (depth, consensus coverage, evidence) plus AI-tell and voice signals, runs an adversarial read armed with the SERP benchmark, and emits the verdict that gates the pipeline.
- ▌ Update Claims · lionelndongFind outdated stats and assertions in an extracted article. For each, check freshness and propose a replacement with a current source.
- ▌ Verify Claims · lionelndongFind sources for every numerical claim in the draft, add inline hyperlinks, and add internal links to brand-reference articles. Triggered after /draft.
- ▌ Auto Blog Loop · lionelndong bundleAutonomous run-loop for the blog pipeline. Picks the top unwritten keyword from the vetted queue, dispatches /blog-pipeline in autonomous mode, auto-publishes on success, quarantines persistent failures, and refreshes the keyword queue when empty. Cron-friendly. No human in the loop.
- ▌ Oversubscribed · lionelndong bundleKnowledge base from "Oversubscribed: How to Get People Lining Up to Do Business with You" by Daniel Priestley. Use when applying Priestley's frameworks for demand generation, the Campaign Driven Enterprise (CDE) method, signalling, the 7-Hour Rule, products-for-prospects, becoming oversubscribed, or building a Key Person of Influence brand — or when studying or referencing the book.
- ▌ Update Preview · lionelndong bundleRender a side-by-side HTML diff of the original article vs the updated draft so the editor can review every change in browser.
- ▌ Brand Reference · lionelndong bundleFind existing articles on the brand's own blog covering the target keyword or related topics. Extract reusable modules, internal-linking opportunities, and product use cases to anchor the new article in the brand's existing voice.
- ▌ Capture Visuals · lionelndongWalk through the manual-capture.md checklist for a slug, driving Chrome via the Claude in Chrome MCP to capture each visual that needs more than a static URL — multi-step flows, conversation states, settings panels, age gates on third-party sites. Runs equally well locally (your desktop Chrome) or on a VPS with always-on Chrome + the extension installed. Defaults to unattended mode when `BLOG_AGENT_AUTONOMOUS=1` (which forces `UNATTENDED=1`). Use after /generate-visuals has flagged action-shot or failed-screenshot entries.
- ▌ Extract Content · lionelndongFetch a published article from a URL and extract its title, headings, body content, and metadata into a markdown file the update pipeline can audit.
- ▌ Keyword Aio Gap · lionelndongLayer 1c of the keyword research pipeline — SKIPPED on the current Semrush MCP (it exposes no AI-visibility / AI-toolkit reports, so there is no multi-engine citation-gap source). Retained as a logged no-op pass-through; never fabricate aio_gap rows. Revisit only if Semrush ships AI-toolkit reports on MCP.
- ▌ Keyword Redteam · lionelndongLayer 4 of the keyword research pipeline. Spawns a "skeptical SEO" adversarial sub-agent to argue against every survivor of Layers 1-3. Catches mechanical-classifier blind spots — wrong SERP intent, hidden link-graph gauntlets, AIO trajectory shifts, vanity-rank metrics. Same pattern as quality-check's adversarial draft read, applied to keyword selection.
- ▌ Topic Discovery · lionelndongLayer 0 of the keyword research pipeline. Builds a topic-graph snapshot for the brand's category before any seed work, approximated from Semrush phrase_related + phrase_questions on the category seeds plus the brand's own ranking footprint (domain_organic_unique). Idempotent on brand-config hash; never blocks the pipeline; cheap.
- ▌ Update Guidance · lionelndongSet update priorities for an article before running detailed audits. Reviews extracted content and proposes which update audits to focus on (claims-stale, product-features-missing, topic-gaps).
- ▌ Update Pipeline · lionelndongMaster orchestrator for the content update pipeline. Takes a published URL and produces an updated draft with side-by-side diff for editor review.
- ▌ Outreach · lionelndongOff-page playbook (Lesson 10, outreach). Turns a vetted link-prospect list into them-focused outreach drafts that earn links without spamming. Picks the RIGHT people (those who LINKED to or MENTIONED our topic — never "people who tweeted it"), gives each a real "excuse" (fresh-angle / new-proof / ego-bait), keeps to ≤1 follow-up, and never makes a pushy link ask. Drafts only — every outward send is operator-gated. Outreach is a tool, not a strategy.
- ▌ Relaunch · lionelndongExecute a relaunch on a decayed-but-valuable article (Lesson 5 audit + Lesson 8 "don't abandon old winners"). Take a page the audit flagged as decaying or rank-slipping, refresh it against the LIVE SERP (freshen data, re-verify searcher intent, squeeze new keywords, refresh visuals), bump its published date, and re-promote it as if brand new. The "update ~half the calendar" half of the strategy. Triggered from the audit's Relaunch plan.
- ▌ Generate Visuals · lionelndong bundleRealize every typed [VISUAL:...] placeholder in the cited draft into an actual asset — Playwright screenshots of brand UI, Replicate-generated images (GPT Image 2 default, Nano Banana backup), matplotlib charts. Manual-capture flag for video/external/gif/adult-image. Updates the draft to reference local image paths.
- ▌ Optimize Content · lionelndong bundleOptimize the cited draft against Semrush ContentShake AI scores. Calls .claude/skills/optimize-content/scripts/contentshake_optimize.py for SEO + Quality scoring + recommendations, then judgment-rewrites the additions in brand voice. Iterates until both scores ≥ 8 or voice drift triggers a rollback. No Chrome MCP, no TipTap injection — pure API.
- ▌ Product Mentions · lionelndongAnnotate the outline with where to mention specific brand products. Designed-in at outline time so product callouts feel natural in the draft, not bolted on.