Agent Skills
› dtyq/magic
› user-info
user-info
GitHub用于获取当前会话用户的基本身份信息,如姓名、职位、邮箱及部门等。支持通过显式同意机制获取脱敏后的完整手机号,并严格限制敏感字段的访问权限。
Trigger Scenarios
需要查询当前用户的个人基本信息
需要获取用户的完整手机号(需先征得同意)
Install
npx skills add dtyq/magic --skill user-info -g -y
SKILL.md
Frontmatter
{
"name": "user-info",
"description": "Use when you need the current user's identity or contact info: name, job title, employee number, email, phone, or department."
}
User Info Skill
Retrieve the current session user's profile via get_user_info.
Basic Usage
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:
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:
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_fieldswithout 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.
Version History
- 41d7ef4 Current 2026-07-25 09:29


