Overview

Ruben Hassid, creator of the "How to AI" newsletter with over 700,000 readers, published a full playbook for using Claude to generate LinkedIn content trained on your own post history. The core idea is simple: extract your posts from LinkedIn using a third-party scraping tool, feed that data to Claude, generate an analytics report identifying what actually works, and then create a reusable Claude skill that can write new posts in your proven style without starting from scratch every time.

The workflow runs through four stages. First, Apify is used to legally extract up to 1,000 LinkedIn posts as a downloadable spreadsheet. Second, that spreadsheet is uploaded to Claude Cowork with a detailed analytics prompt that computes engagement stats, classifies post formats from media column data, identifies outliers, and produces a written report plus a standard operating procedure for future posts. Third, the /skill-creator command converts that report into a persistent reusable Claude skill invoked by a custom slash command. Fourth, an optional additional skill captures the "recipe" of a single ultra-viral post so that format can be reproduced for new topics.

Hassid is candid about the limitations. AI is good at pattern matching across large datasets and following instructions precisely -- it is not creative. The value is in processing 400 or more posts efficiently and surfacing patterns that a human would take much longer to identify. The feedback loop is what matters: better posts train better skills, which produce better posts. This is a system for people who already post consistently, not a shortcut around needing good content in the first place.

The newsletter uses Alex Hormozi's LinkedIn post history as the worked demonstration example throughout, showing how each step applies to a real account with real engagement data. The total setup cost is minimal -- under $5 using Apify's free credits -- and the ongoing cost is Claude Pro at roughly $100 per month for heavy users.

Why This Matters

Most content creators make the same posts repeatedly without ever systematically studying which ones worked and why. The instinct is to post more, not to analyze what is already there. Hassid's system inverts that -- it treats past posts as a dataset and runs it through a model capable of reading hundreds of entries at once, segmenting by format, computing outlier thresholds, and reading the actual visual content of winning posts. That is something a human would not do consistently, even if they had the time.

The deeper value is that the skill, once created, becomes a trained interface specific to one person's voice, angles, and audience. Instead of asking Claude "write me a LinkedIn post," you invoke a skill that already knows your top formats, your hook patterns, your engagement baseline, and your visual style. The prompt engineering work is done once and reused indefinitely. That is a meaningful shift from treating AI as a generic writing tool to treating it as a trained operator of your specific content system.

For anyone building a personal brand through LinkedIn while also doing substantive consulting or technical work, this is directly applicable. The time cost of writing one good post per week is mostly in the blank-page problem. A well-built skill eliminates that constraint by giving you structured options generated from your own best work rather than from generic training data. The feedback loop -- better posts improve the skill, which produces better posts -- compounds over time in a way that generic AI prompting does not.

Key Points

  • LinkedIn posts are publicly indexed on the web, which means third-party tools like Apify can legally extract them without any automation of your own LinkedIn account -- keeping your account safe while making your post history usable as a dataset.
  • Apify's LinkedIn profile posts scraper costs approximately $1 per 500 posts, and new accounts receive $5 in free credits, meaning most users can extract their full post history at no cost.
  • The Apify export format has a quirk worth noting: the "type" column says "post" for every row. Actual post format -- text, image, carousel, video, article -- must be derived from which media columns are populated in the spreadsheet.
  • The analytics prompt Hassid provides is designed as a "decision-ready report," not a summary. It computes engagement per post as likes plus comments plus shares, derives timestamps from activity IDs, and reads actual image and carousel content before drawing conclusions about visual performance.
  • Claude Cowork runs the full analytics job over 8 to 10 minutes, spawning agent-like sub-tasks to process the entire spreadsheet. The output is two documents: a written analytics report and a standard operating procedure for writing future posts.
  • The /skill-creator command converts the report and SOP into a persistent Claude skill. Once saved, the skill is invoked by a custom slash command in any new Claude tab and asks clarifying questions before generating post options.
  • A separate "ultra-viral recipe" skill can be built from a screenshot of a single high-performing post. This skill captures format, hook structure, caption style, line cadence, and tone of voice -- and can apply that recipe to any new topic for any creator.
  • Hassid explicitly warns against over-relying on a single viral format. Repeating a recipe too often diminishes returns, the same way eating the same meal every day loses its appeal. Novelty remains a driver of virality that AI cannot manufacture.
  • The system requires a baseline of at least 30 posts to function, and produces better results with 400 or more. It is not useful for accounts with thin post histories or consistently low-quality content.
  • The total ongoing cost is Claude Pro at roughly $100 per month for intensive use. Hassid is direct that this is expensive and only worth it for people posting at least weekly with a genuine commitment to improvement.
  • The feedback loop is the core value proposition: stronger posts train a better skill, which produces stronger posts. The compounding effect over time is what separates this from one-off AI prompting.
  • AI handles volume and pattern matching well; humans handle novelty, judgment, and the instinct to recognize what is genuinely interesting. The skill is most effective when the human picks the angle and the AI executes the structure.

Quotable

AI-generated from source material. Verify important details against the original source.

Ruben Hassid

"AI isn't creative. It's really good at following instructions. But it's awesome when you can combine its capacity to digest a lot of context -- like 400+ posts -- plus your human ability to do pattern-matching."

This is the clearest one-sentence summary of where AI actually adds value in a content workflow. It reframes the tool correctly -- not as a creative partner but as a high-throughput instruction follower -- and places the human judgment where it belongs: in selecting angles and recognizing what is worth pursuing. Anyone over-estimating what AI can do with this system needs to read this sentence first.

Ruben Hassid

"It does not work if you're bad at LinkedIn. Claude won't be better if it trains on bad content (even 400+ bad posts). So make sure you give it good posts first."

A useful corrective against the assumption that AI can fix a weak content strategy. Garbage in, garbage out applies here exactly as it does in data science. This quote protects beginners from wasting time and money on a system that requires quality input material to produce quality output.

Ruben Hassid

"Be careful, though, you can't just repeat an ultra-viral post recipe over and over again. It's not because burgers are tasty that you want to eat burgers every day."

A memorable analogy that lands because it is concrete and slightly absurd. It conveys an important strategic limit of the system -- format fatigue is real, and audiences stop responding to the same structure -- in a way that sticks. Good for sharing because it sounds like something a practitioner would say, not a consultant.

Ruben Hassid

"I want to be the greatest filter to the AI noise. And 700,000+ people read this twice a week to focus on the How."

A clean positioning statement that explains the newsletter's value proposition and Hassid's brand identity in two sentences. The emphasis on "How" over "What" or "Why" is a deliberate content strategy choice -- practical tutorials outperform opinion and analysis for this audience. Worth noting as a model for anyone positioning a newsletter or personal brand around a specific content mode.

Concepts

Core Framework

The Post History Dataset

The starting premise of the entire system is treating your LinkedIn post archive as structured data rather than a writing portfolio. Posts have engagement metrics, format classifications, timestamps embedded in activity IDs, visual assets at accessible URLs, and text content -- all of which can be loaded into a spreadsheet and processed by a model capable of reading the full dataset at once.

This reframe matters because it changes what questions you can ask. Instead of reviewing posts manually and forming impressions, you can compute outlier thresholds, rank format types by median engagement, and have the model read the actual images in your best-performing posts to describe what the visual hook looks like. That is not a human workflow -- it requires the combination of structured data, image access, and a model with enough context window to hold hundreds of rows simultaneously.

Format Classification from Media Columns

Apify's LinkedIn export does not reliably classify post format using the "type" column -- it shows "post" for every entry. The actual format must be inferred from which media columns contain data: document fields indicate a carousel, video fields indicate video, article fields indicate a shared link, an image URL with no other media fields indicates an image post, and empty media fields indicate text-only.

