devduck 1.1.4__py3-none-any.whl → 1.1.6__py3-none-any.whl

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.

Potentially problematic release.


This version of devduck might be problematic. Click here for more details.

devduck/_version.py CHANGED
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '1.1.4'
32
- __version_tuple__ = version_tuple = (1, 1, 4)
31
+ __version__ = version = '1.1.6'
32
+ __version_tuple__ = version_tuple = (1, 1, 6)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devduck
3
- Version: 1.1.4
4
- Summary: 🦆 Extreme minimalist self-adapting AI agent - one file, self-healing, runtime dependencies
3
+ Version: 1.1.6
4
+ Summary: 🦆 Self-adapting agent - one file.
5
5
  Author-email: Cagatay Cali <cagataycali@icloud.com>
6
6
  License: Apache-2.0
7
7
  Project-URL: Homepage, https://github.com/cagataycali/devduck
@@ -31,11 +31,8 @@ Requires-Dist: prompt_toolkit
31
31
  Requires-Dist: strands-agents[ollama]
32
32
  Requires-Dist: strands-agents[anthropic]
33
33
  Requires-Dist: strands-agents[openai]
34
- Requires-Dist: strands-agents[bidi-all]; sys_platform == "darwin"
35
34
  Requires-Dist: strands-agents[otel]
36
35
  Requires-Dist: strands-agents-tools
37
- Requires-Dist: strands-fun-tools[all]; sys_platform == "darwin"
38
- Requires-Dist: strands-fun-tools[audio]; sys_platform == "darwin"
39
36
  Requires-Dist: beautifulsoup4
40
37
  Requires-Dist: colorama
41
38
  Requires-Dist: websockets
@@ -45,6 +42,8 @@ Requires-Dist: bedrock-agentcore-starter-toolkit
45
42
  Requires-Dist: bedrock-agentcore
46
43
  Requires-Dist: rumps; sys_platform == "darwin"
47
44
  Requires-Dist: strands-mlx; sys_platform == "darwin"
45
+ Provides-Extra: speech
46
+ Requires-Dist: strands-agents[bidi-all]; extra == "speech"
48
47
  Dynamic: license-file
49
48
 
50
49
  # 🦆 DevDuck
@@ -76,6 +75,9 @@ Learn more: https://duck.nyc
76
75
  # Install & run
77
76
  pipx install devduck && devduck
78
77
 
78
+ # With speech-to-speech capabilities (optional)
79
+ pipx install "devduck[speech]" && devduck
80
+
79
81
  # One-shot query
80
82
  devduck "create a REST API with FastAPI"
81
83
 
@@ -85,6 +87,9 @@ python -c "import devduck; devduck('analyze this code')"
85
87
 
86
88
  **Requirements:** Python 3.10-3.13, AWS credentials (or Ollama/Anthropic/GitHub/MLX)
87
89
 
90
+ **Optional extras:**
91
+ - `devduck[speech]` - Real-time speech-to-speech conversations (Nova Sonic, OpenAI Realtime, Gemini Live)
92
+
88
93
  ---
89
94
 
90
95
  ## Core Capabilities
@@ -100,6 +105,7 @@ python -c "import devduck; devduck('analyze this code')"
100
105
  | 💾 **State Time-Travel** | Save/restore agent state | `state_manager(action="export")` |
101
106
  | 📝 **Self-Improvement** | Updates own system prompt | `system_prompt(action="add_context", ...)` |
102
107
  | ☁️ **AWS Deploy** | One-command serverless | `agentcore_config(auto_launch=True)` |
108
+ | 🎤 **Speech-to-Speech** | Real-time voice conversations | `pip install devduck[speech]` |
103
109
 
104
110
  ---
105
111
 
@@ -110,7 +116,13 @@ git clone git@github.com:cagataycali/devduck.git
110
116
  cd devduck
111
117
  python3.13 -m venv .venv
112
118
  source .venv/bin/activate
119
+
120
+ # Basic install
113
121
  .venv/bin/pip3.13 install -e .
122
+
123
+ # With speech capabilities
124
+ .venv/bin/pip3.13 install -e ".[speech]"
125
+
114
126
  devduck
115
127
  ```
116
128
 
@@ -281,6 +293,67 @@ devduck
281
293
 
282
294
  ---
283
295
 
296
+ ## Speech-to-Speech (Optional)
297
+
298
+ **Install speech capabilities:**
299
+ ```bash
300
+ pip install "devduck[speech]"
301
+ ```
302
+
303
+ **Real-time voice conversations** with multiple providers:
304
+
305
+ ```python
306
+ # Start speech session with Nova Sonic (AWS Bedrock)
307
+ speech_to_speech(action="start", provider="novasonic")
308
+
309
+ # Start with OpenAI Realtime API
310
+ speech_to_speech(action="start", provider="openai")
311
+
312
+ # Start with Gemini Live
313
+ speech_to_speech(action="start", provider="gemini_live")
314
+
315
+ # Custom voice and settings
316
+ speech_to_speech(
317
+ action="start",
318
+ provider="novasonic",
319
+ model_settings={
320
+ "provider_config": {"audio": {"voice": "matthew"}},
321
+ "client_config": {"region": "us-east-1"}
322
+ }
323
+ )
324
+
325
+ # Stop session
326
+ speech_to_speech(action="stop", session_id="speech_20250126_140000")
327
+
328
+ # Check status
329
+ speech_to_speech(action="status")
330
+
331
+ # List conversation histories
332
+ speech_to_speech(action="list_history")
333
+
334
+ # List available audio devices
335
+ speech_to_speech(action="list_audio_devices")
336
+ ```
337
+
338
+ **Supported Providers:**
339
+ - **Nova Sonic (AWS Bedrock):** 11 voices (English, French, Italian, German, Spanish)
340
+ - **OpenAI Realtime API:** GPT-4o Realtime models
341
+ - **Gemini Live:** Native audio streaming
342
+
343
+ **Environment Variables:**
344
+ - `OPENAI_API_KEY` - For OpenAI Realtime
345
+ - `GOOGLE_API_KEY` or `GEMINI_API_KEY` - For Gemini Live
346
+ - AWS credentials - For Nova Sonic (boto3 default credential chain)
347
+
348
+ **Features:**
349
+ - Background execution (parent agent stays responsive)
350
+ - Tool inheritance from parent agent
351
+ - Conversation history saved automatically
352
+ - Natural interruption with VAD
353
+ - Custom audio device selection
354
+
355
+ ---
356
+
284
357
  ## MCP Integration
285
358
 
286
359
  ### As MCP Server (Expose DevDuck)
@@ -447,9 +520,9 @@ create_subagent(action="list", repository="owner/repo", workflow_id="agent.yml")
447
520
  ---
448
521
 
449
522
  <details>
450
- <summary><strong>📋 All Built-in Tools (38 total)</strong></summary>
523
+ <summary><strong>📋 All Built-in Tools (39 total)</strong></summary>
451
524
 
452
- ### DevDuck Core (17 tools)
525
+ ### DevDuck Core (18 tools)
453
526
  - `system_prompt` - Update agent's system prompt (GitHub sync support)
454
527
  - `store_in_kb` - Store content in Bedrock Knowledge Base
455
528
  - `state_manager` - Save/restore agent state (time-travel)
@@ -468,6 +541,7 @@ create_subagent(action="list", repository="owner/repo", workflow_id="agent.yml")
468
541
  - `agentcore_agents` - List/manage agent runtimes
469
542
  - `manage_tools` - Runtime tool add/remove/reload
470
543
  - `view_logs` - View/search/clear DevDuck logs
544
+ - `speech_to_speech` - Real-time speech-to-speech conversations (optional - install with `pip install devduck[speech]`)
471
545
 
472
546
  ### Strands Tools (13 tools)
473
547
  - `shell` - Interactive shell with PTY support
@@ -574,7 +648,7 @@ devduck
574
648
  | `LITELLM_API_KEY` | - | LiteLLM API key (auto-detected) |
575
649
  | `LLAMAAPI_API_KEY` | - | LlamaAPI key (auto-detected) |
576
650
  | **Tools** | | |
577
- | `DEVDUCK_TOOLS` | 38 tools | Format: `package1:tool1,tool2;package2:tool3` |
651
+ | `DEVDUCK_TOOLS` | 39 tools | Format: `package1:tool1,tool2;package2:tool3` |
578
652
  | `DEVDUCK_LOAD_TOOLS_FROM_DIR` | `false` | Auto-load from `./tools/` directory |
579
653
  | **Memory** | | |
580
654
  | `DEVDUCK_KNOWLEDGE_BASE_ID` | - | Bedrock KB ID for auto-RAG |
@@ -590,6 +664,8 @@ devduck
590
664
  | `DEVDUCK_ENABLE_WS` | `true` | Enable WebSocket server |
591
665
  | `DEVDUCK_ENABLE_MCP` | `true` | Enable MCP server |
592
666
  | `DEVDUCK_ENABLE_IPC` | `true` | Enable IPC server |
667
+ | **Speech** | | |
668
+ | `BIDI_MODEL_ID` | Provider default | Override bidi model (e.g., `amazon.nova-2-sonic-v1:0`) |
593
669
  | **Context** | | |
594
670
  | `DEVDUCK_LOG_LINE_COUNT` | `50` | Recent log lines in context |
595
671
  | `DEVDUCK_LAST_MESSAGE_COUNT` | `200` | Recent messages in context |
@@ -632,6 +708,15 @@ export DEVDUCK_LOG_LINE_COUNT=20
632
708
  export DEVDUCK_LAST_MESSAGE_COUNT=50
633
709
  ```
