syntaxmatrix 2.3.5__tar.gz → 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.
Files changed (68) hide show
  1. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/PKG-INFO +2 -2
  2. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/SyntaxMatrix.egg-info/PKG-INFO +2 -2
  3. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/SyntaxMatrix.egg-info/SOURCES.txt +0 -1
  4. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/setup.py +2 -2
  5. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/__init__.py +2 -2
  6. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/routes.py +25 -20
  7. syntaxmatrix-2.3.5/syntaxmatrix/core.py +0 -1263
  8. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/LICENSE.txt +0 -0
  9. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/README.md +0 -0
  10. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/SyntaxMatrix.egg-info/dependency_links.txt +0 -0
  11. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/SyntaxMatrix.egg-info/requires.txt +0 -0
  12. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/SyntaxMatrix.egg-info/top_level.txt +0 -0
  13. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/pyproject.toml +0 -0
  14. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/setup.cfg +0 -0
  15. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/auth.py +0 -0
  16. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/bootstrap.py +0 -0
  17. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/commentary.py +0 -0
  18. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/db.py +0 -0
  19. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/display.py +0 -0
  20. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/emailer.py +0 -0
  21. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/file_processor.py +0 -0
  22. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/generate_page.py +0 -0
  23. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/gpt_models_latest.py +0 -0
  24. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/history_store.py +0 -0
  25. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/kernel_manager.py +0 -0
  26. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/llm_store.py +0 -0
  27. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/model_templates.py +0 -0
  28. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/models.py +0 -0
  29. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/plottings.py +0 -0
  30. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/profiles.py +0 -0
  31. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/project_root.py +0 -0
  32. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/session.py +0 -0
  33. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/settings/__init__.py +0 -0
  34. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/settings/default.yaml +0 -0
  35. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/settings/logging.py +0 -0
  36. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/settings/model_map.py +0 -0
  37. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/settings/prompts.py +0 -0
  38. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/settings/string_navbar.py +0 -0
  39. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/smiv.py +0 -0
  40. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/smpv.py +0 -0
  41. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/css/style.css +0 -0
  42. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/docs.md +0 -0
  43. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/icons/favicon.png +0 -0
  44. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/icons/logo.png +0 -0
  45. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/icons/svg_497526.svg +0 -0
  46. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/icons/svg_497528.svg +0 -0
  47. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/js/chat.js +0 -0
  48. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/js/sidebar.js +0 -0
  49. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/static/js/widgets.js +0 -0
  50. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/templates/code_cell.html +0 -0
  51. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/templates/dashboard.html +0 -0
  52. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/templates/docs.html +0 -0
  53. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/templates/error.html +0 -0
  54. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/templates/login.html +0 -0
  55. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/templates/register.html +0 -0
  56. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/themes.py +0 -0
  57. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/ui_modes.py +0 -0
  58. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/utils.py +0 -0
  59. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vector_db.py +0 -0
  60. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectordb/__init__.py +0 -0
  61. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectordb/adapters/__init__.py +0 -0
  62. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectordb/adapters/milvus_adapter.py +0 -0
  63. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectordb/adapters/pgvector_adapter.py +0 -0
  64. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectordb/adapters/sqlite_adapter.py +0 -0
  65. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectordb/base.py +0 -0
  66. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectordb/registry.py +0 -0
  67. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/vectorizer.py +0 -0
  68. {syntaxmatrix-2.3.5 → syntaxmatrix-2.5}/syntaxmatrix/workspace_db.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: syntaxmatrix
3
- Version: 2.3.5
3
+ Version: 2.5
4
4
  Summary: SyntaxMUI: A customizable framework for Python AI Assistant Projects.
5
5
  Author: Bob Nti
6
- Author-email: bob.nti@syntaxmatrix.com
6
+ Author-email: bob.nti@syntaxmatrix.net
7
7
  Classifier: Programming Language :: Python :: 3.9
8
8
  Classifier: License :: OSI Approved :: MIT License
9
9
  Classifier: Operating System :: OS Independent
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: syntaxmatrix
3
- Version: 2.3.5
3
+ Version: 2.5
4
4
  Summary: SyntaxMUI: A customizable framework for Python AI Assistant Projects.
5
5
  Author: Bob Nti
6
- Author-email: bob.nti@syntaxmatrix.com
6
+ Author-email: bob.nti@syntaxmatrix.net
7
7
  Classifier: Programming Language :: Python :: 3.9
8
8
  Classifier: License :: OSI Approved :: MIT License
9
9
  Classifier: Operating System :: OS Independent
@@ -11,7 +11,6 @@ syntaxmatrix/__init__.py
11
11
  syntaxmatrix/auth.py
