Best for
- Use when creating, outlining, researching, enriching, rewriting, humanizing, auditing, or packaging LinkedIn Articles, LinkedIn newsletters, LinkedIn long-form posts, LinkedIn thought leadership, LinkedIn B2B
flaqai/Awesome_SEO_Writing_Skill/writer/linkedin-writer/SKILL.md
LinkedIn-native long-form article and newsletter writing workflow for LinkedIn and Google-to-LinkedIn topic discovery, business-depth research, professional thought leadership, evidence-led drafting, final humanization, discussion design, SEO settings, auditing, and publish-ready packaging. Use when creating, outlining, researching, enriching, rewriting, humanizing, auditing, or packaging LinkedIn Articles, LinkedIn newsletters, LinkedIn long-form posts, LinkedIn thought leadership, LinkedIn B2B
Decision brief
LinkedIn-native long-form article and newsletter writing workflow for LinkedIn and Google-to-LinkedIn topic discovery, business-depth research, professional thought leadership, evidence-led drafting, final humanization, discussion design, SEO settings, auditing, and publish-ready packaging.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/flaqai/Awesome_SEO_Writing_Skill --skill "writer/linkedin-writer"Inspect the Agent Skill "linkedin-writer" from https://github.com/flaqai/Awesome_SEO_Writing_Skill/blob/7d30056b47534d6d31d93e74d788268a788dac1f/writer/linkedin-writer/SKILL.md at commit 7d30056b47534d6d31d93e74d788268a788dac1f. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
This LinkedIn-specific output directory overrides the parent writer's default writer/output// location. Prefer a short ASCII, hyphen-separated slug under 80 characters. Do not mix multiple campaigns in one directory.
Turn a topic, product, argument, report, source bundle, or existing draft into a credible LinkedIn-native long-form article that helps a defined professional audience make a decision, understand a change, or improve how they work.
Use the requested format, not a blended default:
Read each relevant file completely before acting:
1. Do not invent professional experience, product testing, customers, interviews, internal data, quotes, results, credentials, or events. 2. First-person events may appear only when the user supplied them for this task or they exist in an approved, attributable source package. 3…
Permission review
The documentation asks the agent to read local files, directories, or repositories.
Read each relevant file completely before acting:The documentation asks the agent to create, modify, or delete local files.
### 1. Create an isolated article directoryThe documentation asks the agent to run terminal commands or scripts.
node writer/linkedin-writer/scripts/audit-linkedin-markdown.mjs \Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 93/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 71 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Turn a topic, product, argument, report, source bundle, or existing draft into a credible LinkedIn-native long-form article that helps a defined professional audience make a decision, understand a change, or improve how they work.
This skill reuses the parent writer workflow for fact checking, humanization, image packaging, and optional Cloudflare R2 delivery, but it does not treat LinkedIn as a generic SEO blog host or as Medium with a different publishing button.
LinkedIn-native writing prioritizes:
Default language follows the user's request. If the user gives no language, use the language of their source material or target audience.
Use the requested format, not a blended default:
| Destination | Workflow |
|---|---|
| LinkedIn Article or LinkedIn newsletter edition | Use this skill in full |
| LinkedIn short feed post only | Use the short-post rules and publishing pack in this skill; do not force a long article |
| Google-first website article | Use ../SKILL.md |
| Medium article or third-party editorial essay | Use ../medium-writer/SKILL.md |
| Chinese WeChat Official Account article | Use ../wechat-writer/SKILL.md |
If the user says only “LinkedIn article” or “LinkedIn long-form,” default to a native LinkedIn Article. If they already run a newsletter and provide its name or theme, package the piece as a newsletter edition. Do not claim a newsletter was created or published without direct evidence.
Read each relevant file completely before acting:
references/linkedin-topic-research.mdreferences/linkedin-business-depth-and-humanization.mdreferences/linkedin-article-template.mdreferences/linkedin-review-rubric.md../references/fact-check-and-style.md../references/humanization.md../references/output-packaging.md../references/r2-image-upload.md and ../references/r2-security.mdDo not load unrelated references merely because they exist.
Before research or writing, create or infer a task card in 14 lines or fewer and save it as linkedin-brief.md:
Make conservative assumptions when details are missing. Ask only when audience, thesis, or authority to use personal experience is materially ambiguous.
Run brief -> LinkedIn and Google-to-LinkedIn research -> business insight map -> evidence -> outline -> draft -> audit -> rewrite -> final humanization -> integrity recheck -> package without pausing at every step. A request to “write an article” means deliver the reviewed local package.
When the user asks for hot topics, search ideas, or content planning, stop after the ranked topic map unless they also ask for an article. Do not draft ten shallow articles.
Pause at the topic shortlist or outline only when the user explicitly asks to choose first.
If the user asks only for review, produce findings without overwriting the draft. If they ask to improve, preserve the original and apply fixes before re-auditing.
Use:
writer/linkedin-writer/output/<article-slug>/
This LinkedIn-specific output directory overrides the parent writer's default writer/output/<article-slug>/ location. Prefer a short ASCII, hyphen-separated slug under 80 characters. Do not mix multiple campaigns in one directory.
Recommended working files:
linkedin-brief.md
linkedin-topic-map.md
linkedin-insight-map.md
source-ledger.md
outline.md
draft.md
article-linkedin.md
linkedin-audit.md
linkedin-publishing-pack.md
image-plan.md
Create only the files the task needs. Keep draft.md separate from article-linkedin.md so an unreviewed draft cannot be mistaken for final copy.
Read references/linkedin-topic-research.md completely.
Do not begin with a static list of broad trends. Build a query grid around:
core entity or skill
× audience or role
× work outcome
× tension or decision
× current change or timeframe
Use LinkedIn search suggestions and Posts results when available. Filter by recent date, content type, author industry/company, or source type when useful. Triangulate recurring questions with primary reports, official product or policy sources, credible industry research, customer questions, and the user's own content goals.
Then use Google to discover publicly indexed LinkedIn material with exact phrases, date operators, exclusions, and scoped queries such as:
site:linkedin.com/posts "<topic>" "<role or objection>" after:YYYY-MM-DD
site:linkedin.com/pulse "<topic>" "<implementation, ROI, risk, or governance>"
site:linkedin.com/company "<topic>" "<official case or report>"
Record Google results separately. Search snippets and LinkedIn creator claims are conversation signals, not automatically verified facts. Open the original page when possible, verify material claims elsewhere, and never copy a creator's hook, framework, structure, anecdote, or conclusion.
Record the exact query, date, filter, observed signal, and interpretation in linkedin-topic-map.md. Separate:
Never imply that a topic is popular merely because it appears in one post or one search result.
For the selected topic, create a useful professional topic cluster:
Reject adjacent topics that do not strengthen the thesis or reader decision. “More keywords” is not the same as more depth.
Read references/linkedin-business-depth-and-humanization.md and create linkedin-insight-map.md. Enrich the selected topic across the dimensions that materially affect the business decision:
For a substantial business article, normally develop at least five relevant dimensions. Do not force irrelevant finance or governance sections into a career essay, but do not omit a material stakeholder, cost, or risk merely to keep the article simple.
Create source-ledger.md for any current, factual, comparative, or decision-shaping article.
For each material claim, record:
verified, user_provided, needs_verification, softened, removed, or unsupported;Prefer original LinkedIn Help pages for platform behavior, original reports for research claims, official product pages for current capabilities, and authoritative sources for policy or high-risk topics. Search snippets are discovery aids, not final evidence.
Select one primary angle:
Avoid a generic “what it is / benefits / future” structure unless the reader is genuinely a beginner and the article adds a practical framework.
Save outline.md with:
hypothetical label;If the user requested the complete article, continue without waiting for approval.
Read references/linkedin-article-template.md completely and adapt it to the chosen angle.
The opening should establish, within roughly the first 120 words:
Then:
FAQ is optional. Add it only when search intent or reader follow-up questions justify it. Do not inherit the Google SEO article requirement mechanically.
Check all dates, numbers, prices, product features, model names, policy statements, rankings, “most popular” claims, and comparisons.
For each claim:
Do not overload the article with citations. Include enough source context for trust and maintain a clean source list in the package.
Read references/linkedin-review-rubric.md completely. Score the article across:
Resolve blocking and high-impact issues directly. Then read ../references/humanization.md and run the shared natural-language edit. After that, read the final-humanization section of references/linkedin-business-depth-and-humanization.md and complete the LinkedIn-specific 去 AI 化编辑.
The final pass must make generic business abstraction concrete, remove synthetic LinkedIn performance and template symmetry, retain bounded professional judgment, and verify every first-person signal. It must not add fake experience, deliberate errors, unsupported opinions, or slang, and it must not claim to bypass an AI detector. Recheck facts, citations, links, SEO settings, disclosure, and certainty after the edit, then rerun the deterministic audit.
Run the deterministic audit:
node writer/linkedin-writer/scripts/audit-linkedin-markdown.mjs \
writer/linkedin-writer/output/<article-slug>/article-linkedin.md \
--keyword "<primary topic phrase>"
The script checks measurable Markdown and packaging signals only. It cannot verify facts, originality, expertise, audience fit, or whether the article will perform well.
Write the final editorial and mechanical results to linkedin-audit.md.
Prepare at least a cover direction in image-plan.md. Generate images when the user asks for a complete visual package or when visuals are an explicit deliverable.
Only upload to R2 when the user needs public URLs and a valid local configuration exists. Missing R2 configuration is not an error.
Save linkedin-publishing-pack.md and append a compact version to the article source after a divider. Include:
none;Do not place operational notes, hashtags, or internal audit text inside the public article body.
A normal full LinkedIn article package contains:
writer/linkedin-writer/output/<article-slug>/
├── article-linkedin.md
├── linkedin-brief.md
├── linkedin-topic-map.md
├── linkedin-insight-map.md
├── source-ledger.md
├── outline.md
├── linkedin-audit.md
├── linkedin-publishing-pack.md
└── image-plan.md
Add draft.md, cover/supporting images, .docx, or image-urls.json only when the task needs them.
The final response should state:
Choose a standalone Article when:
Choose or recommend a newsletter edition when:
Do not create a newsletter merely to make one article seem more important.
For a personal profile:
For a Company Page:
When the user asks to evaluate a published article, inspect current analytics rather than predicting performance.
Track what is available and relevant:
Treat analytics as estimates and audience signals, not proof of business impact. Use comment language and demographic fit to update the next topic map. Never promise reach or engagement before publication.
Frequently asked questions
LinkedIn-native long-form article and newsletter writing workflow for LinkedIn and Google-to-LinkedIn topic discovery, business-depth research, professional thought leadership, evidence-led drafting, final humanization, discussion design, SEO settings, auditing, and publish-ready packaging.
The source record exposes this install command: npx skills add https://github.com/flaqai/Awesome_SEO_Writing_Skill --skill "writer/linkedin-writer". Inspect the command and pinned source before running it.
Static rules flagged read-files, write-files, exec-script in the source; the page lists the matching lines and excerpts.
Alternatives
indranilbanerjee/digital-marketing-pro
Draft marketing content in brand voice — blog posts, ad copy, email sequences, social posts, landing pages, and brand-voice guides — through a gated pipeline (research, outline, draft, fact-check, humanize, voice check, SEO checklist) with numbered working files and a five-gate quality scorecard before copy is publish-ready. Triggers on "/digital-marketing-pro:content-engine", "write a blog post about X", "draft ad copy for this campaign", "create an email sequence", "landing page copy for our p
indranilbanerjee/contentforge
Re-optimize an existing content piece with current statistics, new sources, and fixed citations at light (~20%), medium (~50%), or heavy (~80%) rewrite scope — preserving evergreen sections, SEO keyword placements, the URL slug, and internal links, then re-running the pipeline's quality gates (fact-check, validation, humanizer, reviewer) and saving as a new version with a before/after comparison report; the original file is never overwritten. Triggers on "/contentforge:content-refresh", "update
rampstackco/claude-skills
Run QA testing on a page, feature, or full site at one of three depth tiers (smoke, standard, full). Use this skill whenever the user asks to QA a page or site, run a smoke test after a deploy, verify a page before launch, or run a regression sweep. Triggers on QA, QA sweep, smoke test, regression test, post-deploy check, pre-launch check, verify the deploy, test this page, does the page render, broken link, 404, image not loading. Also triggers proactively after a deploy or a new page launch wh
rampstackco/claude-skills
Diagnose organic traffic changes (drops, stalls, or unexpected wins) using Ahrefs MCP plus Search Console data. Use this skill when traffic suddenly dropped, has been flat despite investment, after an algorithm update, after a migration or deploy, or when a competitor seems to be taking share. Triggers on traffic dropped, traffic decline, traffic stalled, organic decline, lost rankings, why is traffic down, algorithm update, post-migration traffic loss, traffic diagnosis. Also triggers when stak