Agent skill
find-similar
Find similar or analogous code patterns elsewhere in a codebase. Use when answering "Do we do something similar elsewhere?" or "What existing patterns match this?" Returns factual findings about similar code - locations, similarity type, and confidence.
Install this agent skill to your Project
npx add-skill https://github.com/inkeep/agents/tree/main/.agents/skills/find-similar
SKILL.md
Find Similar Patterns
A conceptual framework for systematically finding similar or analogous code patterns in a codebase.
This skill is factual, not prescriptive. It helps find and report what exists. It does not recommend whether to use, ignore, or modify findings.
Tools available: Grep, Glob, Read, Bash (git commands)
Similarity Types
"Similar" can mean different things. Identify which type matters before searching.
| Type | What It Means | Example |
|---|---|---|
| Lexical | Same names, keywords, identifiers | "Where else do we call formatDate?" |
| Structural | Same code shape, different names | "Where else do we have retry logic?" |
| Analogous | Same role in a different domain | "What's the equivalent handler in another domain?" |
| Conceptual | Same purpose, potentially different approach | "How do we handle validation elsewhere?" |
Search Strategy
Level 1: Direct Search
Search for the thing itself or obvious variations.
- Exact terms, function names, type names
- Known synonyms or alternate spellings
- Import/export statements
Stop if: Found clear matches.
Level 2: Sibling/Peer Discovery
Find files that serve the same role.
- Files in the same directory
- Files with the same naming pattern (e.g.,
*.handler.ts,use*.ts) - Files in parallel directories (e.g.,
domains/users/→domains/projects/)
Stop if: Found peers that reveal the pattern.
Level 3: Reference Tracing
Follow the dependency graph.
- Where is X defined?
- What imports/uses X?
- What does X import/use?
Stop if: Found the relevant connected files.
Level 4: Conceptual Expansion
Broaden the search with related concepts.
- Synonyms and related terms
- Different implementations of the same idea
- Cross-domain analogues
Stop if: Found conceptually similar code, or exhausted reasonable search terms.
Confidence Levels
| Confidence | Criteria |
|---|---|
| HIGH | Exact or near-exact match; clearly the same pattern |
| MEDIUM | Similar structure or purpose; some differences |
| LOW | Conceptually related; different approach or partial match |
Factors that affect confidence:
- Same directory/domain → higher
- Same naming conventions → higher
- Same imports/dependencies → higher
- Different structure or approach → lower
What to Capture (adapt to your context)
Useful information to track for each finding:
- Location — file path and line range
- Similarity type — which of the four types applies
- Confidence — how close is the match
- Why similar — brief explanation of the relationship
For negative results, note what was searched so coverage can be verified.
Tips
- Start narrow, expand as needed — Don't search the entire codebase if a directory search suffices
- Use file organization as signal — Sibling files often reveal local conventions
- Git history can help — Files that change together are often related
- Report what you searched — Helps verify coverage and enables follow-up
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
structured-itinerary-responses
Present time-aware itineraries with clear actions and citations
weather-safety-guardrails
Keep activity suggestions safe and respect local conditions
api-logging-guidelines
Best practices and guidelines for using logger in API routes. Defines appropriate logging levels, what to log, and when to avoid logging. Use when implementing or reviewing API route logging, debugging strategies, or optimizing log output.
vercel-composition-patterns
React composition patterns that scale. Use when refactoring components with boolean prop proliferation, building flexible component libraries, or designing reusable APIs. Triggers on tasks involving compound components, render props, context providers, or component architecture. Includes React 19 API changes.
write-docs
Write or update documentation for the Inkeep docs site (agents-docs package). Use when: creating new docs, modifying existing docs, introducing features that need documentation, touching MDX files in agents-docs/content/. Triggers on: docs, documentation, MDX, agents-docs, write docs, update docs, add page, new tutorial, API reference, integration guide.
product-surface-areas
Consolidated dependency graph of Inkeep customer-facing surface areas (UIs, CLIs, SDKs, APIs, protocols, config formats). Example use: as a prd-time (planning/brainstorming phase) or post-change checklist to understand the full scope of side-effects or what making one change to the product means for the rest. Use whenever you need to understand the "ripple" out effects of any change.
Didn't find tool you were looking for?