omnime 0.2.5__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.
- omnime-0.2.5/.claude/rules/RULES.md +20 -0
- omnime-0.2.5/.claude/settings.json +21 -0
- omnime-0.2.5/.github/workflows/cleanup-releases.yml +44 -0
- omnime-0.2.5/.github/workflows/main.yml +2 -0
- omnime-0.2.5/.github/workflows/publish.yaml +39 -0
- omnime-0.2.5/.gitignore +131 -0
- omnime-0.2.5/AGENTS.md +35 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/100.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/102.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/1024.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/108.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/114.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/120.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/128.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/144.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/152.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/16.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/167.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/172.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/180.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/196.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/20.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/216.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/234.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/256.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/258.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/29.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/32.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/40.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/48.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/50.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/512.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/55.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/57.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/58.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/60.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/64.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/66.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/72.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/76.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/80.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/87.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/88.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/92.png +0 -0
- omnime-0.2.5/AppIcons/Assets.xcassets/AppIcon.appiconset/Contents.json +1 -0
- omnime-0.2.5/AppIcons/android/mipmap-hdpi/ic_launcher.png +0 -0
- omnime-0.2.5/AppIcons/android/mipmap-mdpi/ic_launcher.png +0 -0
- omnime-0.2.5/AppIcons/android/mipmap-xhdpi/ic_launcher.png +0 -0
- omnime-0.2.5/AppIcons/android/mipmap-xxhdpi/ic_launcher.png +0 -0
- omnime-0.2.5/AppIcons/android/mipmap-xxxhdpi/ic_launcher.png +0 -0
- omnime-0.2.5/AppIcons/appstore.png +0 -0
- omnime-0.2.5/AppIcons/icon.png +0 -0
- omnime-0.2.5/AppIcons/opalaicon.png +0 -0
- omnime-0.2.5/AppIcons/playstore.png +0 -0
- omnime-0.2.5/CLAUDE.md +37 -0
- omnime-0.2.5/GEMINI.md +40 -0
- omnime-0.2.5/PKG-INFO +106 -0
- omnime-0.2.5/README.md +72 -0
- omnime-0.2.5/config.yaml +16 -0
- omnime-0.2.5/debug/debug_litellm_callbacks.py +43 -0
- omnime-0.2.5/debug/scratch_tail.py +14 -0
- omnime-0.2.5/debug/test_thought_stream.py +47 -0
- omnime-0.2.5/docs/guide/figs/logotipo.png +0 -0
- omnime-0.2.5/docs/guide/modelconfig.md +725 -0
- omnime-0.2.5/docs/guide/skills-plugin-system.md +218 -0
- omnime-0.2.5/docs/overview.md +151 -0
- omnime-0.2.5/docs/specs/README.md +79 -0
- omnime-0.2.5/docs/specs/backlog_register_0_2_5.md +195 -0
- omnime-0.2.5/docs/specs/backlog_register_0_3_0.md +8 -0
- omnime-0.2.5/gui_src/index.html +17 -0
- omnime-0.2.5/gui_src/package-lock.json +3877 -0
- omnime-0.2.5/gui_src/package.json +37 -0
- omnime-0.2.5/gui_src/src/App.jsx +1871 -0
- omnime-0.2.5/gui_src/src/components/ActivityBar.jsx +85 -0
- omnime-0.2.5/gui_src/src/components/BottomPanel.jsx +310 -0
- omnime-0.2.5/gui_src/src/components/ChatPanel.jsx +929 -0
- omnime-0.2.5/gui_src/src/components/ContextMenu.jsx +82 -0
- omnime-0.2.5/gui_src/src/components/EditorPanel.jsx +360 -0
- omnime-0.2.5/gui_src/src/components/ExplorerSidebar.jsx +195 -0
- omnime-0.2.5/gui_src/src/components/FileNode.jsx +134 -0
- omnime-0.2.5/gui_src/src/components/GitSidebar.jsx +342 -0
- omnime-0.2.5/gui_src/src/components/InlinePromptOverlay.jsx +293 -0
- omnime-0.2.5/gui_src/src/components/StatusBar.jsx +35 -0
- omnime-0.2.5/gui_src/src/components/TextContextMenu.jsx +32 -0
- omnime-0.2.5/gui_src/src/components/modals/AskModal.jsx +110 -0
- omnime-0.2.5/gui_src/src/components/modals/ConfirmModal.jsx +104 -0
- omnime-0.2.5/gui_src/src/components/modals/DeleteProjectModal.jsx +82 -0
- omnime-0.2.5/gui_src/src/components/modals/DirPickerModal.jsx +62 -0
- omnime-0.2.5/gui_src/src/components/modals/EditProjectModal.jsx +686 -0
- omnime-0.2.5/gui_src/src/components/modals/HardwareModal.jsx +172 -0
- omnime-0.2.5/gui_src/src/components/modals/InstallDepsPrompt.jsx +42 -0
- omnime-0.2.5/gui_src/src/components/modals/InteractiveTerminalModal.jsx +181 -0
- omnime-0.2.5/gui_src/src/components/modals/NewProjectModal.jsx +363 -0
- omnime-0.2.5/gui_src/src/components/modals/OnboardingModal.jsx +326 -0
- omnime-0.2.5/gui_src/src/components/modals/SearchChatsModal.jsx +111 -0
- omnime-0.2.5/gui_src/src/components/modals/SettingsModal.jsx +300 -0
- omnime-0.2.5/gui_src/src/components/modals/useModelValidation.js +73 -0
- omnime-0.2.5/gui_src/src/hooks/useResizing.js +39 -0
- omnime-0.2.5/gui_src/src/hooks/useTerminal.js +161 -0
- omnime-0.2.5/gui_src/src/hooks/useTextContextMenu.js +62 -0
- omnime-0.2.5/gui_src/src/i18n/index.js +39 -0
- omnime-0.2.5/gui_src/src/i18n/locales/en.json +301 -0
- omnime-0.2.5/gui_src/src/i18n/locales/pt-BR.json +301 -0
- omnime-0.2.5/gui_src/src/index.css +1020 -0
- omnime-0.2.5/gui_src/src/main.jsx +83 -0
- omnime-0.2.5/gui_src/src/utils/clipboard.js +17 -0
- omnime-0.2.5/gui_src/src/utils/formatMessage.jsx +138 -0
- omnime-0.2.5/gui_src/src/utils/language.js +22 -0
- omnime-0.2.5/gui_src/src/utils/storage.js +18 -0
- omnime-0.2.5/gui_src/vite.config.js +41 -0
- omnime-0.2.5/icon.png +0 -0
- omnime-0.2.5/main.py +15 -0
- omnime-0.2.5/omnime/__init__.py +2 -0
- omnime-0.2.5/omnime/agent_stdin.py +911 -0
- omnime-0.2.5/omnime/api_keys.py +75 -0
- omnime-0.2.5/omnime/archival.py +112 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma.metadata +4 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma.zip +0 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma4_12b-it-q4_K_M.metadata +4 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma4_12b-it-q4_K_M.zip +0 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma4_12b.metadata +4 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma4_12b.zip +0 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma4_e2b-it-qat.metadata +4 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gemma4_e2b-it-qat.zip +0 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gpt-oss_latest.metadata +4 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/gpt-oss_latest.zip +0 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/lfm2.5_latest.metadata +4 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/lfm2.5_latest.zip +0 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/qwen3.5_4b.metadata +4 -0
- omnime-0.2.5/omnime/assetstore/modelconfigs/qwen3.5_4b.zip +0 -0
- omnime-0.2.5/omnime/assetstore.py +179 -0
- omnime-0.2.5/omnime/attachments.py +90 -0
- omnime-0.2.5/omnime/chat_meta_params.py +133 -0
- omnime-0.2.5/omnime/cli.py +278 -0
- omnime-0.2.5/omnime/cli_commands.py +599 -0
- omnime-0.2.5/omnime/code_index.py +689 -0
- omnime-0.2.5/omnime/config.py +444 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- omnime-0.2.5/omnime/gui/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- omnime-0.2.5/omnime/gui/assets/index-CmVkmI5f.js +297 -0
- omnime-0.2.5/omnime/gui/assets/index-D0DqOK0N.css +1 -0
- omnime-0.2.5/omnime/gui/assets/rolldown-runtime-QTnfLwEv.js +1 -0
- omnime-0.2.5/omnime/gui/assets/vendor-monaco-BqAv28Zb.js +11 -0
- omnime-0.2.5/omnime/gui/assets/vendor-react-CuXkjhY5.js +21 -0
- omnime-0.2.5/omnime/gui/assets/vendor-xterm-BrP-ENHg.css +1 -0
- omnime-0.2.5/omnime/gui/assets/vendor-xterm-UYOC6ZJl.js +36 -0
- omnime-0.2.5/omnime/gui/index.html +23 -0
- omnime-0.2.5/omnime/hardware_detect.py +95 -0
- omnime-0.2.5/omnime/hardware_store.py +28 -0
- omnime-0.2.5/omnime/i18n.py +277 -0
- omnime-0.2.5/omnime/icon.png +0 -0
- omnime-0.2.5/omnime/ide_server.py +2277 -0
- omnime-0.2.5/omnime/memgpt_runtime.py +674 -0
- omnime-0.2.5/omnime/ollama_manager.py +73 -0
- omnime-0.2.5/omnime/onboarding.py +94 -0
- omnime-0.2.5/omnime/plugins/__init__.py +0 -0
- omnime-0.2.5/omnime/project.py +665 -0
- omnime-0.2.5/omnime/skills.py +230 -0
- omnime-0.2.5/omnime/terminal.py +308 -0
- omnime-0.2.5/omnime/terminal_manager.py +180 -0
- omnime-0.2.5/omnime/tools.py +779 -0
- omnime-0.2.5/omnime/ui_settings.py +36 -0
- omnime-0.2.5/omnime/vcs.py +351 -0
- omnime-0.2.5/omnime/vector_index.py +335 -0
- omnime-0.2.5/omnime/web_search_config.py +233 -0
- omnime-0.2.5/pyproject.toml +56 -0
- omnime-0.2.5/pytest.ini +9 -0
- omnime-0.2.5/requirements.txt +23 -0
- omnime-0.2.5/skills/chat-orchestrator/SKILL.md +109 -0
- omnime-0.2.5/skills/command-line/SKILL.md +162 -0
- omnime-0.2.5/skills/command-line/scripts/command_executor.py +152 -0
- omnime-0.2.5/skills/skills_store/html-css-js/SKILL.md +55 -0
- omnime-0.2.5/skills/skills_store/html-css-js/scripts/check_contracts.py +69 -0
- omnime-0.2.5/skills/skills_store/implement-feature/SKILL.md +43 -0
- omnime-0.2.5/skills/skills_store/implement-feature/scripts/run_workflow.py +146 -0
- omnime-0.2.5/skills/skills_store/implement-feature/scripts/workflow_orchestrator.py +1278 -0
- omnime-0.2.5/skills/skills_store/implement-feature/scripts/workflow_tools.py +359 -0
- omnime-0.2.5/skills/view-editor/SKILL.md +31 -0
- omnime-0.2.5/skills/view-editor/scripts/run_view_editor.py +52 -0
- omnime-0.2.5/skills/web-search/SKILL.md +44 -0
- omnime-0.2.5/skills.yaml +2 -0
- omnime-0.2.5/tests/test_agent_config.py +62 -0
- omnime-0.2.5/tests/test_agent_stdin.py +166 -0
- omnime-0.2.5/tests/test_attachments.py +262 -0
- omnime-0.2.5/tests/test_chat_meta_params.py +109 -0
- omnime-0.2.5/tests/test_command_line_skill.py +76 -0
- omnime-0.2.5/tests/test_file_delete.py +61 -0
- omnime-0.2.5/tests/test_i18n_coverage.py +134 -0
- omnime-0.2.5/tests/test_llm.py +17 -0
- omnime-0.2.5/tests/test_llm_no_base.py +16 -0
- omnime-0.2.5/tests/test_llm_openai.py +16 -0
- omnime-0.2.5/tests/test_llm_openai_prov.py +17 -0
- omnime-0.2.5/tests/test_memgpt.py +56 -0
- omnime-0.2.5/tests/test_memgpt_runtime.py +97 -0
- omnime-0.2.5/tests/test_model_commands.py +160 -0
- omnime-0.2.5/tests/test_project_store.py +241 -0
- omnime-0.2.5/tests/test_skills_directory_loader.py +225 -0
- omnime-0.2.5/tests/test_update_project_params.py +233 -0
- omnime-0.2.5/tests/test_view_editor_skill.py +37 -0
- omnime-0.2.5/tests/test_web_search.py +288 -0
- omnime-0.2.5/version_info.txt +28 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Regras para Analises dadas Questões do Usuário
|
|
2
|
+
1. **Relevância**: As análises devem ser diretamente relevantes à questão do usuário, abordando os pontos específicos levantados e evitando informações desnecessárias.
|
|
3
|
+
|
|
4
|
+
2. Nunca levante hipóteses ou suposições sem base sólida. Se a questão do usuário for ambígua, peça esclarecimentos antes de fornecer uma análise. Realize testes para validar/excluir/confirmar hipóteses, e baseie suas análises nos resultados desses testes. Não invente testes fáceis de passar ou que não testem o que você diz que testam.
|
|
5
|
+
|
|
6
|
+
# Regras de Diagnóstico de Testes
|
|
7
|
+
1. **Cobertura de Código**: Assegure-se de que os testes cubram pelo menos 80% do código, incluindo casos de borda e cenários de falha.
|
|
8
|
+
|
|
9
|
+
2. **Isolamento**: Cada teste deve ser independente e não depender de outros testes ou do estado global. Use mocks e stubs para isolar as unidades de código.
|
|
10
|
+
|
|
11
|
+
2. **Repetibilidade**: Os testes devem produzir os mesmos resultados em execuções subsequentes, independentemente da ordem de execução ou do ambiente.
|
|
12
|
+
|
|
13
|
+
3. **Clareza**: Os testes devem ser claros e fáceis de entender. Use nomes descritivos para os testes e organize-os de maneira lógica.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# Regras de Organização de Testes
|
|
17
|
+
Nunca gere arquivos de teste soltos na raiz do projeto. Use o diretório `tests/` para organizar os testes por funcionalidade ou módulo.
|
|
18
|
+
|
|
19
|
+
# Regras de Nomenclatura de Testes
|
|
20
|
+
Siga a convenção de nomenclatura `test_<nome_da_funcionalidade>.py` para arquivos de teste. Dentro dos arquivos, nomeie as funções de teste com o prefixo `test_` seguido de uma descrição clara do que está sendo testado, por exemplo, `test_calculo_soma()`.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"permissions": {
|
|
3
|
+
"allow": [
|
|
4
|
+
"Bash(grep -A 30 \"checkAndEnforceHardFail\\\\|improve.*loop\\\\|composite.*tool\" /tmp/smallcode/bin/smallcode.js | head -60)",
|
|
5
|
+
"Read(//tmp/smallcode/bin/**)",
|
|
6
|
+
"Bash(python -c ' *)",
|
|
7
|
+
"Read(//home/gilzamir/**)",
|
|
8
|
+
"Bash(sed -n '/DEBUG PLAN JSON/,/\\\\/DEBUG PLAN JSON/p' /home/gilzamir/log.log)",
|
|
9
|
+
"Read(//home/gilzamir/micalc/**)",
|
|
10
|
+
"Bash(git stash *)",
|
|
11
|
+
"Bash(python -m pytest tests/ -q --ignore=tests/test_planner_output.py --ignore=tests/test_agent_config.py -k \"not llm and asyncio\")",
|
|
12
|
+
"Bash(python -m pytest tests/ -q --ignore=tests/test_planner_output.py --ignore=tests/test_agent_config.py -k \"not llm\")",
|
|
13
|
+
"Bash(python -m pytest tests/test_workflow_pipeline.py tests/test_verification_strategies.py -q -k \"asyncio or \\(not llm\\)\")",
|
|
14
|
+
"Bash(python -m pytest tests/ -x -q)",
|
|
15
|
+
"Bash(python -c \"from opalacoder.cli_commands import _registry, REPLState; print\\('OK'\\); print\\([k for k in _registry._cmds]\\)\")"
|
|
16
|
+
],
|
|
17
|
+
"additionalDirectories": [
|
|
18
|
+
"/home/gilzamir"
|
|
19
|
+
]
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
name: Cleanup Old Releases
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
workflow_dispatch: # Allows manual triggering from the Actions tab
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
cleanup:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
permissions:
|
|
12
|
+
contents: write
|
|
13
|
+
steps:
|
|
14
|
+
- name: Checkout repository
|
|
15
|
+
uses: actions/checkout@v4
|
|
16
|
+
|
|
17
|
+
- name: Delete older releases (keep last 3)
|
|
18
|
+
env:
|
|
19
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
20
|
+
run: |
|
|
21
|
+
echo "Fetching releases..."
|
|
22
|
+
# gh release list outputs: title, release_type, tag_name, published_at
|
|
23
|
+
# we only want the tag_name, which is the 3rd column, but wait, if title has spaces, awk might break.
|
|
24
|
+
# better to use gh api or gh release list with custom format:
|
|
25
|
+
RELEASES=$(gh release list --limit 100 --exclude-drafts --exclude-pre-releases | awk '{print $(NF-1)}')
|
|
26
|
+
|
|
27
|
+
# Alternatively, ensuring we just get the tags directly using gh api:
|
|
28
|
+
# gh api repos/{owner}/{repo}/releases -q '.[].tag_name'
|
|
29
|
+
TAGS=$(gh api repos/${{ github.repository }}/releases -q '.[].tag_name')
|
|
30
|
+
|
|
31
|
+
TOTAL_RELEASES=$(echo "$TAGS" | wc -w)
|
|
32
|
+
|
|
33
|
+
if [ -z "$TAGS" ] || [ "$TOTAL_RELEASES" -le 3 ]; then
|
|
34
|
+
echo "Total releases: $TOTAL_RELEASES. Keeping at most 3. Nothing to delete."
|
|
35
|
+
exit 0
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
# Skip the first 3
|
|
39
|
+
TAGS_TO_DELETE=$(echo "$TAGS" | tail -n +4)
|
|
40
|
+
|
|
41
|
+
for tag in $TAGS_TO_DELETE; do
|
|
42
|
+
echo "Deleting release and tag: $tag"
|
|
43
|
+
gh release delete "$tag" -y --cleanup-tag || true
|
|
44
|
+
done
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- 'v*.*.*'
|
|
7
|
+
release:
|
|
8
|
+
types:
|
|
9
|
+
- published
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
build-and-publish:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
environment: omnime
|
|
15
|
+
|
|
16
|
+
# These permissions are required for Trusted Publishing
|
|
17
|
+
permissions:
|
|
18
|
+
id-token: write
|
|
19
|
+
contents: read
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- name: Checkout repository
|
|
23
|
+
uses: actions/checkout@v4
|
|
24
|
+
|
|
25
|
+
- name: Set up Python
|
|
26
|
+
uses: actions/setup-python@v5
|
|
27
|
+
with:
|
|
28
|
+
python-version: "3.11"
|
|
29
|
+
|
|
30
|
+
- name: Install build dependencies
|
|
31
|
+
run: pip install --upgrade pip build
|
|
32
|
+
|
|
33
|
+
- name: Build sdist and wheel
|
|
34
|
+
run: python -m build
|
|
35
|
+
|
|
36
|
+
- name: Publish to PyPI
|
|
37
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
38
|
+
# To use Trusted Publishing, you need to configure your PyPI project
|
|
39
|
+
# to trust this GitHub repository and workflow.
|
omnime-0.2.5/.gitignore
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# --- Project-specific ---
|
|
2
|
+
*.env
|
|
3
|
+
.env
|
|
4
|
+
*.env*
|
|
5
|
+
.venv
|
|
6
|
+
*.venv
|
|
7
|
+
node_modules/
|
|
8
|
+
plan.md
|
|
9
|
+
|
|
10
|
+
# --- Project runtime data ---
|
|
11
|
+
.opalacoder/
|
|
12
|
+
|
|
13
|
+
# --- Python bytecode & caches ---
|
|
14
|
+
__pycache__/
|
|
15
|
+
*.py[cod]
|
|
16
|
+
*$py.class
|
|
17
|
+
*.pyo
|
|
18
|
+
|
|
19
|
+
# --- C extensions ---
|
|
20
|
+
*.so
|
|
21
|
+
|
|
22
|
+
# --- Distribution / packaging ---
|
|
23
|
+
.Python
|
|
24
|
+
build/
|
|
25
|
+
develop-eggs/
|
|
26
|
+
dist/
|
|
27
|
+
downloads/
|
|
28
|
+
eggs/
|
|
29
|
+
.eggs/
|
|
30
|
+
lib/
|
|
31
|
+
lib64/
|
|
32
|
+
parts/
|
|
33
|
+
sdist/
|
|
34
|
+
var/
|
|
35
|
+
wheels/
|
|
36
|
+
share/python-wheels/
|
|
37
|
+
*.egg-info/
|
|
38
|
+
.installed.cfg
|
|
39
|
+
*.egg
|
|
40
|
+
MANIFEST
|
|
41
|
+
|
|
42
|
+
# --- PyInstaller ---
|
|
43
|
+
*.manifest
|
|
44
|
+
*.spec
|
|
45
|
+
!LinuxOpalaCoder.spec
|
|
46
|
+
!OpalaCoder.spec
|
|
47
|
+
|
|
48
|
+
# --- Installer logs ---
|
|
49
|
+
pip-log.txt
|
|
50
|
+
pip-delete-this-directory.txt
|
|
51
|
+
|
|
52
|
+
# --- Testing & coverage ---
|
|
53
|
+
htmlcov/
|
|
54
|
+
.tox/
|
|
55
|
+
.nox/
|
|
56
|
+
.coverage
|
|
57
|
+
.coverage.*
|
|
58
|
+
.cache
|
|
59
|
+
nosetests.xml
|
|
60
|
+
coverage.xml
|
|
61
|
+
*.cover
|
|
62
|
+
*.py,cover
|
|
63
|
+
.hypothesis/
|
|
64
|
+
.pytest_cache/
|
|
65
|
+
cover/
|
|
66
|
+
|
|
67
|
+
# --- Translations ---
|
|
68
|
+
*.mo
|
|
69
|
+
*.pot
|
|
70
|
+
|
|
71
|
+
# --- Databases ---
|
|
72
|
+
*.sqlite
|
|
73
|
+
*.sqlite3
|
|
74
|
+
*.sqlite3-journal
|
|
75
|
+
*.sqlite-shm
|
|
76
|
+
*.sqlite-wal
|
|
77
|
+
|
|
78
|
+
# --- Logging ---
|
|
79
|
+
*.log
|
|
80
|
+
|
|
81
|
+
# --- Virtual environments ---
|
|
82
|
+
env/
|
|
83
|
+
venv/
|
|
84
|
+
ENV/
|
|
85
|
+
env.bak/
|
|
86
|
+
venv.bak/
|
|
87
|
+
|
|
88
|
+
# --- Jupyter ---
|
|
89
|
+
.ipynb_checkpoints
|
|
90
|
+
|
|
91
|
+
# --- IPython ---
|
|
92
|
+
profile_default/
|
|
93
|
+
ipython_config.py
|
|
94
|
+
|
|
95
|
+
# --- PEP 582 ---
|
|
96
|
+
__pypackages__/
|
|
97
|
+
|
|
98
|
+
# --- Type checkers ---
|
|
99
|
+
.mypy_cache/
|
|
100
|
+
.dmypy.json
|
|
101
|
+
dmypy.json
|
|
102
|
+
.pyre/
|
|
103
|
+
.pytype/
|
|
104
|
+
|
|
105
|
+
# --- Build tools ---
|
|
106
|
+
.pybuilder/
|
|
107
|
+
target/
|
|
108
|
+
cython_debug/
|
|
109
|
+
docs/_build/
|
|
110
|
+
/site
|
|
111
|
+
|
|
112
|
+
# --- Misc Python tools ---
|
|
113
|
+
.scrapy
|
|
114
|
+
instance/
|
|
115
|
+
.webassets-cache
|
|
116
|
+
celerybeat-schedule
|
|
117
|
+
celerybeat.pid
|
|
118
|
+
*.sage.py
|
|
119
|
+
.spyderproject
|
|
120
|
+
.spyproject
|
|
121
|
+
.ropeproject
|
|
122
|
+
local_settings.py
|
|
123
|
+
|
|
124
|
+
# --- IDEs / Editors ---
|
|
125
|
+
.vscode/
|
|
126
|
+
.idea/
|
|
127
|
+
*.swp
|
|
128
|
+
*.swo
|
|
129
|
+
*~
|
|
130
|
+
*.db
|
|
131
|
+
.omnime/
|
omnime-0.2.5/AGENTS.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# General Rules
|
|
2
|
+
|
|
3
|
+
1. Don't make baseless assumptions; before drawing any conclusions, conduct tests and analysis to gather as much information as possible.
|
|
4
|
+
|
|
5
|
+
# Project Guide
|
|
6
|
+
|
|
7
|
+
## Language
|
|
8
|
+
|
|
9
|
+
All code, comments, and documentation must be written in **English**.
|
|
10
|
+
|
|
11
|
+
## Architecture
|
|
12
|
+
|
|
13
|
+
This project uses the **AgenticBlocks.IO** framework.
|
|
14
|
+
Before starting any task, read the library source and documentation at:
|
|
15
|
+
https://github.com/gilzamir/agenticblocks
|
|
16
|
+
|
|
17
|
+
Key things to understand from that repo:
|
|
18
|
+
- How blocks are structured and composed
|
|
19
|
+
- How agents communicate and dispatch events
|
|
20
|
+
- Naming conventions used throughout the framework
|
|
21
|
+
|
|
22
|
+
## Project Context
|
|
23
|
+
|
|
24
|
+
Read `ARCH_SUMMARY.md` before making changes. It contains the current project status,
|
|
25
|
+
known issues, and decisions already made. Do not re-litigate what is documented there.
|
|
26
|
+
|
|
27
|
+
## Build & Test Commands
|
|
28
|
+
Run tests on tests dir after you implement a new feature.
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
> Fill in your actual commands below — this is the highest-value section.
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
python -m pytest
|
|
35
|
+
```
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"images":[{"size":"60x60","expected-size":"180","filename":"180.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"40x40","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"60x60","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"57x57","expected-size":"57","filename":"57.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"87","filename":"87.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"57x57","expected-size":"114","filename":"114.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"60","filename":"60.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"1024x1024","filename":"1024.png","expected-size":"1024","idiom":"ios-marketing","folder":"Assets.xcassets/AppIcon.appiconset/","scale":"1x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"72x72","expected-size":"72","filename":"72.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"76x76","expected-size":"152","filename":"152.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"50x50","expected-size":"100","filename":"100.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"76x76","expected-size":"76","filename":"76.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"50x50","expected-size":"50","filename":"50.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"72x72","expected-size":"144","filename":"144.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"40x40","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"83.5x83.5","expected-size":"167","filename":"167.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"20x20","expected-size":"20","filename":"20.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"idiom":"watch","filename":"172.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"38mm","scale":"2x","size":"86x86","expected-size":"172","role":"quickLook"},{"idiom":"watch","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"38mm","scale":"2x","size":"40x40","expected-size":"80","role":"appLauncher"},{"idiom":"watch","filename":"88.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"40mm","scale":"2x","size":"44x44","expected-size":"88","role":"appLauncher"},{"idiom":"watch","filename":"102.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"45mm","scale":"2x","size":"51x51","expected-size":"102","role":"appLauncher"},{"idiom":"watch","filename":"108.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"49mm","scale":"2x","size":"54x54","expected-size":"108","role":"appLauncher"},{"idiom":"watch","filename":"92.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"41mm","scale":"2x","size":"46x46","expected-size":"92","role":"appLauncher"},{"idiom":"watch","filename":"100.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"44mm","scale":"2x","size":"50x50","expected-size":"100","role":"appLauncher"},{"idiom":"watch","filename":"196.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"42mm","scale":"2x","size":"98x98","expected-size":"196","role":"quickLook"},{"idiom":"watch","filename":"216.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"44mm","scale":"2x","size":"108x108","expected-size":"216","role":"quickLook"},{"idiom":"watch","filename":"234.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"45mm","scale":"2x","size":"117x117","expected-size":"234","role":"quickLook"},{"idiom":"watch","filename":"258.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"49mm","scale":"2x","size":"129x129","expected-size":"258","role":"quickLook"},{"idiom":"watch","filename":"48.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"38mm","scale":"2x","size":"24x24","expected-size":"48","role":"notificationCenter"},{"idiom":"watch","filename":"55.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"42mm","scale":"2x","size":"27.5x27.5","expected-size":"55","role":"notificationCenter"},{"idiom":"watch","filename":"66.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"45mm","scale":"2x","size":"33x33","expected-size":"66","role":"notificationCenter"},{"size":"29x29","expected-size":"87","filename":"87.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"watch","role":"companionSettings","scale":"3x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"watch","role":"companionSettings","scale":"2x"},{"size":"1024x1024","expected-size":"1024","filename":"1024.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"watch-marketing","scale":"1x"},{"size":"128x128","expected-size":"128","filename":"128.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"256x256","expected-size":"256","filename":"256.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"128x128","expected-size":"256","filename":"256.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"256x256","expected-size":"512","filename":"512.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"32x32","expected-size":"32","filename":"32.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"512x512","expected-size":"512","filename":"512.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"16x16","expected-size":"16","filename":"16.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"16x16","expected-size":"32","filename":"32.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"32x32","expected-size":"64","filename":"64.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"512x512","expected-size":"1024","filename":"1024.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"}]}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
omnime-0.2.5/CLAUDE.md
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# General Rules
|
|
2
|
+
|
|
3
|
+
1. Don't make baseless assumptions; before drawing any conclusions, conduct tests and analysis to gather as much information as possible.
|
|
4
|
+
|
|
5
|
+
2. Dever apply direct patch ou modifications in external lib without user authorization.
|
|
6
|
+
|
|
7
|
+
3. Dont call directly litellm (always use agenticblocks). If need same feature dont supported by agenticblocks, alert me and ask me about to do.
|
|
8
|
+
|
|
9
|
+
# Project Guide
|
|
10
|
+
|
|
11
|
+
## Language
|
|
12
|
+
All code, comments, and documentation must be written in **English**.
|
|
13
|
+
|
|
14
|
+
## Architecture
|
|
15
|
+
|
|
16
|
+
This project uses the **AgenticBlocks.IO** framework.
|
|
17
|
+
Before starting any task, read the library source and documentation at:
|
|
18
|
+
https://github.com/gilzamir/agenticblocks
|
|
19
|
+
|
|
20
|
+
Key things to understand from that repo:
|
|
21
|
+
- How blocks are structured and composed
|
|
22
|
+
- How agents communicate and dispatch events
|
|
23
|
+
- Naming conventions used throughout the framework
|
|
24
|
+
|
|
25
|
+
## Project Context
|
|
26
|
+
|
|
27
|
+
Read `docs/specs` before making changes. It contains the current project status, known issues, and decisions already made. Do not re-litigate what is documented there.
|
|
28
|
+
|
|
29
|
+
## Build & Test Commands
|
|
30
|
+
Run tests on tests dir after you implement a new feature.
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
> Fill in your actual commands below — this is the highest-value section.
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
python -m pytest
|
|
37
|
+
```
|
omnime-0.2.5/GEMINI.md
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# General Rules
|
|
2
|
+
|
|
3
|
+
1. Don't make baseless assumptions; before drawing any conclusions, conduct tests and analysis to gather as much information as possible.
|
|
4
|
+
|
|
5
|
+
1.1. Don't make Jerry-rig or Kludge without user authorization. Hightlight this limitation for user.
|
|
6
|
+
|
|
7
|
+
2. Dever apply direct patch ou modifications in external lib without user authorization.
|
|
8
|
+
|
|
9
|
+
3. Dont call directly litellm (always use agenticblocks). If need same feature dont supported by agenticblocks, alert me and ask me about to do.
|
|
10
|
+
|
|
11
|
+
# Project Guide
|
|
12
|
+
|
|
13
|
+
## Language
|
|
14
|
+
|
|
15
|
+
All code, comments, and documentation must be written in **English**.
|
|
16
|
+
|
|
17
|
+
## Architecture
|
|
18
|
+
|
|
19
|
+
This project uses the **AgenticBlocks.IO** framework.
|
|
20
|
+
Before starting any task, read the library source and documentation at:
|
|
21
|
+
https://github.com/gilzamir/agenticblocks
|
|
22
|
+
|
|
23
|
+
Key things to understand from that repo:
|
|
24
|
+
- How blocks are structured and composed
|
|
25
|
+
- How agents communicate and dispatch events
|
|
26
|
+
- Naming conventions used throughout the framework
|
|
27
|
+
|
|
28
|
+
## Project Context
|
|
29
|
+
|
|
30
|
+
Read `docs/specs` before making changes. It contains the current project status, known issues, and decisions already made. Do not re-litigate what is documented there.
|
|
31
|
+
|
|
32
|
+
## Build & Test Commands
|
|
33
|
+
Run tests on tests dir after you implement a new feature.
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
> Fill in your actual commands below — this is the highest-value section.
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
python -m pytest
|
|
40
|
+
```
|
omnime-0.2.5/PKG-INFO
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: omnime
|
|
3
|
+
Version: 0.2.5
|
|
4
|
+
Summary: Autonomous coding agent with interactive planning and modular execution
|
|
5
|
+
Project-URL: Homepage, https://github.com/omnimedev/OmniMe
|
|
6
|
+
Project-URL: Bug Tracker, https://github.com/omnimedev/OmniMe/issues
|
|
7
|
+
Author-email: Gilzamir Gomes <dev@omnime.com>
|
|
8
|
+
License: MIT
|
|
9
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
10
|
+
Classifier: Operating System :: OS Independent
|
|
11
|
+
Classifier: Programming Language :: Python :: 3
|
|
12
|
+
Requires-Python: >=3.10
|
|
13
|
+
Requires-Dist: agenticblocks-io>=0.9.10
|
|
14
|
+
Requires-Dist: chromadb>=0.4.0
|
|
15
|
+
Requires-Dist: ddgs>=6.0
|
|
16
|
+
Requires-Dist: duckduckgo-search>=6.4.0
|
|
17
|
+
Requires-Dist: instructor>=1.15.1
|
|
18
|
+
Requires-Dist: litellm>=1.40.0
|
|
19
|
+
Requires-Dist: numpy>=1.21.0
|
|
20
|
+
Requires-Dist: pillow>=10.0.0
|
|
21
|
+
Requires-Dist: pymupdf4llm>=0.0.17
|
|
22
|
+
Requires-Dist: pyqt6-webengine>=6.0.0
|
|
23
|
+
Requires-Dist: pyqt6>=6.0.0
|
|
24
|
+
Requires-Dist: pytest-asyncio>=0.23.0
|
|
25
|
+
Requires-Dist: python-dotenv>=1.0.0
|
|
26
|
+
Requires-Dist: pywebview>=4.0
|
|
27
|
+
Requires-Dist: pywinpty>=2.0.0; sys_platform == 'win32'
|
|
28
|
+
Requires-Dist: pyyaml>=6.0
|
|
29
|
+
Requires-Dist: qtpy>=2.4.0
|
|
30
|
+
Requires-Dist: rich>=13.0.0
|
|
31
|
+
Provides-Extra: embeddings
|
|
32
|
+
Requires-Dist: sentence-transformers>=3.0.0; extra == 'embeddings'
|
|
33
|
+
Description-Content-Type: text/markdown
|
|
34
|
+
|
|
35
|
+
# OmniMe
|
|
36
|
+
|
|
37
|
+
**OmniMe** is your ultimate AI-powered assistant and intelligent agent, built to supercharge your development workflow. Whether you're brainstorming new ideas, writing complex features, or squashing bugs, OmniMe adapts to your needs with an incredibly flexible and powerful architecture.
|
|
38
|
+
|
|
39
|
+
Designed with freedom in mind, OmniMe seamlessly supports both cloud-based and local LLMs—giving you full control over your code and privacy. It shines exceptionally well with local models powered by **Ollama**, allowing you to harness state-of-the-art AI without leaving your machine.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Why Choose OmniMe?
|
|
44
|
+
|
|
45
|
+
🚀 **Your Personal AI Agent**
|
|
46
|
+
OmniMe isn't just an autocomplete tool; it's a fully-fledged AI agent that understands your project context. It works alongside you to handle diverse coding tasks, from interactive planning to automated bug fixing.
|
|
47
|
+
|
|
48
|
+
🧠 **Persistent Memory & Context**
|
|
49
|
+
Never repeat yourself. OmniMe features a persistent memory system that remembers your project's unique quirks, design decisions, and past conversations. It maintains focus, ensuring that the AI has exactly the context it needs, right when it needs it.
|
|
50
|
+
|
|
51
|
+
🛠️ **Flexible, Skill-Based Architecture**
|
|
52
|
+
Tailor your assistant to your exact workflow. OmniMe uses a highly modular "Skills" system. Equip your agent with specific abilities—like web research, advanced refactoring, or custom scripts—allowing it to tackle different tasks seamlessly using specialized sub-agents.
|
|
53
|
+
|
|
54
|
+
☁️ **Cloud or Local: You Decide**
|
|
55
|
+
Enjoy the best of both worlds. Connect to powerful cloud models or run completely offline with local LLMs. OmniMe is heavily optimized for **Ollama**, making it incredibly easy to run powerful open-weights models locally on your own hardware.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Getting Started
|
|
60
|
+
|
|
61
|
+
### Installation
|
|
62
|
+
|
|
63
|
+
Install OmniMe directly via pip:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
pip install omnime
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Or run it from source:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
git clone https://github.com/omnimedev/OmniMe
|
|
73
|
+
cd OmniMe
|
|
74
|
+
python -m venv .env
|
|
75
|
+
source .env/bin/activate # Linux/macOS
|
|
76
|
+
# .env\Scripts\activate # Windows
|
|
77
|
+
|
|
78
|
+
# Install OmniMe dependencies
|
|
79
|
+
pip install -r requirements.txt
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Running OmniMe
|
|
83
|
+
|
|
84
|
+
OmniMe comes with a beautiful, integrated Web-Based GUI that works seamlessly across platforms:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
python main.py
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
*Don't like GUIs? OmniMe also supports an interactive CLI REPL and a headless JSON protocol server!*
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Deep Dive: How It Works
|
|
95
|
+
|
|
96
|
+
Curious about what powers OmniMe under the hood? Want to learn about our MemGPT orchestrator, shadow git versioning, and modular skill designs?
|
|
97
|
+
|
|
98
|
+
👉 **[Read the Technical Overview](docs/overview.md)**
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## Community & License
|
|
103
|
+
|
|
104
|
+
OmniMe is proudly open source and available under the **MIT** license.
|
|
105
|
+
|
|
106
|
+
* **Repository**: [https://github.com/omnimedev/OmniMe](https://github.com/omnimedev/OmniMe)
|