Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

State of Mika has landed on Digimon! #47

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

HaruChasm
Copy link

What changes were proposed in this pull request?

This PR introduces the brand new State of Mika plugin to the Digimon Engine ecosystem! This plugin adds two powerful APIs that enhance AI agent capabilities:

  1. Life Simulator API - Creates realistic human-like behaviors for your AI agents:

    • Dynamic daily activities based on time, location, and agent profiles
    • Weather conditions that affect agent decisions and behavior
    • Transit information with realistic commute options
    • Random incidents that create unpredictable but realistic agent experiences
    • Memory integration for continuous agent experiences
  2. Data API - Provides real-time information from the outside world:

    • Cryptocurrency market data and blockchain ecosystem updates
    • Financial market trends and analysis
    • General knowledge through web scraping capabilities
    • Current events and news via web search
  3. Developer Experience:

    • Comprehensive documentation with usage examples
    • Flexible implementation - use with Digimon Engine or as standalone
    • Environment variable support for easy configuration

Why are the changes needed?

Digimon Engine creates an incredible foundation for AI-native games and simulations. The State of Mika plugin enhances this foundation by:

  1. Making agents more realistic - Agents now have daily routines, respond to weather, encounter random events, and build memories of their experiences.

  2. Connecting to the real world - Agents can access up-to-date information about markets, news, and general knowledge, making them more contextually aware.

  3. Simplifying developer workflow - Easy integration with clear examples gets developers up and running quickly with these advanced features.

These additions address a common request from Digimon Engine users: "How can we make our AI agents more grounded in realistic human behaviors and give them access to current information?" The State of Mika plugin provides a ready-to-use solution.

Does this PR introduce any user-facing change?

Yes, this PR introduces a complete new plugin with two main user-facing components:

  1. New plugin directory: public/plugins/State-of-Mika/ containing:

    • life-simulator.ts - The Life Simulator API
    • som-data.ts - The Data API client
    • Supporting files for testing and examples
  2. New API integration patterns:

    // Use with Digimon Engine
    import { createLifeSimulatorPlugin } from './public/plugins/State-of-Mika/life-simulator';
    const lifeSimulator = createLifeSimulatorPlugin();
    engine.registerPlugin(lifeSimulator);
    
    // Use Data API for real-time information
    import { createApiClient } from './public/plugins/State-of-Mika/som-data';
    const dataClient = createApiClient();
    const result = await dataClient.query('What is the current price of Bitcoin?');
  3. Documentation: Comprehensive README with examples, API references, and troubleshooting guides.

How was this patch tested?

  1. Integration with Digimon Engine:

    • Tested plugin registration and API compatibility
    • Verified memory and agent state integration works with existing agent models
  2. Standalone Testing:

    • Created test files to verify both APIs work correctly in isolation
    • Compiled and tested with TypeScript:
      npx tsc -p public/plugins/State-of-Mika/tsconfig.json
  3. API Validation:

    • Tested both APIs with real API calls to State of Mika endpoints
    • Verified caching, error handling, and parameter passing
  4. Example Verification:

    • All example code in the README has been tested for correctness
    • Created detailed examples of integrating with Digimon Engine components
  5. Compatibility Testing:

    • Confirmed no conflicts with existing Digimon Engine functionality
    • Verified plugin works with latest Digimon Engine version

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant