{"id":29616547,"url":"https://github.com/primaprashant/hns","last_synced_at":"2025-07-21T01:01:50.829Z","repository":{"id":302023331,"uuid":"1010999083","full_name":"primaprashant/hns","owner":"primaprashant","description":"A simple, privacy-focused speech-to-text CLI tool that records your voice, transcribes it locally using faster-whisper, and copies the transcription to your clipboard.","archived":false,"fork":false,"pushed_at":"2025-07-19T03:07:42.000Z","size":61,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-19T04:00:01.784Z","etag":null,"topics":["cli","clipboard","faster-whisper","python","speech-to-text","whisper"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/primaprashant.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-30T06:43:33.000Z","updated_at":"2025-07-19T03:07:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"3abb4e5f-f951-4ca2-a60c-8670fd15314c","html_url":"https://github.com/primaprashant/hns","commit_stats":null,"previous_names":["primaprashant/hns"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/primaprashant/hns","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primaprashant%2Fhns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primaprashant%2Fhns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primaprashant%2Fhns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primaprashant%2Fhns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/primaprashant","download_url":"https://codeload.github.com/primaprashant/hns/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primaprashant%2Fhns/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266222295,"owners_count":23894992,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","clipboard","faster-whisper","python","speech-to-text","whisper"],"created_at":"2025-07-21T01:01:27.836Z","updated_at":"2025-07-21T01:01:50.806Z","avatar_url":"https://github.com/primaprashant.png","language":"Python","funding_links":[],"categories":["\u003ca name=\"ai\"\u003e\u003c/a\u003eAI / ChatGPT","CLI tools","Productivity","Directory"],"sub_categories":["Self-hosted","Testing"],"readme":"# hns - A simple, privacy-focused speech-to-text CLI tool\n\nA simple, privacy-focused speech-to-text CLI tool that records your voice, transcribes it locally using [faster-whisper](https://github.com/SYSTRAN/faster-whisper), and copies the transcription to your clipboard. Perfect for interacting with Claude Code, VS Code, Slack, or any application where native dictation falls short.\n\nClick the image below to see the demo ⬇️ (warning: demo has sound)\n\n[![Watch Demo](https://cdn.anandprashant.com/hns/thumbnail.png)](https://cdn.anandprashant.com/hns/demo.mp4)\n\n## Highlights\n\n- **100% Local \u0026 Private**: Audio is processed entirely on your local machine. No data leaves your device\n- **Works Offline**: After the initial model download, no internet connection is required\n- **Instant Clipboard**: Transcribed text is automatically copied to your clipboard for immediate pasting\n- **Multi-Language Support**: Transcribe in any language supported by Whisper\n- **Configurable**: Choose models and languages via environment variables\n- **Focused** - Does one thing well: speech → clipboard\n- **Open Source** - MIT licensed, fully transparent\n\n## Use Cases\n\n- **Claude Code \u0026 AI Assistants**: Perfect for Claude Code or any AI interface without native dictation. Run `hns`, speak your prompt, then paste into Claude Code.\n- **Brain Dump → Structured Output**: Ramble your scattered thoughts, then paste into an LLM to organize:\n  ```sh\n  hns  # \"So I'm thinking about the refactor... we need to handle auth, but also consider caching...\"\n  # Paste to LLM: \"Create a structured plan from these thoughts:\"\n  ```\n- **Communication**: Compose Slack messages, emails, or chat responses hands-free.\n- **Note-Taking**: Quickly capture thoughts and ideas without switching from the keyboard.\n- **Accessibility**: Helpful for users who find typing difficult or painful.\n\n## Installation\n\nInstall via [uv](https://github.com/astral-sh/uv) (recommended):\n```sh\nuv tool install hns\n```\nor `pipx`:\n```sh\npipx install hns\n```\nor `pip`:\n```sh\npip install --user hns\n```\n\nThe first time you run `hns`, it will download the default Whisper model (`base`). This requires an internet connection and may take a few moments. Subsequent runs can be fully offline.\n\n## Usage\n\n### Basic Transcription\n\n1.  Run the command in your terminal:\n    ```sh\n    hns\n    ```\n2.  The tool will display `🎤 Recording...`. Speak into your microphone.\n3.  Press `Enter` when you have finished.\n4.  The transcribed text is automatically copied to your clipboard and printed to the console.\n\n### Configuration\n\n#### Listing Models\n\nTo see all available transcription models:\n```sh\nhns --list-models\n```\n\n#### Setting the Model\n\nSelect a model by setting the `HNS_WHISPER_MODEL` environment variable. The default is `base`. For higher accuracy, use a larger model like `medium` or `large-v3`.\n\n```sh\n# Use the 'small' model for the current session\nexport HNS_WHISPER_MODEL=\"small\"\nhns\n```\n\nTo make the change permanent, add `export HNS_WHISPER_MODEL=\"\u003cmodel_name\u003e\"` to your shell profile (`.zshrc`, `.bash_profile`, etc.).\n\n#### Setting the Language\n\nBy default, Whisper auto-detects the language. To force a specific language, set the `HNS_LANG` environment variable.\n\n```sh\n# Use an environment variable for Japanese\nexport HNS_LANG=\"ja\"\nhns\n```\n\n## License\n\nThis project is licensed under the [MIT License](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprimaprashant%2Fhns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprimaprashant%2Fhns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprimaprashant%2Fhns/lists"}