Skip to main content

Contributing as a Module Builder

Modules are the fundamental building blocks of Naptha multi-agent applications. This guide will help you become a module builder in the Naptha community through these steps:

  1. Understand Naptha modules
  2. Run existing modules
  3. Create your first module
  4. Get funded for module development

Understand Naptha Modules​

Naptha supports seven distinct module types:

  • Agent Modules: Core AI agents that perform specific tasks
  • Agent Orchestrator Modules: Coordinate multiple agents working together
  • Environment Modules: Provide the context and workspace for agents
  • Tool Modules: Equip agents with specific capabilities
  • Persona Modules: Define agent personalities and behaviors
  • Knowledge Base Modules: Supply agents with specialized information
  • Memory Modules: Enable agents to maintain context and learn from interactions

Who Should Build Which Modules?​

AI Engineers

  • Create specialized agent modules for tasks like:
    • Natural language processing
    • Code generation and analysis
    • Data analysis and visualization
    • Content creation and editing
  • Build orchestrators that:
    • Coordinate complex multi-agent workflows
    • Handle task decomposition and delegation
    • Manage agent communication patterns
    • Optimize resource allocation between agents
    • Monitor and debug agent interactions
  • Design memory modules that:
    • Implement different types of memory and architectures
    • Optimize memory storage and access
    • Enable long-term learning capabilities

RL Researchers

  • Develop environment modules for specific use cases and research scenarios
  • Create training environments with custom reward functions and state spaces
  • Design multi-agent environments for studying emergent behaviors
  • Build evaluation environments to benchmark agent performance
  • Implement environments that interface with simulation platforms

Application Developers

  • Create tool modules to extend agent capabilities:
    • Build API integrations with external services
    • Create data scraping, processing and transformation tools
  • Build knowledge base modules to provide domain expertise:
    • Structure and organize domain-specific data
    • Create specialized databases and data stores
    • Build search and retrieval systems
    • Develop knowledge graph implementations
    • Create ontologies and taxonomies for specific domains

AI Users

  • Create persona modules to customize agent behavior and personality:

    • Export your social media data (X/Twitter, LinkedIn, etc.)
    • Define custom traits and behavioral parameters to reflect your personality
    • Test and validate the persona with sample conversations
    • Enable AI agents to represent you in automated interactions
    tip

    Use our interactive tutorial to transform your data into a persona module.

For comprehensive information about module types, see the Naptha Modules Overview.

Run Existing Modules​

  1. Start with the Naptha SDK README
  2. Explore examples of modules in the Examples section of the docs.
  3. Browse available modules on Naptha Hub using these commands:
    naptha agents
    naptha orchestrators
    naptha environments
    naptha tools
    naptha personas
    naptha knowledge bases
    naptha memories
info

Browse our Github repositories for module examples and source code.

Create your first module​

Choose your preferred approach​

To build your first module manually, you can:

  1. Follow the module template README
  2. Follow our interactive tutorial "Your First Agent Module" in the docs.

To automatically convert an existing agent application from frameworks like CrewAI, you should:

  1. Read the documentation on Naptha Decorators
  2. Inspect examples of decorated agents e.g. crewAI-examples

To get up to speed with building more complex applications, composed of many modules, check out the tutorials in the Naptha Learn Hub.

info

Get Involved:

  • Check out modules that we need via open issues with the module label on the module contributor board
  • Join our weekly module developer calls (link in our calendar)

Make use of Naptha Node APIs​

Modules can make use of various APIs from the Naptha Nodes:

  1. Modules API

  2. Inference API

  3. Storage API

  4. Modules API: Make calls to modules running on the same or different Naptha Nodes, using the Agent, Orchestrator, Environment, Tool, KB, and Memory module classes.

  5. Inference API: Make inference calls to a variety of open source and proprietary LLMs via Naptha Nodes with a standard interface for requests and tool calls using the InferenceClient class.

  6. Storage API: Persist and retrieve data with a variety of storage solutions on Naptha Nodes, including databases, file systems and IPFS using the StorageProvider class.

Testing Your Module​

To test the modules:

  1. Local Testing: Validate functionality in your development environment
  2. Production Testing: Deploy and verify on a hosted Naptha node

Get funded for module development​

We provide grants for advanced module development, particularly focusing on:

  • Complex multi-agent orchestrations
  • Sophisticated environment modules
  • Novel agent interaction patterns
note

Simple agent, tool, or persona modules typically don't qualify for funding. We prioritize innovative, complex implementations.

info

View successful funded projects in our Discord community #projects channel.

Have an innovative module idea? Contact us at [email protected]