dulus 3.14.3__tar.gz → 3.14.4__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.
- {dulus-3.14.3/dulus.egg-info → dulus-3.14.4}/PKG-INFO +2 -1
- {dulus-3.14.3 → dulus-3.14.4/dulus.egg-info}/PKG-INFO +2 -1
- {dulus-3.14.3 → dulus-3.14.4}/dulus.egg-info/requires.txt +1 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus.py +21 -2
- {dulus-3.14.3 → dulus-3.14.4}/pyproject.toml +6 -7
- {dulus-3.14.3 → dulus-3.14.4}/LICENSE +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/MANIFEST.in +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/README.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/agent.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/algolia_search.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/analytics.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/agents_bridge.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/compressor.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/context.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/githook.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/marketplace.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/mempalace_bridge.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/paths.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/personas.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/plugins.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/server.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/backend/tasks.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/banners/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/banners/banner_rotator.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/banners/banners_dulus_ai.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/batch_api.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/checkpoint/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/checkpoint/hooks.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/checkpoint/store.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/checkpoint/types.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/__main__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/ansi.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/assets/ascii/dulus_logo.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/assets/ascii/eagle.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/assets/ascii/terminal_art.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/banners.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/demo.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/effects.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/effort_slider.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/progress.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/py.typed +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/spinners.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cli_animations/status.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/clipboard_utils.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/cloudsave.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/common.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/compaction.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/config.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/context.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/active_persona.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/marketplace.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/personas.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/plugins/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/plugins/composio/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/plugins/composio/composio_plugin/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/plugins/composio/composio_plugin/session_manager.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/plugins/composio/composio_plugin/tool_generator.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/plugins/composio/plugin.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/plugins/composio/plugin_tool.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/data/tasks.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/display_blocks.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/API.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/BRAND_GUIDE.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/CHANGELOG.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/CONTRIBUTING.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/DEPLOYMENT.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/FAQ.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/GETTING_STARTED.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_AR.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_EN.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_ES.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_FR.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_JA.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_KO.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_PT.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_RU.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/README_ZH.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/SECURITY.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/api.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/architecture.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/azure-speech-template.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/dashboard/index.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/divider.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/dulus-bird.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/generate.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/index.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/news.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/nvidia-models.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/particle-playground.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/personas/index.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/poetry-banner.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/preview.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/python-console.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/auto-adapter.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/dulus-os.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/hero.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/lookback_two_windows.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/pyc_heap.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/pyc_receipts.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/pyc_trap.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/roundtable.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/task-board.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/readme/webchat.png +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-agents.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-brainstorm.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-bridges.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-features.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-freetier.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-memory.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-models.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-perms.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-plugins.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-quickstart.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/sec-ssj.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/spinners.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/split-pane.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/terminal-boot.svg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/docs/termux-edge.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus.egg-info/SOURCES.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus.egg-info/dependency_links.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus.egg-info/entry_points.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus.egg-info/top_level.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_account.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_bar_client.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_gui.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_mcp/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_mcp/client.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_mcp/commands.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_mcp/config.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_mcp/hub.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_mcp/tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_mcp/types.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_quick_menu.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/add_dir_manager.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/afk_mode.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/approval_runtime.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/background_tasks.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/clipboard_utils.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/diff_visualizer.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/export_import.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/hook_engine.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/isolate.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/notification_manager.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/session_fork.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/shell_mode.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/todo_visualizer.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/tree_ls.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/wire_events.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/dulus_tools/yolo_mode.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/file_filter.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/fs_compass.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/governance.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/agent_bridge.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/chat_widget.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/main_window.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/personas.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/sandbox_server.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/session_utils.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/settings_dialog.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/sidebar.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/tasks_view.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/themes.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/gui/tool_panel.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/input.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/license_manager.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/lookback.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/audit.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/consolidator.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/context.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/mempalace_bridge.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/offload.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/palace.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/scan.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/adaptation_guides.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/askuserquestion_after_numbered_list.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/background_jobs_no_extra_timers.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/cleverness_over_resources.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/corporate_tls_breaks_curl_cffi.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/hardened_rules.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/investigator_workflow_heuristic.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/native_code_over_sketchy_plugins.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/no_personal_info_in_code.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/searches_include_modified_date.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/tmux_send_keys_power_patterns.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/token_optimization_technique.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/tool_chaining_capability.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/insights/webbridge_evaluate_first_pattern.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/seeds/short_memory.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/sessions.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/store.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/types.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/memory/vector_search.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/model_params.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/multi_agent/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/multi_agent/subagent.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/multi_agent/tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/paste_placeholders.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/personality_config.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/plugin/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/plugin/autoadapter.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/plugin/loader.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/plugin/recommend.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/plugin/store.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/plugin/types.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/profiles.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/providers.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/pyconsole.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/README.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/assets/index-DE51D6wI.css +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/assets/index-DMCCNE9Y.js +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/index.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/wallpaper-default.jpg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/wallpapers/default.jpeg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/wallpapers/light.jpeg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/wallpapers/nature.jpeg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/dist/wallpapers/tech.jpeg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox/info.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/sandbox_bootstrap.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/setup.cfg +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/builtin.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/LICENSE-obsidian-skills +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/README.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/defuddle/SKILL.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/json-canvas/SKILL.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/json-canvas/references/EXAMPLES.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/obsidian-bases/SKILL.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/obsidian-bases/references/FUNCTIONS_REFERENCE.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/obsidian-cli/SKILL.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/obsidian-markdown/SKILL.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/obsidian-markdown/references/CALLOUTS.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/obsidian-markdown/references/EMBEDS.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/obsidian-markdown/references/PROPERTIES.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/README.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/SKILL.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/addresses.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/advancedbackgroundchecks.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/beenverified.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/clustal.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/clustrmaps.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/cyberbackgroundchecks.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/familytreenow.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/fastpeoplesearch.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/intelius.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/mylife.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/nuwber.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/peekyou.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/peoplefinders.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/radaris.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/rehold.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/searchpeoplefree.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/socialcatfish.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/spokeo.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/thatsthem.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/truepeoplesearch.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/usphonebook.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/brokers/whitepages.json +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/legal/ccpa.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/legal/drop.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/legal/gdpr.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/methods.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/site-playbooks.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/references/state-machine.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/autopilot.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/badbool.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/brokers.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/cdp.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/config.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/crypto.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/dossier.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/email_modes.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/emailer.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/ledger.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/legal.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/paths.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/pdd.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/registry.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/report.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/scan.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/storage.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/tiers.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/scripts/vectors.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/templates/consent/authorization.md +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/templates/emails/ccpa-authorized-agent.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/templates/emails/ccpa-deletion.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/templates/emails/ccpa-indirect-deletion.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/templates/emails/gdpr-erasure.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/bundled/unbroker/templates/emails/generic-optout.txt +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/clawhub.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/executor.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/loader.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skill/tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/skills.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/soul.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/spinner.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/steer_input.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/subagent.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/task/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/task/store.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/task/tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/task/types.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_afk_yolo.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_approval_runtime.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_background_task_tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_background_tasks.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_chatgpt_oauth.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_checkpoint.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_cli_animations_integration.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_clipboard_utils.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_compaction.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_composio_tool_generator.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_diff_view.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_diff_visualization.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_display_blocks.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_dulus_account.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_export_import.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_gold_memory_preload.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_grok_usage.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_hook_engine.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_injection_fix.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_json_protocol.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_license.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_lookback_cache.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_lookback_compact.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_mcp.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_mcp_algolia.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_memory.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_memory_home_resolution.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_notification_manager.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_plugin.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_profile_isolation.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_profile_plugin_scope.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_provider_errors.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_session_fork.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_shell_detection.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_shell_mode.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_skills.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_skillssh_algolia.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_steer_input.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_subagent.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_task.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_telegram_buffer.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_think_tool.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_todo_tool.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_todo_visualization.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_tool_registry.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_tree_ls.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_voice.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_webbridge_tabs.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tests/test_wire_events.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tmux_tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/token_budget.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tool_registry.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tools_background.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tools_think.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/tools_todo.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/ui/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/ui/input.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/ui/render.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/updater.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/voice/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/voice/audio_utils.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/voice/keyterms.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/voice/recorder.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/voice/stt.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/voice/tts.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/voice/wake_word.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webbridge/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webbridge/core.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webbridge/tools.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webchat.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webchat_server.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webchat_ui/__init__.py +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webchat_ui/app.js +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webchat_ui/index.html +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/webchat_ui/style.css +0 -0
- {dulus-3.14.3 → dulus-3.14.4}/welcome.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: dulus
|
|
3
|
-
Version: 3.14.
|
|
3
|
+
Version: 3.14.4
|
|
4
4
|
Summary: Provider-independent agent runtime for the terminal — cloud and local models, real tools, MCP, plugins, memory, sub-agents, and Dulus OS.
|
|
5
5
|
Author-email: KevRojo <dev@dulus.ai>
|
|
6
6
|
Maintainer-email: KevRojo <dev@dulus.ai>
|
|
@@ -66,6 +66,7 @@ Requires-Dist: uv>=0.4.0
|
|
|
66
66
|
Requires-Dist: sse-starlette>=2.0.0
|
|
67
67
|
Requires-Dist: starlette>=0.38.0
|
|
68
68
|
Requires-Dist: posthog>=3.0.0
|
|
69
|
+
Requires-Dist: mempalace>=3.3.4
|
|
69
70
|
Requires-Dist: sounddevice
|
|
70
71
|
Requires-Dist: elevenlabs>=1.0.0
|
|
71
72
|
Requires-Dist: playwright>=1.40.0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: dulus
|
|
3
|
-
Version: 3.14.
|
|
3
|
+
Version: 3.14.4
|
|
4
4
|
Summary: Provider-independent agent runtime for the terminal — cloud and local models, real tools, MCP, plugins, memory, sub-agents, and Dulus OS.
|
|
5
5
|
Author-email: KevRojo <dev@dulus.ai>
|
|
6
6
|
Maintainer-email: KevRojo <dev@dulus.ai>
|
|
@@ -66,6 +66,7 @@ Requires-Dist: uv>=0.4.0
|
|
|
66
66
|
Requires-Dist: sse-starlette>=2.0.0
|
|
67
67
|
Requires-Dist: starlette>=0.38.0
|
|
68
68
|
Requires-Dist: posthog>=3.0.0
|
|
69
|
+
Requires-Dist: mempalace>=3.3.4
|
|
69
70
|
Requires-Dist: sounddevice
|
|
70
71
|
Requires-Dist: elevenlabs>=1.0.0
|
|
71
72
|
Requires-Dist: playwright>=1.40.0
|
|
@@ -396,7 +396,7 @@ try:
|
|
|
396
396
|
from importlib.metadata import version as _pkg_version
|
|
397
397
|
VERSION = _pkg_version("dulus")
|
|
398
398
|
except Exception:
|
|
399
|
-
VERSION = "3.14.
|
|
399
|
+
VERSION = "3.14.4" # dev fallback — keep in sync with pyproject.toml
|
|
400
400
|
|
|
401
401
|
# ── Machine-readable protocol output (`--output json`) ─────────────────────
|
|
402
402
|
# Dulus is increasingly run as a child process by another agent runtime (an
|
|
@@ -12997,7 +12997,26 @@ def repl(config: dict, initial_prompt: str | None = None):
|
|
|
12997
12997
|
from mempalace.searcher import search_memories as _mp_search
|
|
12998
12998
|
from mempalace.config import MempalaceConfig as _MPCfg
|
|
12999
12999
|
_palace = _MPCfg().palace_path
|
|
13000
|
-
|
|
13000
|
+
# Hard timeout guard: chromadb can hang indefinitely on a
|
|
13001
|
+
# large/corrupt palace or a bad backend version, and a plain
|
|
13002
|
+
# try/except does NOT rescue a hang — it only catches raised
|
|
13003
|
+
# exceptions. Run the search on a worker thread and abandon it
|
|
13004
|
+
# if it doesn't answer fast, so a stuck palace can never freeze
|
|
13005
|
+
# the whole REPL. On timeout we fall through to local memory.
|
|
13006
|
+
# NOTE: deliberately NOT a `with` block — the executor's
|
|
13007
|
+
# __exit__ calls shutdown(wait=True), which would re-block the
|
|
13008
|
+
# turn until the stuck worker finishes, defeating the timeout.
|
|
13009
|
+
import concurrent.futures as _cf
|
|
13010
|
+
_MP_TIMEOUT_S = float(config.get("mem_palace_timeout", 3.0))
|
|
13011
|
+
_mp_ex = _cf.ThreadPoolExecutor(max_workers=1)
|
|
13012
|
+
_fut = _mp_ex.submit(_mp_search, _q, _palace, n_results=3)
|
|
13013
|
+
try:
|
|
13014
|
+
_res = _fut.result(timeout=_MP_TIMEOUT_S)
|
|
13015
|
+
except _cf.TimeoutError:
|
|
13016
|
+
_res = None
|
|
13017
|
+
_mp_log(f"mempalace search timed out after {_MP_TIMEOUT_S:.1f}s → falling back to local", "yellow")
|
|
13018
|
+
finally:
|
|
13019
|
+
_mp_ex.shutdown(wait=False)
|
|
13001
13020
|
for _hit in (_res or {}).get("results", []):
|
|
13002
13021
|
_meta = _hit.get("metadata") or {}
|
|
13003
13022
|
_src = _meta.get("source_file") or _meta.get("name") or "palace"
|
|
@@ -10,7 +10,7 @@ build-backend = "setuptools.build_meta"
|
|
|
10
10
|
|
|
11
11
|
[project]
|
|
12
12
|
name = "dulus"
|
|
13
|
-
version = "3.14.
|
|
13
|
+
version = "3.14.4"
|
|
14
14
|
description = "Provider-independent agent runtime for the terminal — cloud and local models, real tools, MCP, plugins, memory, sub-agents, and Dulus OS."
|
|
15
15
|
readme = "README.md"
|
|
16
16
|
requires-python = ">=3.10"
|
|
@@ -116,12 +116,11 @@ dependencies = [
|
|
|
116
116
|
# `pip install dulus[full]`, so shipping it here is the only way metrics
|
|
117
117
|
# actually reach us from real installs.
|
|
118
118
|
"posthog>=3.0.0",
|
|
119
|
-
# Memory Palace — per-turn semantic memory injection.
|
|
120
|
-
#
|
|
121
|
-
#
|
|
122
|
-
#
|
|
123
|
-
|
|
124
|
-
# NOTE: do NOT move this back into core — it froze dulus in 3.14.2.
|
|
119
|
+
# Memory Palace — per-turn semantic memory injection. Shipped in core on
|
|
120
|
+
# purpose: it's a first-class Dulus feature (mem_palace is ON by default)
|
|
121
|
+
# and the chromadb wheels resolve fine on regular targets. The per-turn
|
|
122
|
+
# search is now guarded so a slow/stuck backend can't freeze the REPL.
|
|
123
|
+
"mempalace>=3.3.4",
|
|
125
124
|
# Voice I/O — mic capture + cloud TTS. On by default so `/voice` works out
|
|
126
125
|
# of the box; silent no-op on headless boxes with no audio device.
|
|
127
126
|
"sounddevice",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|