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.
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-infoSKILL.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.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.
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.
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.
|
|
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.
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.