moizibnyousaf/ai-agent-skills9 files

Best Practices

>-

Specification
Skill ID
moizibnyousaf/ai-agent-skills/best-practices
Publisher
moizibnyousaf
Repository
ai-agent-skills
Installs
0
Files
9
Synced
Sep 23, 2026
How to use it

Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.

moizibnyousaf/ai-agent-skills/best-practicesInstalls these files
  • SKILL.md
  • agents/best-practices-referencer.md
  • agents/codebase-context-builder.md
  • agents/task-intent-analyzer.md
  • references/anti-patterns.md
  • references/before-after-examples.md
  • references/best-practices-guide.md
  • references/common-workflows.md
  • references/prompt-patterns.md

What this skill tells the agent

Best Practices — Prompt Transformer

Transform prompts by adding what Claude needs to succeed.

Start Here

Based on user's request:

User provides a prompt to transform: → Ask using AskUserQuestion:

  • Question: "How should I improve this prompt?"
  • Header: "Mode"
  • Options:
  1. Transform directly — "I'll apply best practices and output an improved version"
  2. Build context first — "I'll gather codebase context and intent analysis first"

User asks to learn/understand: → Show the 5 Transformation Principles section

User asks for examples: → Link to references/before-after-examples.md

User asks to evaluate a prompt: → Use the Success Criteria eval rubric at the end of this document


If "Transform directly"

Apply the 5 principles below and output the improved prompt immediately.

If "Build context first"

Launch 3 parallel agents to gather context:

Run these agents IN PARALLEL using the Task tool:

- Task task-intent-analyzer("[user's prompt]")
- Task best-practices-referencer("[user's prompt]")
- Task codebase-context-builder("[user's prompt]")

What Each Agent Returns

AgentMissionReturns
task-intent-analyzerUnderstand what user is trying to doTask type, gaps, edge cases, transformation guidance
best-practices-referencerFind relevant patterns from references/Matching examples, anti-patterns to avoid, transformation rules
codebase-context-builderExplore THIS codebaseSpecific file paths, similar implementations, conventions

After Agents Return

  1. Synthesize findings — Combine intent + best practices + codebase context
  2. Apply matching patterns — Use examples from best-practices-referencer as templates
  3. Ground in codebase — Add specific file paths from codebase-context-builder
  4. Transform the prompt — Apply the 5 principles with all gathered context
  5. Output — Show improved prompt with before/after comparison

Agent Definitions

The agents are defined in agents/:

  • agents/task-intent-analyzer.md — Analyzes intent, gaps, and edge cases
  • agents/best-practices-referencer.md — Finds relevant examples and patterns from references/
  • agents/codebase-context-builder.md — Explores codebase for files and conventions

Transformation Workflow

When transforming (after mode selection):

  1. Identify what's missing — Check against the 5 principles below
  2. Add missing elements — Verification, context, constraints, phases, rich content
  3. Output the improved prompt — In a code block, ready to copy-paste
  4. Show what changed — Brief comparison of before/after

The 5 Transformation Principles

Apply these in order of priority:

1. Add Verification (Highest Priority)

The single highest-leverage improvement. Claude performs dramatically better when it can verify its own work.

MissingAdd
No success criteriaTest cases with expected inputs/outputs
UI changes"take screenshot and compare to design"
Bug fixes"write a failing test, then fix it"
Build issues"verify the build succeeds after fixing"
Refactoring"run the test suite after each change"
No root cause enforcement"address root cause, don't suppress error"
No verification report"summarize what you ran and what passed"
BEFORE: "implement email validation"
AFTER:  "write a validateEmail function. test cases: user@example.com → true,
         invalid → false, user@.com → false. run the tests after implementing"
BEFORE: "fix the API error"
AFTER:  "the /api/orders endpoint returns 500 for large orders. check
         OrderService.ts for the error. address the root cause, don't suppress
         the error. after fixing, run the test suite and summarize what passed
         and what you verified."

2. Provide Specific Context

Replace vague references with precise locations and details.

VagueSpecific
"the code"src/auth/login.ts
"the bug""users report X happens when Y"
"the API""the /api/users endpoint in routes.ts"
"that function"processPayment() on line 142

Four ways to add context:

StrategyExample
Scope the task"write a test for foo.py covering the edge case where user is logged out. avoid mocks."
Point to sources"look through ExecutionFactory's git history and summarize how its API evolved"
Reference patterns"look at HotDogWidget.php and follow that pattern for the calendar widget"
Describe symptoms"users report login fails after session timeout. check src/auth/, especially token refresh"

Respect Project CLAUDE.md:

If the project has a CLAUDE.md, the transformed prompt should:

  • Not contradict project conventions
  • Reference project-specific patterns when relevant
  • Note any project constraints that apply
BEFORE: "add a new API endpoint"
AFTER:  "add a GET /api/products endpoint. check CLAUDE.md for API conventions
         in this project. follow the pattern in routes/users.ts. run the API
         tests after implementing."
BEFORE: "fix the login bug"
AFTER:  "users report login fails after session timeout. check the auth flow
         in src/auth/, especially token refresh. write a failing test that
         reproduces the issue, then fix it"

3. Add Constraints

Tell Claude what NOT to do. Prevents over-engineering and unwanted changes.

Constraint TypeExamples
Dependencies"no new libraries", "only use existing deps"
Testing"avoid mocks", "use real database in tests"
Scope"don't refactor unrelated code", "only touch auth module"
Approach"address root cause, don't suppress error", "keep backward compat"
Patterns"follow existing codebase conventions", "match the style in utils.ts"
BEFORE: "add a calendar widget"
AFTER:  "implement a calendar widget with month selection and year pagination.
         follow the pattern in HotDogWidget.php. build from scratch without
         libraries other than the ones already used in the codebase"

4. Structure Complex Tasks in Phases

For larger tasks, separate exploration from implementation.

The 4-Phase Pattern:

Phase 1: EXPLORE
"read src/auth/ and understand how we handle sessions and login.
 also look at how we manage environment variables for secrets."

Phase 2: PLAN
"I want to add Google OAuth. What files need to change?
 What's the session flow? Create a plan."

Phase 3: IMPLEMENT
"implement the OAuth flow from your plan. write tests for the
 callback handler, run the test suite and fix any failures."

Phase 4: COMMIT
"commit with a descriptive message and open a PR"

When to use phases:

  • Uncertain about the approach
  • Change modifies multiple files
  • Unfamiliar with the code being modified

Skip phases when:

  • Could describe the diff in one sentence
  • Fixing a typo, adding a log line, renaming a variable
BEFORE: "add OAuth"
AFTER:  "read src/auth/ and understand current session handling. create a plan
         for adding OAuth. then implement following the plan. write tests and
         verify they pass"

5. Include Rich Content

Provide supporting materials that Claude can use directly.

Content TypeHow to Provide
FilesUse @filename to reference files
ImagesPaste screenshots directly
ErrorsPaste actual error messages, not descriptions
LogsPipe with `cat error.log \claude`
URLsLink to relevant documentation
BEFORE: "make the dashboard look better"
AFTER:  "[paste screenshot] implement this design for the dashboard.
         take a screenshot of the result and compare it to the original.

Use this skill in a project

Open any RiverX project, search the Skills panel for moizibnyousaf/ai-agent-skills/best-practices, and install it in one click.

Use this skill