Skip to content

plugin: add messaging collaboration skills#141

Merged
gaelic-ghost merged 1 commit into
mainfrom
plugin/messaging-collaboration
Jul 14, 2026
Merged

plugin: add messaging collaboration skills#141
gaelic-ghost merged 1 commit into
mainfrom
plugin/messaging-collaboration

Conversation

@gaelic-ghost

@gaelic-ghost gaelic-ghost commented Jul 14, 2026

Copy link
Copy Markdown
Owner

Summary

  • add the installable messaging-collaboration-skills Socket plugin
  • ship phase 1 foundations and phase 2 platform workflows
  • document Apple Phone, CallKit/VoIP, iMessage, Shared with You, and Mac operator boundaries
  • align Socket's shared version surfaces to 9.8.0

Verification

  • validated all 11 authored skills
  • validated the plugin manifest and Socket marketplace metadata
  • confirmed shared version inventory is 9.8.0

Summary by CodeRabbit

  • New Features

    • Added a messaging and collaboration skills plugin covering Discord, Slack, Teams, Telegram, WhatsApp, SMS/MMS/RCS, Google Meet, Apple communication workflows, and human handoffs.
    • Added guidance for secure webhooks, consent, identity, authorization, retries, and platform-specific integration choices.
  • Documentation

    • Updated the catalog, roadmap, and maintainer guidance with plugin availability, scope, validation criteria, and platform boundaries.
  • Chores

    • Updated the project and plugin release versions to 9.8.0.

Why:
Add the phase-one and phase-two Socket workflows for supported chat, calling, business-messaging, and collaboration integrations.

Verification:
Ran skill validation, plugin validation, marketplace validation, and shared-version inventory.
@gaelic-ghost gaelic-ghost added the enhancement New feature or request label Jul 14, 2026
@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Adds the guidance-focused messaging-collaboration-skills plugin, documents platform and Apple communication workflows, registers it in marketplace and project documentation, and bumps existing plugin and project versions from 9.7.0 to 9.8.0.

Changes

Messaging collaboration skills plugin

