geniusbot 3.37.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.
Files changed (77) hide show
  1. geniusbot-3.37.0/.bumpversion.cfg +16 -0
  2. geniusbot-3.37.0/.env.example +20 -0
  3. geniusbot-3.37.0/.gitattributes +196 -0
  4. geniusbot-3.37.0/.github/workflows/pipeline.yml +12 -0
  5. geniusbot-3.37.0/.github/workflows/release.yml +15 -0
  6. geniusbot-3.37.0/.gitignore +160 -0
  7. geniusbot-3.37.0/.pre-commit-config.yaml +93 -0
  8. geniusbot-3.37.0/.specify/specs/code-enhancement-20260531/spec.json +207 -0
  9. geniusbot-3.37.0/.specify/specs/code-enhancement-20260531/spec.md +51 -0
  10. geniusbot-3.37.0/.specify/specs/code-enhancement-20260531/tasks.json +379 -0
  11. geniusbot-3.37.0/.specify/specs/code-enhancement-20260531/tasks.md +63 -0
  12. geniusbot-3.37.0/AGENTS.md +285 -0
  13. geniusbot-3.37.0/CHANGELOG.md +44 -0
  14. geniusbot-3.37.0/CLAUDE.md +10 -0
  15. geniusbot-3.37.0/LICENSE +20 -0
  16. geniusbot-3.37.0/PKG-INFO +212 -0
  17. geniusbot-3.37.0/README.md +173 -0
  18. geniusbot-3.37.0/docs/concepts.md +35 -0
  19. geniusbot-3.37.0/docs/index.md +47 -0
  20. geniusbot-3.37.0/docs/overview.md +57 -0
  21. geniusbot-3.37.0/geniusbot/__init__.py +14 -0
  22. geniusbot-3.37.0/geniusbot/documentation/README.md +1 -0
  23. geniusbot-3.37.0/geniusbot/geniusbot.py +605 -0
  24. geniusbot-3.37.0/geniusbot/img/geniusbot-small.png +0 -0
  25. geniusbot-3.37.0/geniusbot/img/geniusbot.ico +0 -0
  26. geniusbot-3.37.0/geniusbot/img/geniusbot.png +0 -0
  27. geniusbot-3.37.0/geniusbot/img/img_append.png +0 -0
  28. geniusbot-3.37.0/geniusbot/img/img_fulljoin.png +0 -0
  29. geniusbot-3.37.0/geniusbot/img/img_innerjoin.png +0 -0
  30. geniusbot-3.37.0/geniusbot/img/img_leftjoin.png +0 -0
  31. geniusbot-3.37.0/geniusbot/img/img_rightjoin.png +0 -0
  32. geniusbot-3.37.0/geniusbot/logger.py +105 -0
  33. geniusbot-3.37.0/geniusbot/plugins/__init__.py +1 -0
  34. geniusbot-3.37.0/geniusbot/qt/__init__.py +12 -0
  35. geniusbot-3.37.0/geniusbot/qt/colors.py +142 -0
  36. geniusbot-3.37.0/geniusbot/qt/finance_cockpit.py +586 -0
  37. geniusbot-3.37.0/geniusbot/qt/graph_explorer.py +224 -0
  38. geniusbot-3.37.0/geniusbot/qt/infra_cockpit.py +286 -0
  39. geniusbot-3.37.0/geniusbot/qt/scrollable_widget.py +59 -0
  40. geniusbot-3.37.0/geniusbot/qt/security_policy.py +213 -0
  41. geniusbot-3.37.0/geniusbot/qt/service_dashboard.py +400 -0
  42. geniusbot-3.37.0/geniusbot/qt/telemetry_dashboard.py +266 -0
  43. geniusbot-3.37.0/geniusbot/qt/terminal_widget.py +224 -0
  44. geniusbot-3.37.0/geniusbot/qt/tool_guard.py +143 -0
  45. geniusbot-3.37.0/geniusbot/qt/widget_mapper.py +244 -0
  46. geniusbot-3.37.0/geniusbot/qt/workflow_builder.py +230 -0
  47. geniusbot-3.37.0/geniusbot/services/__init__.py +1 -0
  48. geniusbot-3.37.0/geniusbot/services/backend_adapter.py +154 -0
  49. geniusbot-3.37.0/geniusbot/services/gateway_client.py +124 -0
  50. geniusbot-3.37.0/geniusbot/utils/__init__.py +5 -0
  51. geniusbot-3.37.0/geniusbot/utils/agent_bridge.py +80 -0
  52. geniusbot-3.37.0/geniusbot/utils/daemon.py +73 -0
  53. geniusbot-3.37.0/geniusbot/utils/utils.py +44 -0
  54. geniusbot-3.37.0/packaging/linux/control +11 -0
  55. geniusbot-3.37.0/packaging/linux/geniusbot.desktop +9 -0
  56. geniusbot-3.37.0/pyproject.toml +75 -0
  57. geniusbot-3.37.0/requirements.txt +329 -0
  58. geniusbot-3.37.0/screenshots/channel.png +0 -0
  59. geniusbot-3.37.0/screenshots/geniusbot_home.png +0 -0
  60. geniusbot-3.37.0/screenshots/geniusbot_media_downloader.png +0 -0
  61. geniusbot-3.37.0/screenshots/geniusbot_media_manager.png +0 -0
  62. geniusbot-3.37.0/screenshots/geniusbot_report_manager.png +0 -0
  63. geniusbot-3.37.0/screenshots/geniusbot_repository_manager.png +0 -0
  64. geniusbot-3.37.0/screenshots/geniusbot_rom_manager.png +0 -0
  65. geniusbot-3.37.0/screenshots/geniusbot_shift_subtitles.png +0 -0
  66. geniusbot-3.37.0/screenshots/geniusbot_website_archive.png +0 -0
  67. geniusbot-3.37.0/screenshots/user.png +0 -0
  68. geniusbot-3.37.0/scripts/security_sanitizer.py +246 -0
  69. geniusbot-3.37.0/setup.iss +49 -0
  70. geniusbot-3.37.0/tests/conftest.py +18 -0
  71. geniusbot-3.37.0/tests/test_backend_adapter_seam.py +59 -0
  72. geniusbot-3.37.0/tests/test_cockpit_views.py +43 -0
  73. geniusbot-3.37.0/tests/test_concept_parity.py +88 -0
  74. geniusbot-3.37.0/tests/test_geniusbot_window.py +60 -0
  75. geniusbot-3.37.0/tests/test_init_dynamics.py +39 -0
  76. geniusbot-3.37.0/tests/test_startup.py +16 -0
  77. geniusbot-3.37.0/uv.lock +1727 -0
