Skip to main content
ClaudeWave
Skill4.9k repo starsupdated 2d ago

user-info

The user-info skill retrieves the current session user's profile information including name, position, email, phone, and department details via the `get_user_info` function. Use this skill when you need to access authenticated user data within a session, with phone numbers desensitized by default unless explicit user consent is obtained first.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/dtyq/magic /tmp/user-info && cp -r /tmp/user-info/backend/super-magic/agents/skills/user-info ~/.claude/skills/user-info
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# User Info Skill

Retrieve the current session user's profile via `get_user_info`.

---

## Basic Usage

```python
from sdk.tool import tool

result = tool.call("get_user_info", {})
print(result.content)
```

Example output:

```
User: Zhang San. Position: Engineering Lead. Work Number: 10086. Email: zhang@example.com. Phone: 138****0000 (desensitized). Departments: Engineering, Architecture.
```

For structured access, use `result.data`:

| Field | Type | Notes |
|-------|------|-------|
| `id` | string | User ID |
| `nickname` | string | Display name |
| `real_name` | string | Legal name |
| `work_number` | string | Employee number (may be empty) |
| `position` | string | Job title |
| `email` | string | Email address |
| `phone` | string | Phone, desensitized by default (e.g. `138****0000`) |
| `departments` | array | Each item: `{id, name, path}` |

---

## Getting the Full Phone Number

Phone is masked by default to protect privacy. To get the full number, you must first ask for explicit user consent.

**Step 1 — Ask for consent:**

```python
from sdk.tool import tool

result = tool.call("ask_user", {
    "questions": '<question type="confirm">I need your full phone number to proceed. Do you allow me to access it?</question>'
})
print(result.content)
```

**Step 2 — If the user consents, request the full number:**

```python
result = tool.call("get_user_info", {
    "include_sensitive_fields": ["phone"]
})
print(result.content)
```

**If the user declines:** use the desensitized value or drop the requirement. Do not ask again.

---

## Constraints

- Never pass `include_sensitive_fields` without prior explicit user approval in the same conversation.
- Do not retry after a user refuses access to sensitive fields.
- Use the desensitized phone value for display, logging, or non-critical tasks where the full number is not strictly needed.
guidesSkill
canvas-designerSkill

Core canvas design skill covering project management, multimedia principles, AI image generation, web image search, and design marker processing. Load for any canvas design task. CRITICAL - When user message contains [@design_canvas_project:...] or [@design_marker:...] mentions, or when the user wants to generate video/animation/clip on a canvas project, you MUST load this skill first before any operations.

compact-chat-historySkill

Summarize and compress the current conversation history into a structured context snapshot, then call compact_chat_history to save it. Read this skill only when the user explicitly asks to compact/summarize — system-triggered compaction injects the instructions directly without requiring a skill read.

creating-slidesSkill

Slide/PPT creation skill that provides complete slide creation, editing, and management capabilities. Use when users need to create slides, make presentations, edit slide content, or manage slide projects. CRITICAL - When user message contains [@slide_project:...] mention, you MUST load this skill first before any operations.

crew-creatorSkill

|

deep-researchSkill

|

develop-data-analysis-dashboardSkill

Data analysis dashboard (instrument panel) development skill. Use when users need to develop data dashboards, create/edit Dashboard projects, build large-screen data boards, or perform dashboard data cleaning. Includes dashboard project creation, card plan, data cleaning (data_cleaning.py), card management tools (create_dashboard_cards, update_dashboard_cards, delete_dashboard_cards, query_dashboard_cards), map download tool (download_dashboard_maps), dashboard development, and validation.

dingtalk-cliSkill

Use when the user wants to interact with DingTalk/钉钉 in any way — including but not limited to: reading, querying, searching, sending, replying to, forwarding, or recalling DingTalk/钉钉 chat messages and chat history; managing group chats and conversations; sending DING alerts; querying contacts, org structure, AI search, or coworkers; reading, searching, creating, or editing DingTalk/钉钉 docs, drive files, sheets, AI tables, wiki, mail, calendar events, meeting rooms, AI meeting minutes, attendance, OA approvals, todos, reports/logs, live sessions, AI apps, permissions, or open-platform docs.