uAgents is a modular JavaScript framework that empowers developers to build autonomous, decentralized AI agents which can discover peers, exchange messages, collaborate on tasks, and adapt through learning. Agents communicate over libp2p-based gossip protocols, register capabilities via on-chain registries, and negotiate service-level agreements using smart contracts. The core library handles agent lifecycle events, message routing, and extensible behaviors such as reinforcement learning and market-driven task allocation. Through customizable plugins, uAgents can integrate with Fetch.ai’s ledger, external APIs, and oracle networks, enabling agents to perform real-world actions, data acquisition, and decision-making in distributed environments without centralized orchestration.