What is Amanuensis?
Amanuensis is an open-source, local-first automation pipeline designed to draft and manage social media content for Mastodon and Bluesky. It solves the problem of automated AI hallucinations by forcing every generated post through a human-in-the-loop approval workflow via Telegram.
- Best For: Developers and power users who want autonomous social media agents without sacrificing factual integrity.
- Pricing: Open-source (Free, provided you have local hardware).
- Category: AI Automation
- Free Option: Yes ✅
The Problem Amanuensis Solves
Maintaining an active, engaging social media presence as a developer is time-consuming, yet relying on cloud-based AI tools often leads to repetitive, low-quality, or hallucinated content. Many users find that automated bots quickly lose their "human" touch, start citing non-existent sources, or become targets for spam. Worse, the privacy implications of sending your creative process through third-party cloud LLM APIs are often ignored for the sake of convenience.
Developers who value both privacy and technical accuracy frequently face a trade-off: either spend hours writing manually or risk brand damage with unverified bot posts. The current state of "set and forget" AI automation often results in a loss of control, where the model dictates the narrative rather than assisting the human author.
Amanuensis addresses this by shifting the paradigm from "automated posting" to "assisted curation." By keeping the LLM local and requiring a Telegram-based human veto for every single action, it ensures that your social media identity remains grounded in your personal standards. You act as the editor-in-chief, while the model functions as a diligent, albeit sometimes overly enthusiastic, drafting assistant.
In this tutorial, you'll learn exactly how to use Amanuensis — step by step.
How to Get Started with Amanuensis in 5 Minutes
- Clone the repository and install the required dependencies using pip to ensure your local environment is configured for the project.
- Set up your local inference engine by running LMStudio and loading an instruction-tuned model, such as Mistral-7B, on port 1234.
- Install SwarmUI and load the Juggernaut XL "Ragnarok" base model along with the required LoRA weights to enable the persona's visual output.
- Configure your Telegram bot via @BotFather and retrieve your chat ID using @userinfobot, then update your .env file with these credentials.
- Execute a dry run using
python main_batch.py --dry-runto confirm that the stack successfully fetches data and generates posts without broadcasting them.
How to Use Amanuensis: Complete Tutorial
Step 1: Configuring Your Local Persona and Identity
Amanuensis operates based on profiles, which are defined in the profiles/ directory. Each profile contains its own identity, which dictates how the bot perceives itself, what sources it monitors, and the prompts it uses for drafting content. To create your own, duplicate the existing alexa folder and modify the identity.yaml file to align with your specific tone, interests, and target social platforms.
Within this folder, you will also find Jinja2 templates (.j2 files) that define the "Brain" of the operation. Editing these templates allows you to adjust how the model interprets raw data from sources like Hacker News or Lobste.rs. By refining these system prompts, you can change the persona from a sarcastic tech critic to a technical educator or a project-specific news aggregator.
Step 2: Managing the Approval Workflow via Telegram
The core of Amanuensis is the human-in-the-loop mechanism. Once the main_batch.py script finishes generating a set of posts, it pushes these drafts—complete with generated images—to your Telegram account. The bot presents these as interactive cards with options to approve, regenerate, or cancel.
Because the publishing process is split into separate listeners (main_telegram_listener.py and main_dispatcher.py), the system is designed to handle asynchronous human intervention. You do not need to be sitting at your computer to approve posts; as long as the background processes are running on your server, you can manage your social media presence from your phone throughout the day.
Step 3: Deploying Persistent Background Services
For Amanuensis to function effectively as an automated agent, you must ensure the background scripts remain running. The main_dispatcher.py, main_telegram_listener.py, and main_reply_listener.py processes act as long-running daemons. On a Linux environment, it is highly recommended to wrap these in systemd units or use a process manager like supervisord.
This setup allows the bot to monitor for new comments on your posts and handle the approval for replies in real-time. By utilizing these persistent listeners, you transform the tool from a manual batch-processing script into an autonomous agent that engages with your community while keeping you as the final gatekeeper for every reply.
Amanuensis: Pros & Cons
| Pros | Cons |
|---|---|
| Zero cloud LLM or API costs | High technical barrier to entry |
| Human-in-the-loop prevents hallucinations | Requires substantial local GPU hardware |
| Privacy-focused data processing | Unsupported; maintenance is not active |
| Open-source and fully self-hostable | Manual monitoring and troubleshooting required |
Amanuensis Pricing: Free vs Paid
Amanuensis is entirely open-source software, released under the MIT license. There is no "paid" tier, monthly subscription, or hidden cost for the software itself. Because the entire pipeline runs locally on your own infrastructure, you are not dependent on external API billing models for text generation or image synthesis.
However, the "cost" of using Amanuensis is measured in hardware and time. You need a machine capable of running an LLM (at least 7B parameters) and SDXL simultaneously. If you do not already possess a high-end GPU, the cost of entry is essentially the hardware upgrade. Additionally, since the project is no longer actively maintained, you must be prepared to handle any updates or code fixes yourself.
👉 Check the latest source code and documentation on the official Amanuensis GitHub repository.
Who is Amanuensis Best For?
For the privacy-conscious developer: You want to maintain a social media footprint but refuse to send your drafts to OpenAI or Anthropic servers. This tool ensures that all data remains within your local environment, giving you full ownership over your AI-assisted creative process.
For the autonomous systems researcher: You are interested in the mechanics of human-in-the-loop AI systems and want to study how deterministic pipelines can be used to constrain LLM behavior. Amanuensis provides a concrete, working example of a multi-stage agentic workflow that you can inspect and modify.
For the power user with home-lab hardware: You have underutilized GPU capacity and want to experiment with agentic workflows that extend beyond basic LLM chatting. If you are comfortable managing systemd services and debugging Python environments, this tool turns your home server into a sophisticated content creation engine.
Alternatives to Amanuensis
If you prefer cloud-based automation, tools like Zapier or Make.com allow for easier integration with various social platforms but lack the granular, local-first control of Amanuensis. For those looking for pure LLM automation without the complex human-veto layer, platforms like Autogpt offer more aggressive, albeit less supervised, autonomous agent features. However, Amanuensis remains the superior choice for users who prioritize factual integrity and privacy, as it uniquely refuses to post anything that has not been explicitly reviewed by a human finger on a mobile screen.
Final Verdict: Is Amanuensis Worth It?
Amanuensis is an exceptional piece of engineering for those who view AI as a drafting partner rather than a replacement. While it demands a high level of technical competency to deploy and maintain, the trade-off is a truly private, hallucination-free, and cost-effective automation pipeline.