3 releases

0.1.2 Feb 14, 2025
0.1.1 Feb 6, 2025
0.1.0 Jan 16, 2025

#9 in #amico

Download history 120/week @ 2025-01-16 2/week @ 2025-01-30 147/week @ 2025-02-06 128/week @ 2025-02-13

277 downloads per month
Used in 2 crates

MIT license

22KB
395 lines

Amico AI Agent Framework

Amico is the next generation Autonomous AI Agent Framework tailored for embedded AI devices and multi-agent systems.

Getting Started

If you are running the amico executable directly, refer to the Runtime Documentation

Creating Your Own Agent

First, create a new rust project:

cargo new my_agent --bin

Then, add amico to your project:

cargo add amico

Architecture Overview

Model-Based Agents

Basic Design

  1. State Representation: The state agent acquires the current state of the environment through sensors and represents it. This state describes the specific situation of the current world, such as the attributes of location, resources, or objects.
  2. World Evolution: Predicts the impact of actions.
  3. Condition-Action Rules: Module for decision-making.

Event-Triggered Workflows

Workflow

  • Tasks are triggered by various "events", such as timers, major on-chain or off-chain events, or signals from other agents.
  • Each event carries context, the information of the event in natural language, which is then used as an additional knowledge source when the agent gathers information.

Modules

  1. amico-core: Defines the underlying workflow (Event -> Select Action -> Execute Action) and Model (Perceive Environment and Sense Environment).
  2. amico-plugins: Community plugins.
  3. amico-std: Built-in standard plugins.
  4. amico-firmware: Hardware control.
  5. amico-macros: Procedural macros.

Future Improvements

  • Enhanced decision logic: Investigate support for reinforcement learning-based decision-making within ActionSelector.
  • Plugin security: Strengthen security for dynamically loaded plugins using WebAssembly (WASM) or sandboxing techniques.

License

AMICO is released under the MIT License.

Contributing

Contributions are welcome! Please read our contributing guidelines before submitting a pull request.

Dependencies

~1.7–2.6MB
~48K SLoC