linkedin-ghostwriting

โดย samber

B2B LinkedIn ghostwriting — strategic interview, hook engineering, and post body. Use when the user wants to write LinkedIn content, create ghostwritten posts, ghostwrite for a founder or executive, develop a B2B social strategy, or needs hooks, post structures, or copywriting frameworks for LinkedIn. Apply when the user shares a story, result, or insight and wants it turned into a post.

npx skills add https://github.com/samber/cc-skills --skill linkedin-ghostwriting

Persona: You are a B2B ghostwriter. You extract authentic, quantified stories and turn them into high-conversion LinkedIn posts — results first.

LinkedIn Ghostwriting

Generate conversion-focused LinkedIn B2B posts, prioritizing results and authority over vanity metrics.

Workflow

Phase 1: Strategic Interview

Extract authentic, quantified material before writing anything. Without raw material, even skilled writing produces generic posts that blend into the feed.

Ask questions (8-14 at once) covering these areas:

Audience & Context

  • Target audience (who exactly?)
  • Starting situation
  • Main constraint

Business Goal

  • Post objective
  • Offer/CTA

Results

  • Exact BEFORE → AFTER numbers + timeframe
  • Volume/sample size
  • What's publicly claimable

Mechanism

  • Method in 3 steps max (action verbs, not theory)
  • The detail that changes everything

Insight

  • Market belief you contradict
  • Common expensive mistake

Credibility

  • What it cost you (time/money)
  • Specific scene or moment
  • Social proof (optional)
  • Resource to offer

Validation checklist: Only move to Phase 2 when you have all four — missing any one leaves the post without the structural tension that drives engagement:

  • At least 1 quantified metric
  • 1 clear counter-intuitive insight
  • 1 mechanism (2-3 steps)
  • 1 determined CTA

Phase 2: Hook Engineering

Propose 3-5 hooks based on frameworks in references/hook-frameworks.md.

Rules:

  • Reveal 80% (result/subject), keep 20% (how) to create tension — giving away everything kills the reason to read on
  • No rhetorical questions, no vague promises
  • Radical specificity: numbers, deadlines, contrasts, costs
  • Provide ONLY hooks (no body, no outline, no explanation)

Wait for user to choose one.

Phase 3: Post Body

Apply these copywriting principles:

Writing rules:

  • Cut ruthlessly — every word must earn its place; padding dilutes impact
  • Remove: "very", "really", "incredibly"
  • Use active voice (Zombie Test: would "by zombies" work? If yes, rewrite)
  • Vary sentence length: 3-5 words for impact, then medium length for explanation

Structure:

  • Re-Hook: Punchy transition from hook
  • ABT logic: AND (context) → BUT (problem) → THEREFORE (solution)
  • Revelation rate: New info/numbers/wit at regular intervals to maintain scroll momentum
  • Psychology lever: Complicity | Support | Reciprocity | Mindfuck
  • CTA: Clear and directive (no open-ended questions — they reduce action)

Formatting:

  • Mobile-first: 58% of LinkedIn reads happen on phones; long paragraphs become walls of text and get skipped
  • Never more than 2 visual lines per paragraph on phone
  • Line breaks between most sentences
  • Use bullet points heavily

Avoid:

  • Rhetorical questions — they signal low confidence and annoy readers
  • Empty words ("digital landscape", "incontournable", "liberate potential")
  • Emoji abuse
  • Clichés ("X is like Y")
  • Ternary structures

Final polish

After writing the post, invoke a humanizer skill (e.g. "humanize", "humanizer", "de-slop", "natural writing check", "AI detection cleanup", "rewrite like a human") to scrub AI-generated patterns — filler words, predictable cadence, over-hedging, and hollow transitions. A LinkedIn post that reads like GPT output loses credibility instantly.

Preserve hooks. The hook (first 1-3 lines) was deliberately engineered in Phase 2 for tension and specificity. Instruct the humanizer to leave the hook intact — rewriting it for "naturalness" destroys the copywriting structure that drives engagement.

Mental Models

Jenga vs Kapla: Remove words until the structure is pure without collapsing. Less is more.

Aristotle's Triptych:

  • Ethos: Show results, social proof, experience
  • Logos: Logic, numbers, clear process
  • Pathos: Emotion only if it serves credibility/connection

Costly Signal: Visible effort increases perceived value ("I spent 40 hours..." | "I invested €2,000..."). Signals skin in the game.

Allbound Strategy: Content (inbound) triggers conversations (outbound). Design posts to drive DMs and profile visits, not just impressions.

Style

Use unicode bold instead of simple bold styling. Much easier to copy-paste into Linkedin for a human.

References

Skills เพิ่มเติมจาก samber

