K

Kesha Voice Kit

Local speech-to-text and text-to-speech CLI with an MCP server; it transcribes 25 languages and speaks 9, and every model runs on the machine itself rather than in a cloud service

drakulavich/kesha-voice-kit · v0.0.0 · Tools & Integrations

drakulavichOwner verifiedcaution

Trust Score

69

Security

59

Surfaces

9

What is Kesha Voice Kit?

Kesha Voice Kit is a published tools & integrations plugin for AI coding agents in the openclaw ecosystem, developed by drakulavich and distributed through the HOL AI plugin registry. Local speech-to-text and text-to-speech CLI with an MCP server; it transcribes 25 languages and speaks 9, and every model runs on the machine itself rather than in a cloud service

Canonical slug
drakulavich/kesha-voice-kit
Version
v0.0.0 · updated Oct 6, 2026

Trust & Reputation

HOL Trust Score
69

Factor Analysis

Per-metric points (0–100 each) combined via a weighted average into the overall score.

Installability
64pts
Maintenance
80pts
MCP Posture
100pts
Plugin Security
59pts
Provenance
70pts
Publisher Quality
75pts

Registry Snapshot

Publisher verification
No
Marketplace source
Unknown
Scanner
Broker fallback
Safety label
caution
Digest verified
Yes
9 bundled skills — copy or download SKILL.mdOpen skills

Trust & reputation

Trust & Reputation

HOL Trust Score
69

Factor Analysis

Per-metric points (0–100 each) combined via a weighted average into the overall score.

Installability
64pts
Maintenance
80pts
MCP Posture
100pts
Plugin Security
59pts
Provenance
70pts
Publisher Quality
75pts

Provenance

Plugin root
.
Source repo
https://github.com/drakulavich/kesha-voice-kit
Source commit
49d8d4289b2b…
Publisher verified
No
Owner verified
@drakulavich

Continuous scanner CI detected

No action is required. This plugin receives the full trust score.

Verified badge not detected

Add the HOL verified badge to the repository README to score +2% trust. Plugin owners can open that pull request from Guard Plugins.

Security Posture

caution
Safety label
59
Security score
0
High findings
Provider
registry-broker-fallback
Grade
F · caution
Version
Unknown
cisco-skill-scanner: unknown

Findings

mediumpublishabilitypublishability.link.missing.websiteURL

websiteURL should be present for marketplace readiness.

mediumpublishabilitypublishability.link.missing.privacyPolicyURL

privacyPolicyURL should be present for marketplace readiness.

mediumpublishabilitypublishability.link.missing.termsOfServiceURL

termsOfServiceURL should be present for marketplace readiness.

lowoperational-securitysupply-chain.lockfile-missing

Repository snapshot does not include a lockfile.

infoskill-securityskill-scan.unavailable

Script permission declarations are required for scripts/: scripts/benchmark.ts, scripts/convert-lang-id-model.py, scripts/dev-setup.sh, scripts/generate-shell-artifacts.ts, scripts/mutate.ts, scripts/release-tag.ts, scripts/smoke-test.ts

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

Kesha Voice Kit — Frequently asked questions

What is Kesha Voice Kit?
Kesha Voice Kit is an AI plugin in the HOL registry. Local speech-to-text and text-to-speech CLI with an MCP server; it transcribes 25 languages and speaks 9, and every model runs on the machine itself rather than in a cloud service
How do I install Kesha Voice Kit?
Install Kesha Voice Kit in your harness: MCP — git clone https://github.com/drakulavich/kesha-voice-kit; Any agent — npx skills add drakulavich/kesha-voice-kit. Full step-by-step guidance is on the HOL plugin page.
How do I install Kesha Voice Kit in MCP?
To install Kesha Voice Kit in MCP, start with git clone https://github.com/drakulavich/kesha-voice-kit. The complete step-by-step install guide for MCP is on the HOL plugin page.
Is Kesha Voice Kit free?
Pricing for Kesha Voice Kit is published on its HOL plugin page when the maker schedules a launch.
Who publishes Kesha Voice Kit?
Kesha Voice Kit is published by drakulavich and listed on HOL.
Is Kesha Voice Kit available now?
Kesha Voice Kit availability is listed on its HOL plugin page.

Install Guidance

Install in MCP

Connect the bundled MCP server shipped in the repository .mcp.json file.

MCP docs
  1. 1

    Clone the repository

    shell
  2. 2

    Open the project in your MCP client

    Standard MCP plugins ship a .mcp.json manifest at the repository root; MCP-compatible clients auto-discover it when the project folder is open. If this repository configures its server differently, register it from the MCP configuration the publisher documents.

  3. 3

    Verify the server

    Check the MCP server list in your client: the server declared in .mcp.json should report as connected.

Plugin Manifest

{
  "id": "kesha-voice-kit",
  "name": "Kesha Voice Kit",
  "description": "Local speech-to-text for voice messages — 25 languages, ~19x faster than Whisper on Apple Silicon. Bundled `kesha` CLI also synthesizes Telegram-ready OGG/Opus voice notes via `kesha say --format ogg-opus`.",
  "providers": [
    "kesha-voice-kit"
  ],
  "configSchema": {
    "type": "object",
    "additionalProperties": false,
    "properties": {}
  },
  "repository": "https://github.com/drakulavich/kesha-voice-kit",
  "interface": {
    "displayName": "Kesha Voice Kit",
    "developerName": "drakulavich"
  },
  "skills": "./",
  "holManifestOrigin": "repository",
  "registryIndexVersion": 5
}

Marketplace Source

Repo URL
https://github.com/drakulavich/kesha-voice-kit
Marketplace path
Unknown
Source path
.
Install policy
Unspecified

Skills

9 SKILL.md files ship with this plugin. Preview, copy, or download each one, then install them with the Skills CLI.

Share
skills-cli
  • openspec-apply-change

    .claude/skills/openspec-apply-change/SKILL.md

    Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks. Also use when the user says "openspec apply", "opsx apply", or "openspec implement".

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • openspec-archive-change

    .claude/skills/openspec-archive-change/SKILL.md

    Archive a completed OpenSpec change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete. Also use when the user says "openspec archive" or "opsx archive".

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • openspec-explore

    .claude/skills/openspec-explore/SKILL.md

    Enter OpenSpec explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements in a project that uses OpenSpec. Use when the user wants to think through something before or during an OpenSpec change. Also use when the user says "openspec explore" or "opsx explore".

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • openspec-propose

    .claude/skills/openspec-propose/SKILL.md

    Propose a new OpenSpec change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation. Also use when the user says "openspec propose" or "opsx propose".

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • openspec-sync-specs

    .claude/skills/openspec-sync-specs/SKILL.md

    Sync delta specs from an OpenSpec change to main specs. Use when the user wants to update main specs with changes from a delta spec, without archiving the change. Also use when the user says "openspec sync" or "opsx sync".

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • release

    .claude/skills/release/SKILL.md

    Cuts a Kesha release through release.yml — a stable vX.Y.Z tag, a dispatched beta, or an alpha — and explains the release machinery. One version names the CLI and the Engine. Covers the version bump, the annotated tag, what the run publishes and in what order, how to verify from the registry, re-recording the capability pacts, and recovery. Refuses to auto-run; the maintainer invokes it explicitly.

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • tts-internals

    .claude/skills/tts-internals/SKILL.md

    Use when working on kesha TTS internals — voice routing and which engine serves which voice-id prefix, Kokoro/Vosk ONNX I/O shapes, the CharsiuG2P vs FluidAudio G2P split, SSML handling, multilingual behaviour (es/fr/it/pt on ONNX, hi/ja/zh on darwin-arm64), or the KESHA_* TTS environment variables. Explains why darwin-arm64 routes differently from every other build.

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • verify-pin-bump

    .claude/skills/verify-pin-bump/SKILL.md

    Use when a model SHA-256 mismatch surfaces (download_verified errors, manifest_tests failures, a fresh download hashing differently from the rust/src/models/manifest.rs pin, kesha install failing after an update, a KESHA_MODEL_MIRROR swap producing a different hash, or an upstream HuggingFace re-upload). Walks through the safe bump procedure — verify the upstream weights deliberately, then update the pin. Refuses to suggest commenting out verification.

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

  • kesha-voice-kit

    SKILL.md

    Local multilingual voice toolkit — speech-to-text (STT), text-to-speech (TTS), speaker diarization, and language detection, over a CLI or an MCP server. Runs entirely offline on Apple Silicon, Linux, and Windows. No API keys, no cloud. NVIDIA Parakeet TDT for STT across 25 European languages, Kokoro-82M + Vosk-TTS for TTS in 9 languages, plus macOS AVSpeechSynthesizer for ~180 system voices with zero install.

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

File Inventory

.claude/commands/opsx/apply.md

file

10,930 bytes

0fd00d334af5f182…

.claude/commands/opsx/archive.md

file

17,330 bytes

0c48963c41c06b12…

.claude/commands/opsx/explore.md

file

19,774 bytes

308878c7539da2b8…

.claude/commands/opsx/propose.md

file

15,958 bytes

6cb69de2ff28d549…

.claude/commands/opsx/sync.md

file

15,579 bytes

a946e1a29b7421e1…

.claude/hooks/auto-fmt-rust.sh

file

1,527 bytes

ab9e0435f266edbe…

.claude/hooks/check-new-comments.ts

file

