# myna > A terminal social media manager. Connect accounts, write once, and post to 36 > networks from a TUI, a scriptable CLI, a desktop app, an HTTP API or MCP. Install: bun add -g @profullstack/myna Source: https://github.com/profullstack/mynaposter Licence: MIT ## Networks - x (X): browser sign-in, 280 character limit - facebook (Facebook): browser sign-in, 63206 character limit - instagram (Instagram): browser sign-in, 2200 character limit - threads (Threads): browser sign-in, 500 character limit - bluesky (Bluesky): username + password, 300 character limit - reddit (Reddit): username + password, 40000 character limit - linkedin (LinkedIn): browser sign-in, 3000 character limit - pinterest (Pinterest): browser sign-in, 500 character limit - tiktok (TikTok): browser sign-in, 2200 character limit - youtube (YouTube): browser sign-in, 10000 character limit - mastodon (Mastodon): browser sign-in, 500 character limit - misskey (Misskey): paste a token, 3000 character limit - pixelfed (Pixelfed): browser sign-in, 2000 character limit - lemmy (Lemmy): username + password, no character limit - nostr (Nostr): paste a token, no character limit - tsbb (tsbb): approve a code, no character limit - agenticjobs (Agentic Jobs): approve a code, 600 character limit - moltbook (Moltbook): paste a token, 40000 character limit - colony (The Colony): paste a token, 50000 character limit - 4claw (4claw): paste a token, no character limit - moltexchange (MoltExchange): paste a token, no character limit - ugig (ugig.net): paste a token, 5000 character limit - telegram (Telegram): paste a token, 4096 character limit - discord (Discord): paste a token, 2000 character limit - slack (Slack): paste a token, 40000 character limit - matrix (Matrix): username + password, no character limit - mattermost (Mattermost): username + password, 16383 character limit - devto (dev.to): paste a token, no character limit - hashnode (Hashnode): paste a token, no character limit - ghost (Ghost): paste a token, no character limit - wordpress (WordPress): username + password, no character limit - microblog (Micro.blog): paste a token, no character limit - tumblr (Tumblr): app keys, no character limit - gitblog (Git blog): files on this machine, no character limit - htmlblog (HTML blog): files on this machine, no character limit - bl0ggers (bl0ggers): browser sign-in, no character limit ## How logging in works 6 networks accept a real username and password: bluesky, reddit, lemmy, matrix, mattermost, wordpress. 2 use a device flow, where you approve a short code in a browser: tsbb, agenticjobs. 11 require a browser OAuth flow because they removed password APIs: x, facebook, instagram, threads, linkedin, pinterest, tiktok, youtube, mastodon, pixelfed, bl0ggers. The rest take a token or app keys you paste in. ## Commands myna login connect an account myna post [target] [text] post now; target is "all", a network, or an account id myna schedule [text] queue for later myna skill show the rules for a network or an account, as a skill myna link read a link and draft a post about it myna infographic build a graphic to attach myna run run the scheduler as a daemon ## Skills: read these first Every network and every account has a skill.md, a Markdown file with frontmatter that says what belongs there and carries the limits myna enforces (maxPerDay, minGapMinutes, maxChars, requiresCanonical, contentPolicy). They live in ~/.config/myna/skills//skill.md and ~/.config/myna/skills///skill.md. An agent should read the account's skill, then the network's, before posting: `myna skill show `, GET ///skill.md on the local dashboard, or the myna_skill MCP tool. A blog's skill allows four posts a day, major feature announcements only, and never a title it already carries. Post types live beside them at skills/types//skill.md (launch-announcement, release-notes, bug-story, essay, repost, promo, reply, event, social-update): what a post is wherever it goes, which kinds of target carry it, and the sections to write. `myna post --type ` names one. ## MCP The package @profullstack/myna-mcp exposes myna_accounts, myna_networks, myna_skills, myna_skill, myna_preview, myna_post, myna_schedule, myna_queue, myna_cancel, myna_history, myna_draft, myna_timeline and myna_search. There is deliberately no login tool: connecting an account needs a password or a browser flow and belongs to a person.