.claude/skills/crosspost/SKILL.md
Multi-platform content distribution across X, LinkedIn, Threads, and Bluesky. Adapts content per platform using content-engine patterns. Never posts identical content cross-platform. Use when the user wants to distribute content across social platforms.
npx skillsauth add vitae/cash crosspostInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Distribute content across multiple social platforms with platform-native adaptation.
| Platform | Max Length | Link Handling | Hashtags | Media | |----------|-----------|---------------|----------|-------| | X | 280 chars (4000 for Premium) | Counted in length | Minimal (1-2 max) | Images, video, GIFs | | LinkedIn | 3000 chars | Not counted in length | 3-5 relevant | Images, video, docs, carousels | | Threads | 500 chars | Separate link attachment | None typical | Images, video | | Bluesky | 300 chars | Via facets (rich text) | None (use feeds) | Images |
Start with the core idea. Use content-engine skill for high-quality drafts:
Ask the user or determine from context:
For each target platform, transform the content:
X adaptation:
LinkedIn adaptation:
Threads adaptation:
Bluesky adaptation:
Post to the primary platform first:
x-api skill for XPost adapted versions to remaining platforms:
X version:
We just shipped [feature].
[One specific thing it does that's impressive]
[Link]
LinkedIn version:
Excited to share: we just launched [feature] at [Company].
Here's why it matters:
[2-3 short paragraphs with context]
[Takeaway for the audience]
[Link]
Threads version:
just shipped something cool — [feature]
[casual explanation of what it does]
link in bio
X version:
TIL: [specific technical insight]
[Why it matters in one sentence]
LinkedIn version:
A pattern I've been using that's made a real difference:
[Technical insight with professional framing]
[How it applies to teams/orgs]
#relevantHashtag
If using a crossposting service (e.g., Postbridge, Buffer, or a custom API), the pattern looks like:
import os
import requests
resp = requests.post(
"https://your-crosspost-service.example/api/posts",
headers={"Authorization": f"Bearer {os.environ['POSTBRIDGE_API_KEY']}"},
json={
"platforms": ["twitter", "linkedin", "threads"],
"content": {
"twitter": {"text": x_version},
"linkedin": {"text": linkedin_version},
"threads": {"text": threads_version}
}
},
timeout=30,
)
resp.raise_for_status()
Without Postbridge, post to each platform using its native API:
x-api skill patternsBefore posting:
content-engine — Generate platform-native contentx-api — X/Twitter API integrationcontent-media
iOS 26 Liquid Glass design system — dynamic glass material with blur, reflection, and interactive morphing for SwiftUI, UIKit, and WidgetKit.
development
--- name: laravel-verification description: Verification loop for Laravel projects: env checks, linting, static analysis, tests with coverage, security scans, and deployment readiness. origin: ECC --- # Laravel Verification Loop Run before PRs, after major changes, and pre-deploy. ## When to Use - Before opening a pull request for a Laravel project - After major refactors or dependency upgrades - Pre-deployment verification for staging or production - Running full lint -> test -> security ->
development
Test-driven development for Laravel with PHPUnit and Pest, factories, database testing, fakes, and coverage targets.
testing
Laravel security best practices for authn/authz, validation, CSRF, mass assignment, file uploads, secrets, rate limiting, and secure deployment.