This is a concrete example of the data cleaning and interpretation work that must happen before any analysis is meaningful. The analytics prompt Hassid provides handles this classification automatically, but understanding the logic matters if you are adapting the workflow to a different export format or troubleshooting unexpected results.

The Outlier Threshold

The analytics prompt instructs Claude to define an outlier as any post whose engagement exceeds a stated multiple of that account's baseline -- and to clearly state what multiple it used. This is important because absolute engagement numbers are misleading across accounts of different sizes. A post with 200 likes is an outlier for a 2,000-follower account; it is below average for a 200,000-follower account.

By computing outliers relative to baseline rather than by absolute count, the system produces findings that are actually actionable. The posts you want to study are not the ones with the highest raw numbers -- they are the ones that overperformed relative to what your account typically earns. Those are the posts where something specific you did caused a spike, and that specific thing is what you want to identify and replicate.

System Design

The Claude Skill as a Trained Interface

A Claude skill created with /skill-creator is a saved prompt package that can be invoked by a custom slash command in any new conversation. It is not a fine-tuned model -- it is structured context and instructions that get loaded automatically when the skill is called. The skill for LinkedIn content creation contains the analytics report findings, the SOP, the creator's top formats and hooks, and instructions to ask clarifying questions before generating post options.

The practical effect is that the skill functions like a trained editorial assistant who has already read all of your work and knows your defaults. Instead of explaining your style, your audience, and your best formats at the start of every session, you invoke the skill and answer a few questions about the specific post you want to write. The context work is done once and reused indefinitely, which is where the real time savings come from.

The Ultra-Viral Recipe Skill

A separate and complementary skill captures the structural recipe of a single standout post rather than the aggregated patterns of a full archive. The input is a screenshot of the post -- or a description of a video -- and the skill extracts the format, the hook (first two visible lines), the caption structure, the line-break cadence, and the tone of voice.

Once saved, this skill can apply that exact recipe to any new topic for any creator. The post itself is stored inside the skill as a reference example. This is most useful for a format that performed dramatically above baseline -- where the structure itself appears to be the driver of the result and is worth treating as a template. The caution is that any single format becomes stale with repetition; this skill is a tool to be used occasionally, not a default mode.

The Feedback Loop

The long-term value of the system is not the first report or the first skill -- it is the compounding effect of running the loop repeatedly. Better posts generate better engagement data. Better engagement data produces a more accurate analytics report identifying what is actually working. A more accurate report trains a more effective skill. A more effective skill produces better posts. Each cycle through the loop, the system gets closer to a reliable personal content engine.

This is a meaningful contrast to the typical experience of using AI for content, where each session starts fresh with no accumulated learning. The skill retains the patterns from your archive and can be updated as new data accumulates, meaning the investment compounds rather than resetting with each use.

Limitations and Honest Caveats

AI Cannot Manufacture Novelty

Hassid is direct that ultra-viral content is often driven by novelty -- a genuinely new idea, an unexpected angle, a timely reaction to something happening in the world. These are things AI cannot reliably produce by training on past work, because past work by definition does not contain whatever is new. The skill is excellent at mirroring proven structures, but it cannot invent the next thing.

This is the most important limitation to internalize. The system makes it faster and more reliable to execute well within proven formats. It does not replace the human work of finding genuinely interesting things to say. The person using the skill still needs to bring the angle, the observation, or the insight -- the AI handles the structure and execution.

The Garbage-In Problem

The analytics report and the resulting skill are only as good as the post history they are trained on. If an account's historical posts are weak -- low engagement, inconsistent voice, generic topics -- the skill will learn those patterns and reproduce them. There is no corrective mechanism built into the system for poor source material.

Hassid recommends having at least 30 posts for the system to function at all, and a substantially larger archive for meaningful pattern detection. The system is built for creators who are already doing the work of posting consistently and have enough data to identify what is working -- not for accounts starting from zero or for people looking to skip the foundational work of developing a content voice.

Cost and Commitment Threshold

