softsync-messages skill
Read emails, notes and saved meeting summaries linked to records, search them by content, answer from the workspace's own help articles, and send a text. Use when the user asks what was said, agreed or sent — "what did Acme reply?", "summarise our last call" — asks a how-to or policy question, or wants to text someone.
- GitHub stars
- 88
- Files
- 3
- Last commit
- Oct 19, 2026
- License
- MIT
- Allowed tools
- —
What does the softsync-messages skill do?
softsync-messages reads emails, notes and saved meeting summaries linked to records, search them by content, answer from the workspace's own help articles, and send a text. Use when the user asks what was said, agreed or sent — "what did Acme reply?", "summarise our last call" — asks a how-to or policy question, or wants to text someone.
How to install the softsync-messages skill
Each command copies the skill folder into the client's skills directory. Restart the client or start a new session to load it.Install the softsync-messages skill in Plugin
/plugin marketplace add Softsync-Lab/softsync-skills-hub /plugin install softsync@softsync
Install the softsync-messages skill in Claude Code
~/.claude/skills/softsync-messages/SKILL.md
$ npx degit Softsync-Lab/softsync-skills-hub/skills/softsync-messages ~/.claude/skills/softsync-messagesInstall the softsync-messages skill in Claude Code (project)
.claude/skills/softsync-messages/SKILL.md
$ npx degit Softsync-Lab/softsync-skills-hub/skills/softsync-messages .claude/skills/softsync-messagesInstall the softsync-messages skill in Codex
~/.agents/skills/softsync-messages/SKILL.md
$ npx degit Softsync-Lab/softsync-skills-hub/skills/softsync-messages ~/.agents/skills/softsync-messagesInstall the softsync-messages skill in Gemini CLI
~/.gemini/skills/softsync-messages/SKILL.md
$ npx degit Softsync-Lab/softsync-skills-hub/skills/softsync-messages ~/.gemini/skills/softsync-messagesInstall the softsync-messages skill in Claude.ai
npx degit Softsync-Lab/softsync-skills-hub/skills/softsync-messages softsync-messages && zip -r softsync-messages.zip softsync-messages # claude.ai → Customize → Skills → + → Create skill → Upload a skill → softsync-messages.zip
SKILL.md
View on GitHubMessages
Messages are everything the workspace has received or written about its records: synced emails, notes and notifications.
Which tool
- About a company or person ("last week's emails with Acme"): resolve them to record ids, then
query_messageswith those ids and a time window. See thefinding-messagesreference for the exact sequence. - By topic, with no company or person named ("emails about the renewal"):
semantic_search_messages. Never use it as a fallback whenquery_messagesfinds nothing for a company or person — similar text is not proof it is about them. - Full text of one message:
get_message_by_idafter finding it. - Calendar events ("my meetings this week", "when did we last meet Acme?"): use
calendar_events(actionlist) from the meetings skill, notquery_messages. - Meeting summaries: a summary someone saved to a record is a note on that record. Find it with
query_messageson the record. Recordings that were never saved to a record stay in the desktop app and cannot be reached from here. - How many ("how many emails have we exchanged with Acme?"):
get_message_statisticscounts messages linked to a record or person. - How-to and policy questions ("what is our refund policy?", "how do I reset the router?"):
search_knowledgefinds the passages in the workspace's own articles and guides. Quote them and name the source; do not answer from memory. When drafting a reply to a customer, setaudiencetopublicso only what the help center already shows customers is used.
Sending a text
send_messagesends a text (SMS) to a contact (toRecordId) or a phone number (to). It shows on the contact's timeline like an email.- To answer a text conversation in a shared inbox, reply there instead (shared inbox skill), so the answer stays in the same thread.
- A text reaches a real phone and cannot be recalled. Show the exact text and recipient and wait for a clear yes. Pass a
clientRefof your own so a retry never sends twice. - People who replied STOP are skipped; say so if the result reports it rather than claiming it was sent.
Rules
- Resolve a company or person to its record id first (see the records skill), then filter messages by that id.
- You only see messages linked to records you can access. Say so if something the user expects is missing, rather than claiming it does not exist.
- Never guess a message id.
More detail
Read these when the task needs them:
- finding-messages: The required call sequence for "what did we discuss with Acme?" and when topic search is the wrong tool.
- resolving-records: Turning a company or person into every linked record id before reading their messages or acting on them.
Files in this skill
3softsync-messages skill questions
How do I install the softsync-messages skill in Claude Code?
Run npx degit Softsync-Lab/softsync-skills-hub/skills/softsync-messages ~/.claude/skills/softsync-messages. Claude Code loads skills from ~/.claude/skills (all projects) or .claude/skills (one project) and uses a skill when its description matches the task.
Which clients can use the softsync-messages skill?
Any client that reads the Agent Skills format: Claude Code, Codex, Gemini CLI and claude.ai (upload as a ZIP). Scripts in the skill run only where the client allows code execution.