skydeckai-code 0.1.23__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.
- aidd/__init__.py +11 -0
- aidd/cli.py +141 -0
- aidd/server.py +54 -0
- aidd/tools/__init__.py +155 -0
- aidd/tools/base.py +18 -0
- aidd/tools/code_analysis.py +703 -0
- aidd/tools/code_execution.py +321 -0
- aidd/tools/directory_tools.py +289 -0
- aidd/tools/file_tools.py +784 -0
- aidd/tools/get_active_apps_tool.py +455 -0
- aidd/tools/get_available_windows_tool.py +395 -0
- aidd/tools/git_tools.py +687 -0
- aidd/tools/image_tools.py +127 -0
- aidd/tools/path_tools.py +86 -0
- aidd/tools/screenshot_tool.py +1029 -0
- aidd/tools/state.py +47 -0
- aidd/tools/system_tools.py +190 -0
- skydeckai_code-0.1.23.dist-info/METADATA +628 -0
- skydeckai_code-0.1.23.dist-info/RECORD +22 -0
- skydeckai_code-0.1.23.dist-info/WHEEL +4 -0
- skydeckai_code-0.1.23.dist-info/entry_points.txt +3 -0
- skydeckai_code-0.1.23.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,628 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: skydeckai-code
|
3
|
+
Version: 0.1.23
|
4
|
+
Summary: This MCP server provides a set of tools that support AI-driven Development workflows.
|
5
|
+
Project-URL: Homepage, https://github.com/skydeckai/skydeckai-code
|
6
|
+
Project-URL: Repository, https://github.com/skydeckai/skydeckai-code
|
7
|
+
Project-URL: Documentation, https://github.com/skydeckai/skydeckai-code/blob/main/README.md
|
8
|
+
Author-email: "SkyDeck.ai" <support@skydeck.ai>
|
9
|
+
License: Apache 2.0
|
10
|
+
License-File: LICENSE
|
11
|
+
Keywords: ai,aidd,code,code-analysis,development,mcp
|
12
|
+
Requires-Python: >=3.11
|
13
|
+
Requires-Dist: gitpython>=3.1.44
|
14
|
+
Requires-Dist: mcp>=1.6.0
|
15
|
+
Requires-Dist: mss>=10.0.0
|
16
|
+
Requires-Dist: pillow>=11.1.0
|
17
|
+
Requires-Dist: psutil>=7.0.0
|
18
|
+
Requires-Dist: pygetwindow>=0.0.9
|
19
|
+
Requires-Dist: pyobjc-framework-quartz>=11.0
|
20
|
+
Requires-Dist: tree-sitter-c-sharp>=0.23.1
|
21
|
+
Requires-Dist: tree-sitter-cpp>=0.23.4
|
22
|
+
Requires-Dist: tree-sitter-go>=0.23.4
|
23
|
+
Requires-Dist: tree-sitter-java>=0.23.5
|
24
|
+
Requires-Dist: tree-sitter-javascript>=0.23.1
|
25
|
+
Requires-Dist: tree-sitter-kotlin>=1.1.0
|
26
|
+
Requires-Dist: tree-sitter-php>=0.23.11
|
27
|
+
Requires-Dist: tree-sitter-python>=0.23.6
|
28
|
+
Requires-Dist: tree-sitter-ruby>=0.23.1
|
29
|
+
Requires-Dist: tree-sitter-rust==0.23.2
|
30
|
+
Requires-Dist: tree-sitter-typescript>=0.23.2
|
31
|
+
Requires-Dist: tree-sitter>=0.24.0
|
32
|
+
Description-Content-Type: text/markdown
|
33
|
+
|
34
|
+
# SkyDeckAI Code
|
35
|
+
|
36
|
+
An MCP server that provides a comprehensive set of tools for AI-driven development workflows. Features include file system operations, code analysis using tree-sitter for multiple programming languages, Git operations, code execution, and system information retrieval. Designed to enhance AI's capability to assist in software development tasks.
|
37
|
+
|
38
|
+
# Formerly Known As MCP-Server-AIDD
|
39
|
+
|
40
|
+
This mcp server was formerly known as `mcp-server-aidd`. It was renamed to `skydeckai-code` to credit the team at [SkyDeck.ai](https://skydeck.ai) with creating this application along with [East Agile](https://eastagile.com). But more importantly we realized that the term AI Driven Development (AIDD) was just not catching on. People did not understand at a glance what it was about. And nor did LLMs. "Code" was far more intuitive. And linguistically intuitive is important in the world of agentic AI.
|
41
|
+
|
42
|
+
<a href="https://glama.ai/mcp/servers/mpixtij6se"><img width="380" height="200" src="https://glama.ai/mcp/servers/mpixtij6se/badge" alt="AiDD Server MCP server" /></a>
|
43
|
+
|
44
|
+
## Installation
|
45
|
+
|
46
|
+
### Installing via Smithery
|
47
|
+
|
48
|
+
To install SkyDeckAI Code for Claude Desktop automatically via [Smithery](https://smithery.ai/server/skydeckai-code):
|
49
|
+
|
50
|
+
```bash
|
51
|
+
npx -y @smithery/cli install skydeckai-code --client claude
|
52
|
+
```
|
53
|
+
|
54
|
+
### Installing via McpGet
|
55
|
+
|
56
|
+
```bash
|
57
|
+
npx @michaellatman/mcp-get@latest install skydeckai-code
|
58
|
+
```
|
59
|
+
|
60
|
+
### Manual Installation
|
61
|
+
|
62
|
+
```bash
|
63
|
+
# Using pip
|
64
|
+
pip install skydeckai-code
|
65
|
+
|
66
|
+
# Using uv
|
67
|
+
uvx skydeckai-code
|
68
|
+
```
|
69
|
+
|
70
|
+
## Claude Desktop Setup
|
71
|
+
|
72
|
+
Add to your `claude_desktop_config.json`:
|
73
|
+
|
74
|
+
```json
|
75
|
+
{
|
76
|
+
"mcpServers": {
|
77
|
+
"skydeckai-code": {
|
78
|
+
"command": "uvx",
|
79
|
+
"args": ["skydeckai-code"]
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}
|
83
|
+
```
|
84
|
+
|
85
|
+
## SkyDeck AI Helper App
|
86
|
+
|
87
|
+
If you're using SkyDeck AI Helper app, you can search for "SkyDeckAI Code" and install it.
|
88
|
+
|
89
|
+

|
90
|
+
|
91
|
+
## Key Features
|
92
|
+
|
93
|
+
- File system operations (read, write, edit, move, delete)
|
94
|
+
- Directory management and traversal
|
95
|
+
- Multi-language code analysis using tree-sitter
|
96
|
+
- Multi-language code execution with safety measures
|
97
|
+
- Git operations (status, diff, commit, branch management)
|
98
|
+
- Security controls with configurable workspace boundaries
|
99
|
+
- Screenshot and screen context tools
|
100
|
+
- Image handling tools
|
101
|
+
|
102
|
+
## Available Tools
|
103
|
+
|
104
|
+
### Basic File Operations
|
105
|
+
|
106
|
+
| Tool | Parameters | Returns |
|
107
|
+
| ------------------- | ----------------------------------- | --------------------------------------------- |
|
108
|
+
| read_file | path: string | File content |
|
109
|
+
| read_multiple_files | paths: string[] | Multiple file contents with headers |
|
110
|
+
| write_file | path: string, content: string | Success confirmation |
|
111
|
+
| move_file | source: string, destination: string | Success confirmation |
|
112
|
+
| delete_file | path: string | Success confirmation |
|
113
|
+
| get_file_info | path: string | File metadata (size, timestamps, permissions) |
|
114
|
+
|
115
|
+
Common usage:
|
116
|
+
|
117
|
+
```bash
|
118
|
+
# Read file
|
119
|
+
skydeckai-code-cli --tool read_file --args '{"path": "src/main.py"}'
|
120
|
+
|
121
|
+
# Write file
|
122
|
+
skydeckai-code-cli --tool write_file --args '{"path": "output.txt", "content": "Hello World"}'
|
123
|
+
|
124
|
+
# Get file info
|
125
|
+
skydeckai-code-cli --tool get_file_info --args '{"path": "src/main.py"}'
|
126
|
+
```
|
127
|
+
|
128
|
+
### Complex File Operations
|
129
|
+
|
130
|
+
#### edit_file
|
131
|
+
|
132
|
+
Pattern-based file editing with preview support:
|
133
|
+
|
134
|
+
```json
|
135
|
+
{
|
136
|
+
"path": "src/main.py",
|
137
|
+
"edits": [
|
138
|
+
{
|
139
|
+
"oldText": "def old_function():",
|
140
|
+
"newText": "def new_function():"
|
141
|
+
}
|
142
|
+
],
|
143
|
+
"dryRun": false,
|
144
|
+
"options": {
|
145
|
+
"preserveIndentation": true,
|
146
|
+
"normalizeWhitespace": true,
|
147
|
+
"partialMatch": true
|
148
|
+
}
|
149
|
+
}
|
150
|
+
```
|
151
|
+
|
152
|
+
Returns: Diff of changes or preview in dry run mode.
|
153
|
+
|
154
|
+
### Directory Operations
|
155
|
+
|
156
|
+
| Tool | Parameters | Returns |
|
157
|
+
| ------------------------ | -------------------------------------------------------- | ------------------------------ |
|
158
|
+
| get_allowed_directory | none | Current allowed directory path |
|
159
|
+
| update_allowed_directory | directory: string (absolute path) | Success confirmation |
|
160
|
+
| list_directory | path: string | Directory contents list |
|
161
|
+
| create_directory | path: string | Success confirmation |
|
162
|
+
| search_files | pattern: string, path?: string, include_hidden?: boolean | Matching files list |
|
163
|
+
|
164
|
+
#### directory_tree
|
165
|
+
|
166
|
+
Generates complete directory structure:
|
167
|
+
|
168
|
+
```json
|
169
|
+
{
|
170
|
+
"path": "src",
|
171
|
+
"include_hidden": false
|
172
|
+
}
|
173
|
+
```
|
174
|
+
|
175
|
+
Returns: JSON tree structure of directory contents.
|
176
|
+
|
177
|
+
Common usage:
|
178
|
+
|
179
|
+
```bash
|
180
|
+
# List directory
|
181
|
+
skydeckai-code-cli --tool list_directory --args '{"path": "."}'
|
182
|
+
|
183
|
+
# Search for Python files
|
184
|
+
skydeckai-code-cli --tool search_files --args '{"pattern": ".py", "path": "src"}'
|
185
|
+
```
|
186
|
+
|
187
|
+
### Git Operations
|
188
|
+
|
189
|
+
| Tool | Parameters | Returns |
|
190
|
+
| ----------------- | -------------------------------------- | -------------------------------- |
|
191
|
+
| git_init | path: string, initial_branch?: string | Repository initialization status |
|
192
|
+
| git_status | repo_path: string | Working directory status |
|
193
|
+
| git_add | repo_path: string, files: string[] | Staging confirmation |
|
194
|
+
| git_reset | repo_path: string | Unstaging confirmation |
|
195
|
+
| git_checkout | repo_path: string, branch_name: string | Branch switch confirmation |
|
196
|
+
| git_create_branch | repo_path: string, branch_name: string | Branch creation confirmation |
|
197
|
+
| git_diff_unstaged | repo_path: string | Unstaged changes diff |
|
198
|
+
| git_diff_staged | repo_path: string | Staged changes diff |
|
199
|
+
| git_show | repo_path: string, commit_hash: string | Details of a specific commit |
|
200
|
+
|
201
|
+
#### Complex Git Operations
|
202
|
+
|
203
|
+
##### git_commit
|
204
|
+
|
205
|
+
```json
|
206
|
+
{
|
207
|
+
"repo_path": ".",
|
208
|
+
"message": "feat: add new feature"
|
209
|
+
}
|
210
|
+
```
|
211
|
+
|
212
|
+
Returns: Commit hash and confirmation.
|
213
|
+
|
214
|
+
##### git_diff
|
215
|
+
|
216
|
+
```json
|
217
|
+
{
|
218
|
+
"repo_path": ".",
|
219
|
+
"target": "main"
|
220
|
+
}
|
221
|
+
```
|
222
|
+
|
223
|
+
Returns: Detailed diff output showing all changes between the current branch and the specified target branch or commit.
|
224
|
+
|
225
|
+
##### git_log
|
226
|
+
|
227
|
+
```json
|
228
|
+
{
|
229
|
+
"repo_path": ".",
|
230
|
+
"max_count": 10
|
231
|
+
}
|
232
|
+
```
|
233
|
+
|
234
|
+
Returns: Array of commit entries with hash, author, date, and message.
|
235
|
+
|
236
|
+
Common usage:
|
237
|
+
|
238
|
+
```bash
|
239
|
+
# Check status
|
240
|
+
skydeckai-code-cli --tool git_status --args '{"repo_path": "."}'
|
241
|
+
|
242
|
+
# Create and switch to new branch
|
243
|
+
skydeckai-code-cli --tool git_create_branch --args '{"repo_path": ".", "branch_name": "feature/new-branch"}'
|
244
|
+
```
|
245
|
+
|
246
|
+
### Code Analysis
|
247
|
+
|
248
|
+
#### codebase_mapper
|
249
|
+
|
250
|
+
Analyzes source code structure:
|
251
|
+
|
252
|
+
```json
|
253
|
+
{
|
254
|
+
"path": "src"
|
255
|
+
}
|
256
|
+
```
|
257
|
+
|
258
|
+
Returns:
|
259
|
+
|
260
|
+
- Classes and their methods
|
261
|
+
- Functions and parameters
|
262
|
+
- Module structure
|
263
|
+
- Code organization statistics
|
264
|
+
- Inheritance relationships
|
265
|
+
|
266
|
+
Supported Languages:
|
267
|
+
|
268
|
+
- Python (.py)
|
269
|
+
- JavaScript (.js, .jsx, .mjs, .cjs)
|
270
|
+
- TypeScript (.ts, .tsx)
|
271
|
+
- Java (.java)
|
272
|
+
- C++ (.cpp, .hpp, .cc)
|
273
|
+
- Ruby (.rb, .rake)
|
274
|
+
- Go (.go)
|
275
|
+
- Rust (.rs)
|
276
|
+
- PHP (.php)
|
277
|
+
- C# (.cs)
|
278
|
+
- Kotlin (.kt, .kts)
|
279
|
+
|
280
|
+
### System Information
|
281
|
+
|
282
|
+
| Tool | Parameters | Returns |
|
283
|
+
| --------------- | ---------- | ---------------------------- |
|
284
|
+
| get_system_info | none | Comprehensive system details |
|
285
|
+
|
286
|
+
Returns:
|
287
|
+
|
288
|
+
```json
|
289
|
+
{
|
290
|
+
"working_directory": "/path/to/project",
|
291
|
+
"system": {
|
292
|
+
"os", "os_version", "architecture", "python_version"
|
293
|
+
},
|
294
|
+
"wifi_network": "MyWiFi",
|
295
|
+
"cpu": {
|
296
|
+
"physical_cores", "logical_cores", "total_cpu_usage"
|
297
|
+
},
|
298
|
+
"memory": { "total", "available", "used_percentage" },
|
299
|
+
"disk": { "total", "free", "used_percentage" },
|
300
|
+
"mac_details": { // Only present on macOS
|
301
|
+
"model": "Mac mini",
|
302
|
+
"chip": "Apple M2",
|
303
|
+
"serial_number": "XXX"
|
304
|
+
}
|
305
|
+
}
|
306
|
+
```
|
307
|
+
|
308
|
+
Provides essential system information in a clean, readable format.
|
309
|
+
|
310
|
+
```bash
|
311
|
+
# Get system information
|
312
|
+
skydeckai-code-cli --tool get_system_info
|
313
|
+
```
|
314
|
+
|
315
|
+
### Screen Context and Image Tools
|
316
|
+
|
317
|
+
#### get_active_apps
|
318
|
+
|
319
|
+
Returns a list of currently active applications on the user's system.
|
320
|
+
|
321
|
+
```json
|
322
|
+
{
|
323
|
+
"with_details": true
|
324
|
+
}
|
325
|
+
```
|
326
|
+
|
327
|
+
**Parameters:**
|
328
|
+
| Parameter | Type | Required | Description |
|
329
|
+
|-----------|---------|----------|---------------------------------------|
|
330
|
+
| with_details | boolean | No | Whether to include additional details about each application (default: false) |
|
331
|
+
|
332
|
+
**Returns:**
|
333
|
+
|
334
|
+
```json
|
335
|
+
{
|
336
|
+
"success": true,
|
337
|
+
"platform": "macos",
|
338
|
+
"app_count": 12,
|
339
|
+
"apps": [
|
340
|
+
{
|
341
|
+
"name": "Firefox",
|
342
|
+
"has_windows": true,
|
343
|
+
"window_count": 3,
|
344
|
+
"visible_windows": [
|
345
|
+
{ "name": "GitHub - Mozilla Firefox", "width": 1200, "height": 800 }
|
346
|
+
]
|
347
|
+
},
|
348
|
+
{
|
349
|
+
"name": "VSCode",
|
350
|
+
"has_windows": true
|
351
|
+
}
|
352
|
+
]
|
353
|
+
}
|
354
|
+
```
|
355
|
+
|
356
|
+
This tool provides valuable context about applications currently running on the user's system, which can help with providing more relevant assistance.
|
357
|
+
|
358
|
+
#### get_available_windows
|
359
|
+
|
360
|
+
Returns detailed information about all available windows currently displayed on the user's screen.
|
361
|
+
|
362
|
+
```json
|
363
|
+
{}
|
364
|
+
```
|
365
|
+
|
366
|
+
**Returns:**
|
367
|
+
|
368
|
+
```json
|
369
|
+
{
|
370
|
+
"success": true,
|
371
|
+
"platform": "macos",
|
372
|
+
"count": 8,
|
373
|
+
"windows": [
|
374
|
+
{
|
375
|
+
"id": 42,
|
376
|
+
"title": "Document.txt - Notepad",
|
377
|
+
"app": "Notepad",
|
378
|
+
"visible": true
|
379
|
+
},
|
380
|
+
{
|
381
|
+
"title": "Terminal",
|
382
|
+
"app": "Terminal",
|
383
|
+
"visible": true,
|
384
|
+
"active": true
|
385
|
+
}
|
386
|
+
]
|
387
|
+
}
|
388
|
+
```
|
389
|
+
|
390
|
+
This tool helps understand what's visible on the user's screen and can be used for context-aware assistance.
|
391
|
+
|
392
|
+
#### capture_screenshot
|
393
|
+
|
394
|
+
Captures a screenshot of the user's screen or a specific window.
|
395
|
+
|
396
|
+
```json
|
397
|
+
{
|
398
|
+
"output_path": "screenshots/capture.png",
|
399
|
+
"capture_mode": {
|
400
|
+
"type": "named_window",
|
401
|
+
"window_name": "Visual Studio Code"
|
402
|
+
}
|
403
|
+
}
|
404
|
+
```
|
405
|
+
|
406
|
+
**Parameters:**
|
407
|
+
| Parameter | Type | Required | Description |
|
408
|
+
|-----------|---------|----------|---------------------------------------|
|
409
|
+
| output_path | string | No | Path where the screenshot should be saved (default: generated path) |
|
410
|
+
| capture_mode | object | No | Specifies what to capture |
|
411
|
+
| capture_mode.type | string | No | Type of screenshot: 'full', 'active_window', or 'named_window' (default: 'full') |
|
412
|
+
| capture_mode.window_name | string | No | Name of window to capture (required when type is 'named_window') |
|
413
|
+
|
414
|
+
**Returns:**
|
415
|
+
|
416
|
+
```json
|
417
|
+
{
|
418
|
+
"success": true,
|
419
|
+
"path": "/path/to/screenshots/capture.png"
|
420
|
+
}
|
421
|
+
```
|
422
|
+
|
423
|
+
This tool captures screenshots for visualization, debugging, or context-aware assistance.
|
424
|
+
|
425
|
+
#### read_image_file
|
426
|
+
|
427
|
+
Reads an image file from the file system and returns its contents as a base64-encoded string.
|
428
|
+
|
429
|
+
```json
|
430
|
+
{
|
431
|
+
"path": "images/logo.png"
|
432
|
+
}
|
433
|
+
```
|
434
|
+
|
435
|
+
**Parameters:**
|
436
|
+
| Parameter | Type | Required | Description |
|
437
|
+
|-----------|---------|----------|---------------------------------------|
|
438
|
+
| path | string | Yes | Path to the image file to read |
|
439
|
+
| max_size | integer | No | Maximum file size in bytes (default: 100MB) |
|
440
|
+
|
441
|
+
**Returns:**
|
442
|
+
Base64-encoded image data that can be displayed or processed.
|
443
|
+
|
444
|
+
This tool supports common image formats like PNG, JPEG, GIF, and WebP, and automatically resizes images for optimal viewing.
|
445
|
+
|
446
|
+
### Code Execution
|
447
|
+
|
448
|
+
#### execute_code
|
449
|
+
|
450
|
+
Executes code in various programming languages with safety measures and restrictions.
|
451
|
+
|
452
|
+
```json
|
453
|
+
{
|
454
|
+
"language": "python",
|
455
|
+
"code": "print('Hello, World!')",
|
456
|
+
"timeout": 5
|
457
|
+
}
|
458
|
+
```
|
459
|
+
|
460
|
+
**Supported Languages:**
|
461
|
+
|
462
|
+
- Python (python3)
|
463
|
+
- JavaScript (Node.js)
|
464
|
+
- Ruby
|
465
|
+
- PHP
|
466
|
+
- Go
|
467
|
+
- Rust
|
468
|
+
|
469
|
+
**Parameters:**
|
470
|
+
| Parameter | Type | Required | Description |
|
471
|
+
|-----------|---------|----------|---------------------------------------|
|
472
|
+
| language | string | Yes | Programming language to use |
|
473
|
+
| code | string | Yes | Code to execute |
|
474
|
+
| timeout | integer | No | Maximum execution time (default: 5s) |
|
475
|
+
|
476
|
+
**Example Usage:**
|
477
|
+
|
478
|
+
```bash
|
479
|
+
# Python example
|
480
|
+
skydeckai-code-cli --tool execute_code --args '{
|
481
|
+
"language": "python",
|
482
|
+
"code": "print(sum(range(10)))"
|
483
|
+
}'
|
484
|
+
|
485
|
+
# JavaScript example
|
486
|
+
skydeckai-code-cli --tool execute_code --args '{
|
487
|
+
"language": "javascript",
|
488
|
+
"code": "console.log(Array.from({length: 5}, (_, i) => i*2))"
|
489
|
+
}'
|
490
|
+
|
491
|
+
# Ruby example
|
492
|
+
skydeckai-code-cli --tool execute_code --args '{
|
493
|
+
"language": "ruby",
|
494
|
+
"code": "puts (1..5).reduce(:+)"
|
495
|
+
}'
|
496
|
+
|
497
|
+
# Go example
|
498
|
+
skydeckai-code-cli --tool execute_code --args '{
|
499
|
+
"language": "go",
|
500
|
+
"code": "fmt.Println(\"Hello, Go!\")"
|
501
|
+
}'
|
502
|
+
```
|
503
|
+
|
504
|
+
**Requirements:**
|
505
|
+
|
506
|
+
- Respective language runtimes must be installed
|
507
|
+
- Commands must be available in system PATH
|
508
|
+
- Proper permissions for temporary file creation
|
509
|
+
|
510
|
+
⚠️ **Security Warning:**
|
511
|
+
This tool executes arbitrary code on your system. Always:
|
512
|
+
|
513
|
+
1. Review code thoroughly before execution
|
514
|
+
2. Understand the code's purpose and expected outcome
|
515
|
+
3. Never execute untrusted code
|
516
|
+
4. Be aware of potential system impacts
|
517
|
+
5. Monitor execution output
|
518
|
+
|
519
|
+
#### execute_shell_script
|
520
|
+
|
521
|
+
Executes shell scripts (bash/sh) with safety measures and restrictions.
|
522
|
+
|
523
|
+
```json
|
524
|
+
{
|
525
|
+
"script": "echo \"Current directory:\" && pwd",
|
526
|
+
"timeout": 300
|
527
|
+
}
|
528
|
+
```
|
529
|
+
|
530
|
+
**Parameters:**
|
531
|
+
| Parameter | Type | Required | Description |
|
532
|
+
|-----------|---------|----------|---------------------------------------|
|
533
|
+
| script | string | Yes | Shell script to execute |
|
534
|
+
| timeout | integer | No | Maximum execution time (default: 300s, max: 600s) |
|
535
|
+
|
536
|
+
**Example Usage:**
|
537
|
+
|
538
|
+
```bash
|
539
|
+
# List directory contents with details
|
540
|
+
skydeckai-code-cli --tool execute_shell_script --args '{
|
541
|
+
"script": "ls -la"
|
542
|
+
}'
|
543
|
+
|
544
|
+
# Find all Python files recursively
|
545
|
+
skydeckai-code-cli --tool execute_shell_script --args '{
|
546
|
+
"script": "find . -name \"*.py\" -type f"
|
547
|
+
}'
|
548
|
+
|
549
|
+
# Complex script with multiple commands
|
550
|
+
skydeckai-code-cli --tool execute_shell_script --args '{
|
551
|
+
"script": "echo \"System Info:\" && uname -a && echo \"\nDisk Usage:\" && df -h"
|
552
|
+
}'
|
553
|
+
```
|
554
|
+
|
555
|
+
**Features:**
|
556
|
+
|
557
|
+
- Uses /bin/sh for maximum compatibility across systems
|
558
|
+
- Executes within the allowed directory
|
559
|
+
- Separate stdout and stderr output
|
560
|
+
- Proper error handling and timeout controls
|
561
|
+
|
562
|
+
⚠️ **Security Warning:**
|
563
|
+
This tool executes arbitrary shell commands on your system. Always:
|
564
|
+
|
565
|
+
1. Review the script thoroughly before execution
|
566
|
+
2. Understand the script's purpose and expected outcome
|
567
|
+
3. Never execute untrusted scripts
|
568
|
+
4. Be aware of potential system impacts
|
569
|
+
5. Monitor execution output
|
570
|
+
|
571
|
+
## Configuration
|
572
|
+
|
573
|
+
Configuration file: `~/.skydeckai_code/config.json`
|
574
|
+
|
575
|
+
```json
|
576
|
+
{
|
577
|
+
"allowed_directory": "/path/to/workspace"
|
578
|
+
}
|
579
|
+
```
|
580
|
+
|
581
|
+
## CLI Usage
|
582
|
+
|
583
|
+
Basic command structure:
|
584
|
+
|
585
|
+
```bash
|
586
|
+
skydeckai-code-cli --tool <tool_name> --args '<json_arguments>'
|
587
|
+
|
588
|
+
# List available tools
|
589
|
+
skydeckai-code-cli --list-tools
|
590
|
+
|
591
|
+
# Enable debug output
|
592
|
+
skydeckai-code-cli --debug --tool <tool_name> --args '<json_arguments>'
|
593
|
+
```
|
594
|
+
|
595
|
+
## Debugging
|
596
|
+
|
597
|
+
Use MCP Inspector for debugging:
|
598
|
+
|
599
|
+
```bash
|
600
|
+
npx @modelcontextprotocol/inspector run
|
601
|
+
```
|
602
|
+
|
603
|
+
## Security
|
604
|
+
|
605
|
+
- Operations restricted to configured allowed directory
|
606
|
+
- Path traversal prevention
|
607
|
+
- File permission preservation
|
608
|
+
- Safe operation handling
|
609
|
+
|
610
|
+
## Upcoming Features
|
611
|
+
|
612
|
+
- GitHub tools:
|
613
|
+
- PR Description Generator
|
614
|
+
- Code Review
|
615
|
+
- Actions Manager
|
616
|
+
- Pivotal Tracker tools:
|
617
|
+
- Story Generator
|
618
|
+
- Story Manager
|
619
|
+
|
620
|
+
## Development Status
|
621
|
+
|
622
|
+
Currently in active development. Features and API may change.
|
623
|
+
|
624
|
+
## License
|
625
|
+
|
626
|
+
Apache License 2.0 - see [LICENSE](LICENSE)
|
627
|
+
|
628
|
+
[](https://www.star-history.com/#skydeckai/skydeckai-code&Date)
|
@@ -0,0 +1,22 @@
|
|
1
|
+
aidd/__init__.py,sha256=c9HBWxWruCxoAqLCJqltylAwz_7xmaK3g8DKViJZs0Q,222
|
2
|
+
aidd/cli.py,sha256=cLtaQJmMBfr7fHkd0dyJqpDrVTIwybL48PotniWGrFM,5031
|
3
|
+
aidd/server.py,sha256=kPRyWeWkMCZjabelC65XTmzZG7yw8htMJKSfnUcKnb0,1575
|
4
|
+
aidd/tools/__init__.py,sha256=Ey6Kvj1_riwKwnS6PN2152QM_qLExZJj4pXtYMiYcS0,4548
|
5
|
+
aidd/tools/base.py,sha256=wHSAaGGYWM8ECmoYd7KEcmjsZRWesNQFf3zMjCKGMcc,380
|
6
|
+
aidd/tools/code_analysis.py,sha256=fDpm2o_If5PsngXzHN2-ezSkPVT0ZxivLuzmHrOAmVU,33188
|
7
|
+
aidd/tools/code_execution.py,sha256=dIPxHBtclsetDZY4jGlSBrw_t-7VlIVrK8mflnZ6c4w,13176
|
8
|
+
aidd/tools/directory_tools.py,sha256=Hxzge_ziYw_FsjYb5yF0R0dHEdvuWRsg7WsdYDG0AUg,12971
|
9
|
+
aidd/tools/file_tools.py,sha256=DP58WQCkNEcWsu4n1MNWLS3ki6CLX9Q4tW_Jy4XzPiw,36995
|
10
|
+
aidd/tools/get_active_apps_tool.py,sha256=BjLF7iXSDgyAmm_gfFgAul2Gn3iX-CNVYHM7Sh4jTAI,19427
|
11
|
+
aidd/tools/get_available_windows_tool.py,sha256=OVIYhItTn9u_DftOr3vPCT-R0DOFvMEEJXA6tD6gqWQ,15952
|
12
|
+
aidd/tools/git_tools.py,sha256=gpjme4REvDYuVhn2iDcgwYvp6C0MnP36NWB6HgCA1YQ,35401
|
13
|
+
aidd/tools/image_tools.py,sha256=wT3EcJAfZWcM0IsXdDfbTNjgFhKZM9nu2wHN6Mk_TTQ,5970
|
14
|
+
aidd/tools/path_tools.py,sha256=RGoOhqP69eHJzM8tEgn_5-GRaR0gp25fd0XZIJ_RnQE,4045
|
15
|
+
aidd/tools/screenshot_tool.py,sha256=peifNcpyDPtodubs7XyzheoUyK2h_e3qXsdM57bEB5U,45906
|
16
|
+
aidd/tools/state.py,sha256=RWSw0Jfsui8FqC0xsI7Ik07tAg35hRwLHa5xGBVbiI4,1493
|
17
|
+
aidd/tools/system_tools.py,sha256=H4_qveKC2HA7SIbi-j4vxA0W4jYh2wfu9A6ni5wkZyA,7249
|
18
|
+
skydeckai_code-0.1.23.dist-info/METADATA,sha256=DpYWSa8FMSBNJDNpI6YTYOgbuM-Xe9Obw2WSkKjzfzE,17406
|
19
|
+
skydeckai_code-0.1.23.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
20
|
+
skydeckai_code-0.1.23.dist-info/entry_points.txt,sha256=cT-IHh3_ioGLk3kwIeqj1X6Li1dnJinX9qKWUl7nOLg,80
|
21
|
+
skydeckai_code-0.1.23.dist-info/licenses/LICENSE,sha256=uHse04vmI6ZjW7TblegFl30X-sDyyF0-QvH8ItPca3c,10865
|
22
|
+
skydeckai_code-0.1.23.dist-info/RECORD,,
|