name-project

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Patrick's Naming System

帕特里克命名系统

Instructions for running an interactive naming session.

用于运行交互式命名会话的操作说明。

What This Is

系统简介

Instructions, seed data, and an evaluation formula for helping name projects through interactive, multi-round sessions. The agent gets progressively better at suggesting names based on your reactions. Everything happens in conversation.
The agent can use external tools (name generators, word-relationship APIs, web searches) opportunistically when they'd help break a creative rut. No fixed list — use whatever's available.

这是一套通过交互式多轮会话帮助为项目命名的操作说明、种子数据和评估公式。Agent会根据你的反馈逐步优化命名建议,所有流程都在对话中完成。
当需要打破创意瓶颈时,Agent可以酌情调用外部工具(命名生成器、词汇关联API、网页搜索),没有固定工具列表,使用所有可用的资源即可。

Three Layers of Data

三层数据架构

The system has three layers. Each builds on the one below it.
Layer 1 — Base Seed (this document) General developer context, values, aesthetic preferences, and the evaluation formula. Ships with this file. Updated manually when general preferences change.
Layer 2 — Persisted Taste Profile Learned across naming sessions. What patterns, sounds, vibes, and word types you're consistently drawn to or repelled by. Survives between sessions. Can be refined or cleared on request. Stored by the agent however it persists data (memory edits, a companion file, etc.).
Layer 3 — Session Data The current naming session: project context, carried-forward selections, round history, per-session taste refinements. Cleared when the session ends (name locked or session explicitly closed).
When scoring or generating names, the agent applies all three layers: base seed as foundation, persisted taste as a lens, session data as the sharpest signal.

系统包含三层数据,每层都基于下一层构建。
Layer 1 — Base Seed (this document) 通用开发者上下文、价值观、审美偏好和评估公式,随本文件一同提供,当通用偏好发生变化时手动更新。
Layer 2 — Persisted Taste Profile 在多轮命名会话中学习得到的信息,包含你一贯喜欢或排斥的命名模式、发音、风格和词汇类型,会话结束后仍会保留,可以按需优化或清空。Agent可以通过任意持久化方式存储(记忆编辑、配套文件等)。
Layer 3 — Session Data 当前命名会话的数据:项目上下文、携带的选中项、轮次历史、单会话偏好优化结果,会话结束(名称确定或会话明确关闭)后清空。
在对命名进行评分或生成时,Agent会综合应用三层数据:基础种子作为底层依据,持久化偏好作为筛选视角,会话数据作为最精准的信号。

Starting a Session

启动会话

Context Discovery

上下文收集

Before asking any questions, the agent should build its own understanding of the project by scanning what's available: README, package.json (description, keywords, tags), doc files, config files with descriptive metadata. Don't load code — look for descriptive signals.
The agent should also draw on its memory of past conversations and anything it already knows about the project.
在询问用户任何问题之前,Agent应该先通过扫描可用信息自行构建对项目的认知:README、package.json(描述、关键词、标签)、文档文件、带有描述性元数据的配置文件。不需要加载代码,仅查找描述性信号即可。
Agent还应该利用过往对话记忆,以及它已经了解的关于该项目的所有信息。

What the Agent Needs to Know

Agent需要收集的信息

The agent needs enough context to generate good names in Round 1. The goal is to understand:
  • What the project does and who it's for
  • What it's LIKE — the core metaphor or feeling
  • What emotional register it should hit
  • What it must work as (package name, domain, repo, etc.)
  • What sibling names exist in the ecosystem
  • What themes, references, or imagery resonate
  • What names or patterns to avoid
