open-agents-ai 0.46.0 → 0.48.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/README.md +69 -0
- package/dist/index.js +1275 -261
- package/dist/scripts/autoresearch-prepare.py +71 -1
- package/dist/scripts/autoresearch-train.py +31 -0
- package/package.json +6 -2
package/README.md
CHANGED
|
@@ -39,6 +39,8 @@ An autonomous multi-turn tool-calling agent that reads your code, makes changes,
|
|
|
39
39
|
- **Dream Mode** — creative idle exploration modeled after real sleep architecture (NREM→REM cycles)
|
|
40
40
|
- **Autoresearch Swarm** — 5-agent GPU experiment loop during REM sleep: Researcher, Monitor, Evaluator, Critic, Flow Maintainer autonomously run ML training experiments, keep improvements, discard regressions
|
|
41
41
|
- **Live Listen** — bidirectional voice communication with real-time Whisper transcription
|
|
42
|
+
- **Live Voice Session** — `/listen` with `/voice` enabled spawns a cloudflared tunnel with a real-time WebSocket audio endpoint. A floating presence UI shows live transcription, connected users, and audio visualization. Echo cancellation prevents TTS feedback loops
|
|
43
|
+
- **Telegram Voice** — `/voice` enabled via Telegram forwards TTS audio as voice messages alongside text responses. Incoming voice messages are auto-transcribed and handled as text
|
|
42
44
|
- **Neural TTS** — hear what the agent is doing via GLaDOS or Overwatch ONNX voices, with personality-driven expressiveness
|
|
43
45
|
- **Personality Core** — SAC framework-based style control (concise/balanced/verbose/pedagogical) that shapes agent response depth, voice expressiveness, and system prompt behavior
|
|
44
46
|
- **Human expert speed ratio** — real-time `Exp: Nx` gauge comparing agent speed to a leading human expert, calibrated across 47 tool baselines
|
|
@@ -333,6 +335,12 @@ Memory flows bidirectionally: the swarm reads all 5 keys at startup (Phase 0) an
|
|
|
333
335
|
|
|
334
336
|
The Monitor agent can be "detached" between experiment rounds by the Flow Maintainer. When detached, the monitor receives a sub-task (e.g., "analyze GPU memory patterns from last 3 runs") instead of its standard watch prompt. This lets the swarm use idle monitoring capacity for useful analysis work.
|
|
335
337
|
|
|
338
|
+
#### Dependency Management
|
|
339
|
+
|
|
340
|
+
The autoresearch tool uses [`uv`](https://docs.astral.sh/uv/) for zero-setup Python environment management. Running `autoresearch(action="setup")` creates a `pyproject.toml` with all dependencies (torch, kernels, pyarrow, rustbpe, tiktoken, etc.) and runs `uv sync` to create a `.venv` automatically.
|
|
341
|
+
|
|
342
|
+
If the Python scripts are invoked directly (without `uv run`), they self-bootstrap: detect missing packages, create a local `.venv`, install dependencies (including CUDA 12.8 torch), and re-exec with the venv's Python. This handles cases where the agent calls `python3 prepare.py` instead of `uv run prepare.py`.
|
|
343
|
+
|
|
336
344
|
If no GPU is detected, the REM stage falls back to the standard multi-agent creative exploration (Visionary + Pragmatist + Cross-Pollinator + Synthesizer).
|
|
337
345
|
|
|
338
346
|
## Blessed Mode — Infinite Warm Loop
|
|
@@ -386,6 +394,23 @@ Connect the agent to a Telegram bot. Each incoming message spawns a dedicated su
|
|
|
386
394
|
|
|
387
395
|
The bot token and admin ID are persisted to project settings, so you only need to set them once. After that, bare `/telegram` toggles the bridge on and off like a service watchdog.
|
|
388
396
|
|
|
397
|
+
### Admin Slash Command Passthrough
|
|
398
|
+
|
|
399
|
+
When the admin sends a `/command` in a private DM, it's routed directly through the terminal's command handler — the same code path as typing the command in the TUI. This means you can control the agent from your phone:
|
|
400
|
+
|
|
401
|
+
```
|
|
402
|
+
/model qwen3.5:122b → switch model
|
|
403
|
+
/voice → toggle TTS
|
|
404
|
+
/dream → enter dream mode
|
|
405
|
+
/listen → toggle voice input
|
|
406
|
+
/stats → show session metrics
|
|
407
|
+
/config → show current config
|
|
408
|
+
/bless → toggle blessed mode
|
|
409
|
+
/telegram status → check bridge status
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
The command output is captured, ANSI-stripped, and sent back as a Telegram message. Skill invocations (e.g., `/ralph`, `/eval-agent`) are queued as tasks.
|
|
413
|
+
|
|
389
414
|
### Sub-Agent Architecture
|
|
390
415
|
|
|
391
416
|
Each Telegram message spawns an independent `AgenticRunner` sub-agent. Sub-agent tool calls, status updates, and streaming tokens appear in the terminal waterfall view with `✈ @username` prefixes — so you can watch all Telegram conversations happening alongside your main work.
|
|
@@ -982,6 +1007,50 @@ Voice output adapts to the active personality style — the same tool call sound
|
|
|
982
1007
|
|
|
983
1008
|
Task completion, tool failures, and all TTS announcements follow the same personality tier. Set the style with `/style verbose` and the voice output becomes conversational rather than robotic.
|
|
984
1009
|
|
|
1010
|
+
### Live Voice Session
|
|
1011
|
+
|
|
1012
|
+
When both `/voice` and `/listen` are enabled, the system spawns a **live voice session** — a real-time bidirectional audio endpoint exposed through a cloudflared tunnel:
|
|
1013
|
+
|
|
1014
|
+
```bash
|
|
1015
|
+
/voice # Enable TTS
|
|
1016
|
+
/listen # Starts mic + spawns voice session
|
|
1017
|
+
```
|
|
1018
|
+
|
|
1019
|
+
What happens:
|
|
1020
|
+
1. A local HTTP + WebSocket server starts on a random port
|
|
1021
|
+
2. `cloudflared tunnel --url` exposes it publicly with a `*.trycloudflare.com` URL
|
|
1022
|
+
3. The terminal shows a `☁` cloud icon with live session runtime
|
|
1023
|
+
4. Visiting the URL shows a **floating presence** UI that:
|
|
1024
|
+
- Undulates with the model's TTS audio output
|
|
1025
|
+
- Captures your microphone (with echo cancellation)
|
|
1026
|
+
- Shows live transcription for both sides
|
|
1027
|
+
- Displays connected users
|
|
1028
|
+
|
|
1029
|
+
**Echo cancellation**: The server mutes ASR input while TTS is playing, preventing the model from hearing its own voice.
|
|
1030
|
+
|
|
1031
|
+
**Terminal waterfall**: The cloud session sits in the normal TUI waterfall alongside other activity, showing connected users and session runtime.
|
|
1032
|
+
|
|
1033
|
+
```
|
|
1034
|
+
☁ Live Voice Session
|
|
1035
|
+
⎿ URL: https://abc-xyz.trycloudflare.com
|
|
1036
|
+
⎿ Bidirectional PCM audio + live transcription
|
|
1037
|
+
⎿ → web-user connected
|
|
1038
|
+
⎿ ☁ [user] hello, what are you working on?
|
|
1039
|
+
⎿ ☁ [agent] I'm analyzing the codebase structure...
|
|
1040
|
+
```
|
|
1041
|
+
|
|
1042
|
+
Stop with `/listen stop` or `/listen off`.
|
|
1043
|
+
|
|
1044
|
+
### Telegram Voice Messages
|
|
1045
|
+
|
|
1046
|
+
When `/voice` is enabled and the Telegram bridge is active:
|
|
1047
|
+
- **Outgoing**: Agent responses are synthesized to audio via TTS and sent as Telegram voice messages (OGG/Opus) alongside the text response
|
|
1048
|
+
- **Incoming**: Voice messages sent to the bot are auto-transcribed via Whisper and handled as text — no need for the agent to explicitly call `transcribe_file`
|
|
1049
|
+
|
|
1050
|
+
### Auto-Install Dependencies
|
|
1051
|
+
|
|
1052
|
+
Cloudflared is automatically installed at startup alongside other dependencies (moondream, tesseract, transcribe-cli). The install is non-blocking and runs in the background.
|
|
1053
|
+
|
|
985
1054
|
## Personality Core — SAC Framework Style Control
|
|
986
1055
|
|
|
987
1056
|
The personality system controls how the agent communicates — from silent operator to teacher mode. It's based on the **SAC framework** (arXiv:2506.20993) which models personality along five behavioral intensity dimensions rather than binary trait toggles.
|