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

n8n-nodes-signal-cli

v0.3.0

Published

n8n nodes for interacting with Signal CLI. It includes a trigger node for receiving messages and an action node for various Signal operations.

Readme

📦 n8n-nodes-signal-cli

This repository contains n8n nodes for interacting with Signal CLI. It includes a trigger node for receiving messages and an action node for various Signal operations.

📚 Table of Contents

  1. 📋 Prerequisites
  2. 🚀 Usage
  3. 📥 Installation
  4. 🤖 Nodes
  5. 💻 Development
  6. 🚀 Release
  7. 🤝 Contributing
  8. ⚠️ Known Limitations
  9. 📄 License

📋 Prerequisites

  • Node.js (>=18.10) and pnpm (>=9.1)
  • n8n installed globally using pnpm install n8n -g
  • Signal CLI set up and running in daemon mode with HTTP JSON-RPC endpoint exposed (--http)
docker run -d \
    --name signal-cli \
    --restart=always \
    -p 7583:7583 \
    -p 8085:8085 \
    -v "$(pwd)/signal-cli:/var/lib/signal-cli" \
    --tmpfs /tmp:exec \
    --shm-size=64m \
    registry.gitlab.com/packaging/signal-cli/signal-cli-native:latest \
    daemon --http=0.0.0.0:8085

📥 Installation

  1. Clone this repository.
  2. Run pnpm install to install dependencies.
  3. Run pnpm build to build the nodes.
  4. Run npm i n8n-nodes-signal-cli in ~/.n8n/custom/nodes

🤖 Nodes

🔔 SignalTrigger

  • Triggers when a new message is received via Signal CLI.
  • Requires Signal CLI API credential.
  • Parameters:
    • account: Signal account to listen for incoming messages.

📱 Signal

  • Interact with Signal CLI API for various operations.
  • Requires Signal CLI API credential.
  • Supports the following resources and operations:
    • Message:
      • Send: Send a message to a recipient or group.
        • Parameters: account, recipient, message
    • Group:
      • Create: Create a new group.
        • Parameters: account, name, members
      • List: List all groups.
        • Parameters: account
    • Contact:
      • Update: Update a contact's name.
        • Parameters: account, recipient, name
      • List: List all contacts.
        • Parameters: account
    • Reaction:
      • Send: Send a reaction to a message.
        • Parameters: account, recipient, reaction, targetAuthor, timestamp
      • Remove: Remove a reaction from a message.
        • Parameters: account, recipient, reaction, targetAuthor, timestamp
    • Receipt:
      • Send: Send a receipt (read or viewed) for a message.
        • Parameters: account, recipient, receiptType, timestamp
    • Attachment:
      • Get: Download a received attachment by its id (returns binary data).
        • Parameters: account, attachmentId, recipient or groupId, binaryPropertyName

💻 Development

  • Run pnpm dev to start the TypeScript compiler in watch mode.
  • Run pnpm lint to check for linting errors.
  • Run pnpm test to run integration tests.

Before running the tests, set the ENDPOINT environment variable to the Signal CLI API URL (e.g., "http://127.0.0.1:8085").

For example, you can run the following command in your terminal:

export ENDPOINT="http://127.0.0.1:8085" # signal-cli endpoint
export ACCOUNT_NUMBER="±33620382719" # your phone number in international format

🚀 Release

  • Run pnpm release to release a new version of the package.

🤝 Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork this repository.
  2. Create a new branch for your feature or bug fix.
  3. Submit a pull request with a clear description of your changes.
  4. Ensure that your code adheres to the existing coding standards and passes all tests.

⚠️ Known Limitations

  • This implementation relies on the Signal CLI API, which may have its own limitations and constraints.
  • Ensure that the Signal CLI is properly configured and running before using these nodes.
  • Some operations may require specific permissions or settings within Signal CLI.

📄 License

MIT