Best use case
true-name is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Teams using true-name should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/true-name/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How true-name Compares
| Feature / Agent | true-name | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
This skill provides specific capabilities for your AI agent. See the About section for full details.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# /eidos:true-name
Establish ubiquitous language — replace vague references with precise, canonical domain names and propagate everywhere.
See [[c - ubiquitous language - shared vocabulary across specs code and conversation]].
When the same concept has three names, nobody is sure they're talking about the same thing.
When it has one true name, communication becomes precise and specs become navigable.
## Usage
```
/eidos:true-name <vague reference or concept>
```
Examples:
- `/eidos:true-name "the thing that tracks plan progress"`
- `/eidos:true-name "that config toggle mechanism"`
- `/eidos:true-name rename phase-gate → phase-checkpoint`
## Instructions
### 1. Understand the Target
Parse the input:
- **Discovery mode** — a vague description or concept that needs naming (e.g., "the thing that X")
- **Rename mode** — an existing name that should be replaced (e.g., "rename X → Y" or "X should be called Y")
If the input is ambiguous, ask: "What are you pointing at?"
### 2. Survey Current Usage (Discovery Mode)
Search for how the concept is currently referenced:
```bash
# In specs — filenames and content
grep -ri '<related terms>' eidos/
grep -ri '<related terms>' memory/
# In code
grep -ri '<related terms>' src/ skills/ scripts/ hooks/
# In recent conversations (session exports)
grep -ri '<related terms>' memory/session\ -\ *.md
```
Collect:
- Every name, description, or reference used for this concept
- Where each appears (file + line)
- Which representations are most common
### 3. Propose a True Name
A true name should be:
- **Domain-native** — uses the language of the problem, not the implementation ("phase" not "step-container")
- **Precise** — names what it *is*, not what it's *near* or what it *does sometimes*
- **Stable** — won't need renaming as the concept evolves
- **Self-evident** — someone unfamiliar can guess the meaning
- **Consistent** — fits the existing naming patterns in the project
Present the proposal:
```
## Current references
- "progress tracker" in spec - planning (3×)
- "status section" in plan template (1×)
- `updateProgress()` in code (2×)
## Proposed true name: `progress-log`
Rationale: It's a log (append-only, timestamped entries), not a tracker
(which implies computed state). "Progress log" matches how it's actually
used in plan files.
Alternatives considered:
- `activity-log` — too generic, doesn't convey plan-specific scope
- `progress-tracker` — implies computed state, but it's just entries
Apply this name? (y / suggest alternative)
```
If the user suggests an alternative, evaluate it against the same criteria and confirm.
### 4. Propagate the Name
Once confirmed, propagate systematically:
**Spec filenames** (if the concept is a spec or claim):
```bash
git mv "eidos/old - name.md" "eidos/new - name.md"
```
Then update all `[[wiki links]]` referencing the old name.
**Spec content:**
- Replace the old term in prose, headings, and TL;DRs
- Check that the claim in the filename still matches content
**Code identifiers** (if applicable and the user confirms):
- Variable names, function names, class names
- Comments referencing the old term
**Plan and memory files:**
- Update references in active plans
- Don't rewrite historical files (sessions, solved) — they're records of what *was*
Commit after each logical unit (filenames, then content, then code).
### 5. Rename Mode
When the input is explicitly "rename X → Y":
- Skip discovery — the user already knows the true name
- Go straight to surveying where X appears
- Show the propagation plan (which files, which references)
- Confirm, then propagate
### 6. Report
```
## True name applied: `progress-log`
Renamed:
- [spec - progress log - ...](<eidos/spec - progress log - ...md>)
- was: spec - progress tracker - ...
Updated references:
- [plan template](<eidos/template - plan - ...md>) — 2 occurrences
- [planning spec](<eidos/spec - planning - ...md>) — 3 occurrences
- [scripts/progress.py](<scripts/progress.py>) — 1 occurrence
No changes (historical):
- memory/session - ... (3 files reference old name, preserved as-is)
```
## Output
- Renames: spec/claim files via `git mv`
- Updates: wiki links, prose, and optionally code identifiers
- Does not modify: historical memory files (sessions, solved items)Related Skills
spec
This skill guides an AI agent to collaboratively think through and create a detailed technical specification document via structured Q&A. It clarifies target, behavior, and design before generating the spec file.
worktree
No description provided.
wish
No description provided.
weave
No description provided.
video
No description provided.
toskill
No description provided.
toscript
No description provided.
tomd
No description provided.
toeidos
No description provided.
todo
No description provided.
toclaude
No description provided.
tldr
No description provided.