Generation
- Generate node now produces the full post (text + AI image + carousel)
via a shared PostImagePipeline extracted from StreamPostCreation
- Generate config UI mirrors the /posts/create wizard (carousel slide
count, include-image toggle); drop the decorative format/unsplash keys
Flow correctness
- RSS/HTTP nodes expose named has-items (default) and no-items output
handles, labeled and colored like the Condition node
- AdvanceAutomationRun records a no_matching_edge terminal instead of
completing silently; "0 new items" feedback in the test panel
- Manual/test runs no longer persist the production dedup watermark
Run reliability
- Pause truly halts in-flight runs (production only; manual test runs
always run regardless of automation status)
- ProcessAutomationNode::failed() marks the run failed
- automation:recover-stuck-runs and automation:prune-dry-runs commands
Webhook / HTTP
- Branded User-Agent (config-driven) on outbound webhook + http_request
- Webhook fails on invalid JSON instead of silently sending {}
- HTTP custom headers editor; CodeMirror-based CodeEditor for JSON
Editor UX
- Header Test button only opens the panel; the panel has a Run button
(saves first) and owns the with-real-data toggle
- Clicking a node closes the test panel and opens its config
- Node cards: max-width + truncate so long URLs don't grow the node
|
||
|---|---|---|
| .claude | ||
| .cursor/rules | ||
| .github | ||
| app | ||
| bootstrap | ||
| config | ||
| database | ||
| docker | ||
| lang | ||
| maizzle | ||
| public | ||
| releases | ||
| resources | ||
| routes | ||
| storage | ||
| stubs | ||
| templates | ||
| tests | ||
| .dockerignore | ||
| .editorconfig | ||
| .env.ci | ||
| .env.example | ||
| .env.testing | ||
| .gitattributes | ||
| .gitignore | ||
| .mcp.json | ||
| .prettierignore | ||
| .prettierrc | ||
| artisan | ||
| boost.json | ||
| Caddyfile | ||
| CLAUDE.md | ||
| components.json | ||
| compose.override.yaml.example | ||
| compose.prod.yaml | ||
| compose.yaml | ||
| composer.json | ||
| composer.lock | ||
| eslint.config.js | ||
| GEMINI.md | ||
| LICENSE.md | ||
| package-lock.json | ||
| package.json | ||
| phpunit.xml | ||
| pint.json | ||
| README.md | ||
| tsconfig.json | ||
| vite.config.ts | ||
The open-source alternative to Buffer, Hootsuite, and Later.
Schedule, write, and publish to every social network from one place.
Self-hosted. Built for teams, agencies, and creators who own their data.
Cloud • Documentation • Roadmap • Community
TryPost 1.0 is here
A massive release that turns TryPost into a complete open-source social media platform.
- MCP Server — connect Claude, Cursor, ChatGPT, and any MCP client. Schedule, publish, and pull metrics with natural language.
- REST API — Personal Access Tokens, every workflow you can do in the dashboard, available over HTTP.
- Workspaces & Teams — manage multiple brands or clients in isolated environments. Invite team members with role-based permissions.
- AI Carousel Generator — type a prompt, get a multi-slide LinkedIn / Instagram carousel back, with images and copy on-brand.
- Brand Profile — set tone, voice, language, and colors once. Every AI generation respects them automatically.
- Analytics — per-account engagement metrics from every platform that exposes them, in a single dashboard.
Read the release notes →
Why TryPost
Tired of paying $30–$200/month per user for a scheduler? Tired of your content sitting on someone else's database?
| Self-hosted, your data | Your posts, drafts, and metrics never leave your server |
| No artificial limits | Unlimited posts, unlimited connected accounts, unlimited workspaces |
| AI built in | Captions, carousels, on-brand voice — using your own keys |
| Multi-tenant ready | Workspaces + roles for agencies managing many clients |
| API + MCP first-class | Automate everything; your AI assistant can post for you |
| AGPL-licensed | Inspect every line, fork it, ship it — forever free |
Features
| Visual Calendar | See every scheduled post at a glance, switch between month/week/day |
| Multi-Platform Composer | One draft → preview & tweak for every network in parallel |
| AI Generate / Review | Draft from a prompt, get inline feedback before you publish |
| AI Carousel Builder | Prompt → multi-slide carousel with images, on-brand |
| Brand Profile | Tone, voice, language, colors — applied to every AI call |
| Asset Library | Reusable workspace media + Unsplash & Giphy search built in |
| Signatures & Labels | Reusable text blocks (hashtags, CTAs) and color-coded post tags |
| Team Collaboration | Owner / Admin / Member roles, comments with @mentions on drafts |
| Workspaces | Isolate brands, clients, or projects in their own spaces |
| REST API + MCP | Full programmatic control; AI assistants integrate natively |
| Analytics | Per-account engagement metrics across every supported platform |
| Multi-language | English, Spanish, Portuguese |
Supported Platforms
X (Twitter) |
TikTok |
|||
YouTube |
Threads |
Bluesky |
Mastodon |
Get Started
| Try it on Cloud | The fastest way. Sign up at trypost.it |
| Self-host | Free forever. Installation guide → |
| Run with AI assistants | Connect Claude / Cursor / ChatGPT via MCP → |
Contributing
We love contributions, no matter how small. Pick an issue, say hi in Discussions, or just open a PR with what you'd like to see.
If TryPost is useful to you, a star helps more people find it. That's the most valuable contribution if you're short on time.
License
GNU Affero General Public License v3.0 — use, modify, fork, self-host, and redistribute, including commercially. If you run a modified version as a network service, you need to make your changes available to its users (AGPL §13).
Built openly by the community. Star us on GitHub and tell a friend.
Star History