Plugins
Plugins
Extend nut.js with plugins for image matching, OCR, native I/O, browser integration, AI vision, and screen recording.
Overview
The nut.js ecosystem includes a range of plugins that extend the core library with additional capabilities. Each plugin focuses on a specific area of desktop automation, from image matching and OCR to browser integration and screen recording.
Input
@nut-tree/bolt
Native platform provider for mouse, keyboard, screen capture, and window management across Windows, macOS, and Linux
useBolt()@nut-tree/bolt replaces the default low-level providers with enhanced functionality including unicode support, window management, and input monitoring.
Image Matching
@nut-tree/nl-matcher
Next-level image matching with multi-scale search, alpha masking, and match validation
useNlMatcher()@nut-tree/plugin-ai-sdk
AI vision-based image matching using LLMs via Vercel AI SDK (OpenAI, Anthropic, Ollama)
useOpenAIVisionProvider()@nut-tree/nl-matcher is the recommended image matching provider for most nut.js projects. For AI-powered matching using natural language descriptions, see @nut-tree/plugin-ai-sdk.
OCR
@nut-tree/plugin-ocr
Local OCR using Tesseract with configurable language models and preprocessing
useOcrPlugin()@nut-tree/plugin-azure
Cloud-based OCR via Azure AI Vision for high-accuracy text recognition
useAzureVisionOCR()Both OCR plugins integrate with the Text Search API. Choose @nut-tree/plugin-ocr for local processing without external data transmission, or @nut-tree/plugin-azure for higher accuracy on complex or low-quality images.
Element Inspection
@nut-tree/element-inspector
Inspect and interact with GUI elements using platform accessibility APIs (macOS, Windows, Linux)
useElementInspector()@nut-tree/element-inspector works with @nut-tree/bolt to enable Element Search via accessibility APIs. Available for macOS, Windows, and Linux.
Browser Integration
@nut-tree/playwright-bridge
Redirect nut.js operations to Playwright browser viewports with custom matchers
useContext({ context })@nut-tree/selenium-bridge
Redirect nut.js operations to Selenium WebDriver browser viewports
useSelenium({ driver })Both bridges redirect nut.js image search and OCR to operate within browser viewports. See the @nut-tree/playwright-bridge and @nut-tree/selenium-bridge pages for details.
Recording
@nut-tree/plugin-screenrecording
Record screen activity with buffer mode for failure capture and configurable FPS
screen.startRecording(options)@nut-tree/plugin-screenrecording supports recording to file with buffer mode for capturing the last N seconds before a failure.
Remote Desktop
@nut-tree/plugin-rdp
Automate remote desktops via RDP — redirect screen, keyboard, mouse, and clipboard to a remote machine
connect({ hostname, port, username, password })@nut-tree/plugin-rdp establishes an RDP connection and redirects nut.js operations to the remote session. Image search, OCR, keyboard input, mouse control, and clipboard all work transparently over the connection.
Subscription Plans
Some plugins require an active subscription. The following plans are available:
| Package | Included In |
|---|---|
@nut-tree/bolt | Solo, Team |
@nut-tree/nl-matcher | nl-matcher, Solo, Team |
@nut-tree/plugin-ai-sdk | Solo, Team |
@nut-tree/plugin-ocr | OCR, Solo, Team |
@nut-tree/plugin-azure | OCR, Solo, Team |
@nut-tree/element-inspector | Solo, Team |
@nut-tree/playwright-bridge | Solo, Team, OCR, nl-matcher |
@nut-tree/selenium-bridge | Solo, Team, OCR, nl-matcher |
@nut-tree/plugin-screenrecording | Solo, Team |
@nut-tree/plugin-rdp | Solo, Team |