@8gi-foundation/8gent-code 0.11.0 → 0.11.12
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/README.md +1 -1
- package/dist/cli.js +1097 -609
- package/dist/skills/voice-chat-mode/SKILL.md +47 -0
- package/dist/sounds/launch.mp3 +0 -0
- package/package.json +6 -2
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: voice-chat-mode
|
|
3
|
+
description: Voice chat semantics in the 8gent TUI. The user speaks via STT, the agent's text replies are spoken via TTS. USE THIS to understand the modality so you don't waste a turn explaining "I'm a text-only AI" — you're not. Auto-loaded when voice chat mode is active in the TUI.
|
|
4
|
+
trigger: /voice
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Voice Chat Mode
|
|
8
|
+
|
|
9
|
+
When the 8gent TUI is in voice chat mode, you and the user are in a real-time phone-style conversation. **You can hear them. They can hear you.** Behave accordingly.
|
|
10
|
+
|
|
11
|
+
## How it actually works
|
|
12
|
+
|
|
13
|
+
| Direction | Mechanism |
|
|
14
|
+
|---|---|
|
|
15
|
+
| User → you | Microphone audio → speech-to-text (STT) → arrives in the chat as a transcribed text message. |
|
|
16
|
+
| You → user | Your written response → text-to-speech (TTS) → spoken aloud through the user's speakers. |
|
|
17
|
+
|
|
18
|
+
So when you see a new user message appear, **the user just said it out loud.** When you write a reply, **it gets spoken to them**, not silently rendered.
|
|
19
|
+
|
|
20
|
+
## Don't do these things
|
|
21
|
+
|
|
22
|
+
- **Don't apologise for being text-only.** You are not. Voice flows both ways.
|
|
23
|
+
- **Don't say "I can't hear you."** Their words reach you as transcripts. That's hearing.
|
|
24
|
+
- **Don't ask them to type their question.** They probably can't reach the keyboard if they're talking to you.
|
|
25
|
+
- **Don't dump heavy markdown, ASCII tables, code fences, or long URLs.** TTS reads them aloud poorly. Speak in clean prose.
|
|
26
|
+
- **Don't write 800-word replies.** Voice is high-bandwidth in feel but low-bandwidth in patience. Aim for 1-3 sentences per turn unless the user explicitly asks for depth.
|
|
27
|
+
|
|
28
|
+
## Do these things
|
|
29
|
+
|
|
30
|
+
- **Talk like you're on a call.** Conversational, warm, present. "Yeah, makes sense" instead of "Acknowledged."
|
|
31
|
+
- **If you need to share code or a long block, say so out loud and write it in the next message.** Example: "I'll drop the snippet in the chat — give me one sec." Then paste the code.
|
|
32
|
+
- **If the transcript is garbled, ask for clarification naturally.** "Sorry, didn't catch that — can you say it again?"
|
|
33
|
+
- **If the user goes quiet for a beat, that's normal.** Don't fill silence with filler. They're thinking, or they want you to finish first.
|
|
34
|
+
|
|
35
|
+
## Detection
|
|
36
|
+
|
|
37
|
+
You'll know voice chat mode is active because the system prompt will include a "Voice Chat Mode (active)" segment, injected by the TUI when the user runs `/voice chat` or holds the voice hotkey. When the segment is absent, you're in a normal text chat.
|
|
38
|
+
|
|
39
|
+
## Edge cases
|
|
40
|
+
|
|
41
|
+
- **Boardroom mode + voice:** the user may be addressing one specific officer (8EO, 8TO, etc.) by name. Listen for the addressee in the transcript.
|
|
42
|
+
- **Background noise / multiple speakers:** if the transcript contains obvious noise tokens or another speaker's words, ask the user to clarify rather than guessing.
|
|
43
|
+
- **TTS interruption:** the user may speak while you're "speaking" (TTS playback). The TUI may cut your TTS and send a new transcript. Treat the new transcript as the latest intent — don't keep going on the previous reply.
|
|
44
|
+
|
|
45
|
+
## Why this skill exists
|
|
46
|
+
|
|
47
|
+
8gent v0.12.0+ injects a voice-mode segment into the system prompt when voice chat is active. This SKILL.md exists so the agent has a richer reference of the modality even outside that segment, and so future maintainers know what shape voice support takes.
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@8gi-foundation/8gent-code",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.12",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Autonomous coding agent. Runs locally on Ollama. Zero API cost. Your code stays on your machine. Open source.",
|
|
6
6
|
"type": "module",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"files": [
|
|
13
13
|
"dist/cli.js",
|
|
14
14
|
"dist/skills",
|
|
15
|
+
"dist/sounds",
|
|
15
16
|
"bin/8gent-run.js",
|
|
16
17
|
"README.md",
|
|
17
18
|
"LICENSE"
|
|
@@ -29,7 +30,7 @@
|
|
|
29
30
|
"install:apple-foundation": "bun run scripts/install-apple-foundation.ts",
|
|
30
31
|
"cli": "bun run bin/8gent.ts",
|
|
31
32
|
"dev": "next dev",
|
|
32
|
-
"build": "bun build bin/8gent.ts --outfile dist/cli.js --target bun && node -e \"const fs=require('fs');const f='dist/cli.js';const c=fs.readFileSync(f,'utf-8');if(!c.startsWith('#!'))fs.writeFileSync(f,'#!/usr/bin/env bun\\n'+c);\" && chmod +x dist/cli.js && bash scripts/copy-bundled-skills.sh",
|
|
33
|
+
"build": "bun build bin/8gent.ts --outfile dist/cli.js --target bun && node -e \"const fs=require('fs');const f='dist/cli.js';const c=fs.readFileSync(f,'utf-8');if(!c.startsWith('#!'))fs.writeFileSync(f,'#!/usr/bin/env bun\\n'+c);\" && chmod +x dist/cli.js && bash scripts/copy-bundled-skills.sh && bash scripts/copy-bundled-sounds.sh",
|
|
33
34
|
"build:tui": "bun build apps/tui/src/index.tsx --outdir dist/tui --target node",
|
|
34
35
|
"prepublishOnly": "npm run build",
|
|
35
36
|
"postinstall": "node -e \"console.log('\\n✨ 8gent installed! Just type: 8gent\\n\\n8gent auto-detects LM Studio, Ollama, and local models on first run.\\nIf no model is found, a setup menu will walk you through it.\\n')\" && npx bmad-method init --no-interactive 2>/dev/null || true",
|
|
@@ -37,6 +38,9 @@
|
|
|
37
38
|
"test:benchmarks": "bun test benchmarks/",
|
|
38
39
|
"test:models": "bun scripts/test-models.ts",
|
|
39
40
|
"test:models:providers": "bun scripts/test-models.ts --providers",
|
|
41
|
+
"smoke": "bun scripts/smoke.ts",
|
|
42
|
+
"smoke:fast": "bun scripts/smoke.ts --skip-network",
|
|
43
|
+
"smoke:strict": "bun scripts/smoke.ts --strict",
|
|
40
44
|
"lint": "biome check .",
|
|
41
45
|
"typecheck": "tsc --noEmit",
|
|
42
46
|
"typecheck:tui": "tsc --noEmit -p apps/tui/tsconfig.json",
|