Executive AI Assistant (EAIA) is an AI-based assistant tool designed to help users automate and manage their daily tasks. Developed by LangChain, the tool is capable of handling emails, scheduling, managing tasks, etc. EAIA realizes efficient task processing and information management by integrating with various APIs and services, such as OpenAI, Anthropic, Google APIs, etc. Users can run EAIA locally or deploy it in the cloud to enjoy the convenience and efficiency of an intelligent assistant.
-
Experience: https://www.agentinbox.ai/
Function List
- Mail Management: Automatically read, categorize, and respond to e-mail.
- schedule: Automatically adjusts schedules based on meeting and task priorities.
- Report Generation: Automatically generate periodic reports based on data analysis.
- Task automation: Performs simple and complex tasks by understanding natural language instructions.
- information retrieval: Quickly access information from databases or the web through integrated search functions.
Using Help
Installation and Configuration
- cloning project::
- First, install Git on your local machine and then clone that GitHub repository using the following command:
git clone https://github.com/langchain-ai/executive-ai-assistant.git
- First, install Git on your local machine and then clone that GitHub repository using the following command:
- Environment Configuration::
- Go to the project catalog:
cd executive-ai-assistant
- Create and activate a Python virtual environment:
python3 -m venv venv source venv/bin/activate # 在Linux/Mac上 venv\Scripts\activate # 在Windows上
- Install project dependencies:
pip install -e .
- Go to the project catalog:
- Configuring the API Key::
- establish
.secrets
directory and move your API key files to this directory:mkdir .secrets mv ${PATH-TO-CLIENT-SECRET.JSON} .secrets/secrets.json
- Run the script to set up the Gmail service:
python scripts/setup_gmail.py
- Set the LangSmith API key:
export LANGSMITH_API_KEY=<您的密钥>
- establish
Usage Process
start using
- Starting a Local Instance::
- utilization
langgraph dev
command to start EAIA (Executive AI Assistant) locally. - In another terminal, run
python scripts/run_ingest.py --minutes-since 120 --rerun 1 --early 0
to start the automatic ingestion task of mail data.
- utilization
- Interaction and Management::
- Login to Agent Inbox interface, you can see and manage all emails and tasks handled by EAIA.
- By entering or selecting tasks, EAIA will follow your instructions. For example, you can ask EAIA to summarize the minutes of yesterday's meeting or schedule a meeting for next week.
Functions in detail
- Mail Management::
- EAIA automatically scans your inbox, categorizes emails, and auto-responds or flags them according to set rules. You can set keywords to trigger specific actions, such as marking all emails labeled "urgent" as high priority.
- schedule::
- When you need to schedule a meeting, EAIA can find out when your team members are available, auto-fill their schedules, and send meeting invitations. Simply type in "schedule a meeting", provide the information, and EAIA will take care of the rest of the details.
- Report Generation::
- EAIA can pull data from a specified data source, such as a company database or cloud storage, to generate reports based on your needs. You can set the frequency and type of reports, such as weekly performance reports or project progress reports.
- Task automation::
- For day-to-day tasks, EAIA understands and executes complex instructions, such as "Please summarize all progress reports on Project X and send them to the team," and automatically extracts information from multiple reports, generates a summary, and sends the email.
- information retrieval::
- With the integrated search tool, EAIA can quickly answer queries and find documents or information on the web. You can ask "How did the stock market perform today?". and EAIA will give you a real-time answer or data summary.
Recommendations for use
- Regularly updated configuration: Remember to update the EAIA profile as job requirements change (
config.yaml
) to ensure that it can adapt to the latest workflows. - Testing and feedback: Run EAIA in a test environment on a regular basis to ensure that its functionality meets your expectations and continuously optimize its performance through feedback mechanisms.
How to "Hire" and "Communicate" with an AI Email Assistant
Thank you for being an early taster of the AI Email Assistant! This is a prototype from the LangChain team to create an AI agent to manage your email. You should think of it as an "AI Executive Assistant". It's still a prototype, so it's free to use. We plan to release it on January 14th, so any feedback before then would be appreciated. We also plan to open-source this project, so if you'd rather run it yourself (you'll need an OpenAI account, an Anthropic account, and a LangSmith Plus account), please let us know. Since this is a beta prototype, there is no guarantee that we will continue to run it.
What does this AI agent do?
- For Google only
- Categorize emails as "Ignore", "Notify" or "Reply".
- “忽略” – 将其标记为已读
- “通知” – 会通知您,但不会尝试起草回复
- “回复” – 会尝试起草回复
- Ability to view your calendar
- Calendar events can be scheduled (you need to approve them before finalizing)
- Emails can be sent (you need to approve them before finalizing)
Setting up an account with LangChain Agents Agency
This will set you up with a "LangChain Agents Agency" account, a program through which you can hire AI agents.
- Go to https://www.agentinbox.ai/
- Sign in with Google (note: this does not need to be the same email as the one you are using to hire the email assistant, this is just your account with LangChain Agents Agency)
How to hire your AI email assistant
- Click on "Settings" in the lower left corner.
- Click on "Create Assistant"
- Provide your EA with background information about yourself and instructions on how to respond
- Click on "Authorize".
- 这将生成一个链接 – 点击它以打开一个新窗口
- You will see a login screen called "Arcade". This is the provider we use for authentication
- 您将看到如下页面 – Arcade 正在等待正确的范围。点击左下角的“Advanced”
- Grant Arcade all required permissions
- Note: If at any time you would like to remove these permissions, you can do so by following this link: https://myaccount.google.com/connections
Done! Your EA should now be employed.
EA works by checking for new mail every 10 minutes. The first time you run it, it will check for mail within the last hour. You may have to wait a while for it to run (and make sure you have some recent mail).
How to communicate with your AI email assistant
Communication is very important! AI is not magic, it can't read your mind. You gave your EA some instructions at the beginning, but it still may be stuck or questionable. And you need to improve any calendar invitations or emails! It's important to communicate properly with your EA because it will help it improve.
You can see any situations where the AI needs your help in the "Interrupted" section. These are all the situations that EA needs your attention for. You should see some basic information in the email header, as well as the actions that need assistance (in the screenshot below, all actions are "ResponseEmailDraft").
You can click on the given row to see more information and take action.
manipulate
Different interrupt types have different available operations. They will have a subset of these operations:
- “Ignore” – 用于表示应忽略此电子邮件。它将删除此中断,并且还会更新内存,表明此类电子邮件不值得回复。当 EA 搞砸了,而您不在乎看到这些类型的电子邮件时,请使用此选项
- “Mark as Resolved” – 用于表示无需采取任何操作。与“Ignore”类似,它会删除中断。与“Ignore”不同的是,它不会更新内存,表明应忽略此类电子邮件。当您希望 EA 标记这些电子邮件,但您已经处理完时,请使用此选项。
- “Edit/Accept” – 允许您手动编辑或接受应采取的操作(发送电子邮件、发送日历邀请)
- “Respond” – 允许您回复您的 EA。如果您的 EA 有问题,可以使用此选项回复。也可以使用此选项来告诉您的 EA 采取不同的操作,或更改其回复等。
Interrupt Type
Let's look at the different interrupt types and how to communicate across all of them.
Notify
Used when EA wants to notify you of certain emails. There is no recommended action, so you can't "Edit/Accept", but you can "Ignore"/"Mark as Resolved"/"Respond". "Respond"
Question
Used when EA wants to ask you something. You usually need "Respond" to reply, but you can also "Ignore"/"Mark as Resolved".
ResponseEmailDraft
Used when EA has drafted an email and needs your approval to send it. You can edit two fields:Content
cap (a poem) New Recipients
TheContent
is the content of the e-mail.New Recipients
is any new email address you want to add to the email thread (anyone in the thread is automatically included).
Schedule
Use when EA has drafted an email and needs your approval to send it. You can edit four fields:
Title
:: Title of the sessionEmails
:: E-mails of participants in meetingsEnd Time
:: End of sessionStart Time
:: Meeting start time