hdsp-jupyter-extension 2.0.7__py3-none-any.whl → 2.0.8__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.
Files changed (78) hide show
  1. agent_server/core/embedding_service.py +67 -46
  2. agent_server/core/rag_manager.py +31 -17
  3. agent_server/core/retriever.py +13 -8
  4. agent_server/core/vllm_embedding_service.py +243 -0
  5. agent_server/langchain/agent.py +8 -0
  6. agent_server/langchain/custom_middleware.py +58 -31
  7. agent_server/langchain/hitl_config.py +6 -1
  8. agent_server/langchain/logging_utils.py +53 -14
  9. agent_server/langchain/prompts.py +47 -16
  10. agent_server/langchain/tools/__init__.py +13 -0
  11. agent_server/langchain/tools/file_tools.py +285 -7
  12. agent_server/langchain/tools/file_utils.py +334 -0
  13. agent_server/langchain/tools/lsp_tools.py +264 -0
  14. agent_server/main.py +7 -0
  15. agent_server/routers/langchain_agent.py +115 -19
  16. agent_server/routers/rag.py +8 -3
  17. hdsp_agent_core/models/rag.py +15 -1
  18. hdsp_agent_core/services/rag_service.py +6 -1
  19. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/build_log.json +1 -1
  20. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/package.json +3 -2
  21. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.4770ec0fb2d173b6deb4.js → hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.8740a527757068814573.js +160 -3
  22. hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.8740a527757068814573.js.map +1 -0
  23. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.29cf4312af19e86f82af.js → hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.e4ff4b5779b5e049f84c.js +1759 -221
  24. hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.e4ff4b5779b5e049f84c.js.map +1 -0
  25. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.61343eb4cf0577e74b50.js → hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.020cdb0b864cfaa4e41e.js +14 -12
  26. hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.020cdb0b864cfaa4e41e.js.map +1 -0
  27. jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js → hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js +2 -209
  28. hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js.map +1 -0
  29. jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js → hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js +209 -2
  30. hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js.map +1 -0
  31. jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js → hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js +212 -3
  32. hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js.map +1 -0
  33. {hdsp_jupyter_extension-2.0.7.dist-info → hdsp_jupyter_extension-2.0.8.dist-info}/METADATA +1 -1
  34. {hdsp_jupyter_extension-2.0.7.dist-info → hdsp_jupyter_extension-2.0.8.dist-info}/RECORD +66 -63
  35. jupyter_ext/__init__.py +18 -0
  36. jupyter_ext/_version.py +1 -1
  37. jupyter_ext/handlers.py +176 -1
  38. jupyter_ext/labextension/build_log.json +1 -1
  39. jupyter_ext/labextension/package.json +3 -2
  40. jupyter_ext/labextension/static/{frontend_styles_index_js.4770ec0fb2d173b6deb4.js → frontend_styles_index_js.8740a527757068814573.js} +160 -3
  41. jupyter_ext/labextension/static/frontend_styles_index_js.8740a527757068814573.js.map +1 -0
  42. jupyter_ext/labextension/static/{lib_index_js.29cf4312af19e86f82af.js → lib_index_js.e4ff4b5779b5e049f84c.js} +1759 -221
  43. jupyter_ext/labextension/static/lib_index_js.e4ff4b5779b5e049f84c.js.map +1 -0
  44. jupyter_ext/labextension/static/{remoteEntry.61343eb4cf0577e74b50.js → remoteEntry.020cdb0b864cfaa4e41e.js} +14 -12
  45. jupyter_ext/labextension/static/remoteEntry.020cdb0b864cfaa4e41e.js.map +1 -0
  46. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js → jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js +2 -209
  47. jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js.map +1 -0
  48. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js → jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js +209 -2
  49. jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js.map +1 -0
  50. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js → jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js +212 -3
  51. jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js.map +1 -0
  52. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.4770ec0fb2d173b6deb4.js.map +0 -1
  53. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.29cf4312af19e86f82af.js.map +0 -1
  54. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.61343eb4cf0577e74b50.js.map +0 -1
  55. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js.map +0 -1
  56. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js.map +0 -1
  57. hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js.map +0 -1
  58. jupyter_ext/labextension/static/frontend_styles_index_js.4770ec0fb2d173b6deb4.js.map +0 -1
  59. jupyter_ext/labextension/static/lib_index_js.29cf4312af19e86f82af.js.map +0 -1
  60. jupyter_ext/labextension/static/remoteEntry.61343eb4cf0577e74b50.js.map +0 -1
  61. jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js.map +0 -1
  62. jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js.map +0 -1
  63. jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js.map +0 -1
  64. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/etc/jupyter/jupyter_server_config.d/hdsp_jupyter_extension.json +0 -0
  65. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/install.json +0 -0
  66. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js +0 -0
  67. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js.map +0 -0
  68. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js +0 -0
  69. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js.map +0 -0
  70. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/style.js +0 -0
  71. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js +0 -0
  72. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js.map +0 -0
  73. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js +0 -0
  74. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js.map +0 -0
  75. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js +0 -0
  76. {hdsp_jupyter_extension-2.0.7.data → hdsp_jupyter_extension-2.0.8.data}/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js.map +0 -0
  77. {hdsp_jupyter_extension-2.0.7.dist-info → hdsp_jupyter_extension-2.0.8.dist-info}/WHEEL +0 -0
  78. {hdsp_jupyter_extension-2.0.7.dist-info → hdsp_jupyter_extension-2.0.8.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hdsp-jupyter-extension
3
- Version: 2.0.7
3
+ Version: 2.0.8
4
4
  Summary: HDSP Agent JupyterLab Extension - Thin client for Agent Server
5
5
  Project-URL: Homepage, https://github.com/yourusername/hdsp-agent
6
6
  Project-URL: Bug Tracker, https://github.com/yourusername/hdsp-agent/issues
@@ -1,69 +1,72 @@
1
- jupyter_ext/__init__.py,sha256=Du4qO0p8Fa91WlMsPJ1Cu5f65HpG4Mt8QgD9s7nn23M,8228
2
- jupyter_ext/_version.py,sha256=8HfrU90jJWsx7hTAe0kOXDMe8jHyZtkikN_CGirqhXo,171
1
+ jupyter_ext/__init__.py,sha256=Q2JZdD99HBZVXukjTNE9C4BE8N5hyAqIW4365mzls8k,9042
2
+ jupyter_ext/_version.py,sha256=HEjwx4Z7F8kuClyHAsV4wKx1ISRZRK-llKMsA0g8L_w,171
3
3
  jupyter_ext/config.py,sha256=I38C6P24rtC2uu3SFGRpXLd-YVUxTxe_bfdCHgi54OM,3262
4
- jupyter_ext/handlers.py,sha256=YRi_B0orZvnlk3ZB-qwlnM18VV-7VGhlkHh3-bz1IyE,67590
4
+ jupyter_ext/handlers.py,sha256=-Q_2Wa2z6Zp6XggWfgv9QLfXXDyB9_q4tqEhp0hp4fo,74055
5
5
  jupyter_ext/resource_usage.py,sha256=ymLaC934ryXLGZzMRkBMlQKaeUyCMofDN7dCMWl8B8A,6019
6
6
  jupyter_ext/etc/jupyter/jupyter_server_config.d/hdsp_jupyter_extension.json,sha256=KXCyKfoeM1OxdPWa0wL2plndcqJkQ7ke3UaF0tJpMW0,86
7
- jupyter_ext/labextension/build_log.json,sha256=V5p6XH3SD8LYW_Co5AHSOLX6HSHKLnrjM_3MHZFnUaE,23379
8
- jupyter_ext/labextension/package.json,sha256=8I2TpWyfMjsnNkW-gZ0Ybmxumh4w2_P4gT9P2kRHhas,4520
9
- jupyter_ext/labextension/static/frontend_styles_index_js.4770ec0fb2d173b6deb4.js,sha256=stGNmJ09Nihnkh5VxuKR3MvszMwjdTFtHKanTE9_EiQ,287397
10
- jupyter_ext/labextension/static/frontend_styles_index_js.4770ec0fb2d173b6deb4.js.map,sha256=hxlMzhfMYVKmw8WUpnkuQAxyeEolgGWguEuusYNN3WE,337462
11
- jupyter_ext/labextension/static/lib_index_js.29cf4312af19e86f82af.js,sha256=Vc1uwpJVStm7HJ9OpvW7QLJfPe7l3ZWVnsVSvWWDAoM,689900
12
- jupyter_ext/labextension/static/lib_index_js.29cf4312af19e86f82af.js.map,sha256=nDazMfrXOrnA6av5cs9UISprjEVzbXfVb1VPWhtYrVg,746402
7
+ jupyter_ext/labextension/build_log.json,sha256=Ip4U2Nbj12-sZIX-0VhtFvJhi9L2t4XloIiX6BjZ8ZM,23379
8
+ jupyter_ext/labextension/package.json,sha256=e7VJHtBqz1S_kH6PY5ZlJop6Do2K9GNupmNYqBIeDHw,4558
9
+ jupyter_ext/labextension/static/frontend_styles_index_js.8740a527757068814573.js,sha256=oW12TMJLTuB6djRUIkJEaKmbdPeoSAY1U8U8vE5Ui8Y,299275
10
+ jupyter_ext/labextension/static/frontend_styles_index_js.8740a527757068814573.js.map,sha256=WhT_5yoc6xaEBt_NX8eIMf_kou3lJNTfQb4IMRxbqco,351701
11
+ jupyter_ext/labextension/static/lib_index_js.e4ff4b5779b5e049f84c.js,sha256=ipaR3p6o8hsLaD54VQlVtrnzouoznz5RtBVaxvXsuSQ,756990
12
+ jupyter_ext/labextension/static/lib_index_js.e4ff4b5779b5e049f84c.js.map,sha256=DFZLKAHF9cqa-yz5Muo4Gt31TPACS7GQFdWmwrkrFVI,820408
13
13
  jupyter_ext/labextension/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js,sha256=59fuOBtJBzroB6mOhgCCSVbb0fSd90byTSSV2EvCsK4,4535
14
14
  jupyter_ext/labextension/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js.map,sha256=fRpFrcMlzgxQF-phepTC8-BRZwO1mDldaoMwJV_uY-Y,3116
15
15
  jupyter_ext/labextension/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js,sha256=o4ve2_dvZmfE0CZCaeBu11qYu-5OB2zDOAr5hWrIKn4,4535
16
16
  jupyter_ext/labextension/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js.map,sha256=6gSs6dXiA5iQ3YiRSel1Ig2i4urNXU-HEEcHInczjOM,3116
17
- jupyter_ext/labextension/static/remoteEntry.61343eb4cf0577e74b50.js,sha256=lxVR2RfmOTDaN61e-Zi1m_9x-VUuYFEtAdVcEWsjMdg,38383
18
- jupyter_ext/labextension/static/remoteEntry.61343eb4cf0577e74b50.js.map,sha256=nzt_RGFJJF6Ns3dLX9RyxeVNd4ar48yfshSSoWTVbHE,37138
17
+ jupyter_ext/labextension/static/remoteEntry.020cdb0b864cfaa4e41e.js,sha256=ZgnshmaS5b8Zkb_ZIT9bchqxfBa1vKIew-E0Wyh5pl8,38463
18
+ jupyter_ext/labextension/static/remoteEntry.020cdb0b864cfaa4e41e.js.map,sha256=knjZEWmuo7zRfi_81WK1THWwHD825dsrV5tjziWJmws,37219
19
19
  jupyter_ext/labextension/static/style.js,sha256=Sb-Ji_5-ejVKmmKUV2b3sfuP7iFYDAgFFfT1Jt0hRcE,163
20
20
  jupyter_ext/labextension/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js,sha256=oCoskp4kEWGDCpNbXfW5AwnzBEZ5OUiO9Tq7An4ORJc,17120
21
21
  jupyter_ext/labextension/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js.map,sha256=MkPt1pMGQa_0-5BWR36xjPnwdr4BQai1hf3zlHIHgis,16964
22
- jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js,sha256=8iMTBMEzMB-pBxjmb6buwCmftIt-IVJwM_MviYzWfSw,80486
23
- jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js.map,sha256=ddmrhd26Sbk7W-4dVGoKj1sZOXvKmC7lbLI2LQNIjd8,74472
24
- jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js,sha256=AOQJdHwyyL6LTWf9_wFPt1VWktb3sVWcbpeGzjvbokQ,44590
25
- jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js.map,sha256=4D2gNLoj-frmItDhokqEslfj1K9BvuTJuWEuzY9uXLg,43784
22
+ jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js,sha256=wzNlZbG78o1o8VdysX4Jh8svCJn7EkCEsWysYVNDA_M,72770
23
+ jupyter_ext/labextension/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js.map,sha256=ezT6x--1WMPEaTvc-Hls3--P26cDONPdLIJoVturnZY,65792
24
+ jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js,sha256=k2kgP3oQDAk-1SnNqBErcJNjPDaVau6RaKqWLlhWPhk,52636
25
+ jupyter_ext/labextension/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js.map,sha256=vOmkYMCMF8wPvjg0KkidY8nqkUKsRFACvMrOZ9oCV5I,52519
26
26
  jupyter_ext/labextension/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js,sha256=ei2Rn4RgH5MPqmhYKgavrxtq7O8m3tKAhi7DZtm41GA,23091
27
27
  jupyter_ext/labextension/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js.map,sha256=wcO4207yUzmN33D_MSJBxQynNmUI6GWQLOqvDw7nRbU,17846
28
28
  jupyter_ext/labextension/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js,sha256=stuAnHjRqwUbf11qPnbXV4HyWwtj-CtvGis3BDrZlXw,3064261
29
29
  jupyter_ext/labextension/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js.map,sha256=_p6BJKXfq9zLGeBkN7gezYwZljO4adpNKqjwD3N79GY,2210898
30
- jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js,sha256=WYjamSz7OZgg-63elljAfF3Z5h1bL04WMOdSBhdbrHk,287039
31
- jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js.map,sha256=bTY2LeslfnSHt5Vhhjeu4_kCCt4BTJKpYLJ3DmQU6TY,254121
30
+ jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js,sha256=YCT05xGYLDCpIYCyDWyhZdWrPAu_L_ZdhvxpVBtG2G8,295007
31
+ jupyter_ext/labextension/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js.map,sha256=08fBThOCy0BnlvpXxZGsM97YcU0Ik7UCgaMDxmUg8F0,262831
32
32
  jupyter_ext/tests/test_handlers.py,sha256=SAt-WFOF0K0M8yWv4YIfltioBfradGT-3yZ4YBdBRcI,2082
33
33
  agent_server/__init__.py,sha256=YF9Kl0x5WKxiqA_Ma0M7FjeQWHCBAvker-v5Y40F1x0,196
34
- agent_server/main.py,sha256=mdqEyaKyM5nOFzTDz-__CFkV3y1L3ZzJO9vw2MrK9_8,5381
34
+ agent_server/main.py,sha256=fXx92MmQiisOcGhFcOjjQLY-02rN-nayS5M7nDoeeMw,5751
35
35
  agent_server/core/__init__.py,sha256=KiIQyCJFmJKLpHueS4SPyhNafnupgv2izISdOePTFCc,2262
36
36
  agent_server/core/api_key_manager.py,sha256=4GA3wsKcGyUTO3m9Rb1I5j1z4n6mde9pBWfPROwzDm4,14699
37
37
  agent_server/core/code_validator.py,sha256=VY1oHUZ0sefhj0Bi5g1OoRab9DNatXDAUkJbdLN5Kyk,44487
38
38
  agent_server/core/context_condenser.py,sha256=IO7N-Kbi97oPv85QUQ5x_rMkrJ77hIXu2tH_yPQVTlw,10040
39
- agent_server/core/embedding_service.py,sha256=jaYs22cYAADEs-_DcuCp6CSR40ZilFW-O0Aa5zzWlZI,7921
39
+ agent_server/core/embedding_service.py,sha256=3bDl2rASJpovkYscqmvTUmIcV6nVQOiojSQc8UOXZqs,8873
40
40
  agent_server/core/error_classifier.py,sha256=Gk9gRVF_9TJ_lwKQyajEpJtbm_5f_FSLjERtskE8pWQ,22025
41
41
  agent_server/core/llm_client.py,sha256=eiBgz-3Ymzk3OVBSADeoCTsidma0pTolxYt5Dfazqgw,3153
42
42
  agent_server/core/llm_service.py,sha256=uRFdmrby5CYqrz3qPSDK2jWA_KFMcnCy5Tv0MHucerw,27833
43
43
  agent_server/core/notebook_generator.py,sha256=PDRi7-E4aQRDqZqHxpHMxMs7S7j6RNFyhEIpuH7cKVo,9668
44
44
  agent_server/core/prompt_builder.py,sha256=DPqdowGzfZLIKezhqHhnHY_5WsYEMcTUE1PWZHGympg,1092
45
- agent_server/core/rag_manager.py,sha256=XWkFmHoCfT3gNVdif-X108oI1MDkVNz4eHdWz_lUp84,26203
45
+ agent_server/core/rag_manager.py,sha256=WDt26BaVv5sa6iiSFPS93DxgXU-FQkLmN5KT8na8blQ,27071
46
46
  agent_server/core/reflection_engine.py,sha256=2y5Ml7lOMslKyFtFiQRHlErjiLsXTg6uJ1mZ0xNm78Y,16196
47
- agent_server/core/retriever.py,sha256=FSmr_Cf6EH2Ax2Rwb9C3e5imBtn35FzRjtSTHaZ-JaU,7583
47
+ agent_server/core/retriever.py,sha256=_KfN9jHA_NVV6SZvmruhLXAa6YYkM3pLFtq3Um8vdcI,7797
48
48
  agent_server/core/state_verifier.py,sha256=ZvCEtYG8-7gz5Fp-EsEc-TmC4XyjzJzimfd8u_1CLbU,15410
49
49
  agent_server/core/summary_generator.py,sha256=sdQtxnCafU5Vqpv8k-uWvNfF34nhEbo1zqA7OR2TGLE,16230
50
50
  agent_server/core/task_manager.py,sha256=-KFp8aS4pJUya7CJYxLm-piZyKLhivvCX7HQ4fy1oM0,6387
51
+ agent_server/core/vllm_embedding_service.py,sha256=H-0SYL84h-8OAhQzkTozbyu0ekTP-4yIIKq-I7Olv8o,7429
51
52
  agent_server/knowledge/__init__.py,sha256=6xV1zhCEIXrugMk7CQmsDkKgqqllQRCAPBMOUVYmamI,229
52
53
  agent_server/knowledge/watchdog_service.py,sha256=o0O_erqC1QrrmkNgLCqdvg3Mo4ILReiGUIzSxB8ZpL4,11107
53
54
  agent_server/langchain/ARCHITECTURE.md,sha256=8leVOYYdbfnN-DU9vmqtlss9LPsUUUesWB7gYwAyUX8,36892
54
55
  agent_server/langchain/__init__.py,sha256=uol-jV2VVlM4_kW3X301Asf5WovJfdgRAHQM6k9U7o8,615
55
- agent_server/langchain/agent.py,sha256=B69ASjVOXyK0uW5Wx5Qnf6nkRwDj4zRU21kGkl1WGlA,8189
56
- agent_server/langchain/custom_middleware.py,sha256=hx_bB3TE6Brqcv_WIG7zam94u_iL5ECIw2J0Hx6Twlg,23392
57
- agent_server/langchain/hitl_config.py,sha256=LOvwDc0MzbnUz1meCjdI6LUYdhcYaQHjorYPUlyDzG8,2587
56
+ agent_server/langchain/agent.py,sha256=QMf-rBEDYE6XzDVkqexDrK31M-o1it0ZSD5Njae7ALw,8381
57
+ agent_server/langchain/custom_middleware.py,sha256=iEs3o_9LCkq9iOdsw4uWkKeHLyZNrmGZ6ueSvIGXWuw,24393
58
+ agent_server/langchain/hitl_config.py,sha256=7fyuX9mHq-x9q_XA-x8bo4FFDduKpKgksK30tvSxSqw,2818
58
59
  agent_server/langchain/llm_factory.py,sha256=rQhXO5c-wuouGskxgy9-pAFmjawd_hBKmfIhafgt3fw,5108
59
- agent_server/langchain/logging_utils.py,sha256=La4C_YHctStGlKry3Ru2CEVB-ZAF2lavewHS5rW-cwY,6287
60
- agent_server/langchain/prompts.py,sha256=AtROXdGZAeaE4N2Ius1L3uGxCq-iz7CT_IE9_cONZB4,5626
60
+ agent_server/langchain/logging_utils.py,sha256=8K99qUV71Y_l8k01u897F5esZ1CuEyfBgy07KUch3hc,8065
61
+ agent_server/langchain/prompts.py,sha256=XINkbQI7s4o3FVq1WYXhVIb4757KJsfkNGCDgeRsKKI,6885
61
62
  agent_server/langchain/state.py,sha256=c439fYtlDnhaZB_mhdB5OLd_LGQNFe0BuFOI-ADhJEc,4319
62
63
  agent_server/langchain/executors/__init__.py,sha256=S5B_jW-TXuvrvAonWFuJvHx90ao-1RFpOE6eIq1HFRo,199
63
64
  agent_server/langchain/executors/notebook_searcher.py,sha256=IZdC1mfAc93h_VBSJ-Q19MRJGRtot02_pLb4Me3L4zM,15367
64
- agent_server/langchain/tools/__init__.py,sha256=ruC1ho8mG-zQ8rK0q-BoChtrO6SbMZvDHVGoAQoGPKM,1294
65
- agent_server/langchain/tools/file_tools.py,sha256=INZAqUHivF2aZXyo7G85t8g28tyjJB2tumQTVOtuDKQ,7288
65
+ agent_server/langchain/tools/__init__.py,sha256=LEm-6PcfkdNvBtlGz_eq0e6p5a2mYYsWmUnWwfSnErY,1689
66
+ agent_server/langchain/tools/file_tools.py,sha256=OaZ_R8Lhk6iJQeXKexwEGvN-wMKVjrY8zSx2uBviy2M,17222
67
+ agent_server/langchain/tools/file_utils.py,sha256=dVXQnXKt2Ja_uEHfccUZVmdfpsXq_xzcZcawlspx_s0,10578
66
68
  agent_server/langchain/tools/jupyter_tools.py,sha256=4FHNxdYFuflVbFoBL7NL3hsEBr1qA_a-vcChACfp3n0,4207
69
+ agent_server/langchain/tools/lsp_tools.py,sha256=q1TqXapd9fx2DQXwukOL9gQPmR0roY-9onEhepjslT0,8563
67
70
  agent_server/langchain/tools/resource_tools.py,sha256=sA-d820aN0L2htNW2Djpk8JKUJXWHc4gNCbNT1_SZQ4,5105
68
71
  agent_server/langchain/tools/search_tools.py,sha256=bAXbcWwT7-ng_3G_gFNv5b45JZst8f_6W_r6FnWEAgw,9617
69
72
  agent_server/langchain/tools/shell_tools.py,sha256=zankxtDBrNaGU1N737ujCPypDOwIy9L7FZTnRavkzJE,1934
@@ -75,8 +78,8 @@ agent_server/routers/chat.py,sha256=jXNdJVTrL-C4SKMWioP4_jI3jhDdnmiQRtpYtaPqOo4,
75
78
  agent_server/routers/config.py,sha256=8QumO4MK2PnfSPTcVBIksqu1WS-FBo3RBzAONU_zZVk,2985
76
79
  agent_server/routers/file_resolver.py,sha256=KNopmolytoC1w9GH7Uor4tklbS2lqUYXea2U8xKPTI4,9237
77
80
  agent_server/routers/health.py,sha256=30ens642WxvJBHvbH7Bf-PM3GCYMUpEI1Y5-TB_DS48,1222
78
- agent_server/routers/langchain_agent.py,sha256=841BLd2_ER5d17Qc8XYgcV37rquX8dkVqOVcMKP0SMc,96446
79
- agent_server/routers/rag.py,sha256=iHWk281PaEzmtb-lcNtFseYLZAfvyjXRj8u5ESreI48,4969
81
+ agent_server/routers/langchain_agent.py,sha256=JdDqCGcnGE5ZQ37xQEBrDYjqpx56wtipAHxfs-BNRQ0,102336
82
+ agent_server/routers/rag.py,sha256=_oEOI0JhlQBlQUfpxfjLesFD3HOTzpf9zfLjAinbitM,5065
80
83
  agent_server/schemas/__init__.py,sha256=3sYVGcT7S5MkB3tDCoX3vojmhT-aHj2esg8STvjRGCk,1153
81
84
  hdsp_agent_core/__init__.py,sha256=QQEV26AIbNUvriqSdUqmUTouFkAt2hTssai2fsTibdc,3262
82
85
  hdsp_agent_core/factory.py,sha256=ez7KBTn91CHbKgoo85qVNpxRRp1bszE9fgBHEqY1GAg,8173
@@ -96,46 +99,46 @@ hdsp_agent_core/models/__init__.py,sha256=vDbXUIqmMAqDRySutVcOFI_tAJFfWwfRq0dl0x
96
99
  hdsp_agent_core/models/agent.py,sha256=6S5CKFGWGVxUW82sxhuQy-ndlvow-KVLKRoBS_Tj6KY,11104
97
100
  hdsp_agent_core/models/chat.py,sha256=KNrcaKmWuqbPc0auunx1PxkERL3Y35AAyDipCxTjwEE,1224
98
101
  hdsp_agent_core/models/common.py,sha256=1QrfyyJtZn4QoYf44FDT2tpkWVww4VoXIH6GQPLTmcQ,3164
99
- hdsp_agent_core/models/rag.py,sha256=pL822oudeLhNmabprlh5jn0k5x566CTp29AyIxJakQo,10635
102
+ hdsp_agent_core/models/rag.py,sha256=1XtcMewc2TfDu3XIpgHJ4Xqisoa0F9OUuqDl1fHYAlo,11076
100
103
  hdsp_agent_core/prompts/__init__.py,sha256=nd_xZ3mpeHv1LBexcS6kgukva50p3DScmK9On-Quznk,1563
101
104
  hdsp_agent_core/prompts/auto_agent_prompts.py,sha256=Tm9WAiQ1zX2ubbOoWsep1DXDc0ZsZuq2AhitgW2UJnw,49403
102
105
  hdsp_agent_core/prompts/cell_action_prompts.py,sha256=bmX9BLxt4RQ3UbZaeRH_zk3YJgysbaUyqBmiouETzrY,4793
103
106
  hdsp_agent_core/services/__init__.py,sha256=XC2gl8ST6GgWG1nXpn5Iayipmsyz1Q7gg3DK-Qp_Tqg,466
104
107
  hdsp_agent_core/services/agent_service.py,sha256=8uhLHPL5MX61OmZXwm5b14UCTm5ix0AswBn8JOCkREs,15259
105
108
  hdsp_agent_core/services/chat_service.py,sha256=1MMXteBjQrPrh5HMcfhYReKenzUbGomVySq7vDqox_A,7172
106
- hdsp_agent_core/services/rag_service.py,sha256=RXIA102P-01ZVKFsv8iruPv8aWZzg8vWbjfz1DG9ak4,8339
109
+ hdsp_agent_core/services/rag_service.py,sha256=nomhLdV_Ii4cr3p15oBUW1NpE2jvQ1EohZCS8WueHz4,8420
107
110
  hdsp_agent_core/tests/__init__.py,sha256=RinkbDl7BnUloYATdCHWXqkVytuWHPNadeJL8FfmHOs,30
108
111
  hdsp_agent_core/tests/conftest.py,sha256=PfNEw0TwEaQ4K2kqA8zymnB3VOGrYFVXLdae8hUaRTw,2695
109
112
  hdsp_agent_core/tests/test_factory.py,sha256=hy94qoChlozQ5UPtkVQJ2ZwfCUmEr0G4zHWD_Gab044,10195
110
113
  hdsp_agent_core/tests/test_services.py,sha256=DsBwcQ_--2phKWN4XnknabvIUIlBUNOtUP_8ympr8CE,12153
111
- hdsp_jupyter_extension-2.0.7.data/data/etc/jupyter/jupyter_server_config.d/hdsp_jupyter_extension.json,sha256=KXCyKfoeM1OxdPWa0wL2plndcqJkQ7ke3UaF0tJpMW0,86
112
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/build_log.json,sha256=V5p6XH3SD8LYW_Co5AHSOLX6HSHKLnrjM_3MHZFnUaE,23379
113
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/package.json,sha256=8I2TpWyfMjsnNkW-gZ0Ybmxumh4w2_P4gT9P2kRHhas,4520
114
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.4770ec0fb2d173b6deb4.js,sha256=stGNmJ09Nihnkh5VxuKR3MvszMwjdTFtHKanTE9_EiQ,287397
115
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.4770ec0fb2d173b6deb4.js.map,sha256=hxlMzhfMYVKmw8WUpnkuQAxyeEolgGWguEuusYNN3WE,337462
116
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.29cf4312af19e86f82af.js,sha256=Vc1uwpJVStm7HJ9OpvW7QLJfPe7l3ZWVnsVSvWWDAoM,689900
117
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.29cf4312af19e86f82af.js.map,sha256=nDazMfrXOrnA6av5cs9UISprjEVzbXfVb1VPWhtYrVg,746402
118
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js,sha256=59fuOBtJBzroB6mOhgCCSVbb0fSd90byTSSV2EvCsK4,4535
119
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js.map,sha256=fRpFrcMlzgxQF-phepTC8-BRZwO1mDldaoMwJV_uY-Y,3116
120
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js,sha256=o4ve2_dvZmfE0CZCaeBu11qYu-5OB2zDOAr5hWrIKn4,4535
121
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js.map,sha256=6gSs6dXiA5iQ3YiRSel1Ig2i4urNXU-HEEcHInczjOM,3116
122
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.61343eb4cf0577e74b50.js,sha256=lxVR2RfmOTDaN61e-Zi1m_9x-VUuYFEtAdVcEWsjMdg,38383
123
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.61343eb4cf0577e74b50.js.map,sha256=nzt_RGFJJF6Ns3dLX9RyxeVNd4ar48yfshSSoWTVbHE,37138
124
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/style.js,sha256=Sb-Ji_5-ejVKmmKUV2b3sfuP7iFYDAgFFfT1Jt0hRcE,163
125
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js,sha256=oCoskp4kEWGDCpNbXfW5AwnzBEZ5OUiO9Tq7An4ORJc,17120
126
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js.map,sha256=MkPt1pMGQa_0-5BWR36xjPnwdr4BQai1hf3zlHIHgis,16964
127
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js,sha256=8iMTBMEzMB-pBxjmb6buwCmftIt-IVJwM_MviYzWfSw,80486
128
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js-node_modules-782ee5.d9ed8645ef1d311657d8.js.map,sha256=ddmrhd26Sbk7W-4dVGoKj1sZOXvKmC7lbLI2LQNIjd8,74472
129
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js,sha256=AOQJdHwyyL6LTWf9_wFPt1VWktb3sVWcbpeGzjvbokQ,44590
130
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.36b49c71871f98d4f549.js.map,sha256=4D2gNLoj-frmItDhokqEslfj1K9BvuTJuWEuzY9uXLg,43784
131
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js,sha256=ei2Rn4RgH5MPqmhYKgavrxtq7O8m3tKAhi7DZtm41GA,23091
132
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js.map,sha256=wcO4207yUzmN33D_MSJBxQynNmUI6GWQLOqvDw7nRbU,17846
133
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js,sha256=stuAnHjRqwUbf11qPnbXV4HyWwtj-CtvGis3BDrZlXw,3064261
134
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js.map,sha256=_p6BJKXfq9zLGeBkN7gezYwZljO4adpNKqjwD3N79GY,2210898
135
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js,sha256=WYjamSz7OZgg-63elljAfF3Z5h1bL04WMOdSBhdbrHk,287039
136
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.2e13df4ea61496e95d45.js.map,sha256=bTY2LeslfnSHt5Vhhjeu4_kCCt4BTJKpYLJ3DmQU6TY,254121
137
- hdsp_jupyter_extension-2.0.7.data/data/share/jupyter/labextensions/hdsp-agent/install.json,sha256=xNrwkh9wNTyYPt0_LNWXGICeqQDHRsQzflQFbLOwAH4,193
138
- hdsp_jupyter_extension-2.0.7.dist-info/METADATA,sha256=MO5dHuVSFMhNSNefWr-FCix3bDP2OMjdR8Fhns1PYHE,4260
139
- hdsp_jupyter_extension-2.0.7.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
140
- hdsp_jupyter_extension-2.0.7.dist-info/licenses/LICENSE,sha256=LZnhgcr8NXVgC4ewcnNjWlYahaIS_KLMxKWDCZkHpQo,1061
141
- hdsp_jupyter_extension-2.0.7.dist-info/RECORD,,
114
+ hdsp_jupyter_extension-2.0.8.data/data/etc/jupyter/jupyter_server_config.d/hdsp_jupyter_extension.json,sha256=KXCyKfoeM1OxdPWa0wL2plndcqJkQ7ke3UaF0tJpMW0,86
115
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/build_log.json,sha256=Ip4U2Nbj12-sZIX-0VhtFvJhi9L2t4XloIiX6BjZ8ZM,23379
116
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/package.json,sha256=e7VJHtBqz1S_kH6PY5ZlJop6Do2K9GNupmNYqBIeDHw,4558
117
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.8740a527757068814573.js,sha256=oW12TMJLTuB6djRUIkJEaKmbdPeoSAY1U8U8vE5Ui8Y,299275
118
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/frontend_styles_index_js.8740a527757068814573.js.map,sha256=WhT_5yoc6xaEBt_NX8eIMf_kou3lJNTfQb4IMRxbqco,351701
119
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.e4ff4b5779b5e049f84c.js,sha256=ipaR3p6o8hsLaD54VQlVtrnzouoznz5RtBVaxvXsuSQ,756990
120
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/lib_index_js.e4ff4b5779b5e049f84c.js.map,sha256=DFZLKAHF9cqa-yz5Muo4Gt31TPACS7GQFdWmwrkrFVI,820408
121
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js,sha256=59fuOBtJBzroB6mOhgCCSVbb0fSd90byTSSV2EvCsK4,4535
122
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b80.c095373419d05e6f141a.js.map,sha256=fRpFrcMlzgxQF-phepTC8-BRZwO1mDldaoMwJV_uY-Y,3116
123
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js,sha256=o4ve2_dvZmfE0CZCaeBu11qYu-5OB2zDOAr5hWrIKn4,4535
124
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/node_modules_emotion_use-insertion-effect-with-fallbacks_dist_emotion-use-insertion-effect-wi-3ba6b81.61e75fb98ecff46cf836.js.map,sha256=6gSs6dXiA5iQ3YiRSel1Ig2i4urNXU-HEEcHInczjOM,3116
125
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.020cdb0b864cfaa4e41e.js,sha256=ZgnshmaS5b8Zkb_ZIT9bchqxfBa1vKIew-E0Wyh5pl8,38463
126
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/remoteEntry.020cdb0b864cfaa4e41e.js.map,sha256=knjZEWmuo7zRfi_81WK1THWwHD825dsrV5tjziWJmws,37219
127
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/style.js,sha256=Sb-Ji_5-ejVKmmKUV2b3sfuP7iFYDAgFFfT1Jt0hRcE,163
128
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js,sha256=oCoskp4kEWGDCpNbXfW5AwnzBEZ5OUiO9Tq7An4ORJc,17120
129
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_babel_runtime_helpers_esm_extends_js-node_modules_emotion_serialize_dist-051195.e2553aab0c3963b83dd7.js.map,sha256=MkPt1pMGQa_0-5BWR36xjPnwdr4BQai1hf3zlHIHgis,16964
130
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js,sha256=wzNlZbG78o1o8VdysX4Jh8svCJn7EkCEsWysYVNDA_M,72770
131
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_cache_dist_emotion-cache_browser_development_esm_js.24edcc52a1c014a8a5f0.js.map,sha256=ezT6x--1WMPEaTvc-Hls3--P26cDONPdLIJoVturnZY,65792
132
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js,sha256=k2kgP3oQDAk-1SnNqBErcJNjPDaVau6RaKqWLlhWPhk,52636
133
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_react_dist_emotion-react_browser_development_esm_js.19ecf6babe00caff6b8a.js.map,sha256=vOmkYMCMF8wPvjg0KkidY8nqkUKsRFACvMrOZ9oCV5I,52519
134
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js,sha256=ei2Rn4RgH5MPqmhYKgavrxtq7O8m3tKAhi7DZtm41GA,23091
135
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_emotion_styled_dist_emotion-styled_browser_development_esm_js.661fb5836f4978a7c6e1.js.map,sha256=wcO4207yUzmN33D_MSJBxQynNmUI6GWQLOqvDw7nRbU,17846
136
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js,sha256=stuAnHjRqwUbf11qPnbXV4HyWwtj-CtvGis3BDrZlXw,3064261
137
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_index_js.985697e0162d8d088ca2.js.map,sha256=_p6BJKXfq9zLGeBkN7gezYwZljO4adpNKqjwD3N79GY,2210898
138
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js,sha256=YCT05xGYLDCpIYCyDWyhZdWrPAu_L_ZdhvxpVBtG2G8,295007
139
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/static/vendors-node_modules_mui_material_utils_createSvgIcon_js.1f5038488cdfd8b3a85d.js.map,sha256=08fBThOCy0BnlvpXxZGsM97YcU0Ik7UCgaMDxmUg8F0,262831
140
+ hdsp_jupyter_extension-2.0.8.data/data/share/jupyter/labextensions/hdsp-agent/install.json,sha256=xNrwkh9wNTyYPt0_LNWXGICeqQDHRsQzflQFbLOwAH4,193
141
+ hdsp_jupyter_extension-2.0.8.dist-info/METADATA,sha256=rNMs2mcer2n1NswRucJ4IctmTfJHkqJFcYdEhJSw018,4260
142
+ hdsp_jupyter_extension-2.0.8.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
143
+ hdsp_jupyter_extension-2.0.8.dist-info/licenses/LICENSE,sha256=LZnhgcr8NXVgC4ewcnNjWlYahaIS_KLMxKWDCZkHpQo,1061
144
+ hdsp_jupyter_extension-2.0.8.dist-info/RECORD,,
jupyter_ext/__init__.py CHANGED
@@ -214,6 +214,24 @@ def load_jupyter_server_extension(server_app):
214
214
  web_app = server_app.web_app
215
215
  setup_handlers(web_app)
216
216
 
217
+ # Expose environment variables to client via PageConfig
218
+ # This allows frontend to access HDSP_ENV, HDSP_PRJ_ID, JUPYTERHUB_USER
219
+ page_config = web_app.settings.setdefault('page_config_data', {})
220
+
221
+ # Add HDSP environment variables
222
+ hdsp_env = os.environ.get('HDSP_ENV', '')
223
+ hdsp_prj_id = os.environ.get('HDSP_PRJ_ID', '')
224
+ jupyterhub_user = os.environ.get('JUPYTERHUB_USER', '')
225
+
226
+ if hdsp_env:
227
+ page_config['HDSP_ENV'] = hdsp_env
228
+ if hdsp_prj_id:
229
+ page_config['HDSP_PRJ_ID'] = hdsp_prj_id
230
+ if jupyterhub_user:
231
+ page_config['JUPYTERHUB_USER'] = jupyterhub_user
232
+
233
+ server_app.log.info(f"Exposed HDSP env vars to client: HDSP_ENV={hdsp_env}, HDSP_PRJ_ID={hdsp_prj_id}, JUPYTERHUB_USER={jupyterhub_user}")
234
+
217
235
  server_app.log.info("HDSP Jupyter Extension loaded (v%s)", __version__)
218
236
  if embed_agent_server:
219
237
  server_app.log.info("Running in EMBEDDED mode (single process)")
jupyter_ext/_version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # This file is auto-generated by Hatchling. As such, do not:
2
2
  # - modify
3
3
  # - track in version control e.g. be sure to add to .gitignore
4
- __version__ = VERSION = '2.0.7'
4
+ __version__ = VERSION = '2.0.8'
jupyter_ext/handlers.py CHANGED
@@ -1068,6 +1068,83 @@ class CheckResourceHandler(APIHandler):
1068
1068
  self.write({"success": False, "error": str(e)})
1069
1069
 
1070
1070
 
1071
+ class ReadFileHandler(APIHandler):
1072
+ """Handler for /read-file endpoint (runs on Jupyter server)."""
1073
+
1074
+ async def post(self):
1075
+ """Read file content."""
1076
+ try:
1077
+ body = (
1078
+ json.loads(self.request.body.decode("utf-8"))
1079
+ if self.request.body
1080
+ else {}
1081
+ )
1082
+ path = (body.get("path") or "").strip()
1083
+ encoding = body.get("encoding") or "utf-8"
1084
+ requested_cwd = (body.get("cwd") or "").strip()
1085
+
1086
+ if not path:
1087
+ self.set_status(400)
1088
+ self.write({"success": False, "error": "path is required"})
1089
+ return
1090
+
1091
+ server_root = self.settings.get("server_root_dir", os.getcwd())
1092
+ server_root = os.path.expanduser(server_root)
1093
+ workspace_root = _resolve_workspace_root(server_root)
1094
+
1095
+ # If no cwd requested, use server_root as default (notebook directory)
1096
+ effective_cwd = requested_cwd
1097
+ if not effective_cwd:
1098
+ abs_server_root = os.path.abspath(server_root)
1099
+ if (
1100
+ os.path.commonpath([workspace_root, abs_server_root])
1101
+ == workspace_root
1102
+ ):
1103
+ effective_cwd = abs_server_root
1104
+ else:
1105
+ effective_cwd = workspace_root
1106
+
1107
+ try:
1108
+ resolved_path = _resolve_path_in_workspace(
1109
+ path, workspace_root, effective_cwd
1110
+ )
1111
+ except ValueError as exc:
1112
+ self.set_status(400)
1113
+ self.write({"success": False, "error": str(exc)})
1114
+ return
1115
+
1116
+ try:
1117
+ with open(resolved_path, "r", encoding=encoding) as f:
1118
+ content = f.read()
1119
+ result = {
1120
+ "success": True,
1121
+ "path": path,
1122
+ "resolved_path": resolved_path,
1123
+ "content": content,
1124
+ "size": len(content),
1125
+ }
1126
+ except FileNotFoundError:
1127
+ result = {
1128
+ "success": False,
1129
+ "path": path,
1130
+ "error": f"File not found: {path}",
1131
+ }
1132
+ except Exception as exc:
1133
+ result = {
1134
+ "success": False,
1135
+ "path": path,
1136
+ "error": str(exc),
1137
+ }
1138
+
1139
+ self.set_header("Content-Type", "application/json")
1140
+ self.write(result)
1141
+
1142
+ except Exception as e:
1143
+ logger.error(f"Read file failed: {e}", exc_info=True)
1144
+ self.set_status(500)
1145
+ self.write({"success": False, "error": str(e)})
1146
+
1147
+
1071
1148
  class WriteFileHandler(APIHandler):
1072
1149
  """Handler for /write-file endpoint (runs on Jupyter server)."""
1073
1150
 
@@ -1750,6 +1827,98 @@ class RAGReindexHandler(APIHandler):
1750
1827
  self.write({"error": str(e)})
1751
1828
 
1752
1829
 
1830
+ # ============ Idle Shutdown Handler ============
1831
+
1832
+
1833
+ class IdleShutdownHandler(APIHandler):
1834
+ """Handler for idle timeout shutdown - calls HDSP API from server side."""
1835
+
1836
+ @property
1837
+ def hdsp_env(self) -> Optional[str]:
1838
+ return os.environ.get("HDSP_ENV")
1839
+
1840
+ @property
1841
+ def hdsp_prj_id(self) -> Optional[str]:
1842
+ return os.environ.get("HDSP_PRJ_ID")
1843
+
1844
+ @property
1845
+ def jupyterhub_user(self) -> Optional[str]:
1846
+ return os.environ.get("JUPYTERHUB_USER")
1847
+
1848
+ async def post(self):
1849
+ """Trigger idle shutdown by calling HDSP API."""
1850
+ try:
1851
+ hdsp_env = self.hdsp_env
1852
+ project_id = self.hdsp_prj_id
1853
+ user_id = self.jupyterhub_user
1854
+
1855
+ # Check required environment variables
1856
+ if not hdsp_env or not project_id or not user_id:
1857
+ logger.warning(
1858
+ f"[IdleShutdown] Missing env vars: HDSP_ENV={hdsp_env}, "
1859
+ f"HDSP_PRJ_ID={project_id}, JUPYTERHUB_USER={user_id}"
1860
+ )
1861
+ self.set_status(400)
1862
+ self.write({
1863
+ "success": False,
1864
+ "error": "Missing required environment variables",
1865
+ "details": {
1866
+ "HDSP_ENV": hdsp_env is not None,
1867
+ "HDSP_PRJ_ID": project_id is not None,
1868
+ "JUPYTERHUB_USER": user_id is not None,
1869
+ }
1870
+ })
1871
+ return
1872
+
1873
+ # Build API URL based on environment
1874
+ if hdsp_env == "dev":
1875
+ api_base_url = "https://hdsp-api-dev.hyundaicard.com"
1876
+ elif hdsp_env == "prod":
1877
+ api_base_url = "https://hdsp-api.hyundaicard.com"
1878
+ else:
1879
+ logger.warning(f"[IdleShutdown] Unknown HDSP_ENV: {hdsp_env}")
1880
+ self.set_status(400)
1881
+ self.write({
1882
+ "success": False,
1883
+ "error": f"Unknown HDSP_ENV value: {hdsp_env}"
1884
+ })
1885
+ return
1886
+
1887
+ api_url = f"{api_base_url}/k8s/jupyter/{project_id}/{user_id}"
1888
+ logger.info(f"[IdleShutdown] Calling shutdown API: {api_url}")
1889
+
1890
+ # Call DELETE API
1891
+ async with httpx.AsyncClient(timeout=30.0) as client:
1892
+ response = await client.delete(api_url)
1893
+
1894
+ if response.status_code in (200, 204):
1895
+ logger.info("[IdleShutdown] Shutdown API call successful")
1896
+ self.write({
1897
+ "success": True,
1898
+ "message": "Shutdown initiated",
1899
+ "api_url": api_url
1900
+ })
1901
+ else:
1902
+ logger.error(
1903
+ f"[IdleShutdown] API call failed: {response.status_code} {response.text}"
1904
+ )
1905
+ self.set_status(response.status_code)
1906
+ self.write({
1907
+ "success": False,
1908
+ "error": f"API call failed: {response.status_code}",
1909
+ "details": response.text
1910
+ })
1911
+
1912
+ except httpx.TimeoutException:
1913
+ logger.error("[IdleShutdown] API call timeout")
1914
+ self.set_status(504)
1915
+ self.write({"success": False, "error": "API call timeout"})
1916
+ except Exception as e:
1917
+ logger.error(f"[IdleShutdown] Error: {e}", exc_info=True)
1918
+ self.set_status(500)
1919
+ self.write({"success": False, "error": str(e)})
1920
+
1921
+
1753
1922
  # ============ Handler Setup ============
1754
1923
 
1755
1924
 
@@ -1812,7 +1981,8 @@ def setup_handlers(web_app):
1812
1981
  url_path_join(base_url, "hdsp-agent", "check-resource"),
1813
1982
  CheckResourceHandler,
1814
1983
  ),
