# Resolving Identity

> Internal shared skill to resolve current user identity and org members. Not intended for direct user invocation.

- Skill: `kazukinagata/resolving-identity` (Agent Skill)
- Install (CLI): `npx skillmds@latest add kazukinagata/resolving-identity`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kazukinagata/resolving-identity/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: kazukinagata (https://skillmd.com/u/kazukinagata)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/kazukinagata/resolving-identity

---


# Agentic Tasks — Identity Resolve

Resolve the current user's identity from the active provider.
**Skip if `current_user` is already set in this conversation.**

## Prerequisites

`active_provider` must already be determined (caller must run detecting-provider first).
If `active_provider` is not set, stop and return an error to the caller.

## Step 1: Resolve Current User

If `current_user` is already set in this session, skip to Step 2.

Load `${CLAUDE_PLUGIN_ROOT}/skills/providers/{active_provider}/SKILL.md` and follow the
**Identity: Resolve Current User** section.

Result: set session variable `current_user: { id, name, email }`.

- If the provider does not support user identity, set `current_user: { id: "local", name: $USER env var or "local", email: null }`.
- Always produce a `current_user` value — never fail the caller due to identity resolution.

## Step 1b: Resolve Team Membership

**Skip if `current_user.teams` is already set in this session.**

If `teamsDatabaseId` exists in `headless_config`:

1. Load `${CLAUDE_PLUGIN_ROOT}/skills/providers/{active_provider}/SKILL.md` and follow the
   **Identity: Resolve Team Membership** section.
2. Result: set `current_user.teams: [{ id, name, members: [{ id, name }] }]` and `current_team`.
   - 1 team → automatically set `current_team`.
   - 2+ teams → AskUserQuestion to select.
   - 0 teams → `current_team: null`.

If `teamsDatabaseId` is not in config, skip this step (`current_team: null`).

## Step 2: Resolve Org Members (on demand)

Only execute if the caller explicitly requests member lookup (i.e., `org_members` is needed).
**Skip if `org_members` is already set in this session.**

Load `${CLAUDE_PLUGIN_ROOT}/skills/providers/{active_provider}/SKILL.md` and follow the
**Identity: List Org Members** section.

Result: set session variable `org_members: OrgMember[]` where each member has `{ id, name, email }`.

- If the provider does not support member listing, set `org_members: []`.

