Suggestion Box
paperclipai/paperclip
Quietly suggest a concrete improvement after observing material, generalizable friction in agent work.
Suggest better variable, function, and class names based on context and conventions.
$ npx skills add davila7/claude-code-templates --skill naming-analyzer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install davila7/claude-code-templates naming-analyzer --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .claude/skills && cp -r skills-src/cli-tool/components/skills/productivity/naming-analyzer .claude/skills/naming-analyzer && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "naming-analyzer" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/productivity/naming-analyzer into .claude/skills/naming-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "naming-analyzer", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/productivity/naming-analyzerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add davila7/claude-code-templates --skill naming-analyzer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install davila7/claude-code-templates naming-analyzer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .agents/skills && cp -r skills-src/cli-tool/components/skills/productivity/naming-analyzer .agents/skills/naming-analyzer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "naming-analyzer" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/productivity/naming-analyzer into .agents/skills/naming-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "naming-analyzer", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add davila7/claude-code-templates --skill naming-analyzer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install davila7/claude-code-templates naming-analyzer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/cli-tool/components/skills/productivity/naming-analyzer .cursor/skills/naming-analyzer && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "naming-analyzer" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/productivity/naming-analyzer into .cursor/skills/naming-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "naming-analyzer", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/davila7/claude-code-templates.git --path cli-tool/components/skills/productivity/naming-analyzer--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add davila7/claude-code-templates --skill naming-analyzer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install davila7/claude-code-templates naming-analyzer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/cli-tool/components/skills/productivity/naming-analyzer .gemini/skills/naming-analyzer && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "naming-analyzer" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/productivity/naming-analyzer into .gemini/skills/naming-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "naming-analyzer", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install davila7/claude-code-templates naming-analyzerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add davila7/claude-code-templates --skill naming-analyzer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .github/skills && cp -r skills-src/cli-tool/components/skills/productivity/naming-analyzer .github/skills/naming-analyzer && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "naming-analyzer" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/productivity/naming-analyzer into .github/skills/naming-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "naming-analyzer", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add davila7/claude-code-templates --skill naming-analyzer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install davila7/claude-code-templates naming-analyzer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/cli-tool/components/skills/productivity/naming-analyzer .opencode/skills/naming-analyzer && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "naming-analyzer" agent skill from https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/productivity/naming-analyzer into .opencode/skills/naming-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "naming-analyzer", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
naming-analyzerSuggest better variable, function, and class names based on context and conventions.
Naming Analyzer is an agent skill from davila7/claude-code-templates. Suggest better variable, function, and class names based on context and conventions.
Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `README.md`).
The repository describes itself as: CLI tool for configuring and monitoring Claude Code. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 46b4d8b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript and markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Naming Analyzer loads about 2.3k tokens when it runs. Until then it costs about 25 tokens; SKILL.md has 229 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from davila7/claude-code-templates at commit 46b4d8b, republished under its MIT licence (© davila7). 229 words, ~2,291 tokens.
.claude/skills/naming-analyzer/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Suggest better variable, function, and class names based on context and conventions.
You are a naming convention expert. When invoked:
Analyze Existing Names:
Identify Issues:
Check Conventions:
Provide Suggestions:
camelCasePascalCaseUPPER_SNAKE_CASE_prefixUnderscore or #privateFieldis, has, can, should prefixessnake_casePascalCaseUPPER_SNAKE_CASE_prefix_underscoreis_, has_, can_ prefixescamelCasePascalCaseUPPER_SNAKE_CASElowercasePascalCasecamelCaseHTTPServer, not HttpServer)// ❌ Bad - Too generic
function process(data) { }
const info = getData();
let temp = x;
// ✓ Good - Specific and clear
function processPayment(transaction) { }
const userProfile = getUserProfile();
let previousValue = x;// ❌ Bad - Name doesn't match behavior
function getUser(id) {
const user = fetchUser(id);
user.lastLogin = Date.now();
saveUser(user); // Side effect! Not just "getting"
return user;
}
// ✓ Good - Name reflects actual behavior
function fetchAndUpdateUserLogin(id) {
const user = fetchUser(id);
user.lastLogin = Date.now();
saveUser(user);
return user;
}// ❌ Bad - Unclear abbreviations
const usrCfg = loadConfig();
function calcTtl(arr) { }
// ✓ Good - Clear and readable
const userConfig = loadConfig();
function calculateTotal(amounts) { }
// ✓ Acceptable - Well-known abbreviations
const htmlElement = document.getElementById('main');
const apiUrl = process.env.API_URL;// ❌ Bad - Unclear state
const login = user.authenticated;
const status = checkUser();
// ✓ Good - Clear boolean intent
const isLoggedIn = user.authenticated;
const isUserValid = checkUser();
const hasPermission = user.roles.includes('admin');
const canEditPost = isOwner || isAdmin;
const shouldShowNotification = isEnabled && hasUnread;// ❌ Bad - Unnamed constants
if (age > 18) { }
setTimeout(callback, 3600000);
// ✓ Good - Named constants
const LEGAL_AGE = 18;
const ONE_HOUR_IN_MS = 60 * 60 * 1000;
if (age > LEGAL_AGE) { }
setTimeout(callback, ONE_HOUR_IN_MS);@naming-analyzer
@naming-analyzer src/
@naming-analyzer UserService.js
@naming-analyzer --conventions
@naming-analyzer --fix-all# Naming Analysis Report
## Summary
- Items analyzed: 156
- Issues found: 23
- Critical: 5 (misleading names)
- Major: 12 (unclear/vague)
- Minor: 6 (convention violations)
---
## Critical Issues (5)
### src/services/UserService.js:45
**Current**: `getUser(id)`
**Issue**: Function name implies read-only but has side effects (updates lastLogin)
**Severity**: Critical - Misleading
**Suggestion**: `fetchAndUpdateUserLogin(id)`
**Reason**: Name should reflect the mutation
### src/utils/helpers.js:23
**Current**: `validate(x)`
**Issue**: Generic parameter name, unclear what's being validated
**Severity**: Critical - Too vague
**Suggestion**: `validateEmail(emailAddress)`
**Reason**: Specific names improve clarity
---
## Major Issues (12)
### src/components/DataList.jsx:12
**Current**: `const d = new Date()`
**Issue**: Single-letter variable in large scope
**Severity**: Major
**Suggestion**: `const currentDate = new Date()`
**Reason**: Clarity and searchability
### src/api/client.js:67
**Current**: `function proc(data) {}`
**Issue**: Abbreviated function name
**Severity**: Major
**Suggestion**: `function processApiResponse(data) {}`
**Reason**: Full words are more readable
### src/models/User.js:34
**Current**: `user.active`
**Issue**: Boolean property without prefix
**Severity**: Major
**Suggestion**: `user.isActive`
**Reason**: Follow boolean naming convention
### src/utils/format.js:89
**Current**: `const MAX = 100`
**Issue**: Generic constant name
**Severity**: Major
**Suggestion**: `const MAX_RETRY_ATTEMPTS = 100`
**Reason**: Specific purpose is clearer
---
## Minor Issues (6)
### src/config/settings.js:12
**Current**: `const API_url = '...'`
**Issue**: Inconsistent casing (mixing UPPER and lower)
**Severity**: Minor
**Suggestion**: `const API_URL = '...'` or `const apiUrl = '...'`
**Reason**: Consistency in convention
### src/helpers/string.js:45
**Current**: `function strToNum(s) {}`
**Issue**: Abbreviated function and parameter
**Severity**: Minor
**Suggestion**: `function stringToNumber(value) {}`
**Reason**: Clarity over brevity
---
## Convention Violations
### Inconsistent Boolean Prefixes
**Locations**: 8 files
**Issue**: Mixed use of `is`, `has`, `can` vs no prefix
**Recommendation**: Standardize on boolean prefixes
- Use `is` for state: `isActive`, `isVisible`
- Use `has` for possession: `hasPermission`, `hasError`
- Use `can` for ability: `canEdit`, `canDelete`
- Use `should` for decisions: `shouldRender`, `shouldValidate`
### Mixed Naming Conventions
**Location**: src/legacy/
**Issue**: Mix of camelCase and snake_case in JavaScript
**Recommendation**: Convert all to camelCase for consistency
---
## Suggested Renaming
### High Priority (Misleading or Critical)
1. `getUser` → `fetchAndUpdateUserLogin` (src/services/UserService.js:45)
2. `validate` → `validateEmail` (src/utils/helpers.js:23)
3. `process` → `processPaymentTransaction` (src/payment/processor.js:67)
### Medium Priority (Clarity)
1. `d` → `currentDate` (7 locations)
2. `temp` → `previousValue` (4 locations)
3. `data` → `apiResponse` or more specific (12 locations)
4. `arr` → `items`, `values`, or more specific (8 locations)
### Low Priority (Convention)
1. `active` → `isActive` (12 locations)
2. `error` → `hasError` (6 locations)
3. `API_url` → `API_URL` (3 locations)
---
## Naming Patterns to Follow
### Functions/Methods
- Verbs: `get`, `set`, `create`, `update`, `delete`, `fetch`, `calculate`, `validate`
- Clear action: `sendEmail()`, `parseJSON()`, `formatCurrency()`
### Classes
- Nouns: `UserService`, `PaymentProcessor`, `EmailValidator`
- Avoid generic: Don't use `Manager`, `Helper`, `Utility` unless necessary
### Variables
- Nouns or noun phrases: `user`, `emailAddress`, `totalAmount`
- Descriptive: `userList` not `list`, `activeUsers` not `users2`
### Constants
- All caps with underscores: `MAX_RETRY_ATTEMPTS`, `DEFAULT_TIMEOUT`
- Include units: `CACHE_DURATION_MS`, `MAX_FILE_SIZE_MB`
### Booleans
- Question form: `isValid`, `hasPermission`, `canEdit`
- Affirmative: `isEnabled` not `isDisabled` (prefer positive)
---
## Refactoring Script
Would you like me to create a refactoring script to apply these changes?
This will:
1. Rename all suggested items
2. Update all references
3. Maintain git history
4. Generate migration guide
---
## Best Practices
✓ **DO**:
- Use full words over abbreviations
- Be specific and descriptive
- Follow language conventions
- Use consistent patterns
- Make booleans obvious
- Include units in constants
✗ **DON'T**:
- Use single letters (except in loops: i, j, k)
- Use vague names (data, info, temp, x)
- Mix naming conventions
- Use misleading names
- Over-abbreviate
- Use Hungarian notation in modern codeIs it a boolean?
├─ Yes → Use is/has/can/should prefix
└─ No → Is it a function?
├─ Yes → Use verb phrase (action)
└─ No → Is it a class?
├─ Yes → Use noun (PascalCase)
└─ No → Is it a constant?
├─ Yes → Use UPPER_SNAKE_CASE
└─ No → Use descriptive noun (camelCase/snake_case)i, j)html, api, url, id)© davila7, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in cli-tool/components/skills/productivity/naming-analyzer of davila7/claude-code-templates.
Open the folder on GitHubat commit 46b4d8b
We found 3 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in davila7/claude-code-templates, which our catalogue first saw on October 7, 2026.
Naming Analyzer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Naming Analyzer this skilldavila7/claude-code-templates | 32k | 2 repos | ~2.3k | Automated safety check: Pass | MIT | |
| Suggestion Boxpaperclipai/paperclip | 99k | — | ~1.3k | Automated safety check: Pass | MIT | |
| Agent Code Analyzerruvnet/ruflo | 74k | 2 repos | ~1.5k | Automated safety check: Pass | MIT | |
| Agent Pagerank Analyzerruvnet/ruflo | 74k | 2 repos | ~2.9k | Automated safety check: Pass | MIT | |
| Agent Performance Analyzerruvnet/ruflo | 74k | 2 repos | ~1.3k | Automated safety check: Pass | MIT | |
| Diff Analyzeruvnet/ruflo | 74k | — | ~450 | Automated safety check: Notes | MIT |
paperclipai/paperclip
Quietly suggest a concrete improvement after observing material, generalizable friction in agent work.
ruvnet/ruflo
Agent skill for code-analyzer - invoke with $agent-code-analyzer
ruvnet/ruflo
Agent skill for pagerank-analyzer - invoke with $agent-pagerank-analyzer
ruvnet/ruflo
Agent skill for performance-analyzer - invoke with $agent-performance-analyzer
ruvnet/ruflo
Analyze git diffs for risk scoring, reviewer recommendations, and change classification.
mukul975/Anthropic-Cybersecurity-Skills
Performing security reviews of serverless functions across AWS Lambda, Azure Functions, and GCP Cloud Functions to identify overly permissive execution roles, insecure environment variables…
davila7/claude-code-templates
Runs web-grounded searches through Perplexity's Sonar models over OpenRouter for current events, recent literature and cited facts beyond the model's training cutoff.
davila7/claude-code-templates
Analyzes Neuropixels recordings from SpikeGLX or Open Ephys through preprocessing, drift correction, Kilosort4 spike sorting, quality metrics and curation.
davila7/claude-code-templates
Supplies LaTeX templates and formatting rules for journals, conferences, posters, and grant proposals, then can check a draft against them.
davila7/claude-code-templates
Analyzes a brand's existing writing to lock in a consistent voice, then builds SEO blog posts and platform-specific social content around it.
davila7/claude-code-templates
Guides corrective and preventive action (CAPA) work in a quality management system, from initiation and root cause analysis through effectiveness verification.
davila7/claude-code-templates
Senior FDA consultant and specialist for medical device companies including HIPAA compliance and requirement management.
Suggest better variable, function, and class names based on context and conventions. Naming Analyzer is an agent skill from davila7/claude-code-templates. Suggest better variable, function, and class names based on context and conventions.
Run `npx skills add davila7/claude-code-templates --skill naming-analyzer -a claude-code`. Or copy the skill folder (cli-tool/components/skills/productivity/naming-analyzer in davila7/claude-code-templates) into .claude/skills/naming-analyzer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add davila7/claude-code-templates --skill naming-analyzer -a codex`. Or copy the skill folder (cli-tool/components/skills/productivity/naming-analyzer in davila7/claude-code-templates) into .agents/skills/naming-analyzer in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davila7/claude-code-templates --skill naming-analyzer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/naming-analyzer, .gemini/skills/naming-analyzer, .github/skills/naming-analyzer and .opencode/skills/naming-analyzer in your project.
SKILL.md names no scripts, command-line tools or credentials: Naming Analyzer is instructions for the agent only. Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Naming Analyzer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Naming Analyzer: Suggestion Box (paperclipai/paperclip, 99k stars), Agent Code Analyzer (ruvnet/ruflo, 74k stars), Agent Pagerank Analyzer (ruvnet/ruflo, 74k stars) and Agent Performance Analyzer (ruvnet/ruflo, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
davila7 (a GitHub user) maintains it in davila7/claude-code-templates, which has 32,483 GitHub stars. The repository holds 478 skills in this directory. The repository was last updated on October 9, 2026.
Source: davila7/claude-code-templates on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.