Claude Pro costs approximately $100 per month for heavy users. Hassid does not soft-pedal this. The system is not worth the cost for people posting infrequently, people with fewer than 30 posts, or people who are not genuinely committed to improving their content output week over week. The economics only work when the skill is used regularly and the feedback loop is running continuously.

For someone posting once a week or more, doing real work on their personal brand or consulting business, and treating LinkedIn as a lead generation channel, the cost is easily justified if the time savings and quality improvement are real. For casual users or people experimenting without commitment, it is not the right tool.

Implementation

AI-generated from source material. Verify important details against the original source.

1

Create an Apify account and locate the LinkedIn posts scraper

Go to apify.com and create a free account. New accounts receive $5 in free credits, which is enough to extract approximately 2,000 LinkedIn posts. Find the LinkedIn Profile Posts actor within the Apify store. This tool extracts publicly available posts from any LinkedIn profile URL without requiring access to your LinkedIn account directly, which keeps your account compliant with LinkedIn's terms of service.

2

Configure and run the Apify scraper on your profile

Enter your LinkedIn profile URL into the actor settings. Set the output limit based on how many posts you want to extract -- 500 is a reasonable starting point and costs roughly $1. Run the actor and wait a few minutes for it to complete. The output will appear in the Apify dashboard when the run finishes. Export the results as a CSV or XLSX file and save it locally. Do not use this tool on accounts that have not consented to having their posts analyzed.

3

Upload the spreadsheet to Claude Cowork with the analytics prompt

Open Claude Cowork and start a new session. Paste the full analytics prompt from Hassid's newsletter (reproduced in the Source Material tab) and attach the exported spreadsheet file. The prompt instructs Claude to classify post formats from media columns, compute engagement per post, identify outliers relative to baseline, read actual image and video content, and produce two output documents: a written analytics report and a standard operating procedure. The run will take 8 to 10 minutes as Claude processes the full dataset.

4

Review the output documents

Claude produces a written analytics report identifying what formats, angles, hooks, and visual styles are driving your best results, and a separate SOP document with a step-by-step recipe for writing future posts based on your top outliers. Review both documents and check that the headline numbers match what you expect from your own understanding of your account. Note any format or angle findings that surprise you -- those are the most useful data points.

5

Create a reusable Claude skill from the report

In the same Claude Cowork session, send the /skill-creator command with a clear instruction: name the skill, specify that it should ask for user input before generating post options, and confirm that the skill should reflect the process of iterating together rather than generating a post in one shot. Claude will ask clarifying questions and then save the skill. Once saved, the skill appears in your Claude slash command menu and can be invoked in any new conversation.

6

Test the skill in a new Claude tab

Open a fresh Claude session and type the slash command for your new skill. Claude should ask you targeted questions about the specific post you want to write -- topic, current events to reference, goal of the post, preferred format. Answer the questions and review the options it generates. If the options do not reflect the patterns from your top posts, return to the skill and refine the instructions with a follow-up /skill-creator call.

7

Optionally build an ultra-viral recipe skill from a standout post

If you have a single post that dramatically outperformed your baseline, take a screenshot of it. In a new Claude session, use /skill-creator with a prompt that asks Claude to extract the hook, caption structure, line cadence, and visual format from the screenshot. Name the skill clearly and include the original post inside the skill as a reference example. Use this skill occasionally -- not as a default -- to apply that specific recipe to new topics without losing the structural advantage that made the original post work.

8

Run the loop on a regular cadence

The system compounds over time. As you post more and generate more data, re-run the Apify extraction and the analytics prompt periodically -- every three to six months is a reasonable cadence. Update your skill with the new findings. The goal is a continuously improving personal content engine that gets more accurate as your post archive grows and your best formats become clearer.

Tools & Resources

Mentioned Resources