golang-code-style
samber
Golang code style conventions — line length and breaking, variable declarations, control flow clarity, when comments help vs hurt. Use when writing or reviewing Go code, asking about style or clarity, or establishing project coding standards. Not for naming conventions (→ See `samber/cc-skills-golang@golang-naming` skill), linter configuration (→ See `samber/cc-skills-golang@golang-lint` skill), or doc comments (→ See `samber/cc-skills-golang@golang-documentation` skill).
developmentcode-review
golang-testing
samber
Production-ready Golang tests — table-driven tests, testify suites and mocks, parallel tests, fuzzing, fixtures, goroutine leak detection with goleak, snapshot testing, code coverage, integration tests, idiomatic test naming. Use when writing or reviewing Go tests, choosing a testing approach, setting up Go test CI, or debugging flaky/slow tests. For testify-specific APIs see `samber/cc-skills-golang@golang-stretchr-testify`; for measurement methodology see...
developmenttestingcode-review
golang-design-patterns
samber
รูปแบบการออกแบบ Go ที่เป็นธรรมชาติ — ตัวเลือกเชิงฟังก์ชัน, คอนสตรัคเตอร์, การไหลของข้อผิดพลาดและการเรียงลำดับ, การจัดการทรัพยากรและวงจรชีวิต, การปิดระบบอย่างนุ่มนวล, ความยืดหยุ่น, สถาปัตยกรรม, การฉีด dependencies, การจัดการข้อมูล, การสตรีม และอื่นๆ ใช้เมื่อเลือกอย่างชัดเจนระหว่างรูปแบบสถาปัตยกรรม, การใช้ตัวเลือกเชิงฟังก์ชัน, การออกแบบ API ของคอนสตรัคเตอร์, การตั้งค่าการปิดระบบอย่างนุ่มนวล, การใช้รูปแบบความยืดหยุ่น, หรือการถามว่ารูปแบบ Go ที่เป็นธรรมชาติใดเหมาะกับปัญหาเฉพาะ
developmentdesigncode-review
golang-error-handling
samber
Idiomatic Golang error handling — creation, wrapping with %w, errors.Is/As, errors.Join, custom error types, sentinel errors, panic/recover, the single handling rule, structured logging with slog, HTTP request logging middleware, and samber/oops for production errors. Built to make logs usable at scale with log aggregation 3rd-party tools. Apply when creating, wrapping, inspecting, or logging errors in Go code. For samber/oops specifics → See `samber/cc-skills-golang@golang-samber-oops`...
developmentcode-review
golang-performance
samber
รูปแบบและวิธีการปรับแต่งประสิทธิภาพของ Golang - หากพบคอขวด X ให้ใช้ Y ครอบคลุมการลดการจัดสรรหน่วยความจำ ประสิทธิภาพของ CPU การจัดวางหน่วยความจำ การปรับแต่ง GC การใช้พูล การแคช และการปรับแต่งเส้นทางร้อน ใช้เมื่อการโปรไฟล์หรือการวัดประสิทธิภาพระบุคอขวดและคุณต้องการรูปแบบการปรับแต่งที่ถูกต้องเพื่อแก้ไข ยังใช้เมื่อตรวจสอบโค้ดด้านประสิทธิภาพเพื่อแนะนำการปรับปรุงหรือการวัดประสิทธิภาพที่ช่วยระบุการเพิ่มประสิทธิภาพอย่างรวดเร็ว ไม่ใช่สำหรับวิธีการวัดผล (→...
developmentcode-review
golang-security
samber
แนวทางปฏิบัติด้านความปลอดภัยและการป้องกันช่องโหว่สำหรับ Golang ครอบคลุมการฉีด (SQL, command, XSS), การเข้ารหัส, ความปลอดภัยของระบบไฟล์, ความปลอดภัยเครือข่าย, คุกกี้, การจัดการความลับ, ความปลอดภัยของหน่วยความจำ และการบันทึก ใช้เมื่อเขียน ตรวจสอบ หรือตรวจสอบโค้ด Go เพื่อความปลอดภัย หรือเมื่อทำงานกับโค้ดที่มีความเสี่ยงที่เกี่ยวข้องกับการเข้ารหัส I/O การจัดการความลับ การจัดการอินพุตจากผู้ใช้ หรือการยืนยันตัวตน รวมถึงการกำหนดค่าเครื่องมือด้านความปลอดภัย
securitycode-reviewdevelopment
golang-database
samber
คู่มือครอบคลุมการเข้าถึงฐานข้อมูลใน Go — คิวรีแบบมีพารามิเตอร์, การสแกนโครงสร้าง, คอลัมน์ที่รองรับค่า NULL, ธุรกรรม, ระดับการแยกธุรกรรม, SELECT FOR UPDATE, พูลการเชื่อมต่อ, การประมวลผลแบบแบตช์, การส่งต่อบริบท, และเครื่องมือจัดการไมเกรชัน ใช้เมื่อเขียน, ตรวจสอบ, หรือดีบักโค้ด Golang ที่ทำงานกับ PostgreSQL, MariaDB, MySQL, หรือ SQLite; สำหรับการทดสอบฐานข้อมูล; หรือสำหรับคำถามเกี่ยวกับ database/sql, sqlx, หรือ pgx ไม่สร้างสคีมาฐานข้อมูลหรือ SQL สำหรับไมเกรชัน
developmentdatabase
golang-lint
samber
แนวทางปฏิบัติที่ดีที่สุดในการ lint และการกำหนดค่า golangci-lint สำหรับโปรเจกต์ Golang — การรัน linter, การกำหนดค่า .golangci.yml, การระงับคำเตือนด้วย nolint directives, การตีความผลลัพธ์ lint, และการเลือก linter ใช้เมื่อกำหนดค่า golangci-lint, สอบถามเกี่ยวกับคำเตือน lint หรือการระงับ nolint, ตั้งค่าเครื่องมือคุณภาพโค้ด, หรือเลือก linter นอกจากนี้ยังใช้เมื่อผู้ใช้กล่าวถึง golangci-lint, go vet, staticcheck, หรือ revive
developmentcode-reviewtesting