npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@graviton-inc/plugin-node

v0.1.7

Published

Core Node.js plugin for Eliza OS that provides essential services and actions for file operations, media processing, and cloud integrations.

Downloads

5

Readme

@elizaos/plugin-node

Core Node.js plugin for Eliza OS that provides essential services and actions for file operations, media processing, and cloud integrations.

Overview

The Node plugin serves as a foundational component of Eliza OS, bridging core Node.js capabilities with the Eliza ecosystem. It provides crucial services for file operations, media processing, speech synthesis, and cloud integrations, enabling both local and cloud-based functionality for Eliza agents.

Features

  • AWS S3 Integration: File upload and management with AWS S3
  • Browser Automation: Web scraping and content extraction with Playwright
  • Image Processing: Image description and analysis capabilities
  • PDF Processing: PDF text extraction and parsing
  • Speech Synthesis: Text-to-speech using ElevenLabs and VITS
  • Transcription: Speech-to-text using various providers (OpenAI, Deepgram, Local)
  • Video Processing: YouTube video download and transcription
  • LLaMA Integration: Local LLM support with LLaMA models

Installation

npm install @elizaos/plugin-node

Configuration

The plugin requires various environment variables depending on which services you plan to use:

Core Settings

OPENAI_API_KEY=your_openai_api_key

Voice Settings (Optional)

ELEVENLABS_XI_API_KEY=your_elevenlabs_api_key
ELEVENLABS_MODEL_ID=eleven_monolingual_v1
ELEVENLABS_VOICE_ID=your_voice_id
ELEVENLABS_VOICE_STABILITY=0.5
ELEVENLABS_VOICE_SIMILARITY_BOOST=0.75
ELEVENLABS_OPTIMIZE_STREAMING_LATENCY=0
ELEVENLABS_OUTPUT_FORMAT=pcm_16000
VITS_VOICE=en_US-hfc_female-medium

AWS Settings (Optional)

AWS_ACCESS_KEY_ID=your_aws_access_key
AWS_SECRET_ACCESS_KEY=your_aws_secret_key
AWS_REGION=your_aws_region
AWS_S3_BUCKET=your_s3_bucket
AWS_S3_UPLOAD_PATH=your_upload_path

Usage

import { createNodePlugin } from "@elizaos/plugin-node";

// Initialize the plugin
const nodePlugin = createNodePlugin();

// Register with Eliza OS
elizaos.registerPlugin(nodePlugin);

Services

AwsS3Service

Handles file uploads and management with AWS S3.

BrowserService

Provides web scraping and content extraction capabilities using Playwright.

ImageDescriptionService

Processes and analyzes images to generate descriptions.

LlamaService

Provides local LLM capabilities using LLaMA models.

PdfService

Extracts and processes text content from PDF files.

SpeechService

Handles text-to-speech conversion using ElevenLabs and VITS.

TranscriptionService

Converts speech to text using various providers.

VideoService

Processes video content, including YouTube video downloads and transcription.

Actions

describeImage

Analyzes and generates descriptions for images.

// Example usage
const result = await runtime.executeAction("DESCRIBE_IMAGE", {
    imageUrl: "path/to/image.jpg",
});

Dependencies

The plugin requires several peer dependencies:

  • onnxruntime-node: 1.20.1
  • whatwg-url: 7.1.0

And trusted dependencies:

  • onnxruntime-node: 1.20.1
  • sharp: 0.33.5

Safety & Security

File Operations

  • Path Sanitization: All file paths are sanitized to prevent directory traversal attacks
  • File Size Limits: Enforced limits on upload sizes
  • Type Checking: Strict file type validation
  • Temporary File Cleanup: Automatic cleanup of temporary files

API Keys & Credentials

  • Environment Isolation: Sensitive credentials are isolated in environment variables
  • Access Scoping: Services are initialized with minimum required permissions
  • Key Rotation: Support for credential rotation without service interruption

Media Processing

  • Resource Limits: Memory and CPU usage limits for media processing
  • Timeout Controls: Automatic termination of long-running processes
  • Format Validation: Strict media format validation before processing

Troubleshooting

Common Issues

  1. Service Initialization Failures
Error: Service initialization failed
  • Verify environment variables are properly set
  • Check service dependencies are installed
  • Ensure sufficient system permissions
  1. Media Processing Errors
Error: Failed to process media file
  • Verify file format is supported
  • Check available system memory
  • Ensure ffmpeg is properly installed
  1. AWS S3 Connection Issues
Error: AWS credentials not configured
  • Verify AWS credentials are set
  • Check S3 bucket permissions
  • Ensure correct region configuration

Debug Mode

Enable debug logging for detailed troubleshooting:

process.env.DEBUG = "eliza:plugin-node:*";

System Requirements

  • Node.js 16.x or higher
  • FFmpeg for media processing
  • Minimum 4GB RAM recommended
  • CUDA-compatible GPU (optional, for ML features)

Performance Optimization

  1. Cache Management

    • Regular cleanup of content_cache directory
    • Implement cache size limits
    • Monitor disk usage
  2. Memory Usage

    • Configure max buffer sizes
    • Implement streaming for large files
    • Monitor memory consumption
  3. Concurrent Operations

    • Adjust queue size limits
    • Configure worker threads
    • Monitor process pool

Support

For issues and feature requests, please:

  1. Check the troubleshooting guide above
  2. Review existing GitHub issues
  3. Submit a new issue with:
    • System information
    • Error logs
    • Steps to reproduce

Future Enhancements

  1. File Operations

    • Enhanced streaming capabilities
    • Advanced compression options
    • Batch file processing
    • File type detection
    • Metadata management
    • Version control integration
  2. Media Processing

    • Additional video formats
    • Advanced image processing
    • Audio enhancement tools
    • Real-time processing
    • Quality optimization
    • Format conversion
  3. Cloud Integration

    • Multi-cloud support
    • Advanced caching
    • CDN optimization
    • Auto-scaling features
    • Cost optimization
    • Backup automation
  4. Speech Services

    • Additional voice models
    • Language expansion
    • Emotion detection
    • Voice cloning
    • Real-time synthesis
    • Custom voice training
  5. Browser Automation

    • Headless optimization
    • Parallel processing
    • Session management
    • Cookie handling
    • Proxy support
    • Resource optimization
  6. Security Features

    • Enhanced encryption
    • Access control
    • Audit logging
    • Threat detection
    • Rate limiting
    • Compliance tools
  7. Performance Optimization

    • Memory management
    • CPU utilization
    • Concurrent operations
    • Resource pooling
    • Cache strategies
    • Load balancing
  8. Developer Tools

    • Enhanced debugging
    • Testing framework
    • Documentation generator
    • CLI improvements
    • Monitoring tools
    • Integration templates

We welcome community feedback and contributions to help prioritize these enhancements.

Contributing

Contributions are welcome! Please see the CONTRIBUTING.md file for more information.

Credits

This plugin integrates with and builds upon several key technologies:

Special thanks to:

  • The Node.js community and all the open-source contributors who make these integrations possible.
  • The Eliza community for their contributions and feedback.

For more information about Node.js capabilities:

License

This plugin is part of the Eliza project. See the main project repository for license information.