4,710 bytes

ae1490d7b2502172…

.claude/hooks/guard-sha-bump.sh

file

3,871 bytes

21b62bb6a46587d1…

.claude/hooks/stale-root.ts

file

3,570 bytes

bcfc816084952d41…

.claude/rules/ci-and-build.md

file

2,506 bytes

e9449f3704ca6664…

.claude/rules/openclaw-plugin.md

file

392 bytes

d1eaf9a79e0c84a9…

.claude/rules/python.md

file

621 bytes

faf28819415e10ad…

.claude/rules/testing.md

file

3,640 bytes

ff86e174d0579c48…

.claude/settings.json

file

1,940 bytes

e163d37fa9be760b…

.claude/skills/openspec-apply-change/SKILL.md

skill

11,154 bytes

3c80c0da1fa88517…

.claude/skills/openspec-archive-change/SKILL.md

skill

16,583 bytes

ba809cca5c8a5a47…

.claude/skills/openspec-explore/SKILL.md

skill

22,786 bytes

3cb14a5a4f902522…

.claude/skills/openspec-propose/SKILL.md

skill

16,252 bytes

86e623eae73440e9…

.claude/skills/openspec-sync-specs/SKILL.md

skill

15,769 bytes

e8b9509f769e84b7…

.claude/skills/release/SKILL.md

skill

7,883 bytes

50fa5d9a21987b8d…

.claude/skills/tts-internals/SKILL.md

skill

10,235 bytes

dd6f86ee8a5d5fdd…

.claude/skills/verify-pin-bump/SKILL.md

skill

6,482 bytes

5d20b20d23c14a27…

.codex-plugin/plugin.json

plugin-manifest

594 bytes

6575b01b619fcd8d…

.github/actionlint.yaml

file

111 bytes

0d88b06857d6e59d…

.github/actions/install-kesha-backend/action.yml

file

3,409 bytes

cf1c7161ab1a1c90…

.github/actions/linux-packages/action.yml

file

538 bytes

b6b09249fedbaf5f…

.github/actions/prepare-npm-package/action.yml

file

2,503 bytes

699acd44f0316c79…

.github/actions/setup-bun/action.yml

file

891 bytes

055f48cc5af3687e…

.github/actions/setup-kokoro-models/action.yml

file

2,974 bytes

60d95ef8c4cf444a…

.github/actions/setup-rust/action.yml

file

2,420 bytes

1e6b30cc6ecbf06b…

.github/dependabot.yml

file

1,540 bytes

0494b5ba6c613275…

.github/ISSUE_TEMPLATE/bug_report.yml

file

2,277 bytes

d96fab5abb353cf8…

.github/ISSUE_TEMPLATE/config.yml

file

251 bytes

b86db4a2631b288b…

.github/ISSUE_TEMPLATE/install_support.yml

file

2,470 bytes

3ba301097195dc1d…

.github/ISSUE_TEMPLATE/performance.yml

file

2,709 bytes

83e344706ef881e7…

.github/pull_request_template.md

file

624 bytes

8ca257d5215e4d37…

.github/raycast/extension-schema.json

file

30,417 bytes

b069d6e4c761d399…

.github/scripts/alpha-publishable.ts

file

3,091 bytes

e3f27efed1404836…

.github/scripts/alpha-requested.sh

file

1,212 bytes

2df8845672634125…

.github/scripts/alpha-tag.sh

file

1,194 bytes

902fbb8951d1e758…

.github/scripts/assert-coreml-rejected.sh

file

398 bytes

6f453c3a95c7206c…

.github/scripts/assert-cross-os-cache.sh

file

1,805 bytes

ad6d7882bf821c0c…

.github/scripts/assert-install-warmup.ts

file

1,284 bytes

464253a47dd753dd…

.github/scripts/assert-transcript.ts

file

1,239 bytes

63c726cc4a7dbfc0…

.github/scripts/build-linux-packages.mjs

file

1,288 bytes

1f9c4e2baf3aacfc…

.github/scripts/cargo-maintenance-issue.sh

file

3,364 bytes

07a4d9e49038d8e9…

.github/scripts/changed-paths.sh

file

670 bytes

6d6820f50307077b…

.github/scripts/check-coverage.ts

file

6,095 bytes

8933a6ba0cad74db…

.github/scripts/check-engine-targets.ts

file

2,516 bytes

c495b78668f389a0…

.github/scripts/check-file-sizes.ts

file

6,638 bytes

7fdd1a29994363b8…

.github/scripts/check-model-plan-sizes.ts

file

15,728 bytes

2a936464baa49841…

.github/scripts/check-recipes.ts

file

18,094 bytes

e36f73a0f141138a…

.github/scripts/check-release-assets.ts

file

1,795 bytes

f9239437a87375a6…

