agentic-programming

Agents: The Next Level of Software

A comprehensive seminar and learning resource on Agent Oriented Programming (AOP), covering concepts, frameworks, and practical implementations.

πŸ“‹ Table of Contents

🎯 Overview

This repository contains educational materials and practical examples for learning Agent Oriented Programming - a paradigm shift from traditional software development to autonomous, intelligent software entities that can perceive, reason, and act independently.

What You’ll Learn

πŸ“ Repository Structure

πŸ“¦ Agent Oriented Programming/
β”œβ”€β”€ πŸ“„ seminar-slides.md          # Complete seminar content in markdown
β”œβ”€β”€ πŸ“ slides/                    # Interactive web presentation
β”‚   β”œβ”€β”€ index.html               # Main presentation file
β”‚   β”œβ”€β”€ styles.css               # Presentation styling
β”‚   └── script.js                # Presentation functionality
└── πŸ“ projects/                 # Practical implementation examples
    └── personal_assistant/       # 🚧 Work in Progress
        β”œβ”€β”€ agents/              # Agent implementations
        └── mcp_servers/         # MCP server examples

πŸš€ Getting Started

Viewing the Seminar

Option 1: Web Presentation (Recommended)

  1. Navigate to the slides/ directory
  2. Open index.html in your web browser
  3. Use arrow keys or navigation buttons to browse slides

Option 2: Markdown Format

Running Examples

The practical examples are designed to demonstrate real-world agent implementations:

# Navigate to project directory
cd "projects/personal_assistant"

# Follow individual project README files for setup instructions

πŸ“š Seminar Materials

Topics Covered

  1. Introduction to Agents
    • What are software agents?
    • Key characteristics and types
    • Agent vs. traditional programming
  2. Agent Oriented Programming (AOP)
    • Core principles and mental models
    • Architecture patterns
    • Paradigm evolution
  3. Traditional vs. Agentic Programming
    • System architecture comparison
    • Control flow differences
    • Benefits of the agentic approach
  4. Communication Technologies
    • Model Context Protocol (MCP)
    • Agent-to-Agent (A2A) communication
    • Protocol selection guidelines
  5. Development Frameworks
    • LangChain: Rapid LLM application development
    • LangGraph: Graph-based agent workflows
    • AutoGen: Conversational multi-agent systems
    • CrewAI: Role-based agent coordination
  6. Practical Examples
    • Intelligent customer service system
    • Smart content management system
    • Real-time trading system
  7. Best Practices & Next Steps
    • Design principles
    • Testing strategies
    • Monitoring and observability

πŸ› οΈ Projects

🚧 Personal Assistant (Work in Progress)

A comprehensive multi-agent personal assistant system demonstrating:

Status: πŸ”„ Active Development

Components:

Note: All projects in this repository are currently in development. They serve as educational examples and learning resources. Check individual project README files for current status and setup instructions.

πŸ“– Resources

Documentation and Tutorials

Code Examples and Templates

πŸŽ“ Learning Path

Beginner

  1. Start with the seminar slides (slides/index.html)
  2. Read through the markdown content (seminar-slides.md)
  3. Explore the basic concepts and terminology

Intermediate

  1. Dive into the practical examples in projects/
  2. Study the MCP server implementations
  3. Experiment with different communication patterns

Advanced

  1. Implement your own multi-agent system
  2. Contribute to the existing projects
  3. Explore advanced topics like agent learning and formal verification

🀝 Contributing

We welcome contributions to improve the educational content and project examples!

Ways to Contribute

Getting Started

  1. Fork this repository
  2. Create a feature branch (git checkout -b feature/amazing-improvement)
  3. Make your changes
  4. Submit a pull request

πŸ“ License

This project is intended for educational purposes. Please check individual project directories for specific licensing information.

πŸ“§ Contact

Have questions or suggestions? Feel free to:


β€œThe future of software development is not just about writing codeβ€”it’s about creating intelligent entities that can think, learn, and collaborate.”

Happy Agent Building! πŸ€–βœ¨