SillyTavern Extension to define nicknames for characters and personas to be used in prompts
  • JavaScript 86.5%
  • HTML 9.5%
  • CSS 4%
Find a file
Wolfsblvt b43ddb9f15 fix: macro group value calculation with context override
Adds context parameter to macro provider and group value function
Allows groupOverride from context to bypass nickname-based group computation

Fixes issue where group value was not respecting overrides in macro evaluation
2026-04-17 00:39:16 +02:00
src fix: macro group value calculation with context override 2026-04-17 00:39:16 +02:00
templates feat: Add dedicated nickname macros and annotate affected core macros 2026-04-17 00:39:16 +02:00
index.js feat: Add dedicated nickname macros and annotate affected core macros 2026-04-17 00:39:16 +02:00
LICENSE Initial extension 2025-02-21 21:22:21 +01:00
manifest.json fix: Update badge URLs to use SillyTavern org and bump version to 1.1.0 2026-04-17 00:39:16 +02:00
README.md fix: Update badge URLs to use SillyTavern org and bump version to 1.1.0 2026-04-17 00:39:16 +02:00
style.css feat: Enhance context indicators with set/active states and dynamic tooltips 2026-04-16 18:11:35 +02:00

SillyTavern Nicknames [Extension]

extension version release version required ST version

Set nicknames for characters and personas to be used in the UI, chat messages, and prompts. Features a dedicated nickname editor in Persona/Character Management, three context levels (global, character, chat), and slash commands.

Note

This extension requires the Experimental Macro Engine to be enabled for full functionality.

Installation

Install using SillyTavern's extension installer from the URL:

https://github.com/SillyTavern/SillyTavern-Nicknames

Features

Nickname Editor

A dedicated nickname editor appears directly in Persona Management (for user/persona nicknames) and Character Management (for character nicknames).

  • Three context levels — Set nicknames at different scopes:
    • Global: Applies across all chats and characters
    • Character-level: Persona-specific nickname for a specific character (personas only)
    • Chat-level: Nickname stored in the chat file
  • Visual indicator — Shows which context level the displayed nickname is currently being sourced from
  • Persistent — Nicknames are stored in settings and chat metadata, surviving exports and backups
  • Quick actions — Set, update, or remove nicknames directly from the editor

Context Levels

Level Description User/Persona Character
Global Applies everywhere for this entity ✅ ✅
Character For a specific character-persona pair ✅ ❌
Chat Specific to this chat file only ✅ ✅

When reading nicknames, the extension checks in order: Chat → Character → Global, using the first one found.

imageimage

Slash Commands

Command Description
/nickname-user [for=global|char|chat] [nickname] Get or set the user/persona nickname
/nickname-char [for=global|char|chat] [nickname] Get or set the character nickname

Use #reset as the nickname to clear it from the specified context level.

Examples:

  • /nickname-user Alex - Sets global persona nickname to "Alex"
  • /nickname-user for=chat "The Real Alex" - Sets chat-level persona nickname
  • /nickname-char Bob - Sets global character nickname to "Bob"
  • /nickname-char for=global #reset - Removes global character nickname

Settings

Access the extension settings under Extensions → Nicknames in the SillyTavern settings panel.

All settings are disabled by default — enable them as needed:

  • Character list — Display nicknames instead of original names in the character list
  • Chat messages — Use nicknames as sender names for chat messages
  • Macros & prompts — Replace {{user}} and {{char}} (in all relevant macros) with nicknames in prompts sent to the AI.
  • V3 spec compatibility — Sync global character nicknames with the character card's data.nickname field. When enabled, nicknames are saved into the card and can be read from imported cards. If both the card and extension have different nicknames, a conflict resolution popup appears.

Nickname Macros

Four macros are always available regardless of the Macros & prompts override setting:

Macro Description
{{userFull}} Always returns the original Persona username, never substituted with a nickname
{{charFull}} Always returns the original character name, never substituted with a nickname
{{userNickname}} Returns the Persona nickname if one is set, otherwise falls back to the original username
{{charNickname}} Returns the character nickname if one is set, otherwise falls back to the original character name

These are useful when you want explicit control over whether a prompt uses the full name or the nickname, independent of the global override toggle.

Cleanup Extension Data

Note

This feature requires the staging branch of SillyTavern.

All extension settings and saved nicknames, except for chat-bound nicknames, can be removed via the extensions list or during uninstall.

Roadmap

Planned features for future releases:

  • Dedicated {{userFull}} / {{charFull}} and {{userNickname}} / {{charNickname}} macros — always return the original full name or the nickname (if set), regardless of macro override settings
  • Import/export nickname mappings (bulk export all global and char-level data)
  • Optional visual indicator when nicknames are active (tooltip/label in char list and chat)
  • Allow the model to set nicknames (via function calling)

ToDo List

  • Migrate away from jQuery
  • Extension versioning and migration system

License

AGPL-3.0

Contribution

  • Discord: @Wolfsblvt
  • Issues and pull requests are welcome.
  • Any features/fixes should be submitted as a PR to the dev branch.