.github/scripts/check-versions.ts

file

3,728 bytes

7f7ae8263e243ca3…

.github/scripts/check-workflows.ts

file

63,520 bytes

3c2d52c65c1fd0ce…

.github/scripts/coreml-regression.sh

file

754 bytes

4e20df72360a49b0…

.github/scripts/engine-pin.ts

file

4,430 bytes

fa0f73f72675c59d…

.github/scripts/engine-release-notes.d.mts

file

94 bytes

17c17c489531b403…

.github/scripts/engine-release-notes.mjs

file

2,072 bytes

0c1c25001a6a5ff4…

.github/scripts/fetch-pact-model.sh

file

1,362 bytes

fee01c9fcbb87914…

.github/scripts/generate-mini-models.py

file

5,743 bytes

11a8ce1cf0ef39c6…

.github/scripts/greptile-gate.ts

file

4,972 bytes

d72d353d1fb5abd5…

.github/scripts/install-actionlint.sh

file

1,775 bytes

61bcf3db6ea83650…

.github/scripts/install-ffmpeg.sh

file

281 bytes

209191aa72b606ad…

.github/scripts/install-kesha-backend.sh

file

582 bytes

28adf67c2b857daf…

.github/scripts/install-nfpm.sh

file

914 bytes

75aa838e7a35e1f7…

.github/scripts/junit-to-markdown.ts

file

4,968 bytes

085ec4c8058a799f…

.github/scripts/linux-package-names.mjs

file

527 bytes

e6f3e6b57259b545…

.github/scripts/mark-engine-version.ts

file

289 bytes

2d4d84f9b17a328d…

.github/scripts/newest-stable-engine.sh

file

408 bytes

a9408df0a6fbcc6b…

.github/scripts/npm-pack-verify.ts

file

2,251 bytes

6f48b77d5b7b5a74…

.github/scripts/npm-release-metadata.ts

file

2,985 bytes

1326cd2d65438641…

.github/scripts/offline.sh

file

1,476 bytes

26d75234f6ba8eea…

.github/scripts/open-post-release-pr.sh

file

364 bytes

86748231f74a378c…

.github/scripts/post-engine-release.ts

file

10,021 bytes

c1b3a5834e9a480a…

.github/scripts/post-release-guard.ts

file

3,631 bytes

48bf08f93bdf4970…

.github/scripts/prune-alpha-releases.sh

file

786 bytes

ae66b8ddfab33142…

.github/scripts/prune-alpha-releases.ts

file

1,493 bytes

53091704233b3638…

.github/scripts/publish-release.sh

file

746 bytes

43472c7ab64d6670…

.github/scripts/push-annotated-tag.sh

file

649 bytes

070ed76b60769423…

.github/scripts/push-homebrew-tap.sh

file

669 bytes

3cf5ce1f334acd99…

.github/scripts/push-post-release-branch.sh

file

534 bytes

3ff17eb886331c67…

.github/scripts/quickstart-timing.sh

file

741 bytes

61d34dd699fd88dd…

.github/scripts/raycast-lint-rejects-bad-manifest.sh

file

943 bytes

63f72b4725b07e81…

.github/scripts/raycast-lint-rejects-type-error.sh

file

805 bytes

44b408318323e4b3…

.github/scripts/raycast-lint.sh

file

679 bytes

55b2fe26de33ab9b…

.github/scripts/raycast-no-live-fetch.cjs

file

1,306 bytes

e7816a6a62ffefab…

.github/scripts/raycast-schema-drift.sh

file

1,575 bytes

5296fdd8eef9a4e6…

.github/scripts/record-capability-pacts.ts

file

8,557 bytes

480b742d3cfe2a27…

.github/scripts/record-post-release-validation.sh

file

236 bytes

ac6fc87c0c46772d…

.github/scripts/refuse-existing-followup.sh

file

242 bytes

7bb0e5f1e900379c…

.github/scripts/release-checksums.sh

file

385 bytes

53d947deba102320…

.github/scripts/release-classify.ts

file

5,097 bytes

30297d6528f4be14…

.github/scripts/release-install-smoke.sh

file

3,787 bytes

79918319d04defa7…

.github/scripts/release-manifest.mjs

file

6,761 bytes

a38a039879f47f9f…

.github/scripts/release-plan.ts

file

5,075 bytes

356a5b69a4c86714…

.github/scripts/release-tags.d.mts

file

143 bytes

34b22fd617e3f980…

.github/scripts/release-tags.mjs

file

443 bytes

1b4c267e6ed1140a…

.github/scripts/report-bun-audit.sh

file

508 bytes

c79c85dcb1ac60c0…

.github/scripts/report-capability-pact.sh

file

1,159 bytes

c02be9d3e695a8f1…

Browse all 756 files