@mcptoolshop/claude-sfx 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.es.md +188 -0
- package/README.fr.md +188 -0
- package/README.hi.md +188 -0
- package/README.it.md +188 -0
- package/README.ja.md +188 -0
- package/README.md +188 -0
- package/README.pt-BR.md +188 -0
- package/README.zh.md +188 -0
- package/assets/logo.jpg +0 -0
- package/dist/ambient.d.ts +28 -0
- package/dist/ambient.js +179 -0
- package/dist/cli.d.ts +6 -0
- package/dist/cli.js +594 -0
- package/dist/config.d.ts +40 -0
- package/dist/config.js +104 -0
- package/dist/guard.d.ts +19 -0
- package/dist/guard.js +87 -0
- package/dist/hook-handler.d.ts +34 -0
- package/dist/hook-handler.js +200 -0
- package/dist/hooks.d.ts +35 -0
- package/dist/hooks.js +192 -0
- package/dist/player.d.ts +16 -0
- package/dist/player.js +109 -0
- package/dist/profiles.d.ts +103 -0
- package/dist/profiles.js +297 -0
- package/dist/synth.d.ts +72 -0
- package/dist/synth.js +254 -0
- package/dist/verbs.d.ts +25 -0
- package/dist/verbs.js +251 -0
- package/package.json +54 -0
- package/profiles/minimal.json +202 -0
- package/profiles/retro.json +200 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 mcp-tool-shop
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.es.md
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.md">English</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/claude-sfx/readme.png" width="400" alt="Claude-SFX">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://www.npmjs.com/package/claude-sfx"><img src="https://img.shields.io/npm/v/claude-sfx" alt="npm version"></a>
|
|
11
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
|
12
|
+
<a href="https://mcp-tool-shop-org.github.io/claude-sfx/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
Retroalimentación de audio procedimental para [Claude Code](https://docs.anthropic.com/en/docs/claude-code). Cada llamada a una herramienta, edición de archivo, búsqueda, envío a Git y despliegue de agente genera un sonido distinto, sintetizado a partir de matemáticas, no de archivos de audio.
|
|
16
|
+
|
|
17
|
+
## Inicio rápido
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm install -g claude-sfx
|
|
21
|
+
cd your-project
|
|
22
|
+
claude-sfx init # install hooks into .claude/settings.json
|
|
23
|
+
claude-sfx demo # hear all 7 verbs
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Eso es todo. Claude Code ahora reproducirá sonidos mientras trabaja.
|
|
27
|
+
|
|
28
|
+
## ¿Por qué retroalimentación de audio?
|
|
29
|
+
|
|
30
|
+
Cuando un agente de IA lee, escribe, busca y despliega en su nombre, pierde visibilidad. Está mirando texto que se desplaza. La retroalimentación de audio restaura la conciencia:
|
|
31
|
+
|
|
32
|
+
- **Accesibilidad** — escuche los cambios de estado, los errores y las finalizaciones sin tener que mirar la terminal.
|
|
33
|
+
- **Flujo** — sepa si una prueba ha pasado o si un envío se ha completado sin tener que cambiar de contexto.
|
|
34
|
+
- **Presencia** — el agente se siente como un colaborador, no como una caja negra.
|
|
35
|
+
|
|
36
|
+
## Los 7 verbos
|
|
37
|
+
|
|
38
|
+
Cada acción de Claude Code se corresponde con uno de 7 verbos principales. Los modificadores (estado, alcance, dirección) alteran el sonido sin romper la coherencia.
|
|
39
|
+
|
|
40
|
+
| Verbo | Desencadenantes | Sonido |
|
|
41
|
+
| --- | --- | --- |
|
|
42
|
+
| **intake** | `Read`, `WebFetch`, `WebSearch` | Seno ascendente suave — algo que está entrando |
|
|
43
|
+
| **transform** | `Edit` | Pulso con textura FM — remodelando |
|
|
44
|
+
| **commit** | `Write`, `NotebookEdit`, `git commit` | Tono de timbre agudo — sellado |
|
|
45
|
+
| **navigate** | `Grep`, `Glob` | Pitido de sonar — escaneando |
|
|
46
|
+
| **execute** | `Bash`, `npm test`, `tsc` | Estallido de ruido + tono — acción mecánica |
|
|
47
|
+
| **move** | `mv`, `cp`, inicio de subagente | Silbido de viento — desplazamiento de aire |
|
|
48
|
+
| **sync** | `git push`, `git pull` | Silbido dramático + ancla tonal |
|
|
49
|
+
|
|
50
|
+
### Modificadores
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
claude-sfx play navigate --status ok # bright ping (octave harmonic)
|
|
54
|
+
claude-sfx play navigate --status err # low detuned ping (dissonance)
|
|
55
|
+
claude-sfx play navigate --status warn # tremolo ping
|
|
56
|
+
claude-sfx play sync --direction up # rising whoosh (push)
|
|
57
|
+
claude-sfx play sync --direction down # falling whoosh (pull)
|
|
58
|
+
claude-sfx play intake --scope remote # longer tail (distance feel)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Detección inteligente de Bash
|
|
62
|
+
|
|
63
|
+
El controlador de la conexión inspecciona los comandos de Bash para seleccionar el sonido correcto:
|
|
64
|
+
|
|
65
|
+
| Comando de Bash | Verbo | Estado |
|
|
66
|
+
| --- | --- | --- |
|
|
67
|
+
| `git push` | sync (arriba) | desde código de salida |
|
|
68
|
+
| `git pull` | sync (abajo) | desde código de salida |
|
|
69
|
+
| `npm test`, `pytest` | ejecutar | desde código de salida |
|
|
70
|
+
| `tsc`, `npm run build` | ejecutar | desde código de salida |
|
|
71
|
+
| `mv`, `cp` | mover | — |
|
|
72
|
+
| `rm` | mover | advertencia |
|
|
73
|
+
| todo lo demás | ejecutar | desde código de salida |
|
|
74
|
+
|
|
75
|
+
## Perfiles
|
|
76
|
+
|
|
77
|
+
Paletas de sonido que cambian todo el carácter con una sola opción.
|
|
78
|
+
|
|
79
|
+
| Perfil | Carácter |
|
|
80
|
+
| --- | --- |
|
|
81
|
+
| **minimal** (default) | Tonos de onda sinusoidal — sutiles, profesionales, para uso diario |
|
|
82
|
+
| **retro** | Chirrídos de onda cuadrada de 8 bits — divertidos pero controlados |
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
claude-sfx demo --profile retro # hear retro palette
|
|
86
|
+
claude-sfx preview minimal # audition all sounds + modifiers
|
|
87
|
+
claude-sfx config set profile retro # change default globally
|
|
88
|
+
claude-sfx config repo retro # use retro in current directory only
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Perfiles personalizados
|
|
92
|
+
|
|
93
|
+
Copie `profiles/minimal.json`, edite los parámetros de síntesis y cárguelo:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
claude-sfx play navigate --profile ./my-profile.json
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Cada número en el archivo JSON se corresponde directamente con el motor de síntesis: forma de onda, frecuencia, duración, envolvente (ADSR), profundidad FM, ancho de banda, ganancia.
|
|
100
|
+
|
|
101
|
+
## Anti-molestias
|
|
102
|
+
|
|
103
|
+
Lo que diferencia un producto de un juguete.
|
|
104
|
+
|
|
105
|
+
| Función | Comportamiento |
|
|
106
|
+
| --- | --- |
|
|
107
|
+
| **Debounce** | El mismo verbo dentro de 200 ms → un sonido |
|
|
108
|
+
| **Rate limit** | Máximo de 8 sonidos por ventana de 10 segundos |
|
|
109
|
+
| **Quiet hours** | Todos los sonidos se suprimen durante las horas configuradas |
|
|
110
|
+
| **Mute** | Activación instantánea, persiste al reiniciar la sesión |
|
|
111
|
+
| **Volume** | Control de ganancia de 0 a 100 |
|
|
112
|
+
| **Per-verb disable** | Desactive verbos específicos que no desee |
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
claude-sfx mute # instant silence
|
|
116
|
+
claude-sfx unmute
|
|
117
|
+
claude-sfx volume 40 # quieter
|
|
118
|
+
claude-sfx config set quiet-start 22:00 # quiet after 10pm
|
|
119
|
+
claude-sfx config set quiet-end 07:00 # until 7am
|
|
120
|
+
claude-sfx disable navigate # no more search pings
|
|
121
|
+
claude-sfx enable navigate # bring it back
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Ambiente (operaciones de larga duración)
|
|
125
|
+
|
|
126
|
+
Para comandos que tardan un tiempo (compilaciones, despliegues, suites de pruebas grandes):
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
claude-sfx ambient-start # low drone fades in
|
|
130
|
+
# ... operation runs ...
|
|
131
|
+
claude-sfx ambient-resolve # drone stops, resolution stinger plays
|
|
132
|
+
claude-sfx ambient-stop # stop drone silently (no stinger)
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Sonidos de sesión
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
claude-sfx session-start # two-note ascending chime (boot)
|
|
139
|
+
claude-sfx session-end # two-note descending chime (closure)
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Todos los comandos
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
Setup:
|
|
146
|
+
init Install hooks into .claude/settings.json
|
|
147
|
+
uninstall Remove hooks
|
|
148
|
+
|
|
149
|
+
Playback:
|
|
150
|
+
play <verb> [options] Play a sound (goes through guard)
|
|
151
|
+
demo [--profile <name>] Play all 7 verbs
|
|
152
|
+
preview [profile] Audition all sounds in a profile
|
|
153
|
+
session-start / session-end Chimes
|
|
154
|
+
ambient-start / ambient-resolve / ambient-stop
|
|
155
|
+
|
|
156
|
+
Config:
|
|
157
|
+
mute / unmute Toggle all sounds
|
|
158
|
+
volume [0-100] Get or set volume
|
|
159
|
+
config Print current config
|
|
160
|
+
config set <key> <value> Set a value
|
|
161
|
+
config reset Reset to defaults
|
|
162
|
+
config repo <profile|clear> Per-directory profile override
|
|
163
|
+
disable / enable <verb> Toggle specific verbs
|
|
164
|
+
export [dir] [--profile] Export all sounds as .wav files
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## Cómo funciona
|
|
168
|
+
|
|
169
|
+
Sin archivos de audio. Cada sonido se sintetiza en tiempo de ejecución a partir de matemáticas:
|
|
170
|
+
|
|
171
|
+
- **Osciladores** — seno, cuadrada, diente de sierra, triángulo, ruido blanco.
|
|
172
|
+
- **Envolventes ADSR** — ataque, decaimiento, sostenimiento, liberación.
|
|
173
|
+
- **Síntesis FM** — modulación de frecuencia para crear texturas.
|
|
174
|
+
- **Filtro de variable de estado** — ruido filtrado en banda para efectos de "whoosh".
|
|
175
|
+
- **Barridos de frecuencia** — interpolación lineal para crear movimiento.
|
|
176
|
+
- **Limitador de volumen** — compresión de rodilla suave, límite máximo.
|
|
177
|
+
|
|
178
|
+
Todo el paquete tiene aproximadamente 2800 líneas de código TypeScript y no tiene dependencias para producción. Los sonidos se generan como buffers PCM, se codifican a formato WAV en memoria y se reproducen a través del reproductor de audio nativo del sistema operativo (PowerShell en Windows, afplay en macOS, aplay en Linux).
|
|
179
|
+
|
|
180
|
+
## Requisitos:
|
|
181
|
+
|
|
182
|
+
- Node.js 18 o superior.
|
|
183
|
+
- Claude Code.
|
|
184
|
+
- Salida de audio del sistema (altavoces o auriculares).
|
|
185
|
+
|
|
186
|
+
## Licencia:
|
|
187
|
+
|
|
188
|
+
[MIT](LICENSE)
|
package/README.fr.md
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.md">English</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/claude-sfx/readme.png" width="400" alt="Claude-SFX">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://www.npmjs.com/package/claude-sfx"><img src="https://img.shields.io/npm/v/claude-sfx" alt="npm version"></a>
|
|
11
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
|
12
|
+
<a href="https://mcp-tool-shop-org.github.io/claude-sfx/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
Retour audio pour [Claude Code](https://docs.anthropic.com/en/docs/claude-code). Chaque appel de fonction, modification de fichier, recherche, envoi vers Git et exécution d'agent produit un son distinct, synthétisé à partir de formules mathématiques, et non à partir de fichiers audio.
|
|
16
|
+
|
|
17
|
+
## Démarrage rapide
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm install -g claude-sfx
|
|
21
|
+
cd your-project
|
|
22
|
+
claude-sfx init # install hooks into .claude/settings.json
|
|
23
|
+
claude-sfx demo # hear all 7 verbs
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Voilà. Claude Code émettra désormais des sons pendant son fonctionnement.
|
|
27
|
+
|
|
28
|
+
## Pourquoi un retour audio ?
|
|
29
|
+
|
|
30
|
+
Lorsqu'un agent d'IA lit, écrit, effectue des recherches et déploie des éléments en votre nom, vous perdez de la visibilité. Vous ne voyez qu'un texte qui défile. Le retour audio rétablit la conscience :
|
|
31
|
+
|
|
32
|
+
- **Accessibilité** : écoutez les changements d'état, les erreurs et les confirmations sans avoir à surveiller le terminal.
|
|
33
|
+
- **Fluidité** : sachez si un test a réussi ou si une modification a été intégrée sans avoir à changer de contexte.
|
|
34
|
+
- **Présence** : l'agent vous semble être un collaborateur, et non une boîte noire.
|
|
35
|
+
|
|
36
|
+
## Les 7 actions
|
|
37
|
+
|
|
38
|
+
Chaque action de Claude Code correspond à l'une des 7 actions de base. Les modificateurs (état, portée, direction) modifient le son sans rompre la cohérence.
|
|
39
|
+
|
|
40
|
+
| Action | Déclencheurs | Son |
|
|
41
|
+
| --- | --- | --- |
|
|
42
|
+
| **intake** | `Read`, `WebFetch`, `WebSearch` | Onde sinusoïdale ascendante : quelque chose arrive. |
|
|
43
|
+
| **transform** | `Edit` | Impulsion texturée par modulation de fréquence (FM) : remodelage. |
|
|
44
|
+
| **commit** | `Write`, `NotebookEdit`, `git commit` | Tonnette percutant : confirmation. |
|
|
45
|
+
| **navigate** | `Grep`, `Glob` | Impulsion sonar : analyse. |
|
|
46
|
+
| **execute** | `Bash`, `npm test`, `tsc` | Bruit + ton : action mécanique. |
|
|
47
|
+
| **move** | `mv`, `cp`, lancement de sous-agent. | Sifflement de vent : déplacement d'air. |
|
|
48
|
+
| **sync** | `git push`, `git pull` | Sifflement dramatique + ancre tonale. |
|
|
49
|
+
|
|
50
|
+
### Modificateurs
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
claude-sfx play navigate --status ok # bright ping (octave harmonic)
|
|
54
|
+
claude-sfx play navigate --status err # low detuned ping (dissonance)
|
|
55
|
+
claude-sfx play navigate --status warn # tremolo ping
|
|
56
|
+
claude-sfx play sync --direction up # rising whoosh (push)
|
|
57
|
+
claude-sfx play sync --direction down # falling whoosh (pull)
|
|
58
|
+
claude-sfx play intake --scope remote # longer tail (distance feel)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Détection intelligente de Bash
|
|
62
|
+
|
|
63
|
+
Le gestionnaire de hooks analyse les commandes Bash pour choisir le son approprié :
|
|
64
|
+
|
|
65
|
+
| Commande Bash | Action | État |
|
|
66
|
+
| --- | --- | --- |
|
|
67
|
+
| `git push` | sync (montée) | code de retour |
|
|
68
|
+
| `git pull` | sync (descente) | code de retour |
|
|
69
|
+
| `npm test`, `pytest` | exécution | code de retour |
|
|
70
|
+
| `tsc`, `npm run build` | exécution | code de retour |
|
|
71
|
+
| `mv`, `cp` | déplacement | — |
|
|
72
|
+
| `rm` | déplacement | avertissement |
|
|
73
|
+
| tout le reste | exécution | code de retour |
|
|
74
|
+
|
|
75
|
+
## Profils
|
|
76
|
+
|
|
77
|
+
Palettes de sons qui modifient l'ensemble du comportement avec un seul paramètre.
|
|
78
|
+
|
|
79
|
+
| Profil | Comportement |
|
|
80
|
+
| --- | --- |
|
|
81
|
+
| **minimal** (default) | Tons en onde sinusoïdale : subtils, professionnels, pour une utilisation quotidienne. |
|
|
82
|
+
| **retro** | Bruits de couinement en onde carrée 8 bits : amusants mais contrôlés. |
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
claude-sfx demo --profile retro # hear retro palette
|
|
86
|
+
claude-sfx preview minimal # audition all sounds + modifiers
|
|
87
|
+
claude-sfx config set profile retro # change default globally
|
|
88
|
+
claude-sfx config repo retro # use retro in current directory only
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Profils personnalisés
|
|
92
|
+
|
|
93
|
+
Copiez `profiles/minimal.json`, modifiez les paramètres de synthèse, puis chargez-le :
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
claude-sfx play navigate --profile ./my-profile.json
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Chaque nombre dans le fichier JSON correspond directement au moteur de synthèse : forme d'onde, fréquence, durée, enveloppe (ADSR), profondeur de modulation de fréquence (FM), bande passante, gain.
|
|
100
|
+
|
|
101
|
+
## Prévention des nuisances
|
|
102
|
+
|
|
103
|
+
Ce qui distingue un produit d'un simple jouet.
|
|
104
|
+
|
|
105
|
+
| Fonctionnalité | Comportement |
|
|
106
|
+
| --- | --- |
|
|
107
|
+
| **Debounce** | Même action dans un délai de 200 ms → un seul son. |
|
|
108
|
+
| **Rate limit** | Maximum de 8 sons par fenêtre de 10 secondes. |
|
|
109
|
+
| **Quiet hours** | Tous les sons sont désactivés pendant les heures configurées. |
|
|
110
|
+
| **Mute** | Activation/désactivation instantanée, persiste après le redémarrage de la session. |
|
|
111
|
+
| **Volume** | Contrôle du gain de 0 à 100. |
|
|
112
|
+
| **Per-verb disable** | Désactivez les actions spécifiques que vous ne souhaitez pas entendre. |
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
claude-sfx mute # instant silence
|
|
116
|
+
claude-sfx unmute
|
|
117
|
+
claude-sfx volume 40 # quieter
|
|
118
|
+
claude-sfx config set quiet-start 22:00 # quiet after 10pm
|
|
119
|
+
claude-sfx config set quiet-end 07:00 # until 7am
|
|
120
|
+
claude-sfx disable navigate # no more search pings
|
|
121
|
+
claude-sfx enable navigate # bring it back
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Ambiance (opérations de longue durée)
|
|
125
|
+
|
|
126
|
+
Pour les commandes qui prennent du temps (compilations, déploiements, suites de tests volumineuses) :
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
claude-sfx ambient-start # low drone fades in
|
|
130
|
+
# ... operation runs ...
|
|
131
|
+
claude-sfx ambient-resolve # drone stops, resolution stinger plays
|
|
132
|
+
claude-sfx ambient-stop # stop drone silently (no stinger)
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Sons de session
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
claude-sfx session-start # two-note ascending chime (boot)
|
|
139
|
+
claude-sfx session-end # two-note descending chime (closure)
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Toutes les commandes
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
Setup:
|
|
146
|
+
init Install hooks into .claude/settings.json
|
|
147
|
+
uninstall Remove hooks
|
|
148
|
+
|
|
149
|
+
Playback:
|
|
150
|
+
play <verb> [options] Play a sound (goes through guard)
|
|
151
|
+
demo [--profile <name>] Play all 7 verbs
|
|
152
|
+
preview [profile] Audition all sounds in a profile
|
|
153
|
+
session-start / session-end Chimes
|
|
154
|
+
ambient-start / ambient-resolve / ambient-stop
|
|
155
|
+
|
|
156
|
+
Config:
|
|
157
|
+
mute / unmute Toggle all sounds
|
|
158
|
+
volume [0-100] Get or set volume
|
|
159
|
+
config Print current config
|
|
160
|
+
config set <key> <value> Set a value
|
|
161
|
+
config reset Reset to defaults
|
|
162
|
+
config repo <profile|clear> Per-directory profile override
|
|
163
|
+
disable / enable <verb> Toggle specific verbs
|
|
164
|
+
export [dir] [--profile] Export all sounds as .wav files
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## Fonctionnement
|
|
168
|
+
|
|
169
|
+
Aucun fichier audio. Chaque son est synthétisé en temps réel à partir de formules mathématiques :
|
|
170
|
+
|
|
171
|
+
- **Oscillateurs** — sinusoïdale, carrée, en dents de scie, triangulaire, bruit blanc
|
|
172
|
+
- **Enveloppes ADSR** — attaque, décroissance, sustain, relâchement
|
|
173
|
+
- **Synthèse FM** — modulation de fréquence pour créer des textures
|
|
174
|
+
- **Filtre à état variable** — bruit filtré en bande passante pour créer des effets de "whoosh"
|
|
175
|
+
- **Balayages de fréquence** — interpolation linéaire pour créer du mouvement
|
|
176
|
+
- **Limiteur de volume** — compression "soft-knee", seuil maximum
|
|
177
|
+
|
|
178
|
+
L'ensemble du package est composé d'environ 2 800 lignes de code TypeScript et ne possède aucune dépendance pour la production. Les sons sont générés sous forme de tampons PCM, encodés en format WAV en mémoire, et lus via le lecteur audio natif du système d'exploitation (PowerShell sur Windows, afplay sur macOS, aplay sur Linux).
|
|
179
|
+
|
|
180
|
+
## Prérequis
|
|
181
|
+
|
|
182
|
+
- Node.js 18+
|
|
183
|
+
- Claude Code
|
|
184
|
+
- Sortie audio du système (haut-parleurs ou casque)
|
|
185
|
+
|
|
186
|
+
## Licence
|
|
187
|
+
|
|
188
|
+
[MIT](LICENSE)
|
package/README.hi.md
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.md">English</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/claude-sfx/readme.png" width="400" alt="Claude-SFX">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://www.npmjs.com/package/claude-sfx"><img src="https://img.shields.io/npm/v/claude-sfx" alt="npm version"></a>
|
|
11
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
|
12
|
+
<a href="https://mcp-tool-shop-org.github.io/claude-sfx/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
प्रक्रियात्मक ऑडियो प्रतिक्रिया [क्लाउड कोड] (https://docs.anthropic.com/en/docs/claude-code) के लिए। प्रत्येक टूल कॉल, फ़ाइल संपादन, खोज, गिट पुश और एजेंट डिस्पैच के लिए एक अलग ध्वनि होती है - जो ऑडियो फ़ाइलों के बजाय गणित से उत्पन्न होती है।
|
|
16
|
+
|
|
17
|
+
## शुरुआत
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm install -g claude-sfx
|
|
21
|
+
cd your-project
|
|
22
|
+
claude-sfx init # install hooks into .claude/settings.json
|
|
23
|
+
claude-sfx demo # hear all 7 verbs
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
बस इतना ही। क्लाउड कोड अब काम करते समय ध्वनियाँ बजाएगा।
|
|
27
|
+
|
|
28
|
+
## ऑडियो प्रतिक्रिया क्यों?
|
|
29
|
+
|
|
30
|
+
जब कोई एआई एजेंट आपकी ओर से पढ़ता है, लिखता है, खोजता है और तैनात करता है, तो आप दृश्यता खो देते हैं। आप केवल टेक्स्ट को स्क्रॉल होते हुए देखते हैं। ऑडियो प्रतिक्रिया जागरूकता बहाल करती है:
|
|
31
|
+
|
|
32
|
+
- **पहुंच** - टर्मिनल को देखने के बिना स्थिति परिवर्तन, त्रुटियों और पूर्णता को सुनें
|
|
33
|
+
- **प्रवाह** - बिना संदर्भ बदले यह जानें कि कोई परीक्षण पास हुआ है या कोई पुश सफल हुआ है
|
|
34
|
+
- **उपस्थिति** - एजेंट एक सहयोगी की तरह महसूस होता है, न कि एक ब्लैक बॉक्स की तरह
|
|
35
|
+
|
|
36
|
+
## 7 क्रियाएँ
|
|
37
|
+
|
|
38
|
+
प्रत्येक क्लाउड कोड क्रिया 7 मुख्य क्रियाओं में से एक से मेल खाती है। संशोधक (स्थिति, दायरा, दिशा) ध्वनि को बदलते हैं लेकिन सामंजस्य को नहीं तोड़ते।
|
|
39
|
+
|
|
40
|
+
| क्रिया | ट्रिगर | ध्वनि |
|
|
41
|
+
| --- | --- | --- |
|
|
42
|
+
| **intake** | `Read`, `WebFetch`, `WebSearch` | हल्की बढ़ती हुई साइन तरंग - कुछ आ रहा है |
|
|
43
|
+
| **transform** | `Edit` | एफएम-टेक्सचर्ड पल्स - पुन: आकार देना |
|
|
44
|
+
| **commit** | `Write`, `NotebookEdit`, `git commit` | तेज स्टैम्प टोन - सील |
|
|
45
|
+
| **navigate** | `Grep`, `Glob` | सोनार पिंग - स्कैनिंग |
|
|
46
|
+
| **execute** | `Bash`, `npm test`, `tsc` | शोर विस्फोट + टोन - यांत्रिक क्रिया |
|
|
47
|
+
| **move** | `mv`, `cp`, सबएजेंट स्पॉन | हवा की सरसराहट - वायु विस्थापन |
|
|
48
|
+
| **sync** | `git push`, `git pull` | नाटकीय सरसराहट + टोनल एंकर |
|
|
49
|
+
|
|
50
|
+
### संशोधक
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
claude-sfx play navigate --status ok # bright ping (octave harmonic)
|
|
54
|
+
claude-sfx play navigate --status err # low detuned ping (dissonance)
|
|
55
|
+
claude-sfx play navigate --status warn # tremolo ping
|
|
56
|
+
claude-sfx play sync --direction up # rising whoosh (push)
|
|
57
|
+
claude-sfx play sync --direction down # falling whoosh (pull)
|
|
58
|
+
claude-sfx play intake --scope remote # longer tail (distance feel)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### स्मार्ट बैश डिटेक्शन
|
|
62
|
+
|
|
63
|
+
हुक हैंडलर सही ध्वनि चुनने के लिए बैश कमांड का निरीक्षण करता है:
|
|
64
|
+
|
|
65
|
+
| बैश कमांड | क्रिया | स्थिति |
|
|
66
|
+
| --- | --- | --- |
|
|
67
|
+
| `git push` | sync (ऊपर) | एग्जिट कोड से |
|
|
68
|
+
| `git pull` | sync (नीचे) | एग्जिट कोड से |
|
|
69
|
+
| `npm test`, `pytest` | निष्पादित करें | एग्जिट कोड से |
|
|
70
|
+
| `tsc`, `npm run build` | निष्पादित करें | एग्जिट कोड से |
|
|
71
|
+
| `mv`, `cp` | स्थानांतरित करें | — |
|
|
72
|
+
| `rm` | स्थानांतरित करें | चेतावनी |
|
|
73
|
+
| सब कुछ और | निष्पादित करें | एग्जिट कोड से |
|
|
74
|
+
|
|
75
|
+
## प्रोफ़ाइल
|
|
76
|
+
|
|
77
|
+
ध्वनि पैलेट जो एक झंडे के साथ पूरे चरित्र को बदलते हैं।
|
|
78
|
+
|
|
79
|
+
| प्रोफ़ाइल | चरित्र |
|
|
80
|
+
| --- | --- |
|
|
81
|
+
| **minimal** (default) | साइन-वेव टोन - सूक्ष्म, पेशेवर, दैनिक उपयोग के लिए |
|
|
82
|
+
| **retro** | स्क्वायर-वेव 8-बिट चीप्स - मजेदार लेकिन नियंत्रित |
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
claude-sfx demo --profile retro # hear retro palette
|
|
86
|
+
claude-sfx preview minimal # audition all sounds + modifiers
|
|
87
|
+
claude-sfx config set profile retro # change default globally
|
|
88
|
+
claude-sfx config repo retro # use retro in current directory only
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### कस्टम प्रोफाइल
|
|
92
|
+
|
|
93
|
+
`profiles/minimal.json` की प्रतिलिपि बनाएँ, संश्लेषण मापदंडों को संपादित करें, और इसे लोड करें:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
claude-sfx play navigate --profile ./my-profile.json
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
JSON में प्रत्येक संख्या सीधे सिंथ इंजन से मेल खाती है - तरंग, आवृत्ति, अवधि, लिफाफा (ADSR), FM गहराई, बैंडविड्थ, गेन।
|
|
100
|
+
|
|
101
|
+
## अनायासता-रोधी
|
|
102
|
+
|
|
103
|
+
यह एक उत्पाद को एक खिलौने से अलग करता है।
|
|
104
|
+
|
|
105
|
+
| विशेषता | व्यवहार |
|
|
106
|
+
| --- | --- |
|
|
107
|
+
| **Debounce** | समान क्रिया 200ms के भीतर → एक ध्वनि |
|
|
108
|
+
| **Rate limit** | प्रति 10-सेकंड विंडो में अधिकतम 8 ध्वनियाँ |
|
|
109
|
+
| **Quiet hours** | निर्धारित घंटों के दौरान सभी ध्वनियाँ बंद |
|
|
110
|
+
| **Mute** | तत्काल टॉगल, सत्र पुनरारंभ पर भी बना रहता है |
|
|
111
|
+
| **Volume** | 0–100 गेन नियंत्रण |
|
|
112
|
+
| **Per-verb disable** | उन विशिष्ट क्रियाओं को बंद करें जिन्हें आप नहीं चाहते हैं |
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
claude-sfx mute # instant silence
|
|
116
|
+
claude-sfx unmute
|
|
117
|
+
claude-sfx volume 40 # quieter
|
|
118
|
+
claude-sfx config set quiet-start 22:00 # quiet after 10pm
|
|
119
|
+
claude-sfx config set quiet-end 07:00 # until 7am
|
|
120
|
+
claude-sfx disable navigate # no more search pings
|
|
121
|
+
claude-sfx enable navigate # bring it back
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## एम्बिएंट (लंबे समय तक चलने वाले ऑपरेशन)
|
|
125
|
+
|
|
126
|
+
उन कमांड के लिए जिन्हें पूरा होने में कुछ समय लगता है (बिल्ड, तैनाती, बड़े परीक्षण सूट):
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
claude-sfx ambient-start # low drone fades in
|
|
130
|
+
# ... operation runs ...
|
|
131
|
+
claude-sfx ambient-resolve # drone stops, resolution stinger plays
|
|
132
|
+
claude-sfx ambient-stop # stop drone silently (no stinger)
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## सत्र ध्वनियाँ
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
claude-sfx session-start # two-note ascending chime (boot)
|
|
139
|
+
claude-sfx session-end # two-note descending chime (closure)
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## सभी कमांड
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
Setup:
|
|
146
|
+
init Install hooks into .claude/settings.json
|
|
147
|
+
uninstall Remove hooks
|
|
148
|
+
|
|
149
|
+
Playback:
|
|
150
|
+
play <verb> [options] Play a sound (goes through guard)
|
|
151
|
+
demo [--profile <name>] Play all 7 verbs
|
|
152
|
+
preview [profile] Audition all sounds in a profile
|
|
153
|
+
session-start / session-end Chimes
|
|
154
|
+
ambient-start / ambient-resolve / ambient-stop
|
|
155
|
+
|
|
156
|
+
Config:
|
|
157
|
+
mute / unmute Toggle all sounds
|
|
158
|
+
volume [0-100] Get or set volume
|
|
159
|
+
config Print current config
|
|
160
|
+
config set <key> <value> Set a value
|
|
161
|
+
config reset Reset to defaults
|
|
162
|
+
config repo <profile|clear> Per-directory profile override
|
|
163
|
+
disable / enable <verb> Toggle specific verbs
|
|
164
|
+
export [dir] [--profile] Export all sounds as .wav files
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## यह कैसे काम करता है
|
|
168
|
+
|
|
169
|
+
कोई भी ऑडियो फ़ाइल नहीं। प्रत्येक ध्वनि रनटाइम पर गणित से उत्पन्न होती है:
|
|
170
|
+
|
|
171
|
+
- **ऑसिलेटर** — साइन, स्क्वायर, सॉटूथ, त्रिकोण, सफेद शोर
|
|
172
|
+
- **एडीएसआर एनवलप** — अटैक, डीके, सस्टेन, रिलीज
|
|
173
|
+
- **एफएम सिंथेसिस** — बनावट के लिए आवृत्ति मॉडुलन
|
|
174
|
+
- **स्टेट-वेरिएबल फिल्टर** — "वूश" ध्वनि के लिए बैंडपास-फिल्टर किया गया शोर
|
|
175
|
+
- **फ्रीक्वेंसी स्वीप** — गति के लिए रैखिक इंटरपोलेशन
|
|
176
|
+
- **लाउडनेस लिमिटर** — सॉफ्ट-नी कंप्रेशन, हार्ड सीलिंग
|
|
177
|
+
|
|
178
|
+
पूरा पैकेज लगभग 2,800 लाइनों का टाइपस्क्रिप्ट कोड है और इसमें कोई भी उत्पादन निर्भरता नहीं है। ध्वनियाँ पीसीएम बफर के रूप में उत्पन्न होती हैं, मेमोरी में WAV में एन्कोड की जाती हैं, और ऑपरेटिंग सिस्टम के मूल ऑडियो प्लेयर के माध्यम से चलाई जाती हैं (विंडोज पर पॉवरशेल, macOS पर एफ्प्ले, लिनक्स पर एप्ले)।
|
|
179
|
+
|
|
180
|
+
## आवश्यकताएं:
|
|
181
|
+
|
|
182
|
+
- Node.js 18+
|
|
183
|
+
- क्लाउड कोड
|
|
184
|
+
- सिस्टम ऑडियो आउटपुट (स्पीकर या हेडफ़ोन)
|
|
185
|
+
|
|
186
|
+
## लाइसेंस:
|
|
187
|
+
|
|
188
|
+
[एमआईटी](LICENSE)
|