All plugins

wechat-social-assistant

Local-first WeChat relationship memory assistant for macOS: captures only what is visible in the WeChat window via system OCR/Accessibility, stores everything in a local SQLite database (0600/0700 permissions, no cloud), and serves contact briefs, follow-up planning, outreach drafts and weekly relationship reports through 32 MCP tools. Engine pinned to the immutable PyPI release wechat-social-assistant==1.5.1 over uvx stdio; Portable Agent Plugins v1 package (mcp.json + skills/), needs uv on PATH. All data confined to PLUGIN_DATA via WSA_ALLOWED_ROOT + path enforcement. Never reads WeChat databases, never injects into WeChat, never sends messages — outreach is drafts for human review only. Disclosure — reads WeChat only by screenshotting/OCR-ing and walking the macOS Accessibility tree of the frontmost window (not WeChat's databases or a bot API), compiles bundled Swift helpers with swiftc into ~/Library/Caches/wechat-social-assistant/bin on first use, and needs Screen Recording (optionally Accessibility) permission for the host terminal; no network egress, never sends messages.

harrylabsj1Toolsv1.5.1Updated 1 month ago

About

Local-first WeChat relationship memory assistant for macOS: captures only what is visible in the WeChat window via system OCR/Accessibility, stores everything in a local SQLite database (0600/0700 permissions, no cloud), and serves contact briefs, follow-up planning, outreach drafts and weekly relationship reports through 32 MCP tools. Engine pinned to the immutable PyPI release wechat-social-assistant==1.5.1 over uvx stdio; Portable Agent Plugins v1 package (mcp.json + skills/), needs uv on PATH. All data confined to PLUGIN_DATA via WSA_ALLOWED_ROOT + path enforcement. Never reads WeChat databases, never injects into WeChat, never sends messages — outreach is drafts for human review only. Disclosure — reads WeChat only by screenshotting/OCR-ing and walking the macOS Accessibility tree of the frontmost window (not WeChat's databases or a bot API), compiles bundled Swift helpers with swiftc into ~/Library/Caches/wechat-social-assistant/bin on first use, and needs Screen Recording (optionally Accessibility) permission for the host terminal; no network egress, never sends messages.

Hermes Plugin: wechat-social-assistant

Portable Agent Plugins v1 package bundling the
wechat-social-assistant
MCP server (local-first WeChat relationship memory for macOS) with a workflow
skill.

  • mcp.json launches the server via
    uvx --from wechat-social-assistant==1.5.1 wsa-mcp — the engine is pinned
    to the immutable PyPI release; PyPI artifacts cannot be replaced after
    upload. Needs uv on PATH (Python 3.11+ is fetched by uv when missing).
  • All data (SQLite, captures, exports, backups) is confined to the plugin
    data directory via WSA_ALLOWED_ROOT=${PLUGIN_DATA} +
    WSA_MCP_ENFORCE_PATHS=1; file-like tool arguments outside it are rejected
    by the server.
  • The bundled skills/wechat-social-assistant/SKILL.md teaches the capture →
    review → follow-up workflow and the hard safety boundaries (never sends
    messages, never reads WeChat's databases, write tools need explicit user
    confirmation).

Server key note

The MCP server key is wsa (short form) to keep tool line names within the
host's 64-character limit. Because the plugin name itself is long
(wechat-social-assistant), the host may still replace tool names with a
stable 8-character hash suffix — functionality is unaffected.

Privacy summary

Local-first by design: no cloud calls, data files are created 0600/0700, OCR
evidence is never overwritten by reviews, retention purge is dry-run first,
and backups are OpenSSL-encrypted with a user-supplied passphrase.

README from the reviewed commit fbfc1bd; it updates when the author re-pins.

More by harrylabsj

7 plugins by harrylabsj in the catalog.

harrylabsjreading-buddyLocal-first WeRead (微信读书) reading companion: syncs bookshelf, reading stats and notes to the local machine and turns them into private reading cards and weekly/monthly reviews through 8 MCP tools, with a built-in fictional demo mode for previews. Engine pinned to an immutable git commit (e5f6673) over npx stdio; Portable Agent Plugins v1 package (mcp.json + skills/), needs Node.js 20+ on PATH. All data stays in PLUGIN_DATA; never posts to WeRead — cards and reviews are local files saved only after user confirmation. Disclosure — live mode sends your WEREAD_API_KEY as a Bearer token plus book ids and paging cursors to i.weread.qq.com (Tencent's WeRead agent gateway) and nothing else; the engine's MCP tool descriptions and error messages are Chinese-only while the skills are English-first; the engine's npm dependencies resolve as caret ranges at first launch.Communitytools1harrylabsjeatwiseEatwise (外卖营养教练) — local-first Chinese dietary coach: deterministic meal nutrition reviews, personal daily energy/nutrient targets, and consented on-device profile and meal history through 9 MCP tools over a bundled open food database (TFND + USDA FNDDS). No network, no accounts, no payments; profile schema rejects name/phone/ID/medical fields by design. Engine pinned to an immutable git commit (cbc08f6) over npx stdio; Portable Agent Plugins v1 package (mcp.json + skills/), needs Node.js 22.5+ on PATH. Disclosure — the engine's MCP tool descriptions and error messages are Chinese-only while the skills are English-first.Communitytoolsharrylabsjfreight-reconciliationPayer-side freight reconciliation: import carrier bills and trip ledgers into a deterministic local core (SQLite, WAL, no cloud), re-calculate against contracted rates and produce evidence-linked difference lists for human review — 14 MCP tools over uvx stdio (engine pinned to the immutable commit e8cd259c, release v0.4.1), with 3 bilingual workflow skills bundled. Portable Agent Plugins v1 package (mcp.json + skills/); needs uv on PATH. Never approves payments, sends messages or writes back to ERP/TMS; final confirmations route through a local admin page the model cannot reach. Disclosure — the optional freight-admin page listens on 127.0.0.1 and is where a human confirms mappings, rules, matches and exports; nothing leaves the machine.Communitytoolsharrylabsjgood-studentWrong-question diagnosis and study-action loop for parents and students — deterministic local core (SQLite, no cloud), host-model recognition gated by parent confirmation. Portable Agent Plugins v1 package (mcp.json + skills/); good-student MCP server pinned to immutable commit 2469cbb over uvx, with the good-student workflow skill bundled. Needs Python 3.10+ via uv. No credentials required; all data stays on-device and nothing is uploaded.Communitytools