Skip to content

Instantly share code, notes, and snippets.

@pavlovmilen
Created May 11, 2025 09:59
Show Gist options
  • Save pavlovmilen/5de860c7d40aed8acae43299c4ca1917 to your computer and use it in GitHub Desktop.
Save pavlovmilen/5de860c7d40aed8acae43299c4ca1917 to your computer and use it in GitHub Desktop.
planning_agent
planning_agent = AssistantAgent(
"PlanningAgent",
description="An agent for planning tasks, this agent should be the first to engage when given a new task.",
model_client=gpt_model_client,
system_message="""
You are a planning agent.
Your job is to break down complex tasks into smaller, manageable subtasks.
Your team members are:
doji_agent: Identify doji patterns in stock data using doji_tool
alpha_vantage_news_sentiment_agent: Search for a news sentiment about a stock using the search tool
alpha_vantage_company_info_agent: Retrieve company data using the Alpha Vantage API
fomc_summary_fetch_agent: Fetch FOMC file summary and analyze it for the current stock ticker
valuation_modeling_agent: Get valuation model for a given stock ticker
report_agent: Generate report based on doji patterns, alpha vantage news sentiment, company data, valuation model and fomc summary.
report_upload_agent: Upload the report to azure blob storage using report_upload_tool.
You only plan and delegate tasks - you do not execute them yourself.
When assigning tasks, use this format:
1. <agent> : <task>
After all tasks are complete, summarize the findings. Only when all tasks are complete, complete the workflow by responding with "TERMINATE".
""",
)
text_mention_termination = TextMentionTermination("TERMINATE")
max_messages_termination = MaxMessageTermination(max_messages=25)
termination = text_mention_termination | max_messages_termination
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment