Prompt
We just merged the PR that adds ESM support to our package. Read package.json and docs/esm.md, then draft one tweet for X telling users they can now import it natively, with a 2-line code example written as plain text. Schedule it for Tuesday 10:00 America/Los_Angeles. How to do it
- Mint a key Create a key in https://app.socialhandoff.com > Connections scoped to X with draft and schedule permissions.
- Add .vscode/mcp.json Add a server under servers with type http, url https://app.socialhandoff.com/mcp, and an Authorization header. VS Code can prompt for the key through an input variable so it never sits in the file.
- Start the server Open the MCP view or the Start action above the entry, and confirm the tools appear in the agent mode tool picker.
- Prompt in agent mode Switch the chat to agent mode, reference the files, and ask for the draft and slot.
- Approve Review the pending post in the inbox or on your phone and approve it.
Example draft
Our package now ships native ESM. No more require shims:
import { parse } from "tinyparse"
parse(input, { strict: true })
CommonJS still works. Docs: https://example.com/docs/esm Gotchas
- Code in a tweet is plain text. X does not render monospace, and the URL still counts as 23 characters, so keep examples to one or two lines.
- Use a VS Code input variable for the Authorization header so the key is stored in the editor's secret storage and not committed with .vscode/mcp.json.
- Agent mode may bundle several tool calls. If it creates two drafts for one request, reject the extra in the inbox; duplicate protection stops identical text from publishing twice.
- Character limit: 280 weighted characters for standard accounts. Most CJK characters and many emoji count as 2. Premium accounts can post longer, but SocialHandoff checks against 280.
- Links: Every URL is wrapped by t.co and counts as 23 characters, whatever its real length.
- Media per post: Up to 4 images, or 1 GIF, or 1 video.
- File sizes: Images up to 5 MB, GIFs up to 15 MB, video up to 512 MB (uploaded in chunks).
Frequently asked questions
Do I need GitHub Copilot?
You need a VS Code chat agent that supports MCP tools, which today is agent mode. The server itself is a standard MCP server.
Can the agent read my X analytics?
Only if the key has the analytics permission. Then get_insights returns per-post metrics where X provides them.