Skip to content

muneebsa/my-agent-framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Agent Framework

A minimal Java agentic AI framework for educational purposes.

Requirements

  • Java 21+
  • Maven 3.8+
  • OpenAI API key (in .env file or environment variable)

Quick Start

# Create .env file with your API key
echo "OPENAI_API_KEY=sk-..." > .env

# Run an example
mvn exec:java -Dexec.mainClass="com.myagent.examples.WeatherAgentExample"

Examples

# Weather Agent - tool calling
mvn exec:java -Dexec.mainClass="com.myagent.examples.WeatherAgentExample"

# Travel Planner - multi-agent workflow
mvn exec:java -Dexec.mainClass="com.myagent.examples.TravelPlannerExample"

# Product Indexer - create vector index
mvn exec:java -Dexec.mainClass="com.myagent.examples.ProductIndexerExample"

# Product Q&A - RAG queries (run indexer first)
mvn exec:java -Dexec.mainClass="com.myagent.examples.ProductQAExample"

# Shopping Assistant - persistent memory
mvn exec:java -Dexec.mainClass="com.myagent.examples.ShoppingAssistantExample"

Admin Dashboard

mvn spring-boot:run

Visit http://localhost:8080/admin/ to view request logs.

The dashboard displays:

  • Token usage stats (prompt, completion, total)
  • Request logs grouped by Run ID
  • Full request/response JSON for each call
  • Navigation between log entries

Key Components

Package Description
core/ Runnable interface, Chain composition
llm/ ChatModel, ChatMessage, OpenAI integration
prompts/ PromptTemplate, ChatPromptTemplate
tools/ @Tool annotation, ToolExecutor
agents/ ChatAgent (ReAct pattern)
memory/ ConversationBufferMemory, FilePersistentMemory
retrieval/ VectorStore, Retriever, TextSplitter

Usage

// Create agent with tools
ChatAgent agent = ChatAgent.builder()
    .chatModel(new OpenAIChatModel(apiKey, "gpt-4o-mini"))
    .toolExecutor(toolExecutor)
    .agentName("MyAgent")
    .build();

String response = agent.invoke("What's the weather?");

License

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors