.agents/skills/dneprokos-medium-article-reviewer/SKILL.md
Review a Medium article written by Kostiantyn Teltov (@dneprokos) and produce a section-by-section critique with actionable suggestions based on his established writing style. Use this skill whenever the user provides a Medium article URL and asks to review it, check its style, analyze a blog post, suggest improvements, or give feedback on a draft or published article — even if they say only "review this", "check my post", or paste a medium.com link.
npx skillsauth add dneprokos/skills-examples dneprokos-medium-article-reviewerInstall 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.
Review a Medium article for alignment with Kostiantyn Teltov's personal writing style and produce a structured set of improvement suggestions per section.
Do not use this skill for:
Use WebFetch with the URL provided by the user to retrieve the article content.
If the URL is not a public Medium article (behind paywall, login-required, 404), tell the user it could not be fetched and ask them to paste the article text directly.
Read references/writing-style-guide.md in full. This is your scoring rubric — keep it in mind throughout the entire analysis.
Before writing the review, mentally map out the article:
For each section in the article:
references/writing-style-guide.mdBe generous with praise where the style is well-executed — the goal is honest, balanced feedback, not just a list of problems.
Go through the Quick Reference checklist from the style guide. Mark each category as:
✅ Matches style — clearly present and well done⚠️ Partial — present but could be stronger❌ Missing — not present, should be addedUse the output format defined below. Keep the tone constructive and peer-like — this is a colleague review, not an audit.
Always use exactly this structure:
# Article Review: [Article Title]
## Overall Impression
(2–4 sentences. How well does this article reflect the author's established style?
What is the strongest aspect? What is the most significant gap?)
## Section-by-Section Feedback
### [Section name or "Opening / Introduction"]
**What works well:**
- (specific observation with brief quote if helpful)
**Suggestions:**
- [Issue]: (explain the gap and why it matters for this style)
→ Suggested rewrite: "[example of how it could read instead]"
### [Next section name]
...
(Repeat for every major section. Skip a section only if it has no meaningful feedback.)
## Style Checklist
| Category | Status | Notes |
|---|---|---|
| Opening & Greeting | ✅ / ⚠️ / ❌ | (one-line note) |
| Title & Subtitle | ✅ / ⚠️ / ❌ | |
| Tone & Voice | ✅ / ⚠️ / ❌ | |
| Article Structure | ✅ / ⚠️ / ❌ | |
| Concept Explanations | ✅ / ⚠️ / ❌ | |
| Code Examples | ✅ / ⚠️ / ❌ | (or "N/A — non-technical article") |
| Visual Elements | ✅ / ⚠️ / ❌ | |
| Paragraph Style | ✅ / ⚠️ / ❌ | |
| Closing & Conclusion | ✅ / ⚠️ / ❌ | |
| Technical Depth Balance | ✅ / ⚠️ / ❌ | (or "N/A") |
| Standalone Quoted Emphasis | ✅ / ⚠️ / ❌ | |
## Top 3 Suggestions
1. **[Category]** — [Most impactful thing to improve, in one or two sentences.]
2. **[Category]** — [Second most impactful suggestion.]
3. **[Category]** — [Third most impactful suggestion.]
Be specific. Vague feedback like "improve the tone" is not useful. Quote the actual sentence that could be better and show what it could look like.
Respect the author's voice. The goal is to bring the article closer to Kostiantyn's own established voice — not to rewrite it in a generic style. If something feels off from his personal voice, explain it in terms of his own patterns (e.g., "your other articles often open with a personal anecdote — this one jumps straight to a definition").
Balance praise and suggestions. If a section is already strong, say so clearly. Over-critiquing a well-written piece is as unhelpful as under-critiquing a weak one.
Non-technical articles. If the article has no code (process, culture, career topics), mark Code Examples as N/A and skip that category. The same applies to Technical Depth Balance. Focus your energy on tone, structure, and storytelling.
Partial sections. If the article is a draft and some sections are clearly unfinished, note that and offer directional guidance rather than trying to score incomplete content.
data-ai
Install and configure Windows Credential Manager style secret storage for PowerShell using SecretManagement and SecretStore. Use when users ask to install secret manager support, set up Credential Manager for GitHub token storage, or bootstrap GitHubToken for PR skills.
development
Generate a complete, compilable unit test file from an Analyst test plan and Architect strategy. Uses AAA pattern, language-specific frameworks (NUnit, JUnit 5, pytest, Vitest), correct mock/real dependency instantiation, constructor null-guard tests, parameterized tests, and setup/teardown hooks. Input is the Analyst JSON plan plus Architect strategy summary. Use when asked to generate test code, write test implementation, create test file, or implement tests from a plan. Also invoked as Phase 3 by the unit-test-generator agent.
development
Define the mocking strategy and assertion style for a unit test plan. Classifies each dependency as mock or real, resolves assertion framework and test file location from project patterns, lists constructor null-guard tests with expected exception types, and specifies abstraction interfaces for non-deterministic calls. Input is a JSON test plan from ut-analyst. Use when asked to define mocking strategy, plan test architecture, classify dependencies as mock vs real, or design test structure. Also invoked as Phase 2 by the unit-test-generator agent.
testing
Analyze a class or function and produce a structured JSON test plan. Classifies all dependencies (interface, abstract, valueObject, dto, primitive), detects non-deterministic calls, enumerates test cases using black-box techniques (Equivalence Partitioning, Boundary Value Analysis, Decision Table, State Transition), and lists constructor null-guard requirements. Use when asked to analyze a class for testing, create a test plan, classify dependencies, or produce test case inventory. Also invoked as Phase 1 by the unit-test-generator agent.