1815
- # File write execution (server-side, approval required)
1984
+ # File read/write execution (server-side)
1985
+ (url_path_join(base_url, "hdsp-agent", "read-file"), ReadFileHandler),
1816
1986
  (url_path_join(base_url, "hdsp-agent", "write-file"), WriteFileHandler),
1817
1987
  # Search endpoints (server-side, no approval required)
1818
1988
  (
@@ -1827,6 +1997,11 @@ def setup_handlers(web_app):
1827
1997
  (url_path_join(base_url, "hdsp-agent", "rag", "search"), RAGSearchHandler),
1828
1998
  (url_path_join(base_url, "hdsp-agent", "rag", "status"), RAGStatusHandler),
1829
1999
  (url_path_join(base_url, "hdsp-agent", "rag", "reindex"), RAGReindexHandler),
2000
+ # Idle shutdown endpoint (server-side API call)
2001
+ (
2002
+ url_path_join(base_url, "hdsp-agent", "idle-shutdown"),
2003
+ IdleShutdownHandler,
2004
+ ),
1830
2005
  # ===== Proxy-only handlers (not yet migrated to ServiceFactory) =====
1831
2006
  (
1832
2007
  url_path_join(base_url, "hdsp-agent", "auto-agent", "reflect"),
@@ -722,7 +722,7 @@
722
722
  "@mui/material": {},
723
723
  "react-markdown": {},
724
724
  "hdsp-agent": {
725
- "version": "2.0.7",
725
+ "version": "2.0.8",
726
726
  "singleton": true,
727
727
  "import": "/Users/a421721/Desktop/hdsp/hdsp_agent/extensions/jupyter/lib/index.js"
728
728
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hdsp-agent",
3
- "version": "2.0.7",
3
+ "version": "2.0.8",
4
4
  "description": "HDSP Agent JupyterLab Extension - Thin client for Agent Server",
5
5
  "keywords": [
6
6
  "jupyter",
@@ -70,6 +70,7 @@
70
70
  "@jupyterlab/launcher": "^4.0.0",
71
71
  "@jupyterlab/notebook": "^4.0.0",
72
72
  "@jupyterlab/services": "^7.0.0",
73
+ "@jupyterlab/terminal": "^4.0.0",
73
74
  "@lumino/widgets": "^2.0.0",
74
75
  "@mui/icons-material": "^7.3.4",
75
76
  "@mui/material": "^5.14.0",
@@ -126,7 +127,7 @@
126
127
  }
127
128
  },
128
129
  "_build": {
129
- "load": "static/remoteEntry.61343eb4cf0577e74b50.js",
130
+ "load": "static/remoteEntry.020cdb0b864cfaa4e41e.js",
130
131
  "extension": "./extension",
131
132
  "style": "./style"
132
133
  }