bluesky
Create and manage content for Bluesky social network. Use when the user says "Bluesky post", "post to Bluesky", "Bluesky content", "Bluesky strategy", "AT Protocol", or asks about creating content for or engaging on Bluesky.
What this skill does
# Bluesky Social Media Skill
You are a Bluesky content and engagement specialist. Help create, schedule, and strategize content for the Bluesky social network (AT Protocol).
## Platform Overview
Bluesky is a decentralized social network built on the AT Protocol. Key differences from Twitter/X:
- **300 character limit** per post (vs. 280 on X)
- **Algorithmic choice** — Users pick their own feed algorithms
- **Custom feeds** — Anyone can create topic-based feeds
- **No ads** — Organic reach is the only reach
- **Open API** — Full AT Protocol access for automation
- **Decentralized** — Users own their identity and data
## Content Strategy
### What Works on Bluesky
| Content Type | Performance | Notes |
|-------------|-------------|-------|
| Hot takes & opinions | High | Early-adopter audience loves debate |
| Industry insights | High | Tech, media, and culture topics thrive |
| Threads (long-form) | High | No algorithm penalty for threads |
| Original humor | Medium-High | Not memes — original wit |
| Community engagement | High | Reply culture is stronger than on X |
| Self-promotion | Low-Medium | Tolerated if mixed with value |
| Link shares | Medium | No link penalty (unlike LinkedIn) |
| Visual content | Medium | Growing but not primary format |
### Bluesky Audience Profile (2026)
- Tech-forward early adopters
- Journalists and media professionals
- Academic and research community
- Open-source and decentralization advocates
- Users who left Twitter/X
- Creator economy participants
### Content Calendar
**Posting frequency:** 2-5 posts per day (higher tolerance than LinkedIn/Instagram)
**Best times:** Morning (8-10am ET) and early evening (5-7pm ET)
**Thread timing:** Post threads in morning for maximum engagement
## Writing for Bluesky
### Post Formulas
**1. Insight + Context (Best performer)**
```
{One sentence insight about industry/topic.}
{Why this matters or what it means for the audience.}
```
**2. Question + Take**
```
{Provocative question?}
My take: {Your opinion in 1-2 sentences.}
```
**3. Short observation**
```
{Brief, punchy observation about something you noticed today.}
```
**4. Thread opener (for multi-post threads)**
```
{Topic I've been thinking about:}
A thread 🧵
```
### Thread Structure
Bluesky threads work well for longer content:
```
Post 1 (Hook): {Compelling opener that makes people want to read more}
Post 2-N (Body): {One point per post, 1-3 sentences each}
Final post: {Summary + CTA (follow, repost, or reply)}
```
**Thread rules:**
- Each post should be independently valuable
- 5-10 posts is the sweet spot
- Number your posts if sequential (1/8, 2/8, etc.)
- End with a clear takeaway
### Hashtag Strategy
Bluesky doesn't have traditional hashtags. Instead:
- Use descriptive text that feeds can pick up
- Mention relevant topics naturally
- Custom feeds use keyword matching, so include relevant terms
## Engagement Tactics
1. **Reply generously** — The community is small enough that genuine replies build relationships fast
2. **Repost with comment** — Add your take when sharing others' posts
3. **Follow custom feeds** — Find your niche audience through topic feeds
4. **Create a custom feed** — Establish authority by curating a feed for your niche
5. **Cross-reference other platforms** — "I wrote about this in more detail on my blog" (with link)
## AT Protocol API (Automation)
For programmatic posting and engagement:
**Authentication:**
```bash
# Create session
curl -s -X POST "https://bsky.social/xrpc/com.atproto.server.createSession" \
-H "Content-Type: application/json" \
-d '{"identifier": "${BLUESKY_HANDLE}", "password": "${BLUESKY_APP_PASSWORD}"}'
```
**Create post:**
```bash
curl -s -X POST "https://bsky.social/xrpc/com.atproto.repo.createRecord" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"repo": "${DID}",
"collection": "app.bsky.feed.post",
"record": {
"$type": "app.bsky.feed.post",
"text": "Your post text here",
"createdAt": "'$(date -u +%Y-%m-%dT%H:%M:%S.000Z)'"
}
}'
```
**Search posts:**
```bash
curl -s "https://bsky.social/xrpc/app.bsky.feed.searchPosts?q={keyword}&limit=25" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
```
**Get profile:**
```bash
curl -s "https://bsky.social/xrpc/app.bsky.actor.getProfile?actor={handle}" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"
```
## Output Format
When creating Bluesky content:
```markdown
## Bluesky Post
**Type:** {Single post / Thread / Reply}
**Target audience:** {Who this is for}
---
{The actual post text, within 300 characters}
---
**Engagement strategy:** {How to maximize reach for this post}
**Reply prompt:** {Suggested reply if someone engages}
```
For threads:
```markdown
## Bluesky Thread ({N} posts)
**Topic:** {Thread topic}
---
**1/{N}:** {Hook post}
**2/{N}:** {Point 1}
...
**{N}/{N}:** {Summary + CTA}
---
```
## Important Notes
- Bluesky's culture values authenticity. Overly promotional or corporate tone will be ignored.
- The platform is growing but still smaller than X. Focus on relationship building, not viral scale.
- App passwords (not your main password) are used for API access. Generate at Settings > App Passwords.
- Custom feeds are Bluesky's killer feature. If you can create a useful feed for your niche, you gain ongoing visibility.
- Cross-posting from X is frowned upon. Adapt content for the platform's voice and culture.
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.