NousResearch/hermes-agent · error · Error
Microphone access denied.
Error message
Microphone access denied.
What it means
Error "Microphone access denied." thrown in NousResearch/hermes-agent.
Source
Thrown at apps/desktop/src/app/chat/composer/hooks/use-mic-recorder.ts:181
tick()
} catch {
setLevel(0)
}
}
const start: MicRecorderHandle['start'] = async (options = {}) => {
if (recorderRef.current) {
return
}
if (!navigator.mediaDevices?.getUserMedia || typeof MediaRecorder === 'undefined') {
throw new Error(copy.microphoneUnsupported)
}
const permitted = await window.hermesDesktop?.requestMicrophoneAccess?.()
if (permitted === false) {
throw new Error(copy.microphoneAccessDenied)
}
let stream: MediaStream
try {
stream = await navigator.mediaDevices.getUserMedia({
audio: { echoCancellation: true, noiseSuppression: true }
})
} catch (error) {
throw micError(error, copy)
}
const mimeType =
['audio/webm;codecs=opus', 'audio/webm', 'audio/mp4', 'audio/ogg;codecs=opus', 'audio/ogg', 'audio/wav'].find(
type => MediaRecorder.isTypeSupported(type)
) ?? ''
let recorder: MediaRecorderView on GitHub (pinned to c896c09c42)
Solutions
- Grant microphone permission to Hermes Desktop in OS privacy settings, then retry.
- Check that no other app has exclusive control of the microphone.
- Verify a microphone is connected and selected as the default input device.
When it happens
Trigger: Thrown at apps/desktop/src/app/chat/composer/hooks/use-mic-recorder.ts:181 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
- Authentication and authorization failures — expired tokens, bad credentials, and missing scopes.
AI-assisted analysis of NousResearch/hermes-agent@c896c09c42 (2026-08-14).
Data as JSON: /api/errors/be852dca6292e3f3.
Report an issue: GitHub.