character-identity

Identify the current speaker and update sender identity mappings in a workspace CSV.

Updated Jan 9, 2026
One-click install
npx skills add https://github.com/42atom/msgcode --skill character-identity
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: character-identity
Source: https://github.com/42atom/msgcode/tree/main/src/skills/runtime/character-identity
Command: npx skills add https://github.com/42atom/msgcode --skill character-identity

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

In multi-speaker channels, it identifies the current speaker and maintains a workspace-local mapping of sender identities to aliases or notes, reducing guesswork and confusion.

Core Features & Use Cases

  • Identify the current speaker from channel context and chat data.
  • Maintain a CSV-based local identity table under the workspace (e.g., .msgcode/character-identity/).
  • Update or look up senderId mappings without guessing, supporting alias/notes and optional owner semantics when configured.

Quick Start

Identify the current speaker from the conversation and update the workspace-local senderId-to-identity mapping.

Frequently Asked Questions about character-identity

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I identify the current speaker in a multi-person conversation channel?

To identify the current speaker in multi-person conversations, this skill uses channel context and chat data to determine who is speaking. It then maps the senderId to a locally stored alias or note within the workspace, reducing guesswork.

How do I manage sender identities and aliases locally without guessing?

You can manage sender identities locally by maintaining a workspace CSV file that maps senderId to aliases and notes. It uses channel, chatId, and senderId as keys, allowing you to update or look up identities without guessing.

How does speaker identification handle first seen and last seen timestamps?

Speaker identification tracks first_seen_at and last_seen_at timestamps in the local identity table. These timestamp fields are updated only when explicit evidence is provided from the conversation context, ensuring accurate identity tracking.

Can I use a local CSV file for identity management across multichannel conversations?

Yes, you can use a local CSV file for identity management across multichannel conversations. The skill stores identity entries in a workspace CSV under a specific directory, using channel, chatId, and senderId as unique keys to maintain accurate mappings.

What is the best way to update senderId mappings in a multi-speaker channel?

The best way to update senderId mappings is by using the skill to identify the current speaker and apply explicit evidence to the workspace-local CSV. It updates first_seen_at and last_seen_at timestamps and supports optional owner semantics when configured.