-
-
Notifications
You must be signed in to change notification settings - Fork 744
Add Ai Enrollment Counselor Notebook #732
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Ai Enrollment Counselor Notebook #732
Conversation
WalkthroughFour new Jupyter notebook examples have been added, each demonstrating a distinct AI agent use case using the PraisonAI Agents framework and OpenAI API. The notebooks showcase agents for university admissions counseling, Manim code generation and updating, universal desktop utilities, and work email management, each with tailored prompts, logic, and demonstration functions. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant Notebook
participant Agent
participant OpenAI_API
User->>Notebook: Provides input/query
Notebook->>Agent: Formats prompt and invokes agent
Agent->>OpenAI_API: Sends request with context
OpenAI_API-->>Agent: Returns response
Agent-->>Notebook: Delivers processed output
Notebook-->>User: Displays result
Suggested labels
Poem
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary of Changes
Hello @Dhivya-Bharathy, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request significantly expands the examples available for PraisonAI Agents by introducing four new Jupyter notebooks. These additions demonstrate the framework's versatility across various domains, including university admissions automation, multi-agent code generation and debugging, desktop utility tasks, and intelligent email management. The new examples highlight practical applications of AI agents in automating complex workflows.
Highlights
- AI Enrollment Counselor: A new Jupyter notebook (
AI_Enrollment_Counselor.ipynb) has been added, demonstrating an AI agent designed to automate university admissions. This agent can guide applicants, check document completeness, and answer admissions-related questions. - Intelligent Programming Agent: A new Jupyter notebook (
intelligent_programming_agent.ipynb) introduces a multi-agent system for generating, debugging, and updating Manim code from natural language descriptions. It includes specialized agents for each task and custom validation tools. - Universal Desktop Utility Agents: A new Jupyter notebook (
universal_desktop_agents.ipynb) showcases a suite of desktop utility agents capable of executing terminal commands, summarizing files, and performing general search and summarization tasks. It defines distinct roles for terminal, file summarization, and general-purpose agents. - Work Email Agent with Custom Tools: A new Jupyter notebook (
work_email_agent.ipynb) features an AI agent for managing work emails. This agent can summarize email content, extract action items using a custom Python tool, and draft professional replies.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
|||||||||||||||||||||||||
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #732 +/- ##
=======================================
Coverage 14.23% 14.23%
=======================================
Files 25 25
Lines 2571 2571
Branches 367 367
=======================================
Hits 366 366
Misses 2189 2189
Partials 16 16
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (5)
examples/cookbooks/AI_Enrollment_Counselor.ipynb (2)
238-239: Add a note about replacing the API key placeholderThe API key is set to a placeholder value. Consider adding a comment to remind users to replace it with their actual key.
-os.environ["OPENAI_API_KEY"] = "sk-..." # <-- Replace with your actual OpenAI API key +# IMPORTANT: Replace "sk-..." with your actual OpenAI API key +os.environ["OPENAI_API_KEY"] = "sk-..." # <-- Replace with your actual OpenAI API key
316-326: Consider adding input validation for robustnessThe
ask_enrollment_agentfunction could benefit from basic input validation to handle edge cases gracefully.def ask_enrollment_agent(query, submitted=None, required=None): + if not query: + return "Please provide a query." + if submitted and required: + if not isinstance(submitted, list) or not isinstance(required, list): + return "Submitted and required documents must be lists." + prompt = ( f"Applicant submitted documents: {submitted}\n" f"Required documents: {required}\n"examples/cookbooks/intelligent_programming_agent.ipynb (1)
569-569: Fix Unicode character rendering issueThere's a Unicode character rendering issue in the print statement.
- print("�� Step 1: Generating Manim code...") + print("📝 Step 1: Generating Manim code...")examples/cookbooks/universal_desktop_agents.ipynb (2)
67-68: Consider suggesting secure API key management.While the placeholder approach works for demos, consider adding guidance about using environment variables to avoid accidentally committing API keys.
"import os\n", -"os.environ[\"OPENAI_API_KEY\"] = \"Enter your api key\" # <-- Replace with your actual OpenAI API key" +"# Option 1: Set via environment variable (recommended)\n", +"# os.environ[\"OPENAI_API_KEY\"] = os.getenv(\"OPENAI_API_KEY\")\n", +"\n", +"# Option 2: Set directly (for testing only - don't commit real keys)\n", +"os.environ[\"OPENAI_API_KEY\"] = \"Enter your api key\" # <-- Replace with your actual OpenAI API key"
717-756: Consider adding error handling for production robustness.The agent instantiation and usage examples are well-structured. However, consider adding error handling around agent calls for better production readiness.
def run_terminal_agent(query): - return terminal_agent.start(query) + try: + return terminal_agent.start(query) + except Exception as e: + return f"Error running terminal agent: {str(e)}" def run_file_summarize_agent(file_path): prompt = f"How would you summarize the file at: {file_path}?" - return file_summarize_agent.start(prompt) + try: + return file_summarize_agent.start(prompt) + except Exception as e: + return f"Error running file summarize agent: {str(e)}" def run_general_purpose_agent(query): - return general_purpose_agent.start(query) + try: + return general_purpose_agent.start(query) + except Exception as e: + return f"Error running general purpose agent: {str(e)}"
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
examples/cookbooks/AI_Enrollment_Counselor.ipynb(1 hunks)examples/cookbooks/intelligent_programming_agent.ipynb(1 hunks)examples/cookbooks/universal_desktop_agents.ipynb(1 hunks)examples/cookbooks/work_email_agent.ipynb(1 hunks)
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-agents/CLAUDE.md:0-0
Timestamp: 2025-06-30T10:06:17.673Z
Learning: Use the `Agent` class from `praisonaiagents/agent/` for core agent implementations, supporting LLM integration, tool calling, and self-reflection.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/agents/agents.ts : The 'PraisonAIAgents' class in 'src/agents/agents.ts' should manage multiple agents, tasks, memory, and process type, mirroring the Python 'agents.py'.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-agents/CLAUDE.md:0-0
Timestamp: 2025-06-30T10:06:17.673Z
Learning: Use conda environment activation (`conda activate praisonai-agents`) before running development or tests.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/agents/autoagents.ts : The 'AutoAgents' class in 'src/agents/autoagents.ts' should provide high-level convenience for automatically generating agent/task configuration from user instructions, using 'aisdk' to parse config.
examples/cookbooks/work_email_agent.ipynb (2)
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-agents/CLAUDE.md:0-0
Timestamp: 2025-06-30T10:06:17.673Z
Learning: Use the `Agent` class from `praisonaiagents/agent/` for core agent implementations, supporting LLM integration, tool calling, and self-reflection.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/agent/agent.ts : The 'Agent' class in 'src/agent/agent.ts' should encapsulate a single agent's role, name, and methods for calling the LLM using 'aisdk'.
examples/cookbooks/universal_desktop_agents.ipynb (7)
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/agents/agents.ts : The 'PraisonAIAgents' class in 'src/agents/agents.ts' should manage multiple agents, tasks, memory, and process type, mirroring the Python 'agents.py'.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/agents/autoagents.ts : The 'AutoAgents' class in 'src/agents/autoagents.ts' should provide high-level convenience for automatically generating agent/task configuration from user instructions, using 'aisdk' to parse config.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/agent/agent.ts : The 'Agent' class in 'src/agent/agent.ts' should encapsulate a single agent's role, name, and methods for calling the LLM using 'aisdk'.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-agents/CLAUDE.md:0-0
Timestamp: 2025-06-30T10:06:17.673Z
Learning: Use the `Agent` class from `praisonaiagents/agent/` for core agent implementations, supporting LLM integration, tool calling, and self-reflection.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/index.ts : The main entry point 'src/index.ts' should re-export key classes and functions (such as 'Agent', 'Agents', 'Task', etc.) for easy import by consumers.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-agents/CLAUDE.md:0-0
Timestamp: 2025-06-30T10:06:17.673Z
Learning: Use conda environment activation (`conda activate praisonai-agents`) before running development or tests.
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.windsurfrules:0-0
Timestamp: 2025-06-30T10:06:44.129Z
Learning: Applies to src/praisonai-ts/src/{llm,agent,agents,task}/**/*.ts : Use the 'aisdk' library for all large language model (LLM) calls in TypeScript, such as using 'generateText' for text generation.
examples/cookbooks/intelligent_programming_agent.ipynb (1)
Learnt from: CR
PR: MervinPraison/PraisonAI#0
File: src/praisonai-ts/.cursorrules:0-0
Timestamp: 2025-06-30T10:05:51.843Z
Learning: Applies to src/praisonai-ts/src/agents/agents.ts : The 'PraisonAIAgents' class in 'src/agents/agents.ts' should manage multiple agents, tasks, memory, and process type, mirroring the Python 'agents.py'.
⏰ Context from checks skipped due to timeout of 90000ms (3)
- GitHub Check: Run tests and collect coverage
- GitHub Check: quick-test
- GitHub Check: test-core (3.11)
🔇 Additional comments (6)
examples/cookbooks/intelligent_programming_agent.ipynb (3)
108-119: Excellent API key handling with getpassGreat implementation using
getpassfor secure API key input and providing a fallback demo mode. This is a security best practice.
144-230: Well-designed utility class for code validationThe
ManimCodeToolsclass is excellently structured with comprehensive validation methods, proper error handling, and clear separation of concerns. The code quality checks are thorough and will help ensure generated code is valid.
520-643: Excellent multi-agent orchestration implementationThe
generate_manim_codefunction demonstrates sophisticated multi-agent collaboration with:
- Clear separation of concerns between generation and debugging agents
- Comprehensive validation and error handling
- Well-structured task definitions
- Proper use of the PraisonAIAgents orchestration framework
This is a great example of how to build complex AI agent workflows.
examples/cookbooks/universal_desktop_agents.ipynb (3)
108-143: Excellent agent design with clear role separation.The three agents are well-defined with distinct purposes:
- Terminal agent includes good cross-platform considerations
- File summarize agent provides structured analysis approach
- General purpose agent is appropriately scoped for search interface
The role, goal, and instructions for each agent are comprehensive and clear.
1-775: Well-structured notebook with logical flow.The notebook follows a clear progression from setup to implementation to demonstration. The separation of agent definitions and the comprehensive examples make it an effective learning resource for the PraisonAI Agents framework.
88-88: Correct usage of PraisonAI framework patterns.The import and usage of the
Agentclass aligns with the framework's design patterns, consistent with the retrieved learning about using the Agent class frompraisonaiagents/agent/.
| "# Create the email agent (no custom tools)\n", | ||
| "email_agent = Agent(\n", | ||
| " role=ROLE,\n", | ||
| " goal=GOAL,\n", | ||
| " instructions=INSTRUCTIONS\n", | ||
| ")\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Custom tools are not passed to the Agent
The extract_action_items tool is defined but not passed to the Agent constructor. The agent won't have access to this custom tool.
# Create the email agent (no custom tools)
email_agent = Agent(
role=ROLE,
goal=GOAL,
- instructions=INSTRUCTIONS
+ instructions=INSTRUCTIONS,
+ tools=[extract_action_items]
)Note: Update the comment on line 376 to reflect that custom tools are now being used.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "# Create the email agent (no custom tools)\n", | |
| "email_agent = Agent(\n", | |
| " role=ROLE,\n", | |
| " goal=GOAL,\n", | |
| " instructions=INSTRUCTIONS\n", | |
| ")\n", | |
| "# Create the email agent (no custom tools)\n", | |
| "email_agent = Agent(\n", | |
| " role=ROLE,\n", | |
| " goal=GOAL,\n", | |
| " instructions=INSTRUCTIONS,\n", | |
| " tools=[extract_action_items]\n", | |
| ")\n", |
🤖 Prompt for AI Agents
In examples/cookbooks/work_email_agent.ipynb around lines 376 to 381, the Agent
is created without passing the custom tool extract_action_items, so the agent
cannot use it. Modify the Agent constructor to include the custom tools
parameter with extract_action_items. Also, update the comment on line 376 to
indicate that custom tools are now being used.
| "[](https://colab.research.google.com/github/Dhivya-Bharathy/PraisonAI/blob/main/examples/cookbooks/universal_desktop_agents..ipynb)\n" | ||
| ] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix the Colab badge URL typo.
The URL contains double periods (universal_desktop_agents..ipynb) which will result in a broken link.
- "[](https://colab.research.google.com/github/Dhivya-Bharathy/PraisonAI/blob/main/examples/cookbooks/universal_desktop_agents..ipynb)\n"
+ "[](https://colab.research.google.com/github/Dhivya-Bharathy/PraisonAI/blob/main/examples/cookbooks/universal_desktop_agents.ipynb)\n"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "[](https://colab.research.google.com/github/Dhivya-Bharathy/PraisonAI/blob/main/examples/cookbooks/universal_desktop_agents..ipynb)\n" | |
| ] | |
| "[](https://colab.research.google.com/github/Dhivya-Bharathy/PraisonAI/blob/main/examples/cookbooks/universal_desktop_agents.ipynb)\n" | |
| ] |
🤖 Prompt for AI Agents
In examples/cookbooks/universal_desktop_agents.ipynb around lines 27 to 28, fix
the Colab badge URL by removing the extra period so that the filename reads
"universal_desktop_agents.ipynb" instead of "universal_desktop_agents..ipynb" to
ensure the link works correctly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
The pull request introduces several new AI agent cookbooks, including an AI Enrollment Counselor, an intelligent programming agent, universal desktop utility agents, and a work email management agent. The notebooks provide setup instructions, dependencies, API configurations, and interactive demonstrations. The review identified a potential security issue related to committing API keys directly into the repository, and suggested improvements to code documentation.
| "cell_type": "code", | ||
| "source": [ | ||
| "import os\n", | ||
| "os.environ[\"OPENAI_API_KEY\"] = \"sk-...\" # <-- Replace with your actual OpenAI API key" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's crucial to avoid committing API keys directly into the repository. Instead, instruct users to set the OPENAI_API_KEY environment variable or use a secure method to manage credentials. Consider adding a check to ensure the API key is set before proceeding, and provide a helpful error message if it's missing.
os.environ["OPENAI_API_KEY"] = "YOUR_API_KEY" # Replace with your actual OpenAI API key
if not os.environ["OPENAI_API_KEY"]:
raise ValueError("OPENAI_API_KEY environment variable not set. Please set it before running this notebook.")
| "outputs": [], | ||
| "source": [ | ||
| "import os\n", | ||
| "os.environ[\"OPENAI_API_KEY\"] = \"Enter your api key\" # <-- Replace with your actual OpenAI API key" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's crucial to avoid committing API keys directly into the repository. Instead, instruct users to set the OPENAI_API_KEY environment variable or use a secure method to manage credentials. Consider adding a check to ensure the API key is set before proceeding, and provide a helpful error message if it's missing.
os.environ["OPENAI_API_KEY"] = "YOUR_API_KEY" # Replace with your actual OpenAI API key
if not os.environ["OPENAI_API_KEY"]:
raise ValueError("OPENAI_API_KEY environment variable not set. Please set it before running this notebook.")
| "!pip install praisonaiagents -q\n", | ||
| "!pip install openai -q\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| "\n", | ||
| "api_key = getpass.getpass(\"OpenAI API Key: \")\n", | ||
| "\n", | ||
| "if not api_key or api_key.strip() == \"\":\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| "metadata": { | ||
| "colab": { | ||
| "base_uri": "https://localhost:8080/" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| " code = code.split(\"```python\")[1]\n", | ||
| " if \"```\" in code:\n", | ||
| " code = code.split(\"```\")[0]\n", | ||
| "\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| " match = re.search(pattern, code)\n", | ||
| " if match:\n", | ||
| " return match.group(1)\n", | ||
| "\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| " \"\"\"Check if Manim imports are present\"\"\"\n", | ||
| " required_imports = ['from manim import', 'import manim']\n", | ||
| " found_imports = []\n", | ||
| "\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| " else:\n", | ||
| " return False, \"No Scene class found\"\n", | ||
| "\n", | ||
| " @staticmethod\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
User description
Introduces an agent for university admissions automation using PraisonAI Agents.
Guides applicants, checks document completeness, and answers admissions questions.
PR Type
Enhancement
Description
• Added comprehensive collection of AI agent cookbooks demonstrating various PraisonAI Agents use cases
• Implemented AI Enrollment Counselor for university admissions automation with document validation and applicant guidance
• Created intelligent programming agent system with multi-agent code generation, debugging, and Manim animation capabilities
• Added universal desktop utility agents for terminal commands, file processing, and general search tasks
• Developed work email management agent with custom tools for action item extraction and professional reply drafting
• Includes additional specialized agents for documentation processing, social network analysis, job hunting assistance, e-commerce shopping, and YouTube content integrity analysis
• All notebooks feature complete setup instructions, dependencies, API configuration, and interactive demonstrations
Changes walkthrough 📝
4 files
intelligent_programming_agent.ipynb
AI Code Generation System with Multi-Agent Programming Assistantexamples/cookbooks/intelligent_programming_agent.ipynb
• Added a complete Jupyter notebook implementing an AI code generation
system using PraisonAI framework
• Includes multi-agent system with
code generator, debugger, and updater agents for Manim animation code
• Features custom tools for code validation, syntax checking, and
Manim-specific requirements
• Provides interactive demo showing circle
moving in sine wave pattern generation
universal_desktop_agents.ipynb
Universal Desktop Utility Agents Notebook Implementationexamples/cookbooks/universal_desktop_agents.ipynb
• Added a new Jupyter notebook demonstrating universal desktop utility
agents using PraisonAI Agents
• Implemented three specialized agents:
Terminal Agent for shell commands, File Summarize Agent for file
processing, and General Purpose Agent for search tasks
• Included
complete setup instructions, dependencies installation, API key
configuration, and example usage demonstrations
• Provided
comprehensive role definitions, goals, and instructions for each agent
type with platform-specific command handling
AI_Enrollment_Counselor.ipynb
AI Enrollment Counselor Notebook Implementationexamples/cookbooks/AI_Enrollment_Counselor.ipynb
• Adds a complete Jupyter notebook demonstrating an AI Enrollment
Counselor agent
• Implements PraisonAI agent for university admissions
automation with document validation
• Includes examples of checking
missing documents and answering admissions questions
• Contains
interactive widgets and formatted output displays for user interaction
work_email_agent.ipynb
Work Email Agent with Custom Toolsexamples/cookbooks/work_email_agent.ipynb
• Creates a work email management agent using PraisonAI Agents
framework
• Implements custom tool for extracting action items from
email content
• Provides functionality to summarize emails, extract
actions, and draft professional replies
• Includes complete example
with sample email processing and formatted output
6 files
Summary by CodeRabbit