Best for
- Use when creating, outlining, researching, revising, auditing, or packaging Medium stories, essays, tutorials, reviews, explainers, comparisons, case studies, publication submissions, Medium 长文, Medium 选题, Medium Topics…
flaqai/Awesome_SEO_Writing_Skill/writer/medium-writer/SKILL.md
Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.
Decision brief
Medium-native long-form research, author-assistance, writing, editing, review, topic discovery, publication matching, and packaging workflow.
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/medium-writer"Inspect the Agent Skill "medium-writer" from https://github.com/flaqai/Awesome_SEO_Writing_Skill/blob/7d30056b47534d6d31d93e74d788268a788dac1f/writer/medium-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 Medium-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 stories in one folder.
Help an author turn original experience, expertise, notes, research, or a defensible idea into a Medium-native story that rewards the reader's time.
If the user says only “Medium article,” default to a Medium story published from the author's profile. Recommend a Publication only after checking its current theme, submission rules, open status, and story fit.
Read every relevant file completely before acting:
Medium currently distinguishes human-created writing, AI-assisted writing, and primarily AI-generated writing. This skill is an author-assistance and editorial workflow, not a way to disguise automated writing as human work.
Permission review
The documentation asks the agent to read local files, directories, or repositories.
Read every relevant file completely before acting:The documentation asks the agent to create, modify, or delete local files.
### 1. Create an isolated story directoryThe documentation asks the agent to run terminal commands or scripts.
node writer/medium-writer/scripts/audit-medium-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
Help an author turn original experience, expertise, notes, research, or a defensible idea into a Medium-native story that rewards the reader's time.
This skill reuses the parent writer workflow for fact checking, source discipline, humanization, local images, and optional Cloudflare R2 delivery, but it does not treat Medium as a generic SEO blog, a LinkedIn article host, or an automated content-distribution channel.
Medium-native work prioritizes:
Default language follows the user's request. Medium's current distribution guidance treats English and non-English stories differently, so record the target language and do not imply equal eligibility for General Distribution or Boost without current verification.
| Destination | Workflow |
|---|---|
| Medium story, essay, tutorial, review, or Publication submission | Use this skill |
| LinkedIn Article, newsletter, or LinkedIn thought leadership | Use ../linkedin-writer/SKILL.md |
| Google-first website article | Use ../SKILL.md |
| Chinese WeChat Official Account article | Use ../wechat-writer/SKILL.md |
If the user says only “Medium article,” default to a Medium story published from the author's profile. Recommend a Publication only after checking its current theme, submission rules, open status, and story fit.
Read every relevant file completely before acting:
references/medium-topic-research.mdreferences/medium-article-template.mdreferences/medium-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.
Medium currently distinguishes human-created writing, AI-assisted writing, and primarily AI-generated writing. This skill is an author-assistance and editorial workflow, not a way to disguise automated writing as human work.
Apply these rules:
The publishing pack must record:
not eligible, needs author verification, or eligible based on verified human authorship;not claimed unless Medium has already assigned a verified badge after publication.Before research or writing, create or infer a brief in 14 lines or fewer and save it as medium-brief.md:
Make conservative assumptions when information is missing. Ask only when authorship material, thesis, target reader, or permission to use personal material is materially ambiguous.
Run brief -> topic research -> evidence -> outline -> draft -> audit -> rewrite -> humanize -> package. Deliver a reviewed local draft and state the author-review and disclosure requirements.
When the user asks what to write, generate and rank topic opportunities only. Do not turn every topic into a shallow story.
Use this when the story needs lived experience but the user supplied only a topic. Produce 5-10 precise questions that can elicit scenes, decisions, mistakes, sensory details, evidence, and changed beliefs. Pause only if the missing answers would determine the truth of the story.
Pause at the shortlist or outline when the user explicitly asks to choose first.
If the user asks only for review, do not overwrite the draft. If they ask to improve it, preserve the original, apply fixes, and re-audit.
Use:
writer/medium-writer/output/<story-slug>/
This Medium-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 stories in one folder.
Recommended working files:
medium-brief.md
medium-topic-map.md
source-ledger.md
outline.md
draft.md
article-medium.md
medium-audit.md
medium-publishing-pack.md
image-plan.md
Create only what the task needs. Keep draft.md separate from article-medium.md.
article-medium.docx is optional and should be created only when the user requests Word handoff or offline editorial review. A .docx is not a native Medium publishing requirement.
Read references/medium-topic-research.md completely.
Research across:
Record query, date, surface, directly observed signal, editorial inference, and evidence strength in medium-topic-map.md.
Separate:
Never convert Topic follower counts, story counts, claps, or recommendation placement into guaranteed demand.
Medium currently allows up to five Topics per story. Choose only relevant Topics:
Use fewer than five when additional Topics would dilute the story. Topic spamming can restrict distribution.
For every Topic, record:
Do not select a Publication solely by follower count.
Check:
Record best fit, possible fit, or profile-first, with evidence. Never claim acceptance before the Publication editor approves the story.
Create source-ledger.md for fact-heavy, current, comparative, reported, product, health, legal, financial, or policy-related stories.
Record for each material item:
verified, user_provided, needs_verification, softened, removed, or unsupported;Generated suggestions cannot become personal experience. Unsupported material cannot enter the final story.
Select one primary architecture:
Avoid forcing every story into “introduction, benefits, challenges, future.”
Save outline.md with:
If the user requested a full draft, continue without waiting unless missing author material would require fabrication.
Read references/medium-article-template.md completely.
The first 100-150 words should establish:
Then:
Do not add an FAQ unless the story format genuinely benefits from it. Do not add a “Key Takeaways” block to a personal essay unless the author wants that register.
Medium's current guidance says images, if used, should add value. A poor cover is worse than no cover.
Keep local relative paths first. Upload only when public URLs are needed and a valid local R2 configuration exists.
Verify all objective claims, comparisons, dates, products, policies, and high-risk advice. Then ask:
Record the result in medium-audit.md and medium-publishing-pack.md.
Read references/medium-review-rubric.md completely. Score:
Resolve blocking and high-impact issues directly. Then read ../references/humanization.md and improve cadence, specificity, transitions, and voice without inventing experience or hiding AI assistance.
Run the deterministic audit:
node writer/medium-writer/scripts/audit-medium-markdown.mjs \
writer/medium-writer/output/<story-slug>/article-medium.md \
--pack writer/medium-writer/output/<story-slug>/medium-publishing-pack.md \
--topic "<primary Medium Topic>" \
--ai-assisted
Add --ai-images when the package contains generated or materially AI-assisted images.
The script checks Markdown and publishing-pack signals only. It cannot verify authorship, factual accuracy, originality, Publication acceptance, distribution, or Boost eligibility.
Save medium-publishing-pack.md separately. Include:
not claimed or verified post-publication status;Do not put internal Topic rationales, Publication notes, paywall analysis, or audit results in the public story body.
A normal complete Medium story package contains:
writer/medium-writer/output/<story-slug>/
├── article-medium.md
├── medium-brief.md
├── medium-topic-map.md
├── source-ledger.md
├── outline.md
├── medium-audit.md
├── medium-publishing-pack.md
└── image-plan.md
Add draft.md, images, article-medium.docx, compressed R2 copies, or image-urls.json only when needed.
The final response should state:
Treat distribution as a platform decision, not an output promise:
Optimize for reader trust, originality, experience, value, and craft. Do not write to a checklist that claims to guarantee Boost.
When the user asks to evaluate a published story, use current Medium Stats rather than predictions.
Review what is available:
There is no universal good feed clickthrough or read ratio. Compare the author's stories over time, by format and audience, rather than inventing benchmark targets.
Use the results to update:
Frequently asked questions
Medium-native long-form research, author-assistance, writing, editing, review, topic discovery, publication matching, and packaging workflow.
The source record exposes this install command: npx skills add https://github.com/flaqai/Awesome_SEO_Writing_Skill --skill "writer/medium-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
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
wanshuiyin/Auto-claude-code-research-in-sleep
Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.
prowler-cloud/prowler
PostgreSQL indexing best practices for Prowler: index design, partial indexes, partitioned table indexing, EXPLAIN ANALYZE validation, concurrent operations, monitoring, and maintenance. Trigger: When creating or modifying PostgreSQL indexes, analyzing query performance with EXPLAIN, debugging slow queries, reviewing index usage statistics, reindexing, dropping indexes, or working with partitioned table indexes. Also trigger when discussing index strategies, partial indexes, or index maintenance
brucesongs/kali-claw
Insecure Design (OWASP A06:2025) focuses on security flaws in system architecture and design phases, rather than code implementation-level bugs.