abstractassistant 0.2.7__py3-none-any.whl → 0.3.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- abstractassistant/app.py +295 -179
- abstractassistant/core/llm_manager.py +189 -19
- abstractassistant/core/tts_manager.py +75 -25
- abstractassistant/ui/history_dialog.py +5 -5
- abstractassistant/ui/qt_bubble.py +379 -229
- abstractassistant/ui/toast_window.py +14 -15
- abstractassistant/ui/ui_styles.py +2 -2
- abstractassistant/utils/icon_generator.py +271 -139
- abstractassistant/utils/markdown_renderer.py +1 -1
- {abstractassistant-0.2.7.dist-info → abstractassistant-0.3.1.dist-info}/METADATA +13 -15
- abstractassistant-0.3.1.dist-info/RECORD +28 -0
- setup_macos_app.py +64 -10
- abstractassistant-0.2.7.dist-info/RECORD +0 -28
- {abstractassistant-0.2.7.dist-info → abstractassistant-0.3.1.dist-info}/WHEEL +0 -0
- {abstractassistant-0.2.7.dist-info → abstractassistant-0.3.1.dist-info}/entry_points.txt +0 -0
- {abstractassistant-0.2.7.dist-info → abstractassistant-0.3.1.dist-info}/licenses/LICENSE +0 -0
- {abstractassistant-0.2.7.dist-info → abstractassistant-0.3.1.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
setup_macos_app.py,sha256=9dIPr9TipjtgdIhd0MnR2syRNoFyBVMnRsWDW0UCT3A,10736
|
|
2
|
+
abstractassistant/__init__.py,sha256=homfqMDh6sX2nBROtk6-y72jnrStPph8gEOeT0OjKyU,35
|
|
3
|
+
abstractassistant/app.py,sha256=yGFszbaqja_Y1ejSMcVYIcq8f1qdeZpVTb032geI-ZE,40374
|
|
4
|
+
abstractassistant/cli.py,sha256=SQPxQCLjX-LOlhSEvG302D0AOyxlxo5QM2imxr9wxmc,4385
|
|
5
|
+
abstractassistant/config.py,sha256=KodfPYTpHtavJyne-h-B-r3kbEt1uusSY8GknGLtDL8,5809
|
|
6
|
+
abstractassistant/create_app_bundle.py,sha256=LAZdp2C90ikMVd3KPdwNYBYUASbHpypOJIwvx6fQyXM,1698
|
|
7
|
+
abstractassistant/web_server.py,sha256=_pqMzy13qfim9BMBqQJQifWyX7UQXFD_sZeiu4ZBt40,12816
|
|
8
|
+
abstractassistant/core/__init__.py,sha256=TETStgToTe7QSsCZgRHDk2oSErlLJoeGN0sFg4Yx2_c,15
|
|
9
|
+
abstractassistant/core/llm_manager.py,sha256=hJun-nDfRv9zxv_3tfrHAmVYSYT96E-0zDJB2TiaSeQ,19226
|
|
10
|
+
abstractassistant/core/tts_manager.py,sha256=Cxh302EgIycwkWxe7XntmLW-j_WusbJOYRCs3Jms3CU,9892
|
|
11
|
+
abstractassistant/ui/__init__.py,sha256=aRNE2pS50nFAX6y--rSGMNYwhz905g14gRd6g4BolYU,13
|
|
12
|
+
abstractassistant/ui/chat_bubble.py,sha256=TE6zPtQ46I9grKGAb744wHqk4yO6-und3iif8_33XGk,11357
|
|
13
|
+
abstractassistant/ui/history_dialog.py,sha256=25EVyf3-8Kaw1bZPTZe8G-uqw_KnP2t--OgAjsxC06w,18548
|
|
14
|
+
abstractassistant/ui/provider_manager.py,sha256=9IM-BxIs6lUlk6cDCBi7oZFMXmn4CFMlxh0s-_vhzXY,8403
|
|
15
|
+
abstractassistant/ui/qt_bubble.py,sha256=-J2wzpv9dQ1PCrFyKKNe0fF4SLRskiBtzSvMYrg94cY,96264
|
|
16
|
+
abstractassistant/ui/toast_manager.py,sha256=1aU4DPo-J45bC61gTEctHq98ZrHIFxRfZa_9Q8KF588,13721
|
|
17
|
+
abstractassistant/ui/toast_window.py,sha256=BRSwEBlaND5LLipn1HOX0ISWxVH-zOHsYplFkiPaj_g,21727
|
|
18
|
+
abstractassistant/ui/tts_state_manager.py,sha256=UF_zrfl9wf0hNHBGxevcoKxW5Dh7zXibUSVoSSjGP4o,10565
|
|
19
|
+
abstractassistant/ui/ui_styles.py,sha256=FvE2CVUbHmHu1PKVTBBGyhbt781qh4WjLMrHviln39s,13120
|
|
20
|
+
abstractassistant/utils/__init__.py,sha256=7Q3BxyXETkt3tm5trhuLTyL8PoECOK0QiK-0KUVAR2Q,16
|
|
21
|
+
abstractassistant/utils/icon_generator.py,sha256=SWPgi1V6_8544Zbc2vAfFXAy15H35neyUGCYt2eKoic,16475
|
|
22
|
+
abstractassistant/utils/markdown_renderer.py,sha256=u5tVIhulSwRYADiqJcZNoHhU8e6pJVgzrwZRd61Bov0,12585
|
|
23
|
+
abstractassistant-0.3.1.dist-info/licenses/LICENSE,sha256=QUjFNAE-0yOkW9-Rle2axkpkt9H7xiZ2VbN-VeONhxc,1106
|
|
24
|
+
abstractassistant-0.3.1.dist-info/METADATA,sha256=NVlJ6qu94oAUwf9sOqzgsUMFsMu3CN8h6v0eTaC7WRc,11320
|
|
25
|
+
abstractassistant-0.3.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
26
|
+
abstractassistant-0.3.1.dist-info/entry_points.txt,sha256=MIzeCh0XG6MbhIzBHtkdEjmjxYBsQrGFevq8Y1L8Jkc,118
|
|
27
|
+
abstractassistant-0.3.1.dist-info/top_level.txt,sha256=oEcSXZAqbflTfZRfF4dogUq6TC1Nqyplq4JgC0CZnLI,34
|
|
28
|
+
abstractassistant-0.3.1.dist-info/RECORD,,
|
setup_macos_app.py
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"""
|
|
3
3
|
macOS App Bundle Generator for AbstractAssistant.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
Creates a native macOS .app bundle with Dock integration and system tray support.
|
|
6
|
+
Usage: create-app-bundle (after pip install abstractassistant)
|
|
7
7
|
"""
|
|
8
8
|
|
|
9
9
|
import os
|
|
@@ -11,7 +11,6 @@ import sys
|
|
|
11
11
|
import shutil
|
|
12
12
|
import subprocess
|
|
13
13
|
from pathlib import Path
|
|
14
|
-
from typing import Optional
|
|
15
14
|
|
|
16
15
|
try:
|
|
17
16
|
from PIL import Image
|
|
@@ -143,9 +142,9 @@ class MacOSAppBundleGenerator:
|
|
|
143
142
|
<key>CFBundleDisplayName</key>
|
|
144
143
|
<string>AbstractAssistant</string>
|
|
145
144
|
<key>CFBundleVersion</key>
|
|
146
|
-
<string>0.2.
|
|
145
|
+
<string>0.2.8</string>
|
|
147
146
|
<key>CFBundleShortVersionString</key>
|
|
148
|
-
<string>0.2.
|
|
147
|
+
<string>0.2.8</string>
|
|
149
148
|
<key>CFBundlePackageType</key>
|
|
150
149
|
<string>APPL</string>
|
|
151
150
|
<key>CFBundleSignature</key>
|
|
@@ -185,17 +184,72 @@ class MacOSAppBundleGenerator:
|
|
|
185
184
|
# AbstractAssistant macOS App Launcher
|
|
186
185
|
# This script launches the AbstractAssistant application
|
|
187
186
|
|
|
188
|
-
#
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
187
|
+
# Set up environment paths for GUI launch (common locations)
|
|
188
|
+
export PATH="/usr/local/bin:/opt/homebrew/bin:/usr/bin:/bin:$PATH"
|
|
189
|
+
|
|
190
|
+
# Add user-specific Python paths if they exist
|
|
191
|
+
if [ -d "$HOME/.pyenv/shims" ]; then
|
|
192
|
+
export PATH="$HOME/.pyenv/shims:$PATH"
|
|
193
|
+
fi
|
|
194
|
+
|
|
195
|
+
if [ -d "$HOME/.local/bin" ]; then
|
|
196
|
+
export PATH="$HOME/.local/bin:$PATH"
|
|
197
|
+
fi
|
|
198
|
+
|
|
199
|
+
if [ -d "/opt/anaconda3/bin" ]; then
|
|
200
|
+
export PATH="/opt/anaconda3/bin:$PATH"
|
|
201
|
+
fi
|
|
202
|
+
|
|
203
|
+
if [ -d "$HOME/anaconda3/bin" ]; then
|
|
204
|
+
export PATH="$HOME/anaconda3/bin:$PATH"
|
|
192
205
|
fi
|
|
193
206
|
|
|
207
|
+
# Function to find Python with abstractassistant installed
|
|
208
|
+
find_python_with_abstractassistant() {
|
|
209
|
+
# Try specific paths first (more reliable than PATH-based search)
|
|
210
|
+
for python_path in \\
|
|
211
|
+
"$HOME/.pyenv/versions/*/bin/python3" \\
|
|
212
|
+
"$HOME/.pyenv/shims/python3" \\
|
|
213
|
+
"/usr/local/bin/python3" \\
|
|
214
|
+
"/opt/homebrew/bin/python3" \\
|
|
215
|
+
"/usr/bin/python3" \\
|
|
216
|
+
"/opt/anaconda3/bin/python" \\
|
|
217
|
+
"$HOME/anaconda3/bin/python" \\
|
|
218
|
+
"/usr/local/anaconda3/bin/python"; do
|
|
219
|
+
|
|
220
|
+
# Expand glob patterns
|
|
221
|
+
for py in $python_path; do
|
|
222
|
+
if [ -x "$py" ] && "$py" -c "import abstractassistant" 2>/dev/null; then
|
|
223
|
+
echo "$py"
|
|
224
|
+
return 0
|
|
225
|
+
fi
|
|
226
|
+
done
|
|
227
|
+
done
|
|
228
|
+
|
|
229
|
+
# Fallback to PATH-based search
|
|
230
|
+
for python_cmd in python3 python python3.12 python3.11 python3.10 python3.9; do
|
|
231
|
+
if command -v "$python_cmd" >/dev/null 2>&1; then
|
|
232
|
+
if "$python_cmd" -c "import abstractassistant" 2>/dev/null; then
|
|
233
|
+
echo "$python_cmd"
|
|
234
|
+
return 0
|
|
235
|
+
fi
|
|
236
|
+
fi
|
|
237
|
+
done
|
|
238
|
+
|
|
239
|
+
return 1
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
# Find Python with AbstractAssistant
|
|
243
|
+
PYTHON_EXEC=$(find_python_with_abstractassistant)
|
|
244
|
+
|
|
194
245
|
if [ -z "$PYTHON_EXEC" ]; then
|
|
195
|
-
|
|
246
|
+
osascript -e 'display dialog "AbstractAssistant not found in any Python installation.\\n\\nPlease install it with:\\npip install abstractassistant\\n\\nOr run the create-app-bundle command after installation." with title "AbstractAssistant" buttons {"OK"} default button "OK" with icon caution'
|
|
196
247
|
exit 1
|
|
197
248
|
fi
|
|
198
249
|
|
|
250
|
+
# Change to a neutral directory to avoid importing development versions
|
|
251
|
+
cd /tmp
|
|
252
|
+
|
|
199
253
|
# Launch the assistant
|
|
200
254
|
exec "$PYTHON_EXEC" -m abstractassistant.cli "$@"'''
|
|
201
255
|
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
setup_macos_app.py,sha256=PP-X7UVfv8VmwaOtmNao0Bn3P5oXRAgfs13TXMpNhA8,8806
|
|
2
|
-
abstractassistant/__init__.py,sha256=homfqMDh6sX2nBROtk6-y72jnrStPph8gEOeT0OjKyU,35
|
|
3
|
-
abstractassistant/app.py,sha256=-Nkgj1IruGhiuyMt7-EQPBwxXoeIykaO1FYKlS520zA,34032
|
|
4
|
-
abstractassistant/cli.py,sha256=SQPxQCLjX-LOlhSEvG302D0AOyxlxo5QM2imxr9wxmc,4385
|
|
5
|
-
abstractassistant/config.py,sha256=KodfPYTpHtavJyne-h-B-r3kbEt1uusSY8GknGLtDL8,5809
|
|
6
|
-
abstractassistant/create_app_bundle.py,sha256=LAZdp2C90ikMVd3KPdwNYBYUASbHpypOJIwvx6fQyXM,1698
|
|
7
|
-
abstractassistant/web_server.py,sha256=_pqMzy13qfim9BMBqQJQifWyX7UQXFD_sZeiu4ZBt40,12816
|
|
8
|
-
abstractassistant/core/__init__.py,sha256=TETStgToTe7QSsCZgRHDk2oSErlLJoeGN0sFg4Yx2_c,15
|
|
9
|
-
abstractassistant/core/llm_manager.py,sha256=yIvFj0pSLeC22PsaD0a3I4PjylO5Qvju8P_1e9iyXAM,11376
|
|
10
|
-
abstractassistant/core/tts_manager.py,sha256=vE5SOh16CmeWp_ml_tehmSZxj503KEjz0uCQPXpWOpQ,7819
|
|
11
|
-
abstractassistant/ui/__init__.py,sha256=aRNE2pS50nFAX6y--rSGMNYwhz905g14gRd6g4BolYU,13
|
|
12
|
-
abstractassistant/ui/chat_bubble.py,sha256=TE6zPtQ46I9grKGAb744wHqk4yO6-und3iif8_33XGk,11357
|
|
13
|
-
abstractassistant/ui/history_dialog.py,sha256=jLi8JV6z_yN6yXBsRAF6cPfyPjwsUB-FYlBaInQRF3U,18523
|
|
14
|
-
abstractassistant/ui/provider_manager.py,sha256=9IM-BxIs6lUlk6cDCBi7oZFMXmn4CFMlxh0s-_vhzXY,8403
|
|
15
|
-
abstractassistant/ui/qt_bubble.py,sha256=X9cgvV-s1V_kFQNCB9lr9ODc-raeFoYTIFYepz_uCRc,89142
|
|
16
|
-
abstractassistant/ui/toast_manager.py,sha256=1aU4DPo-J45bC61gTEctHq98ZrHIFxRfZa_9Q8KF588,13721
|
|
17
|
-
abstractassistant/ui/toast_window.py,sha256=EYGRQOzQeR9MYrfdzkxN6FH-y7CaW8Noy5kw3CpQlmw,21609
|
|
18
|
-
abstractassistant/ui/tts_state_manager.py,sha256=UF_zrfl9wf0hNHBGxevcoKxW5Dh7zXibUSVoSSjGP4o,10565
|
|
19
|
-
abstractassistant/ui/ui_styles.py,sha256=VoGlrZI3YJzDKPv9LWz39W3XcFI4N952rkzXb8Musfw,13150
|
|
20
|
-
abstractassistant/utils/__init__.py,sha256=7Q3BxyXETkt3tm5trhuLTyL8PoECOK0QiK-0KUVAR2Q,16
|
|
21
|
-
abstractassistant/utils/icon_generator.py,sha256=MH3giercjE6Dh100EZ_8kw5WC0PVwd5F4inKfRDLp2w,10455
|
|
22
|
-
abstractassistant/utils/markdown_renderer.py,sha256=sTn045glqxh5QU3LIuYp7zQpBIuwf5e3cWZzDz5i0Yw,12620
|
|
23
|
-
abstractassistant-0.2.7.dist-info/licenses/LICENSE,sha256=QUjFNAE-0yOkW9-Rle2axkpkt9H7xiZ2VbN-VeONhxc,1106
|
|
24
|
-
abstractassistant-0.2.7.dist-info/METADATA,sha256=oE3-3e4BiaeEFEYv6q7yHiUG45aAGnwcFHZ3SUhdH7A,11283
|
|
25
|
-
abstractassistant-0.2.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
26
|
-
abstractassistant-0.2.7.dist-info/entry_points.txt,sha256=MIzeCh0XG6MbhIzBHtkdEjmjxYBsQrGFevq8Y1L8Jkc,118
|
|
27
|
-
abstractassistant-0.2.7.dist-info/top_level.txt,sha256=oEcSXZAqbflTfZRfF4dogUq6TC1Nqyplq4JgC0CZnLI,34
|
|
28
|
-
abstractassistant-0.2.7.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|