12
12
  syntaxmatrix/bootstrap.py
13
13
  syntaxmatrix/commentary.py
14
- syntaxmatrix/core.py
15
14
  syntaxmatrix/db.py
16
15
  syntaxmatrix/display.py
17
16
  syntaxmatrix/emailer.py
@@ -8,9 +8,9 @@ with open(os.path.join(this_directory, "README.md"), encoding="utf-8") as f:
8
8
 
9
9
  setup(
10
10
  name="syntaxmatrix",
11
- version="2.3.5",
11
+ version="2.5",
12
12
  author="Bob Nti",
13
- author_email="bob.nti@syntaxmatrix.com",
13
+ author_email="bob.nti@syntaxmatrix.net",
14
14
  description="SyntaxMUI: A customizable framework for Python AI Assistant Projects.",
15
15
  long_description=long_description,
16
16
  long_description_content_type="text/markdown",
@@ -44,8 +44,8 @@ get_widget_value = _app_instance.get_widget_value
44
44
  save_embed_model = _app_instance.save_embed_model
45
45
  load_embed_model = _app_instance.load_embed_model
46
46
  delete_embed_key = _app_instance.delete_embed_key
47
- set_prompt_profile = _app_instance.set_prompt_profile
48
- set_prompt_instructions = _app_instance.set_prompt_instructions
47
+ set_smxai_identity = _app_instance.set_smxai_identity
48
+ set_smxai_instructions = _app_instance.set_smxai_instructions
49
49
  set_website_description = _app_instance.set_website_description
50
50
  smiv_index = _app_instance.smiv_index
51
51
  smpv_search = _app_instance.smpv_search
@@ -24,9 +24,7 @@ from syntaxmatrix.vector_db import *
24
24
  from syntaxmatrix.settings.string_navbar import string_navbar_items
25
25
  from syntaxmatrix.settings.model_map import PROVIDERS_MODELS, MODEL_DESCRIPTIONS, PURPOSE_TAGS, EMBEDDING_MODELS
26
26
  from .project_root import detect_project_root
27
- from . import profiles as _prof
28
27
  from . import generate_page as _genpage
29
- from . import profiles as _prof
30
28
  from . import auth as _auth
31
29
  from syntaxmatrix import profiles as _prof
32
30
  from syntaxmatrix.gpt_models_latest import set_args, extract_output_text as _out
@@ -3769,7 +3767,7 @@ def setup_routes(smx):
3769
3767
 
3770
3768
 
3771
3769
  # if any live cached profile on smx matches this name, clear it
3772
- for attr in ("_chat_profile", "_admin_profile", "_coding_profile", "_classification_profile", "_summarization_profile"):
3770
+ for attr in ("_chat_profile", "_admin_profile", "_coding_profile", "_classification_profile", "_summarization_profile", "_vision2text_profile"):
3773
3771
  prof = getattr(smx, attr, None)
3774
3772
  if isinstance(prof, dict) and prof.get("name") == name:
3775
3773
  setattr(smx, attr, {})
@@ -3944,7 +3942,7 @@ def setup_routes(smx):
3944
3942
  <label for="catalog_model">Model</label>
3945
3943
  <select id="catalog_model" name="catalog_model" required></select>
3946
3944
 
3947
- <label for="catalog_purpose">Purpose</label>
3945
+ <label for="catalog_purpose">Agency</label>
3948
3946
  <select id="catalog_purpose" name="catalog_purpose" required></select>
3949
3947
 
3950
3948
  <label class="form-label mb-1" style="display:block; position:relative;">
@@ -4066,7 +4064,7 @@ def setup_routes(smx):
4066
4064
 
4067
4065
  models_catalog_list_card = f"""
4068
4066
  <div class="card span-4">
4069
- <h4>Models Catalog</h4>
4067
+ <h4>Models Catalogue</h4>
4070
4068
  <ul class="catalog-list">
4071
4069
  {cat_items or "<li class='li-row'>No models yet.</li>"}
4072
4070
  </ul>
@@ -4080,15 +4078,15 @@ def setup_routes(smx):
4080
4078
  <div class='card span-4'>
4081
4079
  <h4>Setup Profiles</h4>
4082
4080
  <form method="post" style="margin-bottom:0.5rem;">
4083
- <label for="profile_name" class="form-label mb-1">
4084
- Confirm purpose
4081
+ <label for="profile_name" class="form-label mb-1" style="margin-bottom:12px;">
4082
+ Confirm Agency
4085
4083
  <button id="name-help" type="button" class="info-btn btn-link p-0 text-muted"
4086
4084
  style="font-size:0.8rem; line-height:1; padding:2px; display:inline-block;"
4087
4085
  aria-haspopup="true" aria-expanded="false"
4088
- title="Click to see naming suggestions">ⓘ</button>
4086
+ title="Click to see agencies">ⓘ</button>
4089
4087
  </label>
4090
4088
  <input id="profile_name" name="profile_name" type="text" class="form-control"
4091
- placeholder="Purpose" required>
4089
+ placeholder="Agency" required>
4092
4090
 
4093
4091
  <div id="name-suggestions" role="tooltip"
4094
4092
  class="suggestion-popover card shadow-sm p-2"
@@ -4175,9 +4173,9 @@ def setup_routes(smx):
4175
4173
 
4176
4174
  manage_sys_files_card = f"""
4177
4175
  <div class='card span-6'>
4178
- <h4>Manage System Files</h4>
4176
+ <h4>Manage Company Files</h4>
4179
4177
  <ul class="catalog-list" style="list-style:none; padding-left:0; margin:0;">
4180
- {sys_files_html or "<li>No system file has been uploaded yet.</li>"}
4178
+ {sys_files_html or "<li>No company file has been uploaded yet.</li>"}
4181
4179
  </ul>
4182
4180
  </div>
4183
4181
  """
@@ -5422,9 +5420,15 @@ def setup_routes(smx):
5422
5420
  ).strip()
5423
5421
 
5424
5422
  elif prof["provider"] == "openai" and _model in smx.gpt_models_latest():
5425
- args = set_args(model=prof.get("model"), instructions=_CELL_REPAIR_RULES,
5426
- input=_prompt, previous_id=None, store=False,
5427
- reasoning_effort="minimal", verbosity="low")
5423
+ args = set_args(
5424
+ model=prof.get("model"),
5425
+ instructions=_CELL_REPAIR_RULES,
5426
+ input=_prompt,
5427
+ previous_id=None,
5428
+ store=False,
5429
+ reasoning_effort="minimal",
5430
+ verbosity="low"
5431
+ )
5428
5432
  fixed = _out(_client.responses.create(**args)).strip()
5429
5433
 
5430
5434
  elif prof["provider"] == "anthropic":
@@ -5446,7 +5450,8 @@ def setup_routes(smx):
5446
5450
  ).strip()
5447
5451
 
5448
5452
  try:
5449
- ast.parse(fixed); return fixed
5453
+ ast.parse(fixed);
5454
+ return fixed
5450
5455
  except SyntaxError:
5451
5456
  return code
5452
5457
  ################################################################
@@ -5544,15 +5549,15 @@ def setup_routes(smx):
5544
5549
  # ----- Build a single HTML with Result + Commentary + AI Code ----------
5545
5550
  _buf_out, _buf_err = io.StringIO(), io.StringIO()
5546
5551
  with contextlib.redirect_stdout(_buf_out), contextlib.redirect_stderr(_buf_err):
5547
- # 1 Exact result blocks (already cleaned by kernel_manager)
5552
+ # Exact result blocks (already cleaned by kernel_manager)
5548
5553
  result_html = rendered_html if rendered_html.strip() else "<pre>No output.</pre>"
5549
5554
 
5550
- # 2 Commentary (we already have the raw HTML via wrap_html)
5555
+ # Commentary (we already have the raw HTML via wrap_html)
5551
5556
  commentary_html = wrap_html(commentary_text)
5552
5557
 
5553
5558
  code_html = _render_code_block("AI Generated Code", ai_code)
5554
5559
 
5555
- full_body_html = "\n" + askai_question + "\n" + result_html + "\n" + commentary_html + "\n" + code_html
5560
+ full_body_html = "\n" + askai_question + "\n" + result_html + "\n" + code_html + "\n" + commentary_html
5556
5561
 
5557
5562
  html_doc = (
5558
5563
  "<!doctype html>"
@@ -5576,7 +5581,7 @@ def setup_routes(smx):
5576
5581
 
5577
5582
  _last_result_html[session_id] = html_doc
5578
5583
 
5579
- # 2.4 Append a single download button (explicit click → fetch → download)
5584
+ # Append a single download button (explicit click → fetch → download)
5580
5585
  download_url = url_for("download_result_html", session_id=session_id)
5581
5586
  dl_html = f"""
5582
5587
  <a href="{download_url}">
@@ -5602,7 +5607,7 @@ def setup_routes(smx):
5602
5607
  "output": num_records,
5603
5608
  "code": "df.shape"
5604
5609
  })
5605
- preview_cols = df.columns[:8]
5610
+ preview_cols = df.columns
5606
5611
  data_cells.append({
5607
5612
  "title": "Data Preview",
5608
5613
  "output": Markup(datatable_box(df[preview_cols].head(8))),