widdx 1.4.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.
- widdx-1.4.0/.widdx/hooks.json +38 -0
- widdx-1.4.0/.widdx/mcp.json +39 -0
- widdx-1.4.0/.widdx/skills/code-review.md +13 -0
- widdx-1.4.0/.widdx/skills/tdd-workflow.md +11 -0
- widdx-1.4.0/CHANGELOG.md +863 -0
- widdx-1.4.0/LICENSE +21 -0
- widdx-1.4.0/MANIFEST.in +13 -0
- widdx-1.4.0/PKG-INFO +28 -0
- widdx-1.4.0/README.md +362 -0
- widdx-1.4.0/pyproject.toml +124 -0
- widdx-1.4.0/requirements.txt +11 -0
- widdx-1.4.0/setup.cfg +4 -0
- widdx-1.4.0/tests/test_agent_handoff.py +174 -0
- widdx-1.4.0/tests/test_agent_isolation.py +316 -0
- widdx-1.4.0/tests/test_bootstrap.py +74 -0
- widdx-1.4.0/tests/test_hooks.py +1133 -0
- widdx-1.4.0/tests/test_integration.py +394 -0
- widdx-1.4.0/tests/test_keyword_classifier.py +81 -0
- widdx-1.4.0/tests/test_mcp.py +1419 -0
- widdx-1.4.0/tests/test_permissions.py +146 -0
- widdx-1.4.0/tests/test_preflight.py +79 -0
- widdx-1.4.0/tests/test_project_memory.py +283 -0
- widdx-1.4.0/tests/test_repair_memory.py +500 -0
- widdx-1.4.0/tests/test_router.py +254 -0
- widdx-1.4.0/tests/test_scheduler.py +423 -0
- widdx-1.4.0/tests/test_self_learning.py +97 -0
- widdx-1.4.0/tests/test_skills.py +468 -0
- widdx-1.4.0/tests/test_tool_schema.py +161 -0
- widdx-1.4.0/tests/test_tools_execution.py +214 -0
- widdx-1.4.0/tests/test_ui_arabic.py +198 -0
- widdx-1.4.0/tests/test_ui_boot.py +57 -0
- widdx-1.4.0/widdx/__init__.py +6 -0
- widdx-1.4.0/widdx/__main__.py +5 -0
- widdx-1.4.0/widdx/agent_factory/__init__.py +482 -0
- widdx-1.4.0/widdx/agent_factory/runner.py +150 -0
- widdx-1.4.0/widdx/agent_factory/spec.py +106 -0
- widdx-1.4.0/widdx/agents/__init__.py +4 -0
- widdx-1.4.0/widdx/agents/architect.py +70 -0
- widdx-1.4.0/widdx/agents/backend.py +50 -0
- widdx-1.4.0/widdx/agents/code_reviewer.py +43 -0
- widdx-1.4.0/widdx/agents/data_engineer.py +42 -0
- widdx-1.4.0/widdx/agents/database_architect.py +48 -0
- widdx-1.4.0/widdx/agents/devops.py +60 -0
- widdx-1.4.0/widdx/agents/frontend.py +58 -0
- widdx-1.4.0/widdx/agents/fullstack.py +45 -0
- widdx-1.4.0/widdx/agents/laravel.py +86 -0
- widdx-1.4.0/widdx/agents/qa.py +58 -0
- widdx-1.4.0/widdx/agents/registry.py +127 -0
- widdx-1.4.0/widdx/agents/security.py +39 -0
- widdx-1.4.0/widdx/agents/systems_architect.py +50 -0
- widdx-1.4.0/widdx/bootstrap/__init__.py +352 -0
- widdx-1.4.0/widdx/cli.py +214 -0
- widdx-1.4.0/widdx/config.py +44 -0
- widdx-1.4.0/widdx/evolution.py +99 -0
- widdx-1.4.0/widdx/git_ops.py +74 -0
- widdx-1.4.0/widdx/hooks/__init__.py +247 -0
- widdx-1.4.0/widdx/hooks/events.py +19 -0
- widdx-1.4.0/widdx/hooks/handlers.py +278 -0
- widdx-1.4.0/widdx/hooks/lint_check.py +71 -0
- widdx-1.4.0/widdx/hooks/security_check.py +70 -0
- widdx-1.4.0/widdx/hooks/session_log.py +70 -0
- widdx-1.4.0/widdx/indexer.py +162 -0
- widdx-1.4.0/widdx/mcp/__init__.py +398 -0
- widdx-1.4.0/widdx/mcp/builtin.py +344 -0
- widdx-1.4.0/widdx/mcp/client.py +509 -0
- widdx-1.4.0/widdx/mcp/config.py +107 -0
- widdx-1.4.0/widdx/memory.py +712 -0
- widdx-1.4.0/widdx/orchestrator.py +170 -0
- widdx-1.4.0/widdx/permissions.py +256 -0
- widdx-1.4.0/widdx/pipeline.py +920 -0
- widdx-1.4.0/widdx/preflight.py +146 -0
- widdx-1.4.0/widdx/project_planner.py +1193 -0
- widdx-1.4.0/widdx/project_state.py +122 -0
- widdx-1.4.0/widdx/repair_memory.py +278 -0
- widdx-1.4.0/widdx/repl/__init__.py +595 -0
- widdx-1.4.0/widdx/repl/commands.py +1041 -0
- widdx-1.4.0/widdx/repl/context.py +124 -0
- widdx-1.4.0/widdx/router/__init__.py +418 -0
- widdx-1.4.0/widdx/router/pricing.py +46 -0
- widdx-1.4.0/widdx/router/streaming.py +135 -0
- widdx-1.4.0/widdx/router/tools_api.py +142 -0
- widdx-1.4.0/widdx/scaffolder.py +739 -0
- widdx-1.4.0/widdx/scheduler.py +232 -0
- widdx-1.4.0/widdx/self_learning.py +185 -0
- widdx-1.4.0/widdx/skills/__init__.py +237 -0
- widdx-1.4.0/widdx/skills/loader.py +84 -0
- widdx-1.4.0/widdx/tool_loop/__init__.py +383 -0
- widdx-1.4.0/widdx/tool_loop/display.py +269 -0
- widdx-1.4.0/widdx/tool_loop/system_prompt.py +160 -0
- widdx-1.4.0/widdx/tool_loop/tools.py +426 -0
- widdx-1.4.0/widdx/tools/__init__.py +1 -0
- widdx-1.4.0/widdx/tools/file_ops.py +151 -0
- widdx-1.4.0/widdx/tools/search.py +50 -0
- widdx-1.4.0/widdx/tools/shell.py +179 -0
- widdx-1.4.0/widdx/tools/web.py +179 -0
- widdx-1.4.0/widdx/ui/__init__.py +80 -0
- widdx-1.4.0/widdx/ui/arabic.py +206 -0
- widdx-1.4.0/widdx/ui/boot.py +120 -0
- widdx-1.4.0/widdx/ui/chat.py +35 -0
- widdx-1.4.0/widdx/ui/drawing.py +275 -0
- widdx-1.4.0/widdx/ui/professional.py +393 -0
- widdx-1.4.0/widdx/ui/prompt.py +235 -0
- widdx-1.4.0/widdx/ui/theme.py +73 -0
- widdx-1.4.0/widdx/ui/views.py +128 -0
- widdx-1.4.0/widdx/ui/widgets/__init__.py +18 -0
- widdx-1.4.0/widdx/ui/widgets/progress_bar.py +121 -0
- widdx-1.4.0/widdx/ui/widgets/status_bar.py +79 -0
- widdx-1.4.0/widdx/ui/widgets/task_dashboard.py +119 -0
- widdx-1.4.0/widdx/ui/widgets/toast_notifications.py +125 -0
- widdx-1.4.0/widdx/verifier/__init__.py +676 -0
- widdx-1.4.0/widdx.egg-info/PKG-INFO +28 -0
- widdx-1.4.0/widdx.egg-info/SOURCES.txt +114 -0
- widdx-1.4.0/widdx.egg-info/dependency_links.txt +1 -0
- widdx-1.4.0/widdx.egg-info/entry_points.txt +2 -0
- widdx-1.4.0/widdx.egg-info/requires.txt +13 -0
- widdx-1.4.0/widdx.egg-info/top_level.txt +1 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hooks": {
|
|
3
|
+
"SessionStart": [
|
|
4
|
+
{
|
|
5
|
+
"type": "command",
|
|
6
|
+
"command": "python \"$WIDDX_PROJECT_DIR\"/hooks/session_log.py --event SessionStart"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"PreToolUse": [
|
|
10
|
+
{
|
|
11
|
+
"matcher": "Bash",
|
|
12
|
+
"hooks": [
|
|
13
|
+
{
|
|
14
|
+
"type": "command",
|
|
15
|
+
"command": "python \"$WIDDX_PROJECT_DIR\"/hooks/security_check.py"
|
|
16
|
+
}
|
|
17
|
+
]
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
"PostToolUse": [
|
|
21
|
+
{
|
|
22
|
+
"matcher": "Edit|Write",
|
|
23
|
+
"hooks": [
|
|
24
|
+
{
|
|
25
|
+
"type": "command",
|
|
26
|
+
"command": "python \"$WIDDX_PROJECT_DIR\"/hooks/lint_check.py"
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"TaskCompleted": [
|
|
32
|
+
{
|
|
33
|
+
"type": "command",
|
|
34
|
+
"command": "python \"$WIDDX_PROJECT_DIR\"/hooks/session_log.py --event TaskCompleted"
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "خوادم MCP خارجية — أزل _disabled لتفعيل أي خادم.",
|
|
3
|
+
"_builtins": "خوادم project-info و utility تُحمَّل تلقائياً بدون إعدادات.",
|
|
4
|
+
|
|
5
|
+
"mcpServers": {
|
|
6
|
+
"filesystem": {
|
|
7
|
+
"command": "npx",
|
|
8
|
+
"args": ["-y", "@anthropic/mcp-server-filesystem", "."],
|
|
9
|
+
"_note": "يتيح الوصول لنظام الملفات"
|
|
10
|
+
},
|
|
11
|
+
|
|
12
|
+
"brave-search": {
|
|
13
|
+
"command": "npx",
|
|
14
|
+
"args": ["-y", "@anthropic/mcp-server-brave-search"],
|
|
15
|
+
"env": {
|
|
16
|
+
"BRAVE_API_KEY": "${BRAVE_API_KEY}"
|
|
17
|
+
},
|
|
18
|
+
"_disabled": true,
|
|
19
|
+
"_note": "يتطلب BRAVE_API_KEY للبحث في الويب"
|
|
20
|
+
},
|
|
21
|
+
|
|
22
|
+
"github": {
|
|
23
|
+
"command": "npx",
|
|
24
|
+
"args": ["-y", "@anthropic/mcp-server-github"],
|
|
25
|
+
"env": {
|
|
26
|
+
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
|
|
27
|
+
},
|
|
28
|
+
"_disabled": true,
|
|
29
|
+
"_note": "يتطلب GITHUB_TOKEN للوصول لـ GitHub API"
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
"fetch": {
|
|
33
|
+
"command": "npx",
|
|
34
|
+
"args": ["-y", "@anthropic/mcp-server-fetch"],
|
|
35
|
+
"_disabled": true,
|
|
36
|
+
"_note": "جلب ومعالجة محتوى الويب"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: code-review
|
|
3
|
+
description: Systematic code review checklist
|
|
4
|
+
auto_invoke: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
When reviewing code, check:
|
|
8
|
+
1. Correctness — does it do what it claims?
|
|
9
|
+
2. Edge cases — null, empty, overflow, concurrent access
|
|
10
|
+
3. Security — injection, auth, secrets in code
|
|
11
|
+
4. Performance — N+1 queries, unnecessary loops
|
|
12
|
+
5. Readability — clear names, no magic numbers
|
|
13
|
+
6. Tests — are there tests? do they cover the important paths?
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tdd-workflow
|
|
3
|
+
description: تطبيق TDD — اكتب الاختبار أولاً ثم الكود
|
|
4
|
+
auto_invoke: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
عند تنفيذ أي مهمة برمجية:
|
|
8
|
+
1. اكتب الاختبار أولاً (test_*.py)
|
|
9
|
+
2. تأكد أنه يفشل (red)
|
|
10
|
+
3. اكتب أقل كود ممكن لإنجاحه (green)
|
|
11
|
+
4. أعد الهيكلة (refactor)
|