634
710
 
711
+ **Speech dependencies not found:**
712
+ ```bash
713
+ # Install speech extras
714
+ pip install "devduck[speech]"
715
+
716
+ # Or with pipx
717
+ pipx install "devduck[speech]"
718
+ ```
719
+
635
720
  **Ambient overlay not starting:**
636
721
  ```bash
637
722
  # Make sure tkinter is installed
@@ -1,6 +1,6 @@
1
1
  devduck/__init__.py,sha256=CVG9qHRG-63ZNI6nLGFyAqvv4m9mgSB46s5XAVM9HOM,75958
2
2
  devduck/__main__.py,sha256=aeF2RR4k7lzSR2X1QKV9XQPCKhtsH0JYUv2etBBqmL0,145
3
- devduck/_version.py,sha256=u-IJdVvNgkPmB4EypXx7iHPUTbdrT6j_v7FWXSVMszE,704
3
+ devduck/_version.py,sha256=Ss7ZrKeNFejVcP8xqi-vmh6yUDDLhmA6FdF5e4QxSZA,704
4
4
  devduck/agentcore_handler.py,sha256=0DKJTTjoH9P8a70G0f5dOIIwy6bjqaN46voAWaSOpDY,2221
5
5
  devduck/test_redduck.py,sha256=ILtKKMuoyVfmhnibmbojpbOsqbcKooZv4j9qtE2LWdw,1750
6
6
  devduck/tools/__init__.py,sha256=GtqhtyTeWz3Glwj7MJ1ncKIQf_0KFu33AmtBOeIm3XY,1176
@@ -25,9 +25,9 @@ devduck/tools/tcp.py,sha256=w2m_Jf6vZ4NYu0AwgZd7C7eKs4No2EVHZ2WYIl_Bt0A,22017
25
25
  devduck/tools/tray.py,sha256=FgVhUtLdsdv5_ERK-RyAIpDE8Zb0IfoqhHQdwMxrHUQ,7547
26
26
  devduck/tools/use_github.py,sha256=nr3JSGk48mKUobpgW__2gu6lFyUj93a1XRs3I6vH8W4,13682
27
27
  devduck/tools/websocket.py,sha256=A8bqgdDZs8hcf2HctkJzQOzMvb5mXUC7YZ-xqkOyn94,16959
28
- devduck-1.1.4.dist-info/licenses/LICENSE,sha256=UANcoWwfVeuM9597WUkjEQbzqIUH0bJoE9Tpwgj_LvU,11345
29
- devduck-1.1.4.dist-info/METADATA,sha256=xnf0MtlwifjEpTP9Ghcy5Xsx6uTJzX52sDsso8UvsNw,21885
30
- devduck-1.1.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
31
- devduck-1.1.4.dist-info/entry_points.txt,sha256=PJ8gvdi2MnKEK8yCwcmZDeLQ-lx94EV_jp4-v8AKuTA,58
32
- devduck-1.1.4.dist-info/top_level.txt,sha256=ySXWlVronp8xHYfQ_Hdfr463e0EnbWuqyuxs94EU7yk,8
33
- devduck-1.1.4.dist-info/RECORD,,
28
+ devduck-1.1.6.dist-info/licenses/LICENSE,sha256=UANcoWwfVeuM9597WUkjEQbzqIUH0bJoE9Tpwgj_LvU,11345
29
+ devduck-1.1.6.dist-info/METADATA,sha256=qM-9zZVITXW36-Bz6O3GkV9LLiI_XRj_agZve8ZIujA,24090
30
+ devduck-1.1.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
31
+ devduck-1.1.6.dist-info/entry_points.txt,sha256=PJ8gvdi2MnKEK8yCwcmZDeLQ-lx94EV_jp4-v8AKuTA,58
32
+ devduck-1.1.6.dist-info/top_level.txt,sha256=ySXWlVronp8xHYfQ_Hdfr463e0EnbWuqyuxs94EU7yk,8
33
+ devduck-1.1.6.dist-info/RECORD,,