devduck 0.5.3__tar.gz → 0.6.0__tar.gz
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-0.5.3 → devduck-0.6.0}/PKG-INFO +50 -6
- {devduck-0.5.3 → devduck-0.6.0}/README.md +48 -4
- devduck-0.6.0/devduck/__init__.py +1589 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/_version.py +3 -3
- {devduck-0.5.3 → devduck-0.6.0}/devduck/test_redduck.py +0 -1
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/__init__.py +3 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/agentcore_config.py +1 -1
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/ipc.py +4 -1
- devduck-0.6.0/devduck/tools/state_manager.py +292 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/tcp.py +6 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/tray.py +2 -1
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/websocket.py +7 -1
- {devduck-0.5.3 → devduck-0.6.0}/devduck.egg-info/PKG-INFO +50 -6
- {devduck-0.5.3 → devduck-0.6.0}/devduck.egg-info/SOURCES.txt +2 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck.egg-info/requires.txt +0 -2
- devduck-0.6.0/docs/mac-os-tray.jpg +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/pyproject.toml +1 -1
- devduck-0.5.3/devduck/__init__.py +0 -1173
- {devduck-0.5.3 → devduck-0.6.0}/.github/workflows/agent.yml +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/.gitignore +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/LICENSE +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/MANIFEST.in +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/action.yml +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/agent_runner.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/__main__.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/agentcore_handler.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/_ambient_input.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/_tray_app.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/agentcore_agents.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/agentcore_invoke.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/agentcore_logs.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/ambient.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/create_subagent.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/install_tools.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/mcp_server.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/store_in_kb.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/system_prompt.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck/tools/use_github.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck.egg-info/dependency_links.txt +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck.egg-info/entry_points.txt +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/devduck.egg-info/top_level.txt +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/docs/index.html +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/requirements.txt +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/setup-aws-oidc.sh +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/setup.cfg +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/test.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/tools/__init__.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/tools/fetch_github_tool.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/tools/gist.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/tools/github_tools.py +0 -0
- {devduck-0.5.3 → devduck-0.6.0}/tools/scraper.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: devduck
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.6.0
|
|
4
4
|
Summary: 🦆 Extreme minimalist self-adapting AI agent - one file, self-healing, runtime dependencies
|
|
5
5
|
Author-email: Cagatay Cali <cagataycali@icloud.com>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -42,7 +42,7 @@ Requires-Dist: strands-mcp-server
|
|
|
42
42
|
Requires-Dist: bedrock-agentcore-starter-toolkit
|
|
43
43
|
Requires-Dist: bedrock-agentcore
|
|
44
44
|
Requires-Dist: rumps; sys_platform == "darwin"
|
|
45
|
-
Requires-Dist: strands-mlx; sys_platform == "darwin"
|
|
45
|
+
Requires-Dist: strands-mlx; sys_platform == "darwin"
|
|
46
46
|
Dynamic: license-file
|
|
47
47
|
|
|
48
48
|
# 🦆 DevDuck
|
|
@@ -53,6 +53,17 @@ Dynamic: license-file
|
|
|
53
53
|
|
|
54
54
|
One Python file that adapts to your environment, fixes itself, and expands capabilities at runtime.
|
|
55
55
|
|
|
56
|
+
## 🎬 See It In Action
|
|
57
|
+
|
|
58
|
+
| Feature | What You'll See | Video |
|
|
59
|
+
|---------|----------------|-------|
|
|
60
|
+
| 🔥 **Hot-Reload** | Agent detects code changes and restarts instantly—no manual intervention needed. Edit your agent code or tools while running, save the file, and watch it reload automatically. | [Watch Demo](https://redduck.dev/videos/hot-reload.mp4) |
|
|
61
|
+
| 🌐 **Web UI** | Clean, modern web interface for chatting with DevDuck. Real-time streaming responses, tool execution visibility, and beautiful markdown rendering. | [Watch Demo](https://redduck.dev/videos/web-ui.mp4) |
|
|
62
|
+
| 🛠️ **Dynamic Tool Creation** | Create a new tool by simply saving a `.py` file in the `./tools/` directory. No restart, no configuration—the agent loads it instantly and starts using it. Pure hot-reload magic. | [Watch Demo](https://redduck.dev/videos/dynamic-tool-creation.mp4) |
|
|
63
|
+
| 🌊 **TCP Streaming Server** | Connect from any client (netcat, custom apps, other agents) via TCP. Real-time streaming responses with parallel tool execution. Multi-protocol access to the same agent. | [Watch Demo](https://redduck.dev/videos/tcp.mp4) |
|
|
64
|
+
| 🔌 **IPC & macOS Tray** | Unix socket-based inter-process communication with native macOS menu bar integration. DevDuck runs in your menu bar with quick actions, status indicators, and seamless IPC streaming via `/tmp/devduck_main.sock`. |  |
|
|
65
|
+
| 💬 **Ambient Overlay** | Floating AI input overlay with glassmorphism UI. Real-time IPC streaming from devduck, auto-focus with blinking cursor, and ESC to hide / Enter to send. Perfect for desktop AI interactions. | [Watch Demo](https://redduck.dev/videos/floating-input.mp4) |
|
|
66
|
+
|
|
56
67
|
---
|
|
57
68
|
|
|
58
69
|
## Install & Run
|
|
@@ -67,6 +78,32 @@ One Python file that adapts to your environment, fixes itself, and expands capab
|
|
|
67
78
|
|
|
68
79
|
---
|
|
69
80
|
|
|
81
|
+
## Developer Setup
|
|
82
|
+
|
|
83
|
+
**Clone and develop:**
|
|
84
|
+
```bash
|
|
85
|
+
git clone git@github.com:cagataycali/devduck.git
|
|
86
|
+
cd devduck
|
|
87
|
+
python3.13 -m venv .venv
|
|
88
|
+
source .venv/bin/activate
|
|
89
|
+
.venv/bin/pip3.13 install -e .
|
|
90
|
+
|
|
91
|
+
# Now which devduck points to .venv
|
|
92
|
+
which devduck
|
|
93
|
+
# /path/to/devduck/.venv/bin/devduck
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**Make changes → test instantly:**
|
|
97
|
+
```bash
|
|
98
|
+
# Edit devduck/__init__.py or tools/
|
|
99
|
+
code .
|
|
100
|
+
|
|
101
|
+
# Run immediately (hot-reloads on save)
|
|
102
|
+
devduck
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
70
107
|
## What It Does
|
|
71
108
|
|
|
72
109
|
| Feature | Description | Example |
|
|
@@ -75,7 +112,7 @@ One Python file that adapts to your environment, fixes itself, and expands capab
|
|
|
75
112
|
| 🧠 **Auto-RAG** | Remembers past conversations | "I prefer FastAPI" → later uses FastAPI automatically |
|
|
76
113
|
| 🌊 **Multi-Protocol** | CLI, Python, TCP, WebSocket, MCP, IPC | `devduck "query"` or `nc localhost 9999` |
|
|
77
114
|
| ☁️ **AWS Deploy** | One-command serverless deployment | `agentcore_config(auto_launch=True)` |
|
|
78
|
-
| 🛠️ **
|
|
115
|
+
| 🛠️ **35+ Tools** | Shell, GitHub, file editing, math, UI control | `devduck("create GitHub issue")` |
|
|
79
116
|
| 🎛️ **Flexible Config** | Load only tools you need | `DEVDUCK_TOOLS="strands_tools:shell,editor"` |
|
|
80
117
|
|
|
81
118
|
---
|
|
@@ -87,7 +124,7 @@ graph TB
|
|
|
87
124
|
A[User Input] -->|CLI/TCP/WS/MCP/IPC| B[DevDuck Core]
|
|
88
125
|
B -->|Auto RAG| C[Knowledge Base]
|
|
89
126
|
C -.->|Context Retrieval| B
|
|
90
|
-
B -->|Tool Calls| D[
|
|
127
|
+
B -->|Tool Calls| D[35+ Built-in Tools]
|
|
91
128
|
D --> E[shell/editor/calculator]
|
|
92
129
|
D --> F[GitHub/AgentCore]
|
|
93
130
|
D --> G[TCP/WebSocket/MCP/IPC]
|
|
@@ -161,8 +198,8 @@ devduck
|
|
|
161
198
|
| **Dev** | `shell`, `editor`, `file_read`, `calculator` | Code, test, debug |
|
|
162
199
|
| **GitHub** | `use_github`, `create_subagent` | Issues, PRs, CI/CD automation |
|
|
163
200
|
| **Network** | `tcp`, `websocket`, `mcp_server`, `ipc` | Serve agents over protocols |
|
|
164
|
-
| **AWS** | `agentcore_config`, `agentcore_invoke`, `agentcore_logs` | Deploy to serverless |
|
|
165
|
-
| **AI** | `use_agent`, `retrieve`, `store_in_kb` | Multi-agent, memory |
|
|
201
|
+
| **AWS** | `agentcore_config`, `agentcore_invoke`, `agentcore_logs`, `agentcore_agents` | Deploy to serverless |
|
|
202
|
+
| **AI** | `use_agent`, `retrieve`, `store_in_kb`, `state_manager` | Multi-agent, memory, state |
|
|
166
203
|
| **UI** (macOS) | `tray`, `ambient`, `cursor`, `clipboard` | Desktop automation |
|
|
167
204
|
|
|
168
205
|
<details>
|
|
@@ -178,6 +215,7 @@ devduck
|
|
|
178
215
|
- `create_subagent` - Spawn sub-agents via GitHub Actions
|
|
179
216
|
- `store_in_kb` - Store content in Bedrock Knowledge Base
|
|
180
217
|
- `system_prompt` - Manage agent system prompt
|
|
218
|
+
- `state_manager` - Agent state management with time-travel capabilities
|
|
181
219
|
- `tray` - System tray app control (macOS)
|
|
182
220
|
- `ambient` - Ambient AI input overlay (macOS)
|
|
183
221
|
|
|
@@ -199,6 +237,12 @@ devduck
|
|
|
199
237
|
- `environment` - Environment variable management
|
|
200
238
|
- `mcp_client` - Connect to external MCP servers
|
|
201
239
|
- `retrieve` - Bedrock Knowledge Base retrieval
|
|
240
|
+
- `scraper` - HTML/XML parsing with BeautifulSoup4
|
|
241
|
+
- `fetch_github_tool` - Fetch and load tools from GitHub
|
|
242
|
+
- `gist` - Comprehensive GitHub Gist management
|
|
243
|
+
- `add_comment` - Add comments to GitHub issues/PRs
|
|
244
|
+
- `list_issues` - List GitHub issues
|
|
245
|
+
- `list_pull_requests` - List GitHub pull requests
|
|
202
246
|
|
|
203
247
|
### strands-fun-tools (macOS)
|
|
204
248
|
- `listen` - Background speech transcription with Whisper
|
|
@@ -6,6 +6,17 @@
|
|
|
6
6
|
|
|
7
7
|
One Python file that adapts to your environment, fixes itself, and expands capabilities at runtime.
|
|
8
8
|
|
|
9
|
+
## 🎬 See It In Action
|
|
10
|
+
|
|
11
|
+
| Feature | What You'll See | Video |
|
|
12
|
+
|---------|----------------|-------|
|
|
13
|
+
| 🔥 **Hot-Reload** | Agent detects code changes and restarts instantly—no manual intervention needed. Edit your agent code or tools while running, save the file, and watch it reload automatically. | [Watch Demo](https://redduck.dev/videos/hot-reload.mp4) |
|
|
14
|
+
| 🌐 **Web UI** | Clean, modern web interface for chatting with DevDuck. Real-time streaming responses, tool execution visibility, and beautiful markdown rendering. | [Watch Demo](https://redduck.dev/videos/web-ui.mp4) |
|
|
15
|
+
| 🛠️ **Dynamic Tool Creation** | Create a new tool by simply saving a `.py` file in the `./tools/` directory. No restart, no configuration—the agent loads it instantly and starts using it. Pure hot-reload magic. | [Watch Demo](https://redduck.dev/videos/dynamic-tool-creation.mp4) |
|
|
16
|
+
| 🌊 **TCP Streaming Server** | Connect from any client (netcat, custom apps, other agents) via TCP. Real-time streaming responses with parallel tool execution. Multi-protocol access to the same agent. | [Watch Demo](https://redduck.dev/videos/tcp.mp4) |
|
|
17
|
+
| 🔌 **IPC & macOS Tray** | Unix socket-based inter-process communication with native macOS menu bar integration. DevDuck runs in your menu bar with quick actions, status indicators, and seamless IPC streaming via `/tmp/devduck_main.sock`. |  |
|
|
18
|
+
| 💬 **Ambient Overlay** | Floating AI input overlay with glassmorphism UI. Real-time IPC streaming from devduck, auto-focus with blinking cursor, and ESC to hide / Enter to send. Perfect for desktop AI interactions. | [Watch Demo](https://redduck.dev/videos/floating-input.mp4) |
|
|
19
|
+
|
|
9
20
|
---
|
|
10
21
|
|
|
11
22
|
## Install & Run
|
|
@@ -20,6 +31,32 @@ One Python file that adapts to your environment, fixes itself, and expands capab
|
|
|
20
31
|
|
|
21
32
|
---
|
|
22
33
|
|
|
34
|
+
## Developer Setup
|
|
35
|
+
|
|
36
|
+
**Clone and develop:**
|
|
37
|
+
```bash
|
|
38
|
+
git clone git@github.com:cagataycali/devduck.git
|
|
39
|
+
cd devduck
|
|
40
|
+
python3.13 -m venv .venv
|
|
41
|
+
source .venv/bin/activate
|
|
42
|
+
.venv/bin/pip3.13 install -e .
|
|
43
|
+
|
|
44
|
+
# Now which devduck points to .venv
|
|
45
|
+
which devduck
|
|
46
|
+
# /path/to/devduck/.venv/bin/devduck
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**Make changes → test instantly:**
|
|
50
|
+
```bash
|
|
51
|
+
# Edit devduck/__init__.py or tools/
|
|
52
|
+
code .
|
|
53
|
+
|
|
54
|
+
# Run immediately (hot-reloads on save)
|
|
55
|
+
devduck
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
23
60
|
## What It Does
|
|
24
61
|
|
|
25
62
|
| Feature | Description | Example |
|
|
@@ -28,7 +65,7 @@ One Python file that adapts to your environment, fixes itself, and expands capab
|
|
|
28
65
|
| 🧠 **Auto-RAG** | Remembers past conversations | "I prefer FastAPI" → later uses FastAPI automatically |
|
|
29
66
|
| 🌊 **Multi-Protocol** | CLI, Python, TCP, WebSocket, MCP, IPC | `devduck "query"` or `nc localhost 9999` |
|
|
30
67
|
| ☁️ **AWS Deploy** | One-command serverless deployment | `agentcore_config(auto_launch=True)` |
|
|
31
|
-
| 🛠️ **
|
|
68
|
+
| 🛠️ **35+ Tools** | Shell, GitHub, file editing, math, UI control | `devduck("create GitHub issue")` |
|
|
32
69
|
| 🎛️ **Flexible Config** | Load only tools you need | `DEVDUCK_TOOLS="strands_tools:shell,editor"` |
|
|
33
70
|
|
|
34
71
|
---
|
|
@@ -40,7 +77,7 @@ graph TB
|
|
|
40
77
|
A[User Input] -->|CLI/TCP/WS/MCP/IPC| B[DevDuck Core]
|
|
41
78
|
B -->|Auto RAG| C[Knowledge Base]
|
|
42
79
|
C -.->|Context Retrieval| B
|
|
43
|
-
B -->|Tool Calls| D[
|
|
80
|
+
B -->|Tool Calls| D[35+ Built-in Tools]
|
|
44
81
|
D --> E[shell/editor/calculator]
|
|
45
82
|
D --> F[GitHub/AgentCore]
|
|
46
83
|
D --> G[TCP/WebSocket/MCP/IPC]
|
|
@@ -114,8 +151,8 @@ devduck
|
|
|
114
151
|
| **Dev** | `shell`, `editor`, `file_read`, `calculator` | Code, test, debug |
|
|
115
152
|
| **GitHub** | `use_github`, `create_subagent` | Issues, PRs, CI/CD automation |
|
|
116
153
|
| **Network** | `tcp`, `websocket`, `mcp_server`, `ipc` | Serve agents over protocols |
|
|
117
|
-
| **AWS** | `agentcore_config`, `agentcore_invoke`, `agentcore_logs` | Deploy to serverless |
|
|
118
|
-
| **AI** | `use_agent`, `retrieve`, `store_in_kb` | Multi-agent, memory |
|
|
154
|
+
| **AWS** | `agentcore_config`, `agentcore_invoke`, `agentcore_logs`, `agentcore_agents` | Deploy to serverless |
|
|
155
|
+
| **AI** | `use_agent`, `retrieve`, `store_in_kb`, `state_manager` | Multi-agent, memory, state |
|
|
119
156
|
| **UI** (macOS) | `tray`, `ambient`, `cursor`, `clipboard` | Desktop automation |
|
|
120
157
|
|
|
121
158
|
<details>
|
|
@@ -131,6 +168,7 @@ devduck
|
|
|
131
168
|
- `create_subagent` - Spawn sub-agents via GitHub Actions
|
|
132
169
|
- `store_in_kb` - Store content in Bedrock Knowledge Base
|
|
133
170
|
- `system_prompt` - Manage agent system prompt
|
|
171
|
+
- `state_manager` - Agent state management with time-travel capabilities
|
|
134
172
|
- `tray` - System tray app control (macOS)
|
|
135
173
|
- `ambient` - Ambient AI input overlay (macOS)
|
|
136
174
|
|
|
@@ -152,6 +190,12 @@ devduck
|
|
|
152
190
|
- `environment` - Environment variable management
|
|
153
191
|
- `mcp_client` - Connect to external MCP servers
|
|
154
192
|
- `retrieve` - Bedrock Knowledge Base retrieval
|
|
193
|
+
- `scraper` - HTML/XML parsing with BeautifulSoup4
|
|
194
|
+
- `fetch_github_tool` - Fetch and load tools from GitHub
|
|
195
|
+
- `gist` - Comprehensive GitHub Gist management
|
|
196
|
+
- `add_comment` - Add comments to GitHub issues/PRs
|
|
197
|
+
- `list_issues` - List GitHub issues
|
|
198
|
+
- `list_pull_requests` - List GitHub pull requests
|
|
155
199
|
|
|
156
200
|
### strands-fun-tools (macOS)
|
|
157
201
|
- `listen` - Background speech transcription with Whisper
|