Skip to content

Releases: Thytu/Agentarium

0.3.0

04 Jan 11:32
66c8f4a
Compare
Choose a tag to compare

Action System Refactor and Serialization Improvements

Version Update: 0.2.8 → 0.3.0

Major Changes

  • Introduced a new Action class to formalize and standardize agent actions
  • Migrated from pickle to dill for better serialization support
  • Moved default actions (talk and think) to a dedicated module
  • Improved action management API with add_action, remove_action, and execute_action methods

Key Features

  • New Action Class: Actions are now first-class objects with clear interfaces and validation
  • Better Action Management: More intuitive API for managing agent actions
  • Improved Serialization: Using dill for better function serialization support
  • Cleaner Architecture: Default actions moved to actions/default_actions.py
  • Enhanced Type Safety: Added type hints and validation throughout

Breaking Changes

  • add_new_action() replaced with add_action()
  • Action format changed from dictionary to Action class instances
  • Pickle files (.pickle) replaced with dill files (.dill)

Minor Updates

  • Added .DS_Store to gitignore
  • Bumped version to 0.3.0
  • Updated examples to use new action system
  • Removed unused Environment import
  • Added Action to __all__ exports

Migration Guide

Creating custom actions

# Old way
agent.add_new_action(
    {
        "format": "[ACTION][param]",
        "prompt": "Description",
        "example": "[ACTION][value]"
    },
    action_function
)

# New way
agent.add_action(
    Action(
        name="action",
        description="Description",
        parameters=["param"],
        function=action_function
    )
)

Calling custom actions

# Old way
action_function(agent, "param_value")

# New way
agent.execute_action("action", "param_value")