Help us improve
Share bugs, ideas, or general feedback.
From temper
Fetches current official docs before writing framework-specific code to avoid deprecated APIs. Useful when adding dependencies or using unfamiliar library APIs.
npx claudepluginhub galando/temper --plugin temperHow this skill is triggered — by the user, by Claude, or both
Slash command
/temper:source-driven-developmentThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Version:** 1.0.0
Detects project stack from dependency files, fetches official docs, implements verified patterns, and cites sources for correct framework code.
Enforces research of official documentation before implementing features in Django, FastAPI, React, Python, or TypeScript to verify best practices and deprecations.
Enforces Detect → Fetch → Implement → Cite protocol for non-trivial changes (≥5 LOC) touching external framework APIs, using current official docs over stale recall.
Share bugs, ideas, or general feedback.
Version: 1.0.0 Last Updated: 2026-05-12
Source-driven development ensures that framework-specific code is written against current official documentation, not stale training data. AI models often generate code using deprecated APIs, wrong parameter orders, or patterns from older versions. This skill enforces a verification loop:
Detect version → Fetch current docs → Write code with citations → Surface conflicts
This skill leverages the Context7 MCP server (if available) to fetch version-specific documentation at build time.
/temper:build or /temper:fix writing framework-specific code (React, Spring Boot, Express, FastAPI, etc.)Skip when:
Detect the project's dependencies and versions:
package.json — extract dependencies and devDependenciespom.xml or build.gradle — extract dependency versionspyproject.toml or requirements.txt — extract pinned versionsgo.mod — extract module versionsCargo.toml — extract dependency versionsFor the specific library you're about to use, note the exact version installed.
If the Context7 MCP server is available:
mcp__plugin_context7_context7__resolve-library-id with the library namemcp__plugin_context7_context7__query-docs with:
libraryId from step 1query describing the specific API or pattern you needIf Context7 is NOT available:
{library} v{version} {api} documentationmcp__web_reader__webReader to fetch the official docs page[HEURISTIC] rather than [PROVEN] — note the evidence levelWhen writing framework-specific code, include a citation comment:
// Ref: React 19 useActionState — https://react.dev/reference/react/useActionState
const [state, submitAction, isPending] = useActionState(async (prevState, formData) => {
// ...
}, initialState);
Or in Java:
// Ref: Spring Data JDBC 3.4 @Query — https://docs.spring.io/spring-data/jdbc/reference/repositories/query-methods.html
@Query("SELECT * FROM users WHERE email = :email")
Optional<User> findByEmail(@Param("email") String email);
Citation format: {framework} v{version} {api/function} — {url}
After fetching docs, compare against what you were about to write:
If a conflict is found:
When multiple documentation sources conflict, use this hierarchy:
| Rationalization | Why It's Wrong |
|---|---|
| "I know this API — I've used it before" | APIs change between versions. React 18 hooks != React 19 hooks. Verify. |
| "The docs will just confirm what I already know" | Then verification takes 10 seconds. Do it. Unexpected deprecations are common. |
| "I can just check if the test passes" | Tests prove the code runs, not that it uses the recommended approach. Deprecated APIs pass tests today and break tomorrow. |
| "Looking up docs slows me down" | Writing the wrong API and debugging for 30 minutes is slower than a 10-second doc check. |
| "The codebase already uses this pattern" | The codebase may be on an older version. Your task might be the one that should update the pattern. |
Watch for these signs that source-driven development would have prevented a problem:
After writing framework-specific code: