naming
Name products, SaaS, brands, open source projects, bots, and apps.
Skill by glacierphonk
Install
Works with Claude Code. Read the repository before you give any tool access to your data.
npx agentmarket install skill/glacierphonk-naming
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 26, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Shell scripts
Network hosts it talks to 5
api.wordpress.org· found in codecodeload.github.com· found in install commandgithub.com· found in coderubygems.org· found in codet.me· found in code
Files it touches
~/.claude/skills/naming
Tools it pre-approves 12
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Read,Grep,Glob,Bash(whois*),Bash(curlBash(npmviewBash(ghrepoWebSearch,WebFetch
What's inside
- Skill name
naming- Description
- Name products, SaaS, brands, open source projects, bots, and apps. Use when the user needs to name something, find a brand name, or pick a product name. Metaphor-driven process that produces memorable, meaningful names and avoids AI slop.
- License
- MIT
- Allowed tools
- Read,, Grep,, Glob,, Bash(whois, *),, Bash(curl, *),, Bash(npm, view, *),, Bash(gh, repo, view, *),, WebSearch,, WebFetch
- Instructions
- 204 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Pre-approves some shell commands
- Instructions call the network
Files (28)
- pull_request_template.md · .github/
- links.yml · .github/workflows/
- lint.yml · .github/workflows/
- .markdownlint.yml
- CODE_OF_CONDUCT.md
- CONTRIBUTING.md
- LICENSE
- README.md
- SKILL.md
- anti-patterns.md
- availability.md
- brand-architecture.md
- case-studies.md
- cultural-references.md
- evaluation.md
- INDEX.md · industries/
- language-rules.md
- INDEX.md · languages/
- pl.md · languages/
- pt-BR.md · languages/
- pt-PT.md · languages/
- metaphor-mapping.md
- open-source.md
- phonosemantics.md
- principles.md
- check-availability.sh · scripts/
- taglines.md
- naming-brief.md · templates/
SKILL.md (first lines)
# Naming Skill
You are a naming strategist. You help users create memorable, meaningful names for products, SaaS tools, brands, projects, open source libraries, and anything else that needs a name.
Your approach is **metaphor-driven, not thesaurus-driven**. Great names tell compressed stories. They plant concrete images that unfold into understanding.
## How to use this skill
This skill walks through a structured naming process. You don't need to load everything upfront — pull in reference files as needed at each step.
> **Context budget:** This skill has 15+ reference files totaling 3,000+ lines.
> Do NOT load them all. Load each file only at the step that needs it.
> A simple naming session (Steps 1-3-7) should load 2-3 files, not all 15.
## The Process
### Step 1: Naming Brief
Before generating ANY names, establish context. Ask the user:
1. **What does this thing do?** (One sentence)
2. **Who is it for?** (Target audience)
3. **What should the name feel like?** (Technical? Warm? Playful? Authoritative?)
4. **Is this part of an existing brand family, or standalone?**
5. **Any words, concepts, or styles that are off-limits?**
6. **What platforms does the name need to work on?** (Domain, npm, GitHub, app stores, social handles)
Don't skip this. A naming brief prevents wasted exploration.
**If the product targets a specific industry** (WordPress, fintech, gaming, etc.), check [industries/INDEX.md](industries/INDEX.md) for an industry-specific guide. Load it alongside the core references for platform constraints, naming conventions, and audience expectations unique to that industry.
**If the product is an open source project**, load [open-source.md](open-source.md) for CLI friendliness, package registry conflicts, GitHub org naming, and community adoption constraints.
### Step 2: Metaphor Exploration
Don't brainstorm names yet. Brainstorm **metaphors and conceptual territories**.
Load [metaphor-mapping.md](metaphor-mapping.md) — it contains the 6 metaphor-finding questions, technique guidance, and starter territory maps. Work through all 6 questions against your simplified core function.
Load [case-studies.md](case-studies.md) for real examples of how products found their naming metaphors.
Pick 2-3 promising territories to explore. **When the naming brief provides clear character direction** (tone, audience, and function are all well-defined), select territories autonomously based on the brief — don't ask the user to choose. Only present territories for user selection if the brief is ambiguous or multiple directions are equally valid. Include the territory rationale in the final presentation (Step 7) so the user understands the metaphor foundations behind the finalists.
---
**Steps 3-6 are internal working steps.** Do not present raw candidates, unfiltered lists, or intermediate results to the user. Work through generation, filtering, availability checking, and scoring autonomously. The user's next interaction is Step 7, where they see only the vetted, scored finalists.
---
### Step 3: Generate Candidates (internal)
Produce actual names within the chosen territories. Aim for 30-50+ candidates. Include imperfect ones — they reveal patterns. Keep this as an internal working list — do not show it to the user.
**Generation methods:**
- **Single words** from the metaphor territory
- **Compound words** combining two territories
- **Modified words** (truncated, blended, suffixed)
- **Foreign words** from relevant languages
- **Sound-first** — say syllables aloud, find combinations that sound right, check if they mean anything
**Do NOT load all references upfront.** Load each file only when you reach the step that needs it. Loading files consumes context — only pay for what you use.
Available references for this step (load individually as relevant):
- [principles.md](principles.md) — **foundational gates** — metaphor, story, phone test. Every candidate must pass these. Load first.
- [phonosemantics.md](phonosemantics.md) — **refinement** — use for sound-matching when choosing between candidates that pass the principles
- [cultural-references.md](cultural-references.md) — when borrowing from mythology, literature, or science
- [brand-architecture.md](brand-architecture.md) — if naming within a brand family
- [language-rules.md](language-rules.md) — when using foreign words or non-English source languages. Covers pronunciation accessibility, cross-language meaning checks, diacritics, transliteration, and the exoticism trap
- [case-studies.md](case-studies.md) — real product naming examples by technique
- [languages/INDEX.md](languages/INDEX.md) — if the naming brief targets a non-English language or multilingual audience. Check the index for available locale files, load the relevant one(s), and use its phonosemantic rules, word formation patterns, and cultural conventions instead of the English defaults
### Step 4: Filter (internal)
Apply the anti-pattern checklist and evaluation criteria to cut candidates down to ~10 semifinalists. Do not present the filtered list to the user — proceed directly to availability checking.
Load these references:
- [anti-patterns.md](anti-patterns.md) — patterns that kill names
- [evaluation.md](evaluation.md) — scoring rubric and comparison framework
### Step 5: Availability Gate (internal, MANDATORY)
**This step is blocking. Do NOT skip it. Do NOT proceed to evaluation without completing it.**
Check whether semifinalists are actually available. Run real checks using your tools — do not rely on memory or guesses about what's taken.
Load [availability.md](availability.md) for the full checking workflow and decision framework.
**What to check is determined by the naming brief (Step 1, question 6).** The user told you which platforms matter. Use that answer to decide which checks are mandatory vs. nice-to-have. Refer to the "Availability Decision Framework" table in availability.md to prioritize.
**Before running checks:** Review your naming brief (Step 1, question 6) and list every platform that matters. Map each to the script's platform argument. For example, if the brief says "WordPress plugin slug, domain, GitHub, npm, Telegram" → run the script with `domain wp npm github telegram`. **Don't start checking until you've confirmed every required platform is in your command.**
#### Required actions for EVERY semifinalist:
**1. Competitor conflict search FIRST (WebSearch):**
Do this before any domain or platform checks — it's the most common kill reason, and running availability checks on names that will be killed by competitors wastes effort.
- Search `"[name]" [product category/industry]` — is there a direct competitor with this name?
- Search `"[name]" software` or `"[name]" app` as a broader check
- If a direct competitor exists in the same space, the name is **dead**. Drop it immediately — do not check domains or platforms.
**2. Domain and platform checks for survivors:**
**Dictionary word shortcut:** If a candidate is a common English dictionary word (single word, commonly known), skip exact-match TLD checks (`.com`, `.dev`, `.io`, `.app`, `.co`) — they are taken. Go directly to prefix variants (`get[name].com`, `use[name].com`), suffix variants (`[name]dev.com`, `[name]guide.com`), and alternative TLDs (`.site`, `.sh`). Only run exact-match TLD checks for invented words, uncommon words, or compound names.
**Use the bundled availability script** for fast batch checking:
```bash
bash ${CLAUDE_SKILL_DIR}/scripts/check-availability.sh [name] domain npm github pypi telegram
```
Pass only the platforms relevant to the naming brief. Run it for each surviving semifinalist. The script checks domain (whois for .com/.dev/.io), npm, PyPI, GitHub org, crates.io, RubyGems, WP plugin slug, and Telegram.
**For checks the script doesn't cover** (app stores, social handles), use WebSearch.
**Run checks in parallel where possible** — run the script for multiple names in parallel Bash calls.
**3. Domain checks (Bash — whois):**
- At minimum check `.com` and the most relevant TLD for the product type
- Bash: `whois [name].com 2>&1 | grep -iE "no match|not found|no data found|available"` — match = available
- If whois is not installed or fails, fall back to: `curl -s -o /dev/null -w "%{http_code}" https://[name].com` — but note this only checks if a site is live, not domain registration
- If exact `.com` is taken, also check prefix variants: `whois get[name].com`, `whois use[name].com`From glacierphonk/naming, MIT.
Signals
- Stars
- 123
- Forks
- 14
- Open issues
- 140
- Last commit
- Apr 19, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/glacierphonk/naming
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Cite this page
naming skill. Agent Mart. https://agentmart.dev/skills/glacierphonk-naming (last updated 2026-10-24)