一键导入
recent-conversations
Summarise your most recent message exchanges — who you've been talking to, what topics came up, and the overall tone of recent activity.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Summarise your most recent message exchanges — who you've been talking to, what topics came up, and the overall tone of recent activity.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use the imessage-analysis MCP server to answer questions about the user's iMessage history.
Compare your messaging activity between two time periods — volume, contacts, and trends side by side.
Analyse your group chat activity — most active groups, top talkers per group, and activity over time.
Check whether imessage-analysis is installed and the MCP server is registered, and fix anything that's missing.
Show the current status of the iMessage analysis dataset — last sync time, total messages, and whether it's up to date.
Sync your iMessage history — builds the dataset on first run, updates incrementally after that. Use this to make sure your data is current before analysing.
| name | recent-conversations |
| description | Summarise your most recent message exchanges — who you've been talking to, what topics came up, and the overall tone of recent activity. |
Summarise what's been happening in your messages lately.
status()
If last_sync is more than a few hours old, call sync() first.
Ask the user how far back to look if not specified. Default to 7 days.
-- Most active contacts in the last 7 days
SELECT
name,
COUNT(*) AS messages,
MAX(CAST(timestamp AS VARCHAR)) AS last_message,
SUM(CASE WHEN is_from_me = 1 THEN 1 ELSE 0 END) AS sent,
SUM(CASE WHEN is_from_me = 0 THEN 1 ELSE 0 END) AS received
FROM messages
WHERE timestamp >= CAST(date_trunc('day', now() - INTERVAL '7 days') AS TIMESTAMP)
AND name IS NOT NULL
AND chat_size = 1
GROUP BY name
ORDER BY last_message DESC
LIMIT 15
-- Recent group chat activity
SELECT
chat_members_contact_info,
COUNT(*) AS messages,
MAX(CAST(timestamp AS VARCHAR)) AS last_message
FROM messages
WHERE timestamp >= CAST(date_trunc('day', now() - INTERVAL '7 days') AS TIMESTAMP)
AND chat_size > 1
GROUP BY chat_members_contact_info
ORDER BY last_message DESC
LIMIT 5
-- Recent message volume by day
SELECT
CAST(date AS VARCHAR) AS day,
COUNT(*) AS total,
SUM(CASE WHEN is_from_me = 1 THEN 1 ELSE 0 END) AS sent,
SUM(CASE WHEN is_from_me = 0 THEN 1 ELSE 0 END) AS received
FROM messages
WHERE date >= date_trunc('day', now() - INTERVAL '7 days')
GROUP BY date
ORDER BY date DESC
Give a brief narrative: who's been most active, any notable conversations (high volume days, new contacts), and your overall send/receive balance for the period. Keep it concise — this is a catch-up, not a deep analysis.
Offer to do a contact-deep-dive on anyone who looks interesting in the results.
This skill works entirely from metadata (names, counts, timestamps). It does not read the text of your messages.