Skip to content

Releases: ZJU-LLMs/Agent-Kernel

v1.1.0

18 Dec 10:29

Choose a tag to compare

v1.1.0

We are excited to announce the release of Agent-Kernel v1.1.0! 🎉

This release enables users to define custom environment component types and plugins without modifying the core package.

What's New

Extensible Component

A new GenericComponent class and factory functions allow you to create custom environment components dynamically:

  • GenericComponent: A flexible base class that can be configured with any component name
  • create_component_class(): Factory function to dynamically create new component classes at runtime
  • get_or_create_component_class(): Smart factory with built-in caching to avoid duplicate class creation
from agentkernel_distributed.mas.environment.components.generic import (
    GenericComponent,
    create_component_class,
    get_or_create_component_class
)

# Option 1: Use GenericComponent directly
weather_component = GenericComponent("weather")

# Option 2: Create a dedicated component class
WeatherComponent = create_component_class("weather")

# Option 3: Get or create with automatic caching
EconomyComponent = get_or_create_component_class("economy")

Extensible Plugin

A new GenericPlugin class and factory function allow you to define custom plugin types:

  • GenericPlugin: Base class for creating custom plugin types by setting COMPONENT_TYPE
  • create_plugin_class(): Factory function to dynamically create new plugin base classes
from agentkernel_distributed.mas.environment.base.plugin_base import (
    GenericPlugin,
    create_plugin_class
)

# Option 1: Subclass GenericPlugin directly
class WeatherPlugin(GenericPlugin):
    COMPONENT_TYPE = "weather"
    
    def __init__(self, location: str = "default"):
        super().__init__()
        self.location = location
    
    async def get_weather(self) -> dict:
        return {"temp": 25, "condition": "sunny"}

# Option 2: Create a plugin base class dynamically
EconomyPlugin = create_plugin_class("economy")

class MyEconomyPlugin(EconomyPlugin):
    async def get_market_data(self):
        return {"price": 100}

Affected Packages

  • agentkernel-distributed: v1.0.0 → v1.1.0
  • agentkernel-standalone: v1.0.0 → v1.1.0

Upgrade Guide

Upgrade to v1.1.0 using pip:

# For the standalone version
pip install --upgrade agentkernel-standalone

# For the distributed version
pip install --upgrade agentkernel-distributed

This release is fully backward compatible with v1.0.0. Your existing code will continue to work without any modifications.

v1.0.0

04 Dec 13:38

Choose a tag to compare

Title: v1.0.0

Body:

We are excited to announce the first official public release of Agent-Kernel! 🚀

Agent-Kernel is a multi-agent system development framework for building, managing, and deploying agents powered by Large Language Models (LLMs). This initial release provides the core components for both standalone and distributed agent applications.

What's Included

This release consists of two main packages:

  • agentkernel-standalone: A lightweight, single-node kernel perfect for rapid prototyping and local development.
  • agentkernel-distributed: A powerful, distributed kernel designed for building complex, multi-agent systems.

Installation

You can install the packages from PyPI:

# For the standalone version
pip install agentkernel-standalone

# For the distributed version
pip install agentkernel-distributed

Getting Started

To get started, please check out the README.md in our repository for usage examples and project structure details.

We welcome your feedback! Please feel free to open an issue for any bugs or feature requests.