Rapid Setup for AI Agents Over Email | β | Deploy Agents In the Easiest Way for Your Users |
To, CC, and Fw: Multiple Agents | β | Simplified Training: Just Email |
Powerful Shortcodes for AI | β | Multi-Agent Multi-Step Collaboration for All |
Batteries Included, Just Add Credentials | β | Includes Email Client and Agent Dashboard |
ATAT enables rapid setup of AI agents you can email -- with simple shortcodes that give the agents superpowers.
Source Code https://github.com/semanticsean/ATAT
Roadmap: For those interested in contributing to the project, please refer to our contribution guide for detailed information on how you can get involved.
EXAMPLE: Email a team of three AI agents who collaborate to write a short story:
Email one AI agent, instructed to write a story in three acts (three API calls):
This guide walks you through deploying on Replit, because it's so easy to deploy. Start with this Repl.
To use locally or on Github, you'll have to change the calls to take env vars.
- Package Version: Use
pip install openai==0.28.0
for compatibility. - Secrets Configuration: Enter your SMTP and OpenAI API credentials as secrets.
{
"SMTP_SERVER": "",
"IMAP_SERVER": "",
"SMTP_PORT": "",
"SMTP_USERNAME": "",
"SMTP_PASSWORD": "",
"OPENAI_API_KEY": "",
"DOMAIN_NAME": "",
"COMPANY_NAME": ""
}
For SMTP_PORT using Google Workspace, use Port 587.
For SMTP_PASSWORD, if you're using Google / Gmail it needs to be an APP PASSWORD which requires 2FA.
DOMAIN_NAME should be what follows @ in an email address. For example, "acme.com" like "info@acme.com".
COMPANY_NAME should be as it appears in writing, like "ACME Corp."
-
Create An Agent@ Email Address: This must be a new email address with no history.
-
Agent Aliases: Assign at least one email alias for at least one agent in
agents/agents.json
. The rest are optional and can be called with the @@(Agent Name) shortcode, or can receive their own alias. @@ is helpful if you want more agents than your email server supports as aliases. For example Google Workspace limits to 25, but you can deploy hundreds of agent models accessible through the @@ shortcode.
- Run and Explore: Deploy via Replit and navigate the agent dashboard. Check spam settings if responses are missing.
See /tools/testing_emails.md for emails to test with.
IMPORTANT: You may need to whitelist the domain and / or email addresses.
MAKE A NEW EMAIL TO USE WITH ATAT. DO NOT CONNECT EXISTING ACCOUNTS. ATAT is reactive and you may send unintended emails if you haven't indexed the history properly. Create a new account exclusively for ATAT use.
ATAT is an email client that hosts AI agents who respond to emails, so you can email them directly, cc them, or fw: emails to them. ATAT is designed to democratize the use of AI, allowing quick setup of an AI agent "company" in minutes, with the steering handled over email. That means training is as simple as providing a new email to forward to or cc. This approach leverages the inherent slowness of email for thoughtful, comprehensive AI responses. It also opens up "MoE" or "CoE" thinking for normies.
Another strength of email is that it's slow. As demonstrated in the @@ and !detail! shortcodes, multi-pass (multi-API-call) components can be integrated and the time it takes to run all the calls, be it minutes or even hours, is normal for email.
- π Rapid Deployment: Easy integration into existing email systems.
- π€ Agent-Centric Communication: Designed for AI interactions, complete with an Agent Dashboard.
- β Reactive Email Design: Focuses on human-initiated interactions, avoiding unsolicited email communication.
- π¦Ύ Multi-Agent Collaboration: Enhances decision-making through a mixture of expert agents.
- π οΈ Shortcode System: Simplifies complex tasks with shortcodes like
!detail
,!summarize
, and!ff
. - β° Embracing Email's Pace: Utilizes email's slow nature for detailed, thoughtful AI responses.
- π‘ Replit Setup: Quick setup process on Replit.
- π PDF Capability: Agents can interpret text from PDFs.
- π¨ Custom Dashboard: Customizable HTML/CSS for branding.
- β³ Synthetic Time Travel: See how people will react to an email or document before it happens.
Utilize new_agent.py
for generating new agents with detailed personas and DALL-E generated images.
cards.py
powers a Flask server showcasing a dashboard of all agents for easy access.
Enhance your email interactions with our advanced shortcode system. Designed for seamless integration into email content, these shortcodes trigger specialized functionalities within the ATAT platform, enabling dynamic agent engagement and content manipulation directly through your emails. Explore the capabilities and usage of each shortcode to leverage the full potential of ATAT for your email communications.
- Functionality: Use the
@@
shortcode to dispatch emails to multiple agents simultaneously, fostering a collaborative multi-agent response. This feature is invaluable for scenarios requiring input from diverse AI personas. - Usage: Simply include
@@(agent name)
or@@.creator
in your email, followed by specific agent identifiers or creation instructions. This command cues ATAT to engage the designated agents in the response process.
Testing Email
devatlas - what is the most important question for grant applicants to answer when writing startup pitch decks?
@@(castor) what startups do you like?
@@(Nova) what do you think?
@@(Orion) what do you think?
@@(Nebula) what do you think?
@@(Altair) what do you think?
- Functionality: The
@@.creator
shortcode instantaneously generates new agent personas, offering on-the-fly customization to adapt to the evolving needs of the conversation. - Usage: Implement
@@.creator(Embody an agent...)
with detailed persona specifications. Ensure "Embody" is present to activate the creator function, signaling ATAT to craft and introduce a new agent persona based on your instructions.
Testing Email
I'm working on a new creative project and need some roleplaying. Please render this agent and have it answer the question below.
@@.creator(Embody a playful vampire who is friends with a dolphin in a children's book style who speaks in comical vampire voice.)!
Mr. Vampire, what is your favorite game to play?
- Functionality: The
Detail
shortcode breaks down extensive text blocks into manageable segments, optimizing the processing and generation of responses. - Usage: Wrap your detailed content between
!detail_start!
and!detail_stop!
markers. ATAT automatically segments the content for efficient handling. Use '!split!' to split the API calls / engage multipass.
!detail_start! introduction: it's the year 2050 and AI driven synthetic time travel is easily possible !split! we meet our protagonist, in detail !split! we meet our antagonist, in detail !split! we see the first conflict between the protagonist and antagonist, the first act ends !split! the second act begins with a new player, a romantic interest who hasn't been mentioned yet !split! the second act has a principal conflit !split! the climax happens !split! the resolution doesn't happen yet !split! now the resolution happens !detail_stop!
- Functionality: The
Summarize
shortcode condenses detailed content into brief summaries, customizable through specific modifiers to suit your summary's intended focus and style. - Usage: Trigger this feature with
!summarize!
, adding modifiers as needed to refine the summary output.
(This feature is even more buggy than others.)
SEE /tools/testing_emails.md for testing scripts--too long to fit here.
- Explanation: Modifiers adjust the shortcode's processing of content, allowing for emphasis on certain elements or the alteration of the response's verbosity.
- Examples: Use modifiers like
!summarize.json!
,!summarize.marketing!
, or!summarize.budget!
to direct ATAT in crafting summaries that align with your requirements, whether it be in JSON format, marketing language, or budget-focused content.
Leverage these shortcodes to streamline your email interactions, ensuring efficient and effective communication with and between your AI agents.
- Community Contributions: Contributions are welcome to address known issues and enhancements listed in
contribute.md
. - Roadmap: Future features and improvements are outlined for participants.
ATAT is licensed under the MIT License. Refer to the LICENSE file for details.
@@ and ATAT are trademarks of Semantic Life, Copyright 2024. All rights reserved.
Google / Google Workspace (TM) Google.