Layer / File(s) Summary
Plugin scope and package foundation
docs/maintainers/messaging-collaboration-skills-plugin-plan.md, plugins/messaging-collaboration-skills/...
Defines the plugin manifest, guidance boundaries, platform scope, phased plan, validation requirements, and release criteria.
Platform workflow skill set
plugins/messaging-collaboration-skills/skills/*
Adds platform-selection, conversation handoff, Apple communication, webhook lifecycle, and Discord, Google Meet, Slack, SMS/MMS/RCS, Teams, Telegram, and WhatsApp workflow guidance.
Catalog and roadmap wiring
.agents/plugins/marketplace.json, README.md, ROADMAP.md
Registers the local plugin, adds it to catalog documentation, and records completed Milestone 26.
Release version alignment
plugins/*/.codex-plugin/plugin.json, plugins/*/pyproject.toml, pyproject.toml
Updates existing plugin and project metadata versions from 9.7.0 to 9.8.0.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

Suggested labels: documentation

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: adding the messaging collaboration skills plugin.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch plugin/messaging-collaboration

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@gaelic-ghost
gaelic-ghost merged commit c21f5e4 into main Jul 14, 2026
1 of 2 checks passed
@gaelic-ghost
gaelic-ghost deleted the plugin/messaging-collaboration branch July 14, 2026 02:11

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@plugins/messaging-collaboration-skills/AGENTS.md`:
- Around line 23-25: Update the validation commands in AGENTS.md to assume
execution from the repository root: pass the full
plugins/messaging-collaboration-skills/skills/<skill-name> path to
quick_validate.py and retain the root-relative
scripts/validate_socket_metadata.py invocation. Document the repository-root
working-directory requirement alongside these commands.

In `@plugins/messaging-collaboration-skills/skills/discord-app-workflow/SKILL.md`:
- Line 10: Update the app-selection guidance in the Discord app workflow
instructions to separate app type from installation context: identify bot or
Activity as the app type, then specify user-installed, guild-installed, or both
as independent installation targets. Avoid wording that presents these
categories as mutually exclusive.

In `@plugins/messaging-collaboration-skills/skills/teams-agent-workflow/SKILL.md`:
- Around line 10-19: Update the Handoffs guidance to limit SDK-specific language
references to C#, TypeScript, and Python. Remove Java and Swift from the
selected SDK/server workflow wording, or explicitly present them only as generic
server-stack options rather than supported SDK languages.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 4831aff9-511c-4a6f-9d04-1d7e8cd405cd

📥 Commits

Reviewing files that changed from the base of the PR and between cb2325b and 54a60b3.

⛔ Files ignored due to path filters (9)
  • plugins/agent-portability-skills/uv.lock is excluded by !**/*.lock
  • plugins/apple-dev-skills/uv.lock is excluded by !**/*.lock
  • plugins/cardhop-app/mcp/uv.lock is excluded by !**/*.lock
  • plugins/messaging-collaboration-skills/assets/messaging-collaboration-icon.svg is excluded by !**/*.svg
  • plugins/productivity-skills/uv.lock is excluded by !**/*.lock
  • plugins/python-skills/uv.lock is excluded by !**/*.lock
  • plugins/things-app/mcp/uv.lock is excluded by !**/*.lock
  • plugins/things-app/uv.lock is excluded by !**/*.lock
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (47)
  • .agents/plugins/marketplace.json
  • README.md
  • ROADMAP.md
  • docs/maintainers/messaging-collaboration-skills-plugin-plan.md
  • plugins/agent-portability-skills/.codex-plugin/plugin.json
  • plugins/agent-portability-skills/pyproject.toml
  • plugins/agentdeck/.codex-plugin/plugin.json
  • plugins/android-dev-skills/.codex-plugin/plugin.json
  • plugins/apple-creator-studio-skills/.codex-plugin/plugin.json
  • plugins/apple-dev-skills/.codex-plugin/plugin.json
  • plugins/apple-dev-skills/pyproject.toml
  • plugins/cardhop-app/.codex-plugin/plugin.json
  • plugins/cardhop-app/mcp/pyproject.toml
  • plugins/cloud-deployment-skills/.codex-plugin/plugin.json
  • plugins/cloud-inference-skills/.codex-plugin/plugin.json
  • plugins/dotnet-skills/.codex-plugin/plugin.json
  • plugins/game-dev-skills/.codex-plugin/plugin.json
  • plugins/messaging-collaboration-skills/.codex-plugin/plugin.json
  • plugins/messaging-collaboration-skills/AGENTS.md
  • plugins/messaging-collaboration-skills/skills/apple-communication-workflow/SKILL.md
  • plugins/messaging-collaboration-skills/skills/choose-platform-integration/SKILL.md
  • plugins/messaging-collaboration-skills/skills/conversation-state-human-handoff/SKILL.md
  • plugins/messaging-collaboration-skills/skills/discord-app-workflow/SKILL.md
  • plugins/messaging-collaboration-skills/skills/google-meet-collaboration-workflow/SKILL.md
  • plugins/messaging-collaboration-skills/skills/slack-app-workflow/SKILL.md
  • plugins/messaging-collaboration-skills/skills/sms-mms-rcs-workflow/SKILL.md
  • plugins/messaging-collaboration-skills/skills/teams-agent-workflow/SKILL.md
  • plugins/messaging-collaboration-skills/skills/telegram-bot-workflow/SKILL.md
  • plugins/messaging-collaboration-skills/skills/webhook-and-event-lifecycle/SKILL.md
  • plugins/messaging-collaboration-skills/skills/whatsapp-business-workflow/SKILL.md
  • plugins/network-protocol-skills/.codex-plugin/plugin.json
  • plugins/productivity-skills/.codex-plugin/plugin.json
  • plugins/productivity-skills/pyproject.toml
  • plugins/python-skills/.codex-plugin/plugin.json
  • plugins/python-skills/pyproject.toml
  • plugins/reverse-engineering-skills/.codex-plugin/plugin.json
  • plugins/rust-skills/.codex-plugin/plugin.json
  • plugins/server-side-jvm/.codex-plugin/plugin.json
  • plugins/server-side-swift/.codex-plugin/plugin.json
  • plugins/spotify/.codex-plugin/plugin.json
  • plugins/swift-lang/.codex-plugin/plugin.json
  • plugins/swiftasb-skills/.codex-plugin/plugin.json
  • plugins/things-app/.codex-plugin/plugin.json
  • plugins/things-app/mcp/pyproject.toml
  • plugins/things-app/pyproject.toml
  • plugins/web-dev-skills/.codex-plugin/plugin.json
  • pyproject.toml

Comment on lines +23 to +25
```bash
uv run python "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" skills/<skill-name>
uv run scripts/validate_socket_metadata.py

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Make the validation working directory explicit.

skills/<skill-name> is plugin-relative, while scripts/validate_socket_metadata.py is repository-root-relative. As written, both commands cannot reliably run from the same directory. Document a repository-root invocation and use the full plugin path for skill validation.

Proposed fix
+ # Run from the Socket repository root.
-uv run python "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" skills/<skill-name>
+uv run python "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" plugins/messaging-collaboration-skills/skills/<skill-name>
 uv run scripts/validate_socket_metadata.py
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
```bash
uv run python "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" skills/<skill-name>
uv run scripts/validate_socket_metadata.py
# Run from the Socket repository root.
uv run python "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" plugins/messaging-collaboration-skills/skills/<skill-name>
uv run scripts/validate_socket_metadata.py
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/messaging-collaboration-skills/AGENTS.md` around lines 23 - 25,
Update the validation commands in AGENTS.md to assume execution from the
repository root: pass the full
plugins/messaging-collaboration-skills/skills/<skill-name> path to
quick_validate.py and retain the root-relative
scripts/validate_socket_metadata.py invocation. Document the repository-root
working-directory requirement alongside these commands.


## Workflow

1. Choose a bot, user-installed app, guild-installed app, or Activity. Do not select Gateway when signed HTTP interactions are sufficient.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

curl -fsSL https://docs.discord.com/developers/quick-start/overview-of-apps \
  | rg -n "Bots|Activities|installation|user-installed|guild-installed"

Repository: gaelic-ghost/socket

Length of output: 50376


🏁 Script executed:

#!/bin/bash
set -euo pipefail

printf '\n== SKILL.md excerpt ==\n'
cat -n plugins/messaging-collaboration-skills/skills/discord-app-workflow/SKILL.md | sed -n '1,40p'

printf '\n== Discord docs excerpt around app types/install targets ==\n'
curl -fsSL https://docs.discord.com/developers/quick-start/overview-of-apps \
  | python3 - <<'PY'
import sys, re
html = sys.stdin.read()
# Strip tags very roughly for targeted inspection.
text = re.sub(r'<script[\s\S]*?</script>', '', html)
text = re.sub(r'<style[\s\S]*?</style>', '', text)
text = re.sub(r'<[^>]+>', '\n', text)
text = re.sub(r'\n{3,}', '\n\n', text)
for needle in [
    'The Three Types of Discord Apps',
    'Bots',
    'Activities',
    'Where Apps Install',
    'App Type',
    'Install Target',
    'Bot (guild-installed)',
    'Bot (user-installed)',
    'Activity',
]:
    idx = text.find(needle)
    if idx != -1:
        start = max(0, idx - 500)
        end = min(len(text), idx + 1200)
        print(f"\n--- {needle} ---")
        print(text[start:end])
PY

Repository: gaelic-ghost/socket

Length of output: 1897


Separate app type from installation context.
plugins/messaging-collaboration-skills/skills/discord-app-workflow/SKILL.md:10 Line 10 should distinguish app type (bot or Activity) from installation target (user install, guild install, or both); the current wording reads like these are mutually exclusive choices.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/messaging-collaboration-skills/skills/discord-app-workflow/SKILL.md`
at line 10, Update the app-selection guidance in the Discord app workflow
instructions to separate app type from installation context: identify bot or
Activity as the app type, then specify user-installed, guild-installed, or both
as independent installation targets. Avoid wording that presents these
categories as mutually exclusive.

Comment on lines +10 to +19
1. Choose Teams SDK for a Teams-first app or Microsoft 365 Agents SDK for a multi-channel agent runtime; document the reason and current supported language.
2. Define tenant, Microsoft Entra identity, app registration, manifest, installation, and administrator-consent needs before implementation.
3. Treat message activities, Adaptive Card actions, task modules, and agent tool calls as separate authorized input surfaces.
4. Verify inbound activity authenticity using the selected Microsoft runtime, preserve conversation and tenant context, and make outbound/proactive messaging consent-aware.
5. Provide a clear human escalation and error experience inside Teams rather than leaking runtime failures to users.
6. Validate sideloaded development behavior, tenant install, identity failure, card-submit authorization, proactive-send preconditions, and production deployment review.

## Handoffs

Use the current [Teams bot overview](https://learn.microsoft.com/en-us/microsoftteams/platform/bots/overview) and the documented SDK comparison before implementation. Hand service code to the selected TypeScript, Python, .NET, Java, or Swift server workflow.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

curl -fsSL https://learn.microsoft.com/en-us/microsoftteams/platform/teams-sdk/teams/sdk-comparison \
  | rg -n "C#|TypeScript|Python|Java|Swift"

Repository: gaelic-ghost/socket

Length of output: 1191


🏁 Script executed:

sed -n '1,40p' plugins/messaging-collaboration-skills/skills/teams-agent-workflow/SKILL.md

Repository: gaelic-ghost/socket

Length of output: 1569


🏁 Script executed:

fd -a 'SKILL.md' plugins/messaging-collaboration-skills/skills | rg 'java|swift|typescript|python|dotnet|csharp|.NET' -n

Repository: gaelic-ghost/socket

Length of output: 157


Limit the language guidance to supported SDKs.
The Teams SDK / Microsoft 365 Agents SDK comparison only lists C#, TypeScript, and Python. Remove Java and Swift from the SDK-facing wording here, or rephrase this handoff so they’re clearly just generic server-stack options.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/messaging-collaboration-skills/skills/teams-agent-workflow/SKILL.md`
around lines 10 - 19, Update the Handoffs guidance to limit SDK-specific
language references to C#, TypeScript, and Python. Remove Java and Swift from
the selected SDK/server workflow wording, or explicitly present them only as
generic server-stack options rather than supported SDK languages.

Source: Learnings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant