$npx skillfedfor your agent

pvporcupine

Porcupine wake word engine.

Worth itPyPI SpeechReleased Jun 2026160.1K downloads / mopermissive licensePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — pvporcupine-4.0.3-py3-none-any.whl
v4.0.3 · released 2026-06-25 · Python >=3.9 · 1 runtime deps: requests

Yes. Porcupine is a production-ready, actively maintained wake word engine with low install friction, permissive licensing, and no known vulnerabilities. It's well-suited for voice-activated applications where on-device detection is preferred. The only prerequisite is obtaining a free AccessKey from Picovoice Console, which is a minor friction point but not a blocker.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires a free Picovoice AccessKey obtained from https://console.picovoice.ai/ to initialize the engine.
  • Python 3.9 or later required.
  • Low install friction with a pure Python wheel distribution.

License · maintenance · safety

permissive license (permissive) — Licensed under Apache Software License (permissive), which allows commercial and private use with minimal restrictions—suitable for most projects without legal concern.

last release 2026-06-25 (50 days) · last repo commit 2026-08-12 · 4,911 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 160,057 downloads/mo, #10,676 on PyPI

Verify before relying

pip install pvporcupine

import pvporcupine

access_key = "YOUR_ACCESS_KEY"  # from Picovoice Console
handle = pvporcupine.create(access_key=access_key, keywords=['picovoice'])

while True:
    keyword_index = handle.process(audio_frame)
    if keyword_index >= 0:
        print(f"Detected keyword: {keyword_index}")

handle.delete()
  • Whether the package's neural network models are updated regularly and how security patches are distributed.
  • Latency and accuracy metrics under real-world conditions on different hardware platforms.
  • Whether custom-trained models via the API are subject to additional licensing or usage restrictions.
Same gist for agents: .md · .json

What it is and what it does

Porcupine is a speech recognition engine from Picovoice that detects wake words and voice commands in real-time audio. It uses deep neural networks trained in real-world environments and is optimized for low computational cost, making it suitable for IoT devices, embedded systems, and always-listening applications. The engine can detect multiple keywords simultaneously and supports cross-platform deployment on Linux, macOS, Windows, Raspberry Pi, Android, iOS, and browsers.

You initialize Porcupine with an AccessKey (obtained free from Picovoice Console) and specify keywords to detect—either from a built-in set or custom-trained models. The engine processes audio frames and returns a keyword index when a match is detected. Sensitivity can be tuned per keyword to trade off miss rate against false alarms. The package ships with model files for multiple languages and supports training custom wake word models via API.

Use it for

  • Build smart home devices that wake on a custom voice command without sending audio to the cloud.
  • Add voice activation to IoT applications running on Raspberry Pi or embedded Linux systems.
  • Implement always-listening voice assistants in mobile apps or web browsers with low latency.
  • Detect multiple voice commands in real-time for hands-free control in industrial or automotive settings.
  • Train and deploy custom wake words for branded voice interfaces via the Picovoice API.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

Porcupine is a production-ready, actively maintained wake word engine with low install friction, permissive licensing, and no known vulnerabilities. It's well-suited for voice-activated applications where on-device detection is preferred. The only prerequisite is obtaining a free AccessKey from Picovoice Console, which is a minor friction point but not a blocker.

Install

pvporcupine on PyPI

Before you install

Low install friction with a pure Python wheel distribution. The package is actively maintained with a recent release (50 days ago) and has been in production since 2019. Requires only requests as a runtime dependency.

Requires a free Picovoice AccessKey obtained from https://console.picovoice.ai/ to initialize the engine. Python 3.9 or later required.

License in practice

Licensed under Apache Software License (permissive), which allows commercial and private use with minimal restrictions—suitable for most projects without legal concern.

Quickstart

pip install pvporcupine

import pvporcupine

access_key = "YOUR_ACCESS_KEY"  # from Picovoice Console
handle = pvporcupine.create(access_key=access_key, keywords=['picovoice'])

while True:
    keyword_index = handle.process(audio_frame)
    if keyword_index >= 0:
        print(f"Detected keyword: {keyword_index}")

handle.delete()

Verify before relying

  • Whether the package's neural network models are updated regularly and how security patches are distributed.
  • Latency and accuracy metrics under real-world conditions on different hardware platforms.
  • Whether custom-trained models via the API are subject to additional licensing or usage restrictions.

Package facts

Licensepermissive license permissive
Python supportSupports the current Python release >=3.9
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
requests
MaintenanceActively maintained 50 days since the last release
Last repo commit
First released
Downloads160,057 / month, #10,676 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Topic :: Multimedia :: Sound/Audio :: Speech

Evidence: pvporcupine-4.0.3-py3-none-any.whl

Tags

Capabilities
wake word detectionhotword recognitionkeyword spottingvoice command detectionalways-listening audiospeech trigger detectionvoice activation engine
Topics
voice-activationedge-mlaudio-processing
PyPI keywords
wake word enginehotword detectionkeyword spottingwake word detectionvoice commands

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “wake word detection”

  • pvporcupinePorcupine is a lightweight wake word detection engine that identifies…
  • wyomingWyoming is a peer-to-peer TCP protocol for voice assistants that…
  • openwakewordopenWakeWord detects wake words and phrases in audio streams using…

Give your agent the search over MCP, or paste the wish link into any chat.

More Speech packages

SpeechRecognition Worth it
PyPI · Python Modules · released Jun 2026

Performs speech recognition and transcription using multiple online and offline engines, including Google, OpenAI Whisper, CMU Sphinx, and others.

The main gotcha is that most engines require optional dependencies or API credentials.

BSD-3-Clausepure Python · 3.9+
11.7Mdownloads / mo
gTTS With conditions
PyPI · Libraries · released Nov 2024

gTTS converts text to speech using Google Translate's API, writing MP3 audio to files, file-like objects, or stdout via Python library or command-line tool.

However, be aware that it depends on Google Translate's undocumented API—upstream changes can break it without notice, and it is not a substitute for official Google…

MITpure Python · 3.7+
5.3Mdownloads / mo
lhotse Worth it
PyPI · Python Modules · released Apr 2026

Lhotse prepares multimodal (speech, audio, video, image, text) data for machine learning model training with flexible pipelines, on-the-fly augmentation, and efficient data loading.

Install it if you are building speech, audio, or multimodal training pipelines; skip it if you only need simple audio I/O without data augmentation or complex dataset…

Apache-2.0pure Python · 3.8.0+
1.3Mdownloads / mo
piper-tts With conditions
PyPI · Speech · released Aug 2026

Piper TTS is a local neural text-to-speech engine that converts text to speech using embedded phonemization, with support for multiple languages and voices.

copyleftcompiled wheel · 3.9+
891.3Kdownloads / mo
funasr Worth it
PyPI · Python Modules · released Aug 2026

FunASR is a speech recognition toolkit that transcribes audio offline or via streaming, with integrated voice activity detection, speaker identification, punctuation restoration, and emotion/audio-event tagging across multiple languages and deployment targets.

Install it if you need speaker diarization, emotion detection, streaming support, or self-hosted deployment.

MITpure Python · 3.7.0+
497.9Kdownloads / mo
pocketsphinx With conditions
PyPI · Speech · released Jun 2026

PocketSphinx provides Python bindings for Carnegie Mellon University's open-source speech recognition engine, enabling continuous speech-to-text and keyword spotting from live microphone input or audio files.

BSD-3-Clausecompiled wheel
382.6Kdownloads / mo

See also openwakeword · wyoming · realtimestt · pymicro-vad · whisper-timestamped · sherpa-onnx · panns-inference · pyrnnoise · sherpa-onnx-core

Further reading