Resource Description
Apify Web scraping platform used to extract LinkedIn posts legally from public profiles. Free accounts receive $5 in credits. The LinkedIn Profile Posts actor costs roughly $1 per 500 posts.
Claude Cowork Anthropic's agentic Claude interface that can process large files, spawn sub-tasks, and run extended analytical jobs. Used here to process the Apify export and generate the analytics report and SOP.
Claude /skill-creator Built-in Claude command for creating custom reusable skills invoked by slash commands in any new Claude conversation. Used to convert the LinkedIn analytics report into a persistent content assistant.
Hassid's Sample Report (Grant Lee) Google Doc containing the actual analytics report and SOP produced by running the workflow on a real LinkedIn account. Useful as a reference for expected output quality and format.

Suggested Resources

Resource Description
Claude Pro Required for Claude Cowork and extended analytical jobs. The $100/month cost Hassid references is for the Pro tier. Essential for running the full system at any meaningful scale.
How to AI (Ruben Hassid's Newsletter) Published twice weekly with practical AI implementation tutorials. The newsletter this article appeared in. Worth following for ongoing updates to the Claude skill workflow as the tooling evolves.
LinkedIn Data Export LinkedIn's native data export tool for downloading your own account data. A supplementary option for accessing your post history, though less structured than the Apify output for analytical purposes.
Anthropic Prompt Engineering Guide Official documentation on prompting best practices for Claude. Useful context for understanding how to write and refine the analytics prompt or skill instructions when adapting this workflow to different use cases.

Source Material

Original source attribution, metadata, and publication details are available in the Overview tab. This source material may originate from a transcript, article, report, presentation, newsletter, notes, or other media. Where applicable, transcription, formatting, extraction, or attribution errors may exist. Verify against the original source before republishing or relying upon the material.

How to AI -- Claude + LinkedIn

How to train Claude on your (best) LinkedIn posts. -- Ruben Hassid, June 20, 2026

Introduction

You can train Claude on your (best) LinkedIn posts.

It goes like this:

It's important not to do it from your account (never do any automation). So you go to a tool that can safely and legally extract your LinkedIn posts. How is it possible? Well, your LinkedIn posts are all publicly on the web. The tool costs $2 for 1,000 posts. It's cheap. Once it's done, you download it as a spreadsheet. You then go to Claude and upload the spreadsheet. I built a custom /skill to create a (massive) report. You then create a personal /skill from your best LinkedIn posts. Now whenever you want to write a post, you invoke your /skill.

I will teach you each step, with screenshots, to do it on your account (or any account, but not on mine because you're nice and you love me -- right? right???).

I know LinkedIn better than you.

Few people know LinkedIn better than I do. I gained 340,000 new followers last year. I spent $0 on ads. I have 18,000 connections out of the 30,000 max connections. I connect with people who join my Circle on LinkedIn. Already 3,700 people have joined it for $200 a year. Since LinkedIn blocks you past 30,000 connections, I can still connect with 12,000 people.

Step 1: Spend $2 to extract 1,000 posts.

We need to extract your LinkedIn posts safely and legally. I use Apify for it. I'm not affiliated, it's just the best way to do it.

Step 1: Go to apify.com and create a free account. Not only is it free to create an account, but you'll get $5 of free credits by signing up. And that's enough to extract 2,000 LinkedIn posts. So you don't need to pay.

Step 2: Go to the LinkedIn profile posts agent.

Step 3: Add a LinkedIn profile plus these settings and click on save and start.

Step 4: Wait a couple of minutes. I scraped 489 posts, and it cost me about a dollar. But I have $5 of credits for free. So I didn't pay anything.

Step 5: Export your results. Save this file for later. It's time to go to Claude.

Step 2: Train Claude on your Excel.

We will train Claude on our LinkedIn posts to create a report and then create a reusable /skill so it can help us make new posts.

Step 1: Go to Claude Cowork and paste my prompt plus upload the Excel. Here's the prompt you can copy and paste (you do this just once, don't worry).

[Full analytics prompt -- reproduced below]

I'm going to give you an Apify "LinkedIn profile posts" export -- a CSV or XLSX scrape of one person's LinkedIn posts, anywhere from 50 to 5,000+ rows. I coach this person on their content and need a decision-ready report on what's actually working, so I can tell them what to double down on and what to drop. Treat this as a serious analytics deliverable, not a quick summary. If no file is attached, ask me for it before doing anything else.

Handle these quirks of this export format correctly, because the obvious columns lie: The "type" column says "post" for every row -- ignore it. Derive each post's FORMAT from which media columns are populated: if document/* (e.g. document/title, document/totalPageCount) is filled, it's carousel/document; else if postVideo/* it's video; else if article/* it's shared article/link; else if postImages/0/url it's image; otherwise text-only. Engagement per post = engagement/likes + engagement/comments + engagement/shares. Reaction mix lives in engagement/reactions/N/type and /count -- use it to read emotional register. Post text is in content; the author's handle and the post link are in linkedinUrl. There's no date column, but the timestamp is encoded in the activity ID: take it as a 64-bit integer and shift right 22 bits for Unix milliseconds (date = id >> 22, then divided by 1000). Use this to build the timeline for cadence and best-day/time.

Compute the quantitative stats across ALL posts in code so the numbers are exact. Define an outlier as a post whose engagement is some multiple of its baseline, and state the multiple you used.

Then do the qualitative read on the standouts -- top and bottom performers, every outlier, and a representative sample of the middle. Don't infer what a post said from its numbers, and for visual posts don't judge from the caption alone: actually OPEN THE MEDIA and look at it. Download and view the image and the video thumbnail; for carousels, pull the on-slide wording from the transcribed document URL and view the cover and slide images. For every winning visual post, describe what's literally on it -- the on-image or first-slide text and hook, the visual style (candid photo, selfie, screenshot, data chart, quote/text card, diagram, meme), the layout -- and tie those visual choices to why it performed. Quote the hook and link the post every time.

The report must deliver, with specifics and real examples: Bottom line first -- in 3-4 sentences, what's working and what should change. What FORMAT wins (text / image / carousel / video / article) -- average and median engagement and sample size per format, flag any format that looks strong but rests on only a few posts, and for the winning visual formats spell out what the strong images/slides actually look like. What ANGLE / hook / topic wins: cluster posts into the angles this person actually uses (personal story, contrarian take, how-to, news reaction, list/framework, hot take, etc.), rank them by engagement, and name the opening-line and first-slide patterns that track with high engagement. The biggest outliers with numbers, the hook, the link, what was on the image/slides, and your best read on WHY. Stop / Continue / Start: what to stop, what to keep, and what to test next. Whatever else the data clearly supports: posting cadence and consistency, best day/time, ideal length, comment-to-reaction ratio, reaction-mix tells, recurring themes, signs of fatigue or decline, and the single highest-leverage change.

Save two new files: (1) A written report I can read top to bottom -- clear hierarchy, bottom line up front, no filler, every claim tied to a number or a quoted/linked post. (2) An SOP for the next post, reverse-engineered from the highest outliers: the repeatable recipe spelled out step by step -- the hook formula, the winning format and angle, and the visual template, with real outlier posts as worked examples.

Ground every finding in the data. If the export lacks what a section needs, say so plainly instead of guessing. Before you call it done, re-check your headline numbers against the file and confirm every format, angle, and visual claim matches what's actually in the export.

Step 3: Create a reusable skill.

You want to create a skill inside Claude to not copy and paste the same prompt and the same context, over and over again. You just need to continue inside the same chat, with this prompt:

/skill-creator Create a skill combining what matters inside the content report and the SOP to write viral posts for [Name]. Call the skill "[skill-name]". Since you can't create a viral post without having input for me, when I invoke the skill, you must use the AskUserQuestion tool, tailored to what [Name] does best, to get the right input before generating angles/hooks/captions. I will then pick my favorite ones to assemble a viral post together with you. The skill must reflect this process.

Step 4: "I went ultra-viral once."

Ultra-viral: just me being over the top to say that you made a post that did really, really well for your standards. It doesn't matter the number of likes. If you're used to 5 likes and you got 100 once, I'm talking about this post.

You went ultra-viral once, and you want to repeat it. Just create a Claude skill to capture the "recipe" of that post for any new post. Take a screenshot of the post (and if there is a video, explain the video) and go to Claude. Give it this prompt:

/skill-creator This post went extremely viral. I want you to create a skill to capture the recipe that made it viral: the format, the hook (the first two visible lines), the entire caption (not what's written, but how), the format (line breaks, cadence, tone of voice...). When I will invoke the skill you will create, called "[skill name]", we will iterate through questions and answers together until we generate this post. The skill must have the entire viral post inside it for future reference. But the post I create with your skill could be about anything, for anyone.

Step 5: When this falls short (being honest).

AI isn't creative. It's really good at following instructions. But it's awesome when you can combine its capacity to digest a lot of context (like 400+ posts) plus your human ability to do pattern-matching.

It's not faster. A good post takes time. But you can spend your time more efficiently now, giving you a much better chance to go viral.

It's expensive. Claude is expensive. I pay $100/month.

It's not for one post. I would do this only if you want to post at least once a week. And you also need to have enough past posts.

It does not work if you're bad at LinkedIn. Claude won't be better if it trains on bad content (even 400+ bad posts). So make sure you give it good posts first.

It's only good at repeating. Ultra-viral is often novelty. But everyone starts to be good by mirroring (NOT COPYING) the best.

Use it wisely. I hate copycats who then share a tiny little sentence in their comment like "credits: Ruben". Don't be this guy.

AI Prompt

AI-generated from source material. Verify important details against the original source.

AI Implementation Prompt

CONTEXT This prompt is based on a tutorial by Ruben Hassid, published June 20, 2026 in his "How to AI" newsletter (700,000+ readers). The tutorial describes a system for using Claude to generate LinkedIn content trained on a creator's own post history. The workflow has four stages: (1) extract post data from LinkedIn using Apify as a structured spreadsheet, (2) upload the spreadsheet to Claude Cowork with a detailed analytics prompt to generate a written report identifying what formats, angles, hooks, and visual styles are working, (3) use the /skill-creator command to convert that report into a reusable Claude skill invoked by a slash command, and (4) optionally create a second skill that captures the structural recipe of a single ultra-viral post for application to new topics. The core thesis is that LinkedIn post history is a structured dataset, and that processing it through a model capable of reading hundreds of rows, computing engagement outliers relative to baseline, and accessing image/video content produces actionable findings that manual review would not. The resulting skill functions as a trained editorial assistant that asks targeted questions and generates post options grounded in the creator's own proven patterns -- not generic AI training data. KEY PRINCIPLES 1. Post history is a dataset. Treating past posts as structured data rather than a portfolio is what makes systematic analysis possible. The insights come from computation and pattern recognition at scale, not from reading individual posts one by one. 2. Format must be derived, not assumed. Apify's export classifies every post as "post" -- actual format (text, image, carousel, video, article) must be inferred from which media columns contain data. This data cleaning step is necessary before any analysis is reliable. 3. Outliers are relative, not absolute. The posts worth studying are the ones that overperformed relative to that account's baseline -- not the ones with the highest raw numbers. A 3x outlier on a small account is more informative than an above-average post on a large one. 4. Skills replace session-by-session prompting. A Claude skill built from an analytics report stores the patterns, formats, hooks, and SOP instructions so they are automatically loaded with each invocation. The value is in elimination of repeated context-setting work. 5. The feedback loop compounds. Each cycle of posting, extracting, analyzing, and updating the skill makes the system more accurate. The compounding effect over time is the primary value proposition, not the one-time report. 6. AI handles structure; humans supply novelty. The system is excellent at executing within proven formats. It cannot manufacture genuinely new ideas, timely observations, or the instinct to recognize what is worth saying. The human brings the angle; the skill handles the execution. 7. Garbage in, garbage out. The analytics report and the resulting skill are only as good as the post history they are trained on. Accounts with weak historical content will train weak skills. 8. Viral formats have diminishing returns. Any single format or recipe becomes less effective with repetition. Ultra-viral recipe skills should be used occasionally, not as defaults. KEY LEVERS -- Archive size: more posts produce more reliable outlier detection and format classification -- Baseline calibration: outlier threshold defined relative to account baseline, not absolute engagement numbers -- Media analysis: actually reading image and video content in top posts, not inferring from captions alone -- Skill specificity: the more targeted the skill instructions, the more useful the generated options -- Update cadence: re-running the analytics every 3-6 months keeps the skill calibrated to current performance patterns WHAT THIS IS NOT -- A shortcut for accounts with weak content: the system amplifies what is already working, it does not fix what is not -- A creative replacement: AI cannot generate genuinely novel ideas or timely angles; those still require the human -- A one-session tool: the value compounds over repeated use; it is not efficient for occasional or one-off posts -- A substitute for knowing your audience: the analytics identify what has performed, but interpreting why and what to do next requires judgment -- An automation of your LinkedIn account: post extraction uses third-party tools on public data; no direct LinkedIn account automation is involved or appropriate IMPLEMENTATION MODES 1. ANALYZE -- Review your Apify export data and generate a decision-ready analytics report covering format performance, angle performance, engagement outliers, posting cadence, and a stop/continue/start recommendation set. 2. BUILD SKILL -- Convert an existing analytics report and SOP into a reusable Claude skill using the /skill-creator command, with appropriate input questions and post-generation workflow built in. 3. GENERATE -- Invoke an existing LinkedIn skill to produce post options for a specific topic, picking the best angle and iterating through caption, structure, and media guidance. 4. RECIPE EXTRACT -- Analyze a single high-performing post screenshot to extract its structural recipe: hook formula, caption cadence, line-break pattern, tone, and visual template for future application. 5. DIAGNOSE -- Identify why a post underperformed or why a skill is producing weak output, and recommend specific adjustments to the analytics prompt, skill instructions, or post structure. 6. ADAPT -- Apply the workflow to a different creator's account, adjusting the analytics prompt and skill name appropriately, or transfer a viral recipe skill to a new topic or audience. 7. REFINE -- Update an existing skill with new analytics findings after a re-run of the Apify extraction, improving calibration based on more recent post data. 8. TEACH -- Explain any component of the system (Apify format quirks, outlier calculation, skill creation syntax, media analysis approach) in plain language for a collaborator, client, or team member unfamiliar with the workflow. AI OPERATING INSTRUCTIONS Remain grounded in the actual post data and analytics outputs provided. Do not invent engagement numbers, format classifications, or outlier findings. When analyzing a spreadsheet, compute stats in code to ensure accuracy, then verify headline numbers against the raw data before reporting. When building or refining a skill, focus on specificity -- generic instructions produce generic output. The more the skill reflects the actual patterns found in the analytics report, the more useful it will be. When generating post options, ask targeted questions about the specific topic, goal, audience, current events, and preferred format before producing output. Do not generate posts without this input. Challenge weak assumptions about what is working. If the data does not support a claimed pattern, say so directly. If a format looks strong but rests on only a few posts, flag the small sample size. Do not produce motivational or generic content strategy advice. Ground every finding and recommendation in the specific account data or the source material framework. GUIDED DISCOVERY Ask me up to three questions, one at a time, to determine: (1) what I am trying to accomplish with this system -- building it for the first time, refining an existing skill, or using it to generate a specific post; (2) where I currently am in the workflow -- do I have the Apify export, the analytics report, or an existing skill already built; (3) how these tools and concepts could be applied most effectively given my current situation. Once you understand where I am, help me identify the next concrete step and build a practical plan to move forward.