@@ -0,0 +1,16 @@
1
+ [bumpversion]
2
+ current_version = 3.37.0
3
+ commit = True
4
+ tag = True
5
+
6
+ [bumpversion:file:pyproject.toml]
7
+ search = version = "{current_version}"
8
+ replace = version = "{new_version}"
9
+
10
+ [bumpversion:file:README.md]
11
+ search = Version: {current_version}
12
+ replace = Version: {new_version}
13
+
14
+ [bumpversion:file:geniusbot/__init__.py]
15
+ search = __version__ = "{current_version}"
16
+ replace = __version__ = "{new_version}"
@@ -0,0 +1,20 @@
1
+ # GeniusBot Local Environment Variables
2
+ # Copy this file to .env and configure as needed
3
+
4
+ # Headless Qt Platform (set to 'offscreen' when running in Docker or CI)
5
+ # QT_QPA_PLATFORM=offscreen
6
+
7
+ # Langfuse Observability Integration
8
+ # LANGFUSE_PUBLIC_KEY=pk-lf-...
9
+ # LANGFUSE_SECRET_KEY=sk-lf-...
10
+ # LANGFUSE_HOST=https://cloud.langfuse.com
11
+
12
+ # Pydantic Logfire Token
13
+ # LOGFIRE_TOKEN=...
14
+
15
+ # Terminal type for terminal emulator widget
16
+ # TERM=xterm-256color
17
+
18
+ # PyInstaller temp execution directories (for bundled app context)
19
+ # _MEIPASS=
20
+ # _MEIPASS2=
@@ -0,0 +1,196 @@
1
+ # Auto detect
2
+ ## Handle line endings automatically for files detected as
3
+ ## text and leave all files detected as binary untouched.
4
+ ## This will handle all files NOT defined below.
5
+ * text=auto
6
+
7
+ # Source code
8
+ *.bash text eol=lf
9
+ *.bat text eol=crlf
10
+ *.cmd text eol=crlf
11
+ *.coffee text
12
+ *.css text diff=css
13
+ *.htm text diff=html
14
+ *.html text diff=html
15
+ *.inc text
16
+ *.ini text
17
+ *.js text
18
+ *.json text
19
+ *.jsx text
20
+ *.less text
21
+ *.ls text
22
+ *.map text -diff
23
+ *.od text
24
+ *.onlydata text
25
+ *.php text diff=php
26
+ *.pl text
27
+ *.ps1 text eol=crlf
28
+ *.py text diff=python
29
+ *.rb text diff=ruby
30
+ *.sass text
31
+ *.scm text
32
+ *.scss text diff=css
33
+ *.sh text eol=lf
34
+ .husky/* text eol=lf
35
+ *.sql text
36
+ *.styl text
37
+ *.tag text
38
+ *.ts text
39
+ *.tsx text
40
+ *.xml text
41
+ *.xhtml text diff=html
42
+
43
+ # Docker
44
+ Dockerfile text
45
+
46
+ # Documentation
47
+ *.ipynb text
48
+ *.markdown text diff=markdown
49
+ *.md text diff=markdown
50
+ *.mdwn text diff=markdown
51
+ *.mdown text diff=markdown
52
+ *.mkd text diff=markdown
53
+ *.mkdn text diff=markdown
54
+ *.mdtxt text
55
+ *.mdtext text
56
+ *.txt text
57
+ AUTHORS text
58
+ CHANGELOG text
59
+ CHANGES text
60
+ CONTRIBUTING text
61
+ COPYING text
62
+ copyright text
63
+ *COPYRIGHT* text
64
+ INSTALL text
65
+ license text
66
+ LICENSE text
67
+ NEWS text
68
+ readme text
69
+ *README* text
70
+ TODO text
71
+
72
+ # Templates
73
+ *.dot text
74
+ *.ejs text
75
+ *.erb text
76
+ *.haml text
77
+ *.handlebars text
78
+ *.hbs text
79
+ *.hbt text
80
+ *.jade text
81
+ *.latte text
82
+ *.mustache text
83
+ *.njk text
84
+ *.phtml text
85
+ *.svelte text
86
+ *.tmpl text
87
+ *.tpl text
88
+ *.twig text
89
+ *.vue text
90
+
91
+ # Configs
92
+ *.cnf text
93
+ *.conf text
94
+ *.config text
95
+ .editorconfig text
96
+ .env text
97
+ .gitattributes text
98
+ .gitconfig text
99
+ .htaccess text
100
+ *.lock text -diff
101
+ package.json text eol=lf
102
+ package-lock.json text eol=lf -diff
103
+ pnpm-lock.yaml text eol=lf -diff
104
+ .prettierrc text
105
+ yarn.lock text -diff
106
+ *.toml text
107
+ *.yaml text
108
+ *.yml text
109
+ browserslist text
110
+ Makefile text
111
+ makefile text
112
+
113
+ # Heroku
114
+ Procfile text
115
+
116
+ # Graphics
117
+ *.ai binary
118
+ *.bmp binary
119
+ *.eps binary
120
+ *.gif binary
121
+ *.gifv binary
122
+ *.ico binary
123
+ *.jng binary
124
+ *.jp2 binary
125
+ *.jpg binary
126
+ *.jpeg binary
127
+ *.jpx binary
128
+ *.jxr binary
129
+ *.pdf binary
130
+ *.png binary
131
+ *.psb binary
132
+ *.psd binary
133
+ # SVG treated as an asset (binary) by default.
134
+ *.svg text
135
+ # If you want to treat it as binary,
136
+ # use the following line instead.
137
+ # *.svg binary
138
+ *.svgz binary
139
+ *.tif binary
140
+ *.tiff binary
141
+ *.wbmp binary
142
+ *.webp binary
143
+
144
+ # Audio
145
+ *.kar binary
146
+ *.m4a binary
147
+ *.mid binary
148
+ *.midi binary
149
+ *.mp3 binary
150
+ *.ogg binary
151
+ *.ra binary
152
+
153
+ # Video
154
+ *.3gpp binary
155
+ *.3gp binary
156
+ *.as binary
157
+ *.asf binary
158
+ *.asx binary
159
+ *.avi binary
160
+ *.fla binary
161
+ *.flv binary
162
+ *.m4v binary
163
+ *.mng binary
164
+ *.mov binary
165
+ *.mp4 binary
166
+ *.mpeg binary
167
+ *.mpg binary
168
+ *.ogv binary
169
+ *.swc binary
170
+ *.swf binary
171
+ *.webm binary
172
+
173
+ # Archives
174
+ *.7z binary
175
+ *.gz binary
176
+ *.jar binary
177
+ *.rar binary
178
+ *.tar binary
179
+ *.zip binary
180
+
181
+ # Fonts
182
+ *.ttf binary
183
+ *.eot binary
184
+ *.otf binary
185
+ *.woff binary
186
+ *.woff2 binary
187
+
188
+ # Executables
189
+ *.exe binary
190
+ *.pyc binary
191
+
192
+ # RC files (like .babelrc or .eslintrc)
193
+ *.*rc text
194
+
195
+ # Ignore files (like .npmignore or .gitignore)
196
+ *.*ignore text
@@ -0,0 +1,12 @@
1
+ name: Build|Upload|Release Python Package
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - 'main'
7
+
8
+ jobs:
9
+ publish:
10
+ uses: Knuckles-Team/pipelines/.github/workflows/python_pipeline.yml@main
11
+ secrets:
12
+ PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
@@ -0,0 +1,15 @@
1
+ name: Cross-Platform Build and Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+ workflow_dispatch:
8
+
9
+ permissions:
10
+ contents: write
11
+
12
+ jobs:
13
+ release:
14
+ uses: Knuckles-Team/pipelines/.github/workflows/desktop_release_pipeline.yml@main
15
+ secrets: inherit
@@ -0,0 +1,160 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+ /__pycache__/
6
+ /.idea/
7
+ *.pyc
8
+ *.log
9
+ *.pt
10
+
11
+ # C extensions
12
+ *.so
13
+
14
+ # Distribution / packaging
15
+ .Python
16
+ build/
17
+ develop-eggs/
18
+ dist/
19
+ downloads/
20
+ eggs/
21
+ .eggs/
22
+ lib64/
23
+ parts/
24
+ sdist/
25
+ var/
26
+ wheels/
27
+ pip-wheel-metadata/
28
+ share/python-wheels/
29
+ *.egg-info/
30
+ .installed.cfg
31
+ *.egg
32
+ MANIFEST
33
+
34
+ # PyInstaller
35
+ # Usually these files are written by a python script from a template
36
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
37
+ *.manifest
38
+ *.spec
39
+
40
+ # Installer logs
41
+ pip-log.txt
42
+ pip-delete-this-directory.txt
43
+
44
+ # Unit test / coverage reports
45
+ htmlcov/
46
+ .tox/
47
+ .nox/
48
+ .coverage
49
+ .coverage.*
50
+ .cache
51
+ nosetests.xml
52
+ coverage.xml
53
+ *.cover
54
+ *.py,cover
55
+ .hypothesis/
56
+ .pytest_cache/
57
+
58
+ # Translations
59
+ *.mo
60
+ *.pot
61
+
62
+ # Django stuff:
63
+ *.log
64
+ local_settings.py
65
+ db.sqlite3
66
+ db.sqlite3-journal
67
+ db.sqlite3-shm
68
+ db.sqlite3-wal
69
+
70
+ # Flask stuff:
71
+ instance/
72
+ .webassets-cache
73
+
74
+ # Scrapy stuff:
75
+ .scrapy
76
+
77
+ # Sphinx documentation
78
+ docs/_build/
79
+
80
+ # PyBuilder
81
+ target/
82
+
83
+ # Jupyter Notebook
84
+ .ipynb_checkpoints
85
+
86
+ # IPython
87
+ profile_default/
88
+ ipython_config.py
89
+
90
+ # pyenv
91
+ .python-version
92
+
93
+ # pipenv
94
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
95
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
96
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
97
+ # install all needed dependencies.
98
+ #Pipfile.lock
99
+
100
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
101
+ __pypackages__/
102
+
103
+ # Celery stuff
104
+ celerybeat-schedule
105
+ celerybeat.pid
106
+
107
+ # SageMath parsed files
108
+ *.sage.py
109
+
110
+ # Environments
111
+ .env
112
+ .venv
113
+ env/
114
+ venv/
115
+ ENV/
116
+ env.bak/
117
+ venv.bak/
118
+
119
+ # Spyder project settings
120
+ .spyderproject
121
+ .spyproject
122
+
123
+ # Rope project settings
124
+ .ropeproject
125
+
126
+ # mkdocs documentation
127
+ /site
128
+
129
+ # mypy
130
+ .mypy_cache/
131
+ .dmypy.json
132
+ dmypy.json
133
+
134
+ # Pyre type checker
135
+ .pyre/
136
+
137
+ # Model-generated transient scripts at root level
138
+ /test_*.py
139
+ /fix_*.py
140
+ /debug_*.py
141
+ /scratch_*.py
142
+ /temp_*.py
143
+
144
+ # Transient logs, traces, patch files, and test outputs
145
+ *.orig
146
+ *.rej
147
+ *.patch
148
+ *.log
149
+ *output*.txt
150
+ *errors*.txt
151
+ failed_tests.txt
152
+ trace.txt
153
+
154
+ # AI agent scratch (do not commit) — keep repo roots pristine
155
+ .agent/
156
+ .agents/
157
+ .agent_data/
158
+ .tmp/
159
+ .pytest_tmp/
160
+ .hypothesis/
@@ -0,0 +1,93 @@
1
+ default_language_version:
2
+ python: python3
3
+ exclude: 'dotnet'
4
+ ci:
5
+ autofix_prs: true
6
+ autoupdate_commit_msg: '[pre-commit.ci] pre-commit suggestions'
7
+ autoupdate_schedule: 'monthly'
8
+
9
+ repos:
10
+ - repo: https://github.com/pre-commit/pre-commit-hooks
11
+ rev: v4.5.0
12
+ hooks:
13
+ - id: check-added-large-files
14
+ - id: check-ast
15
+ - id: check-yaml
16
+ - id: check-toml
17
+ - id: check-json
18
+ - id: check-byte-order-marker
19
+ exclude: .gitignore
20
+ - id: check-merge-conflict
21
+ - id: detect-private-key
22
+ - id: trailing-whitespace
23
+ - id: end-of-file-fixer
24
+ - repo: https://github.com/psf/black
25
+ rev: 24.3.0
26
+ hooks:
27
+ - id: black
28
+ - repo: https://github.com/astral-sh/ruff-pre-commit
29
+ rev: v0.15.15
30
+ hooks:
31
+ - id: ruff
32
+ types_or: [ python, pyi, jupyter ]
33
+ args: ["--fix", "--ignore=E402"]
34
+ - repo: https://github.com/codespell-project/codespell
35
+ rev: v2.2.6
36
+ hooks:
37
+ - id: codespell
38
+ args: ["-L", "ans,linar,nam,tread,ot,"]
39
+ exclude: |
40
+ (?x)^(
41
+ pyproject.toml |
42
+ website/static/img/ag.svg |
43
+ website/yarn.lock |
44
+ website/docs/tutorial/code-executors.ipynb |
45
+ website/docs/topics/code-execution/custom-executor.ipynb |
46
+ website/docs/topics/non-openai-models/cloud-gemini.ipynb |
47
+ notebook/.*
48
+ )$
49
+ - repo: https://github.com/pre-commit/mirrors-mypy
50
+ rev: v1.20.2
51
+ hooks:
52
+ - id: mypy
53
+ additional_dependencies: [pydantic, types-PyYAML, types-requests, types-setuptools, PySide6]
54
+ args: ["--ignore-missing-imports"]
55
+ - repo: local
56
+ hooks:
57
+ - id: check-stubs
58
+ name: Check for Active Stubs and TODOs
59
+ entry: python3 /home/apps/workspace/agent-packages/agent-utilities/scripts/check_stubs.py
60
+ language: system
61
+ types: [python]
62
+ - id: check-sprawl
63
+ name: Guardrail — anti-sprawl
64
+ entry: python3 /home/apps/workspace/agent-packages/agent-utilities/scripts/check_sprawl.py
65
+ language: system
66
+ args: ["."]
67
+ pass_filenames: false
68
+ always_run: true
69
+ - id: check-coupling
70
+ name: Guardrail — geniusbot coupling (adapter seam)
71
+ entry: python3 /home/apps/workspace/agent-packages/agent-utilities/scripts/check_coupling.py
72
+ language: system
73
+ pass_filenames: false
74
+ always_run: true
75
+ - id: pytest
76
+ name: pytest
77
+ entry: bash -c 'export QT_QPA_PLATFORM=offscreen; test_target="tests"; for d in tests/unit test/unit tests test; do if [ -d "$d" ]; then test_target="$d"; break; fi; done; if [ -f uv.lock ]; then uv run --all-extras pytest "$test_target" -q --tb=short -m "not slow and not integration" --timeout=60; else pytest "$test_target" -q --tb=short -m "not slow and not integration" --timeout=60; fi'
78
+ language: system
79
+ types: [python]
80
+ pass_filenames: false
81
+ always_run: true
82
+ - repo: https://github.com/nbQA-dev/nbQA
83
+ rev: 1.8.5
84
+ hooks:
85
+ - id: nbqa-black
86
+ - repo: local
87
+ hooks:
88
+ - id: security-sanitizer
89
+ name: Security and Garbage Sanitizer
90
+ entry: python scripts/security_sanitizer.py
91
+ language: python
92
+ pass_filenames: false
93
+ always_run: true