For concrete data points (what it does, what it must work as, sibling names), ask directly if unknown. For subjective dimensions (metaphor, feeling, themes), describe what you're trying to understand and prompt adaptively based on what you've already learned from project files and memory.
If the agent is confident about an answer from its own research, skip the question silently. If it inferred a subjective answer (like the project's emotional register), confirm it before proceeding.
After the initial scan and any questions, the agent should ask itself: "Do I have any follow-up questions that would meaningfully improve Round 1?" If yes, ask them. If not, move to research.
Agent需要足够的上下文才能生成高质量的第一轮命名,目标是了解:
  • 项目的功能、面向的用户群体
  • 项目的特质——核心隐喻或给人的感受
  • 应该匹配的情绪调性
  • 名称的适用场景(包名、域名、代码仓库等)
  • 生态中已有的同系列项目名称
  • 能引起共鸣的主题、典故或意象
  • 需要避免的名称或命名模式
对于具体的信息点(功能、适用场景、同系列名称),如果未知可以直接询问。对于主观维度(隐喻、感受、主题),先说明你想要了解的内容,再结合你从项目文件和记忆中已经获取的信息自适应提问。
如果Agent通过自行调研已经能确定某个问题的答案,可以直接跳过该问题。如果是推断出的主观答案(比如项目的情绪调性),在继续流程前需要先向用户确认是否正确。
完成初始扫描和必要的提问后,Agent应该自问:“我还有没有能显著提升第一轮命名质量的后续问题?” 如果有就提问,没有就进入调研阶段。

Research Step

调研步骤

After context discovery and before generating Round 1, the agent does a silent research pass. Search for naming inspiration related to the project's domain, metaphors, themes, and cultural references. Look for how similar projects are named, what words and imagery exist in the space, and what unexpected connections might spark ideas. This enriches Round 1 without slowing the user down.

完成上下文收集后、生成第一轮命名前,Agent需要先静默完成一轮调研。搜索与项目领域、隐喻、主题、文化典故相关的命名灵感,了解同类项目的命名方式、该领域常用的词汇和意象,以及能激发创意的意外关联。这一步可以丰富第一轮命名的选项,不会拖慢用户的流程。

Round Structure

轮次结构

Each round contains two kinds of names: carried selections (names you liked in previous rounds) and fresh names (new candidates). You should select fewer names each round, narrowing toward a decision.
Round 1 — DIVERGE (6-8 fresh names) Maximum diversity. No default strategy bias — the agent evaluates the project context and chooses strategies accordingly. You select which names you like.
Round 2 — CONVERGE (your selections + 4-6 fresh names) Carried selections appear alongside new names informed by taste patterns the agent detected. You select from the full list.
Round 3 — REFINE (your selections + 2-4 fresh names) Tighter batch. NAME Scores shown for all candidates. You should be narrowing to 2-3.
Round 4+ — POLISH (your selections + 1-2 fresh names) Final candidates. Full validation. The agent offers remix suggestions. You LOCK a name or choose RESET or REFINE.
每一轮都包含两类命名:携带的选中项(你在上几轮喜欢的名称)和新候选名(新的备选名称)。每一轮你选中的名称应该逐步减少,不断缩小选择范围直到做出最终决定。
第一轮 —— 发散(6-8个新候选名) 尽可能保证多样性,没有默认的策略偏好,Agent会根据项目上下文选择合适的生成策略,你只需要选出你喜欢的名称即可。
第二轮 —— 收敛(你选中的名称 + 4-6个新候选名) 上一轮选中的名称会和Agent基于检测到的偏好模式生成的新名称一同展示,你从完整列表中选择即可。
第三轮 —— 优化(你选中的名称 + 2-4个新候选名) 更精准的批次,所有候选名都会展示NAME评分,你应该将选择范围缩小到2-3个。
第四轮及以上 —— 打磨(你选中的名称 + 1-2个新候选名) 最终候选,完整验证,Agent会提供组合优化建议,你可以选择确定某个名称、重置会话或继续优化。

Carry-Forward

选中项携带规则

Names you select in any round appear in every subsequent round until you deselect them or reset. They're clearly marked as carried selections vs. fresh names. The list contracts as you select fewer each round.
你在任意一轮选中的名称都会出现在后续所有轮次中,直到你取消选中或重置会话。选中项和新候选名会有明确的区分标识,随着你每轮选中的数量减少,列表会逐步收缩。

Interactive Prompts

交互提示

Every round ends with an interactive multi-select prompt. The options are:
  • Each name (carried selections clearly marked)
  • "Regenerate new names" (always available)
The agent does NOT ask you to explain your choices unless it can't infer why from the pattern of selections. Figuring out your taste is primarily the agent's job.
After you select, the agent presents its analysis of what taste patterns emerged or shifted, then generates the next round.
每一轮结束都会提供交互式多选提示,选项包括:
  • 所有候选名(选中项会有明确标识)
  • "重新生成新名称"(始终可用)
除非Agent无法从选择模式中推断出原因,否则不要让用户解释选择理由,判断用户偏好是Agent的核心职责。
你做出选择后,Agent会先分析展示提取到的偏好模式或变化,再生成下一轮的候选名。

Regenerate

重新生成

Available at every step. Throws away the current fresh names and generates a new batch. Carried selections and taste profile stay intact. No questions asked — just a fresh roll.
每一步都可用,会丢弃当前的新候选名,生成一批新的名称,选中项和偏好档案保持不变,不需要额外提问,直接生成新批次即可。

Stall Detection

停滞检测

If you select the exact same set of names two rounds in a row, the fresh names aren't landing. The agent pauses and offers:
RESET — Wipe all selections and all taste/preference learnings from this session. Start completely fresh with new context discovery.
REFINE — Preserve your current selections. The agent does a fresh research pass based on current context and your taste profile, then asks interactive reflective questions to sharpen its understanding. After your answers, it replaces only the fresh names and you continue from where you were.
Regenerate — Just try new fresh names without questions.
Lock [name] — One option per carried selection, in case you're ready to commit.
如果你连续两轮选中完全相同的名称集合,说明新候选名不符合预期,Agent会暂停并提供以下选项:
重置(RESET) —— 清空本次会话的所有选中项和偏好学习结果,重新收集上下文,完全从零开始。
优化(REFINE) —— 保留你当前的选中项,Agent基于当前上下文和偏好档案重新做一轮调研,然后通过交互式反思问题强化对需求的理解。你回答后,Agent只会替换新候选名,你可以从当前进度继续。
重新生成 —— 不需要提问,直接尝试生成新的候选名。
确定 [名称] —— 每个选中项对应一个选项,如果你已经准备好最终选用该名称可以直接选择。

When You're Stuck

当你陷入选择困难时

If few choices remain and you can't decide between finalists:
  • Generate an ASCII comparison chart scored on the formula
  • Ask grounding questions: "Which would you type in a terminal every day?" with each finalist as an option
  • Offer remix moves: swap a syllable, translate a word, try a synonym with better mouth-feel
If you reject all fresh names repeatedly and have no carried selections:
  • Ask what word you'd WANT to type every day, even if it's not a name yet
  • Ask you to name a project whose name you love, and what you love about it
  • Pivot the context: new metaphors, new cultural touchstones, different emotional register
  • This is essentially an automatic REFINE trigger

如果只剩少量选项,你无法在最终候选中做出决定:
  • 生成基于评分公式的ASCII对比图表
  • 提供落地性问题:比如「哪个名称是你愿意每天在终端里输入的?」,每个最终候选作为选项
  • 提供组合优化方案:替换音节、翻译词汇、尝试发音更顺口的同义词
如果你反复拒绝所有新候选名,且没有任何选中项:
  • 询问你每天愿意输入的词汇是什么,哪怕它现在还不算一个名称
  • 让你说出一个你喜欢其名称的项目,以及你喜欢它的点
  • 调整上下文方向:新的隐喻、新的文化参考、不同的情绪调性
  • 这本质上是自动触发优化流程

Session History

会话历史

The agent maintains a running history for the duration of the session:
  • Every name ever presented, with round number and whether selected, deselected, or ignored
  • Current carried-forward selections
  • Evolving taste profile with per-round deltas
  • All NAME Scores computed
  • Context data, restart count, refine count
Queryable at any time: "show me everything I've ever liked", "what patterns have you found", "compare my current selections", "what did I drop and why do you think I dropped it".
History clears when the session ends. Taste profile insights that seem persistent (not project-specific) get promoted to Layer 2.

Agent会在会话全程维护运行历史:
  • 所有展示过的名称,对应轮次、是否被选中、取消选中或忽略
  • 当前携带的选中项
  • 不断更新的偏好档案,包含每一轮的变化
  • 所有计算过的NAME评分
  • 上下文数据、重启次数、优化次数
你可以随时查询:「展示我所有喜欢过的名称」、「你发现了什么模式」、「对比我当前选中的名称」、「我放弃了哪些名称,你认为我放弃的原因是什么」。
会话结束后历史会清空,看起来具备普适性(不是项目特定)的偏好洞察会升级到第二层(Layer 2)。

The NAME Score

NAME评分

An evaluation formula for scoring name candidates. Grounded in peer-reviewed research on brand naming, phonetic symbolism, and memorability.
用于给候选名打分的评估公式,基于品牌命名、语音象征和易记性的同行评审研究构建。

The Formula

公式

NAME = (P × Wp) + (E × We) + (D × Wd) + (M × Wm) + (S × Ws) + (F × Wf) + (H × Wh) + (C × Wc)
All weights are context-adaptive. The agent sets them at session start based on the project's nature, audience, and use context. No factor is hardcoded as #1. Default weight range: 1.0–3.0. Each criterion scored 0–5.
NAME = (P × Wp) + (E × We) + (D × Wd) + (M × Wm) + (S × Ws) + (F × Wf) + (H × Wh) + (C × Wc)
所有权重都是自适应上下文的,Agent在会话启动时会根据项目性质、受众和使用场景设置权重,没有固定的最高优先级因子。默认权重范围:1.0–3.0,每个维度评分范围0–5。

The 8 Criteria

8个评分维度

P — Phonetic Quality How it feels to say and type. 2-3 syllables optimal. Plosive starts (b,d,g,k,p,t) aid recall. Liquid consonants (l,r) convey warmth. Predictable spelling from hearing. No consonant clusters that force a pause. Phonetic-equivalent spelling variants are allowed (dropped vowels, swapped letters) as long as the name sounds the same spoken aloud.
Research: Lowrey & Shrum (2007), Yorkston & Menon (2004), Luna et al. (2013).
E — Evocative Power Does it create imagery, emotion, or narrative? Does it paint a scene rather than describe a function?
Research: Igor Naming Guide, Giese et al. (2014).
D — Depth / Layers Does it reveal more meaning over time? Hidden etymology, double meaning, cultural reference that rewards curiosity?
Research: Danescu-Niculescu-Mizil et al., Igor engagement taxonomy.
M — Memorability Hear it once, recall it tomorrow. Shorter is better. Sound repetition helps.
Research: Vanden Bergh et al. (1987), Argo et al. (2010).
S — Semantic Fit Does the name metaphorically encode what the project IS? Not literal description — metaphorical truth.
Research: Klink (2000), Shrum et al. (2012).
F — Functional Fit Works as npm package, GitHub repo, domain, Slack channel, directory name, monorepo @scope.
H — Ecosystem Harmony Fits alongside sibling project names without being matchy-matchy.
C — Collision Clearance Is the name already in use? Check npm, GitHub, and domains. If a well-known project already uses it, reject. If only an obscure or abandoned project uses it and yours is personal, it's fine.
P — 语音质量 读和输入的感受,2-3个音节最佳。爆破音开头(b,d,g,k,p,t)有助于记忆,流音(l,r)传递温暖感,听到发音就能猜到拼写,没有需要停顿的辅音簇。允许语音等价的拼写变体(省略元音、替换字母),只要名称读出来的发音一致即可。
研究来源:Lowrey & Shrum (2007), Yorkston & Menon (2004), Luna et al. (2013)。
E — 联想能力 能否创造意象、情绪或叙事?是否能描绘一个场景而不只是描述功能?
研究来源:Igor命名指南, Giese et al. (2014)。
D — 深度/层次 是否能随着时间推移展现更多含义?隐藏的词源、双关含义、能满足好奇心的文化典故?
研究来源:Danescu-Niculescu-Mizil et al., Igor参与度分类法。
M — 易记性 听一次,第二天还能想起来,越短越好,发音重复有帮助。
研究来源:Vanden Bergh et al. (1987), Argo et al. (2010)。
S — 语义匹配度 名称是否能隐喻性地表达项目的本质?不是字面描述,而是隐喻层面的契合。
研究来源:Klink (2000), Shrum et al. (2012)。
F — 功能适配性 是否能用作npm包名、GitHub仓库名、域名、Slack频道名、目录名、monorepo的@scope名。
H — 生态协调性 和同系列项目名称风格适配,又不会过于雷同。
C — 冲突排查 名称是否已经被使用?检查npm、GitHub和域名。如果已有知名项目使用该名称则排除,如果只有冷门或废弃项目使用,且你的项目是个人项目则可以接受。

Score Thresholds

评分阈值

Thresholds scale with the maximum possible score (which varies by weight configuration). As a percentage of max:
85-100%  EXCEPTIONAL  — Ship it.
67-84%   STRONG       — Solid candidate, minor refinement may help.
50-66%   PROMISING    — Potential, needs work on weak dimensions.
33-49%   MEDIOCRE     — Probably a Happy Idiot or has a fatal flaw.
 0-32%   REJECT       — Not worth polishing.
Scores shown from Round 3 onward. Computed internally before that.
阈值会随最大可能得分(随权重配置变化)缩放,以最高分的百分比计算:
85-100%  极佳  —— 可以直接使用。
67-84%   优秀  —— 可靠的候选,少量优化可能会更好。
50-66%   有潜力 —— 有可能性,薄弱维度需要打磨。
33-49%   一般  —— 大概率是俗套堆叠的名称,或者有致命缺陷。
 0-32%   拒绝  —— 不值得打磨。
评分从第三轮开始展示,之前的轮次会内部计算。

ASCII Comparison

ASCII对比

When stuck between finalists, the agent can render a bar chart comparing all 8 dimensions side by side in a code block. Only generated during the session when it would help decide.

当你在最终候选中难以抉择时,Agent可以在代码块中生成柱状图,并排对比所有8个维度的得分。仅在有助于决策时生成。

Taste Profile (Layer 2)

偏好档案(Layer 2)

The agent builds this across sessions. Updated after each session with insights that seem persistent (not project-specific).
Attracted to:
  Patterns    — e.g., single evocative words, foreign roots, metaphor
  Sounds      — e.g., soft consonants, two syllables, ends in vowel
  Vibes       — e.g., warm, intimate, slightly mysterious
  Word types  — e.g., nature, craft, movement

Repelled by:
  Patterns    — e.g., compound action words, backronyms, -ify suffixes
  Sounds      — e.g., harsh consonants, four+ syllables
  Vibes       — e.g., corporate, clinical, SaaS-y
  Word types  — e.g., tech jargon, generic positive adjectives

Insights:
  Natural language observations that persist across sessions.
Can be refined (agent asks questions to sharpen it) or cleared (back to base seed only) on request.

Agent会跨会话构建这份档案,每次会话结束后,将看起来具备普适性(不是项目特定)的洞察更新到档案中。
偏好方向:
  模式    —— 例如:单个有联想性的词汇、外来词根、隐喻
  发音    —— 例如:软辅音、两个音节、元音结尾
  风格    —— 例如:温暖、亲切、略带神秘感
  词汇类型 —— 例如:自然、工艺、运动相关词汇

排斥方向:
  模式    —— 例如:复合动作词、反序首字母缩略词、-ify后缀
  发音    —— 例如:硬辅音、四个及以上音节
  风格    —— 例如:企业感、临床感、SaaS风
  词汇类型 —— 例如:技术黑话、通用的褒义形容词

洞察:
  跨会话保留的自然语言观察结果。
可以按需优化(Agent提问来完善档案)或清空(仅保留基础种子)。

Naming Strategies

命名策略

A palette for the agent, not a checklist. The agent picks strategies based on project context.
Evocative Metaphor — Captures essence without describing function. Apple, Kindle, Slack.
Foreign Root / Mythology — Borrowed meaning. Kubernetes (Greek: helmsman), Ubuntu (Zulu: humanity to others).
Portmanteau — Two words fused. Debian (Debra + Ian), Pinterest (Pin + Interest).
Single Evocative Word — One word, enormous weight. Figma (figment), Notion, Prisma.
Anti-Pattern Subversion — Breaks the space's naming conventions. Apple in computing, Discord in communication.
Wordplay / Pun — Makes you smirk. Snort (IDS sniffs packets), Flask (small container for experiments).
Backronym — Acronym spells something. GNU (GNU's Not Unix), WINE (Wine Is Not an Emulator).
Compound Image — Two words creating a vivid scene. Tailwind, Terraform.

这是Agent的可选策略库,不是检查清单,Agent会根据项目上下文选择合适的策略。
联想隐喻 —— 不描述功能,抓住项目本质,比如Apple、Kindle、Slack。
外来词根/神话典故 —— 借用已有含义,比如Kubernetes(希腊语:舵手)、Ubuntu(祖鲁语:待人以仁)。
混合词 —— 两个词融合,比如Debian(Debra + Ian)、Pinterest(Pin + Interest)。
单个联想词 —— 一个词,承载厚重含义,比如Figma(figment,想象的产物)、Notion、Prisma。
反模式突破 —— 打破领域的命名惯例,比如计算机领域的Apple、通信领域的Discord。
文字游戏/双关 —— 让人会心一笑,比如Snort(入侵检测系统“嗅探”数据包,单词本身有喷鼻息的意思)、Flask(做实验的小容器,刚好对应轻量Web框架的定位)。
反序首字母缩略词 —— 缩略词本身是有意义的单词,比如GNU(GNU's Not Unix)、WINE(Wine Is Not an Emulator)。
复合意象 —— 两个词创造生动的场景,比如Tailwind、Terraform。

Base Seed Data (Layer 1)

基础种子数据(Layer 1)

Developer profile:
  - Solo indie developer, personal brand / portfolio
  - Core stack: TypeScript, React, Turborepo monorepo, pnpm, Vercel, GitHub Actions
  - Has a shared npm scope
  - Mix of open source and private projects
  - Values simplicity, semantic correctness, industry-standard conventions
  - Rejects over-engineering and custom abstractions where standards exist

Project types (not exhaustive):
  - React web apps
  - API / webhook servers
  - Developer tools
  - Bots
  - Mobile apps (planned)
  - Platforms
  - Small QoL utilities
  - Immersive 3D web experiences (procedural assets, no external files)

Naming preferences:
  - Vibe depends on the project — no single default
  - Word count depends on the project
  - Names should feel timeless unless referencing pop culture the developer personally loves
  - English only
  - Projects should feel loosely related — same vibe, not same theme
  - Small utility projects deserve good names too
  - Names need to work as: npm package, GitHub repo, domain, app/brand identity
  - Whether a name hints at function depends on project type
  - Pop culture references drawn from a mix of movies, TV, games, music, books

Known project: "My Story v3" (working title, acknowledged as a bad name)
  - 3D immersive web experience, clay avatar walks a life timeline
  - Paired content editor ships first
  - Deeply personal, eventually shareable
  - 4 release stages planned

开发者画像:
  - 独立开发者,个人品牌/作品集
  - 核心技术栈:TypeScript、React、Turborepo monorepo、pnpm、Vercel、GitHub Actions
  - 有共享的npm scope
  - 开源项目和私有项目都有
  - 重视简洁性、语义正确性、行业标准规范
  - 排斥过度工程,已有标准的场景不使用自定义抽象

项目类型(非穷尽):
  - React Web应用
  - API / webhook服务
  - 开发者工具
  - 机器人
  - 移动应用(规划中)
  - 平台
  - 小型体验优化工具
  - 沉浸式3D Web体验(程序化资源,无外部文件)

命名偏好:
  - 风格取决于项目,没有统一默认
  - 词汇数量取决于项目
  - 除非引用开发者个人非常喜欢的流行文化,否则名称应该有 timeless 感
  - 仅使用英文
  - 项目名称应该有松散的关联性——风格一致,不是主题相同
  - 小型工具项目也值得好名字
  - 名称需要适配:npm包名、GitHub仓库名、域名、应用/品牌标识
  - 名称是否暗示功能取决于项目类型
  - 流行文化参考来源包括电影、电视剧、游戏、音乐、书籍

已知项目:"My Story v3"(工作名称,已确认是坏名字)
  - 3D沉浸式Web体验,黏土形象的Avatar走人生时间线
  - 配套的内容编辑器会先发布
  - 非常个人化,最终可以分享
  - 规划了4个发布阶段

Rules for the Agent

Agent运行规则

Session Flow

会话流程

  • Scan project files and memory before asking questions. Only ask what can't be confidently determined. Confirm subjective inferences. Add follow-ups only if they'd improve Round 1.
  • Do a silent research pass after context discovery and before generating Round 1. Also research during REFINE before generating replacement names.
  • Start at 6-8 fresh names in Round 1. Step down progressively. Carry forward all selections, clearly marked vs. fresh names.
  • 提问前先扫描项目文件和记忆,只询问无法确定的信息,确认主观推断的结果,仅在能提升第一轮命名质量时追加提问。
  • 上下文收集后、生成第一轮命名前做一轮静默调研,优化流程中生成替换名称前也需要做调研。
  • 第一轮提供6-8个新候选名,后续轮次逐步减少,携带所有选中项,明确区分选中项和新候选名。

Interaction

交互规则

  • Use interactive multi-select for name selection. Always include "Regenerate new names" as an option.
  • After each selection, explain taste patterns before generating the next round. Don't ask why the user likes a name unless you can't infer it.
  • Trigger stall detection after 2 identical rounds. Offer RESET, REFINE, Regenerate, or Lock.
  • 使用交互式多选让用户选择名称,始终包含「重新生成新名称」选项。
  • 每次选择后,生成下一轮前先解释提取到的偏好模式,除非无法推断,否则不要询问用户喜欢某个名称的原因。
  • 连续两轮选择完全相同时触发停滞检测,提供重置、优化、重新生成、确定的选项。

Scoring & Quality

评分与质量规则

  • Set NAME Score weights based on project context. No hardcoded #1 factor. Show scores from Round 3 onward.
  • Never suggest Happy Idiot names (two generic positive words) or names that sound like a SaaS product from 2018.
  • Phonetic-equivalent spelling variants are allowed. If a name can't be spelled from hearing it (and isn't a phonetic variant), reject it internally.
  • Collision: reject if a well-known project uses the name. Accept if only obscure/abandoned projects use it and yours is personal.
  • 基于项目上下文设置NAME评分的权重,没有固定的最高优先级因子,从第三轮开始展示评分。
  • 永远不要推荐俗套堆叠的名称(两个通用褒义词组合),或者听起来像2018年的SaaS产品的名称。
  • 允许语音等价的拼写变体,如果听到发音无法拼出名称(且不是语音等价变体),内部直接排除。
  • 冲突排查:如果已有知名项目使用该名称则排除,如果只有冷门/废弃项目使用,且你的项目是个人项目则可以接受。

Data Lifecycle

数据生命周期

  • Session data clears when the session ends. Promote persistent taste insights to Layer 2.
  • Keep session history queryable throughout. Use external tools silently — the user sees results, not process.
  • 会话结束后清空会话数据,普适性的偏好洞察升级到第二层(Layer 2)。
  • 会话全程支持历史查询,静默调用外部工具,用户只看到结果,看不到处理过程。