shotgun-sh 0.2.11__py3-none-any.whl → 0.2.11.dev2__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.

Potentially problematic release.


This version of shotgun-sh might be problematic. Click here for more details.

Files changed (73) hide show
  1. shotgun/agents/agent_manager.py +28 -194
  2. shotgun/agents/common.py +8 -14
  3. shotgun/agents/config/manager.py +33 -64
  4. shotgun/agents/config/models.py +1 -25
  5. shotgun/agents/config/provider.py +2 -2
  6. shotgun/agents/context_analyzer/analyzer.py +24 -2
  7. shotgun/agents/conversation_manager.py +19 -35
  8. shotgun/agents/export.py +2 -2
  9. shotgun/agents/history/history_processors.py +3 -99
  10. shotgun/agents/history/token_counting/anthropic.py +1 -17
  11. shotgun/agents/history/token_counting/base.py +3 -14
  12. shotgun/agents/history/token_counting/openai.py +1 -11
  13. shotgun/agents/history/token_counting/sentencepiece_counter.py +0 -8
  14. shotgun/agents/history/token_counting/tokenizer_cache.py +1 -3
  15. shotgun/agents/history/token_counting/utils.py +3 -0
  16. shotgun/agents/plan.py +2 -2
  17. shotgun/agents/research.py +3 -3
  18. shotgun/agents/specify.py +2 -2
  19. shotgun/agents/tasks.py +2 -2
  20. shotgun/agents/tools/codebase/file_read.py +2 -5
  21. shotgun/agents/tools/file_management.py +7 -11
  22. shotgun/agents/tools/web_search/__init__.py +8 -8
  23. shotgun/agents/tools/web_search/anthropic.py +2 -2
  24. shotgun/agents/tools/web_search/gemini.py +1 -1
  25. shotgun/agents/tools/web_search/openai.py +1 -1
  26. shotgun/agents/tools/web_search/utils.py +2 -2
  27. shotgun/agents/usage_manager.py +11 -16
  28. shotgun/build_constants.py +2 -2
  29. shotgun/cli/clear.py +1 -2
  30. shotgun/cli/compact.py +3 -3
  31. shotgun/cli/config.py +5 -8
  32. shotgun/cli/context.py +2 -2
  33. shotgun/cli/export.py +1 -1
  34. shotgun/cli/feedback.py +2 -4
  35. shotgun/cli/plan.py +1 -1
  36. shotgun/cli/research.py +1 -1
  37. shotgun/cli/specify.py +1 -1
  38. shotgun/cli/tasks.py +1 -1
  39. shotgun/codebase/core/change_detector.py +3 -5
  40. shotgun/codebase/core/code_retrieval.py +2 -4
  41. shotgun/codebase/core/ingestor.py +8 -10
  42. shotgun/codebase/core/manager.py +3 -3
  43. shotgun/codebase/core/nl_query.py +1 -1
  44. shotgun/logging_config.py +17 -10
  45. shotgun/main.py +1 -3
  46. shotgun/posthog_telemetry.py +4 -14
  47. shotgun/sentry_telemetry.py +2 -22
  48. shotgun/telemetry.py +1 -3
  49. shotgun/tui/app.py +65 -71
  50. shotgun/tui/components/context_indicator.py +0 -43
  51. shotgun/tui/containers.py +17 -15
  52. shotgun/tui/dependencies.py +2 -2
  53. shotgun/tui/screens/chat/chat_screen.py +40 -164
  54. shotgun/tui/screens/chat/help_text.py +15 -16
  55. shotgun/tui/screens/chat_screen/command_providers.py +0 -10
  56. shotgun/tui/screens/feedback.py +4 -4
  57. shotgun/tui/screens/model_picker.py +20 -21
  58. shotgun/tui/screens/provider_config.py +27 -50
  59. shotgun/tui/screens/shotgun_auth.py +2 -2
  60. shotgun/tui/screens/welcome.py +11 -14
  61. shotgun/tui/services/conversation_service.py +14 -16
  62. shotgun/tui/utils/mode_progress.py +7 -14
  63. shotgun/tui/widgets/widget_coordinator.py +0 -15
  64. shotgun/utils/file_system_utils.py +0 -19
  65. {shotgun_sh-0.2.11.dist-info → shotgun_sh-0.2.11.dev2.dist-info}/METADATA +1 -2
  66. {shotgun_sh-0.2.11.dist-info → shotgun_sh-0.2.11.dev2.dist-info}/RECORD +69 -73
  67. shotgun/exceptions.py +0 -32
  68. shotgun/tui/screens/github_issue.py +0 -102
  69. shotgun/tui/screens/onboarding.py +0 -431
  70. shotgun/utils/marketing.py +0 -110
  71. {shotgun_sh-0.2.11.dist-info → shotgun_sh-0.2.11.dev2.dist-info}/WHEEL +0 -0
  72. {shotgun_sh-0.2.11.dist-info → shotgun_sh-0.2.11.dev2.dist-info}/entry_points.txt +0 -0
  73. {shotgun_sh-0.2.11.dist-info → shotgun_sh-0.2.11.dev2.dist-info}/licenses/LICENSE +0 -0
@@ -1,35 +1,34 @@
1
1
  shotgun/__init__.py,sha256=P40K0fnIsb7SKcQrFnXZ4aREjpWchVDhvM1HxI4cyIQ,104
2
2
  shotgun/api_endpoints.py,sha256=cHNkXbaxMOw6t9M7_SGHwEkz9bL1CH_kw8qIhgdXfi0,630
3
- shotgun/build_constants.py,sha256=hDFr6eO0lwN0iCqHQ1A5s0D68txR8sYrTJLGa7tSi0o,654
4
- shotgun/exceptions.py,sha256=qSt4_ZWBZ_DtDxMlZIFfdwyXRkGdCfG9dic_O-5QEKA,1102
5
- shotgun/logging_config.py,sha256=fMnO0Ep76PIRxr0AqLcgE5QxUl4-WfqwLkMKCA2OVRc,7110
6
- shotgun/main.py,sha256=XSb7ZeOxMXyZuQMxVGD6aCKl5DCgNKfYmXbZXtZBTMI,7072
7
- shotgun/posthog_telemetry.py,sha256=0ZLEjQKfjnSel935mgPBH3BKrBT5QzEV45w28cq9Ldw,6617
3
+ shotgun/build_constants.py,sha256=ffbErQTMR15TUKFFx5FYu5pji3Pr7UwTskgnAZsMswM,713
4
+ shotgun/logging_config.py,sha256=4IwirYcYSnSXehhgR5gYFbycX2xNNFVj0cxth6V8vjY,7321
5
+ shotgun/main.py,sha256=qt26mY6EzEplVPsL9oJFccjF8I1JoQMAUNMyrCAdTWY,7039
6
+ shotgun/posthog_telemetry.py,sha256=b_iZrDbKX4uWFl-SlF4hdYtCqNOK1NFhVnq8NCyxUoo,6363
8
7
  shotgun/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- shotgun/sentry_telemetry.py,sha256=k-4JKcJYdTfVQcVVgDvgVGM__MPDrWBo7sZdd7jD1lU,3396
8
+ shotgun/sentry_telemetry.py,sha256=y9mYWsVmNSO9OBG236gRv0MXAb9oqvm4dsNaupq9zrI,2624
10
9
  shotgun/settings.py,sha256=1pheWh5YRXCVzIWy7kGWiC1yGbJ8qTWxqQsxggs2BZI,7202
11
- shotgun/telemetry.py,sha256=6trR92Q6ERvSuUGyS8VyBCv1Dfs20vI1-4BYPieLcxM,2917
10
+ shotgun/telemetry.py,sha256=rnpzba6n54cbMbxwkviMdIxrSKUj_WZMhtTu0R-zOeA,2876
12
11
  shotgun/agents/__init__.py,sha256=8Jzv1YsDuLyNPFJyckSr_qI4ehTVeDyIMDW4omsfPGc,25
13
- shotgun/agents/agent_manager.py,sha256=q0g7qVTAVxyHUQkOUxDou_7Hw9XNpfop-S9e6pMeDKE,51266
14
- shotgun/agents/common.py,sha256=U18bN5mokVddIuhtSEG5i_uRjiLw6kx1tEaDtsTdhIw,19183
12
+ shotgun/agents/agent_manager.py,sha256=r2AyIblommst6oKBW2lge39hbwBqsSrYKLH-8NIuCU8,44891
13
+ shotgun/agents/common.py,sha256=0F_dwEc72APvbY1b-lqM9VgPYuY1GpfhjSWv5-1pCB0,19032
15
14
  shotgun/agents/conversation_history.py,sha256=djfzHu0ZQnEiRPDwqKaBIZK1KKPmdV7wE_L-7cAGb8M,7909
16
- shotgun/agents/conversation_manager.py,sha256=CvmealftUc3n3pYXBGpZ29mpXGaM8bzmbGtT4KM9sdU,5280
17
- shotgun/agents/export.py,sha256=aCuytVFgkp4VkcGWak1TlXYasEe1WbFTTRiA6TGfhVI,2931
15
+ shotgun/agents/conversation_manager.py,sha256=X3DWZZIqrv0hS1SUasyoxexnLPBUrZMBg4ZmRAipkBE,4429
16
+ shotgun/agents/export.py,sha256=7ZNw7781WJ4peLSeoUc7zxKeaZVxFpow2y4nU4dCfbo,2919
18
17
  shotgun/agents/llm.py,sha256=hs8j1wwTczGtehzahL1Z_5D4qus5QUx4-h9-m5ZPzm4,2209
19
18
  shotgun/agents/messages.py,sha256=wNn0qC5AqASM8LMaSGFOerZEJPn5FsIOmaJs1bdosuU,1036
20
19
  shotgun/agents/models.py,sha256=anNz8_U95B1__VPXgxFqfzk2BRIHrIO4clJlnfedVS8,9862
21
- shotgun/agents/plan.py,sha256=7bP9VVQ5yfUE76fJEdBL-S2OIy3P-s5RdaorbThJQfc,2992
22
- shotgun/agents/research.py,sha256=0bkEGdmwJiHz_ubJ835xvsp2dDQpZWKrr8Qd55OadJI,3242
23
- shotgun/agents/specify.py,sha256=EsnHtQ-kRwZX_GRyp5D_y94yRaOo1gfLCIKeoF8ohNY,3099
24
- shotgun/agents/tasks.py,sha256=rebwa9z2-YUAQTxEhxglUKeDO5i0gAq39CmR9_LXMKE,2961
25
- shotgun/agents/usage_manager.py,sha256=0O1G7ovgYtJ_zCTITQ1Cks75eXMwvjl1SgGE1uoZ0x4,5383
20
+ shotgun/agents/plan.py,sha256=lVhIoRUMCX2TsFbwbgKjS2HHhNreX35j_aZRqGxFAso,2980
21
+ shotgun/agents/research.py,sha256=EYqUda_wtrxmUNy6Mme3NFnO_uOXBCs94m2tZzheNOE,3224
22
+ shotgun/agents/specify.py,sha256=38z0n_7pAgWN3oJFuOxfiEHWtEqzMha-SyPhhZ9pWag,3087
23
+ shotgun/agents/tasks.py,sha256=AuriwtDn6uZz2G0eKfqBHYQrxYfJlbiAd-fcsw9lU3I,2949
24
+ shotgun/agents/usage_manager.py,sha256=5d9JC4_cthXwhTSytMfMExMDAUYp8_nkPepTJZXk13w,5017
26
25
  shotgun/agents/config/__init__.py,sha256=Fl8K_81zBpm-OfOW27M_WWLSFdaHHek6lWz95iDREjQ,318
27
26
  shotgun/agents/config/constants.py,sha256=GZ62PTrMd_yXDBvQwpNqh401GVlMHh5Li7_xM-zdp8Y,742
28
- shotgun/agents/config/manager.py,sha256=p3RUm6SPGmiR-rdO0mI9a9zVl1OH1bbzvksI25bUnEw,20392
29
- shotgun/agents/config/models.py,sha256=wSTHi-SagVuxDktkm9oN9gPHRU55jxS4UMw4DMWkvuo,6912
30
- shotgun/agents/config/provider.py,sha256=fdL8STD1jgZMAK5NKxD0E0CaDLJ-3-Vn3Y7yPeElfk0,13402
27
+ shotgun/agents/config/manager.py,sha256=Z8EQoWPQM7uj3MyklmxHQ1GR6va1uv9BjT5DDvAv3pY,18920
28
+ shotgun/agents/config/models.py,sha256=W9vFBHEHGkVYYwQQMxnUOOp0nypgAKQburu7gzZlclg,6042
29
+ shotgun/agents/config/provider.py,sha256=cMLYbkwxnwhpB59PL61VEWdVOTnBdvSXVYzEyG0TZcw,13390
31
30
  shotgun/agents/context_analyzer/__init__.py,sha256=p-R3SVa3yDkXnHaZ7XV_SI_9FGhoYwvnbvDr3oxGU3M,732
32
- shotgun/agents/context_analyzer/analyzer.py,sha256=3WNdzY6gp4cfzf6uDiFnVo7P2VnFSdbh8SE7uMx5ffQ,20005
31
+ shotgun/agents/context_analyzer/analyzer.py,sha256=kEMbqKYpFLkE8MLBGF5x4V2evompc8SP70S-shQLsjo,21213
33
32
  shotgun/agents/context_analyzer/constants.py,sha256=oG8IJXEFN-V5wtnoz_ZBhOIGNXG1kjR4K_yOC5e95hY,323
34
33
  shotgun/agents/context_analyzer/formatter.py,sha256=QovmxUdpGkBKwxegxhvXRmHrpNFF31MoD3LRYTVCKY8,4008
35
34
  shotgun/agents/context_analyzer/models.py,sha256=Ww2NOgqaQlZ45tyBsVevt5r9bz0X-dQ4lNwAElfwAJk,8362
@@ -38,43 +37,43 @@ shotgun/agents/history/compaction.py,sha256=S7U00K3-tHOBHjSseGLaNSozkfmZknnqNyat
38
37
  shotgun/agents/history/constants.py,sha256=yWY8rrTZarLA3flCCMB_hS2NMvUDRDTwP4D4j7MIh1w,446
39
38
  shotgun/agents/history/context_extraction.py,sha256=yPF3oYpv5GFsFQT5y53ORKdADtrkGH4u8LwPdO0YVzU,7157
40
39
  shotgun/agents/history/history_building.py,sha256=6LFDZ60MTPDoGAcmu_mjlnjVYu8YYWdIi-cGbF3jm7A,3532
41
- shotgun/agents/history/history_processors.py,sha256=X1H8kuS0lfiBGBoPmfGhnIVSMLFCTTG4itx9zzePqDE,22503
40
+ shotgun/agents/history/history_processors.py,sha256=Xt025vfcTesV8WjcnOvdHBz1Sv0UwvvOBehH5-qtbj0,18708
42
41
  shotgun/agents/history/message_utils.py,sha256=aPusAl2RYKbjc7lBxPaNprRHmZEG6fe97q7DQUlhlzU,2918
43
42
  shotgun/agents/history/token_estimation.py,sha256=iRyKq-YDivEpJrULIbQgNpjhOuSC4nHVJYfsWEFV8sQ,4770
44
43
  shotgun/agents/history/token_counting/__init__.py,sha256=YZt5Lus--fkF6l1hdkIlp1e_oAIpACNwHOI0FRP4q8s,924
45
- shotgun/agents/history/token_counting/anthropic.py,sha256=kGxfDF4GyaPbNnS4DUiOM5EPThEBXBOgbxbO_W8iBXo,4575
46
- shotgun/agents/history/token_counting/base.py,sha256=eVtNmFnnDcsX3E9GE-OH_4_ibdlwg4fETi2cq60sqLw,2327
47
- shotgun/agents/history/token_counting/openai.py,sha256=lZgoMSVSlBN899Cp8sMFggYVDiSaqB-gTHUSaRoQ0yk,2746
48
- shotgun/agents/history/token_counting/sentencepiece_counter.py,sha256=JTSWGAuCtqa7e2fJQzNQ52HqprSJJOcMZLnwxDId-vk,4201
49
- shotgun/agents/history/token_counting/tokenizer_cache.py,sha256=owa4E12iMx8H1mNpCbHEtArE_b4vuwHl_0zKeRovv3w,2936
50
- shotgun/agents/history/token_counting/utils.py,sha256=zL9pzrQHCyi5YMgUyLTnLI9WJmMr3UEEDUECgh4_TjE,4872
44
+ shotgun/agents/history/token_counting/anthropic.py,sha256=0Nf4mR7yjDbGyy8WguHse-sOENyU4X4CkthPjzbBaog,4031
45
+ shotgun/agents/history/token_counting/base.py,sha256=TN4mzwSyWNQyTuOuCFaU-8AgLdAyquoX3af4qrmkxCs,1904
46
+ shotgun/agents/history/token_counting/openai.py,sha256=XJ2z2HaUG6f3Cw9tCK_yaOsaMJGHpSFF1I30-d3soSI,2350
47
+ shotgun/agents/history/token_counting/sentencepiece_counter.py,sha256=qj1bT7J5nCd5y6Mr42O9K1KTaele0rjdd09FeyyEA70,3987
48
+ shotgun/agents/history/token_counting/tokenizer_cache.py,sha256=Y0V6KMtEwn42M5-zJGAc7YudM8X6m5-j2ekA6YGL5Xk,2868
49
+ shotgun/agents/history/token_counting/utils.py,sha256=d124IDjtd0IYBYrr3gDJGWxSbdP10Vrc7ZistbUosMg,5002
51
50
  shotgun/agents/tools/__init__.py,sha256=kYppd4f4MoJcfTEPzkY2rqtxL1suXRGa9IRUm1G82GY,717
52
- shotgun/agents/tools/file_management.py,sha256=29D9aF1e9wGhIFr7cW_NALNmkybtg_dRJZ-atMqa23M,9859
51
+ shotgun/agents/tools/file_management.py,sha256=bVqDlbvSGmrEUFxyKMqPaWm2HEocYmJ9awjV4nYgvWY,9646
53
52
  shotgun/agents/tools/registry.py,sha256=7F6qFcdGd5Hka6uEC9Xrc4ZCENed8R5_1QJMAgKHYqs,6458
54
53
  shotgun/agents/tools/codebase/__init__.py,sha256=ceAGkK006NeOYaIJBLQsw7Q46sAyCRK9PYDs8feMQVw,661
55
54
  shotgun/agents/tools/codebase/codebase_shell.py,sha256=XwrfxAyDGRTRBaZdO0ivcllwIZnDX-Dfbtdp-ncJXlM,8779
56
55
  shotgun/agents/tools/codebase/directory_lister.py,sha256=dB38gPS2G02EnDBVFP99_Zu23rl7XyCjS4OwiDt8GcA,4904
57
- shotgun/agents/tools/codebase/file_read.py,sha256=eQ-iS7y38cZhLoKrmKGzO4eLifheqjUHZnr8lC7AxbM,5373
56
+ shotgun/agents/tools/codebase/file_read.py,sha256=ZK1PPFOCTyn-yPCHcMyb603TR1fLQ1DXcypVcJAEnpA,5247
58
57
  shotgun/agents/tools/codebase/models.py,sha256=8eR3_8DQiBNgB2twu0aC_evIJbugN9KW3gtxMZdGYCE,10087
59
58
  shotgun/agents/tools/codebase/query_graph.py,sha256=taWU8yzADUoZ22Z9msGvw4xXFYZz91Xh-V2aAVVb_7M,2308
60
59
  shotgun/agents/tools/codebase/retrieve_code.py,sha256=KCcKzro0YQ9cFetcm5NF8yKO8hkW7_9aBf67P3PlF2Q,3082
61
- shotgun/agents/tools/web_search/__init__.py,sha256=QKrTqD9JIrFavj7Ah6i-QeAw9stZsRAhZLVhnjr7eyU,3747
62
- shotgun/agents/tools/web_search/anthropic.py,sha256=CqkKlMTBajz3bGbQfSvYYndy9npe00bTOSw8luLc5MY,5700
63
- shotgun/agents/tools/web_search/gemini.py,sha256=Ruk2Om7jc85veSvaHlQ_pWDlu0pBjAoeuvBgAMH5QvM,3859
64
- shotgun/agents/tools/web_search/openai.py,sha256=3KJpSLmmOjPqEEUCsJaR-LcmFaacu5_herUHbHOVt38,3739
65
- shotgun/agents/tools/web_search/utils.py,sha256=O4IMu9mPBZe5551fNclfXbSmoL7fxP1hziqkWq8CRrI,544
60
+ shotgun/agents/tools/web_search/__init__.py,sha256=166SzGDspEqRoHvAoguoy02WAT5EQfozoc5Ha5VubdY,3699
61
+ shotgun/agents/tools/web_search/anthropic.py,sha256=vvOjfUZIMcUIABmpJAeVbbm-dDibi8e6PbxDHKOGCyE,5688
62
+ shotgun/agents/tools/web_search/gemini.py,sha256=K9QpLMQ9-Or7ZU79y4aOGoxKQIWVZ1zOk2drNIvVjrU,3853
63
+ shotgun/agents/tools/web_search/openai.py,sha256=1SgZOMkY0eKcTBRGfxQ7eAOyQjwoGR6vvLcwUB9bdUc,3733
64
+ shotgun/agents/tools/web_search/utils.py,sha256=GLJ5QV9bT2ubFMuFN7caMN7tK9OTJ0R3GD57B-tCMF0,532
66
65
  shotgun/cli/__init__.py,sha256=_F1uW2g87y4bGFxz8Gp8u7mq2voHp8vQIUtCmm8Tojo,40
67
- shotgun/cli/clear.py,sha256=_mAb3cjlLNGAk19Bu1fKoSF1fpBg05vRIRfSFZzhUyw,1625
68
- shotgun/cli/compact.py,sha256=ZF8bS3hReJYG_uzRfWwCi9cINeZwzvre9SK7A-a9qRk,5914
69
- shotgun/cli/config.py,sha256=wKBPSQ8ZVF6ITPS_bE2F46_xyWiI80QJhhgjt8uuDSY,8031
70
- shotgun/cli/context.py,sha256=sRCNKM_irXASOJclAbYdz8-ftwdBIv68Qyin_w8KK8k,3813
71
- shotgun/cli/export.py,sha256=xe14DKxeL9zN9M2bomuiXxa2JdqIZ1FBPPkTFBVhkxQ,2484
72
- shotgun/cli/feedback.py,sha256=wMRIN6UtBI4832XfUwE7nQLjVLuVu4zjupMme02nfwc,1346
66
+ shotgun/cli/clear.py,sha256=dJ2aAe8zdc-Xxn5Vdmpae8dAcyiFx5u_Cp7OelE53IM,1597
67
+ shotgun/cli/compact.py,sha256=oZV0MhpvM0u0sHUlhwTC6HP8OB1coGiMe-ktYLH-IEs,5896
68
+ shotgun/cli/config.py,sha256=lT_zXwui-Wv3hewjebQeu9eLwK3tYn1wla5vKit6eqs,7931
69
+ shotgun/cli/context.py,sha256=y2AnLowcpXmDoeo3M6ZBq0-531XALsl2mIc9F0zyPog,3801
70
+ shotgun/cli/export.py,sha256=3hIwK2_OM1MFYSTfzBxsGuuBGm5fo0XdxASfQ5Uqb3Y,2471
71
+ shotgun/cli/feedback.py,sha256=K8iFDl5051_g95jwDEm9gdKUjDWO8HBVZjlRN8uD7Mk,1300
73
72
  shotgun/cli/models.py,sha256=cutimFStP6m5pXmg3kbhtWZjNA2us2cPQFJtz2pTdOU,208
74
- shotgun/cli/plan.py,sha256=PbD7ckPIgdDOp7RLQecf4F1S59W_Bag2qMTcR6QqlDw,2337
75
- shotgun/cli/research.py,sha256=chFMuVcznuJqnGwDcK7o1Qk3RQ4q0cFPqRQjyW_GURw,2496
76
- shotgun/cli/specify.py,sha256=gLbnZ4GP9QmRy1QFdhF2mnXqP9Fbo07CY-3GdmbbL3w,2179
77
- shotgun/cli/tasks.py,sha256=GIgwS5a-B92BghjlD0lMDEZd35Izl0S4QguRrdFxciI,2433
73
+ shotgun/cli/plan.py,sha256=T-eu-I9z-dSoKqJ-KI8X5i5Mm0VL1BfornxRiUjTgnk,2324
74
+ shotgun/cli/research.py,sha256=qvBBtX3Wyn6pDZlJpcEvbeK-0iTOXegi71tm8HKVYaE,2490
75
+ shotgun/cli/specify.py,sha256=ErRQ72Zc75fmxopZbKy0vvnLPuYBLsGynpjj1X6-BwI,2166
76
+ shotgun/cli/tasks.py,sha256=17qWoGCVYpNIxa2vaoIH1P-xz2RcGLaK8SF4JlPsOWI,2420
78
77
  shotgun/cli/update.py,sha256=sc3uuw3AXFF0kpskWah1JEoTwrKv67fCnqp9BjeND3o,5328
79
78
  shotgun/cli/utils.py,sha256=umVWXDx8pelovMk-nT8B7m0c39AKY9hHsuAMnbw_Hcg,732
80
79
  shotgun/cli/codebase/__init__.py,sha256=rKdvx33p0i_BYbNkz5_4DCFgEMwzOOqLi9f5p7XTLKM,73
@@ -84,13 +83,13 @@ shotgun/codebase/__init__.py,sha256=QBgFE2Abd5Vl7_NdYOglF9S6d-vIjkb3C0cpIYoHZEU,
84
83
  shotgun/codebase/models.py,sha256=5e_7zaPL032n_ghcvs01Uug3BH4jyKiQ3S3U5w21BSM,5296
85
84
  shotgun/codebase/service.py,sha256=nyggapfHKdwkKXyuT9oA0tJ9qf4RNVsOxfY8lC5pHro,8006
86
85
  shotgun/codebase/core/__init__.py,sha256=GWWhJEqChiDXAF4omYCgzgoZmJjwsAf6P1aZ5Bl8OE0,1170
87
- shotgun/codebase/core/change_detector.py,sha256=uqqQLe8LPC_LVj64cDrmc1ctjKyZsfHfBBdTJQlSjE0,12486
88
- shotgun/codebase/core/code_retrieval.py,sha256=8ob-xWjcSmEilpI1h5IU94ykd2dETMf84CfY36N_big,8015
86
+ shotgun/codebase/core/change_detector.py,sha256=kWCYLWzRzb3IGGOj71KBn7UOCOKMpINJbOBDf98aMxE,12409
87
+ shotgun/codebase/core/code_retrieval.py,sha256=_JVyyQKHDFm3dxOOua1mw9eIIOHIVz3-I8aZtEsEj1E,7927
89
88
  shotgun/codebase/core/cypher_models.py,sha256=Yfysfa9lLguILftkmtuJCN3kLBFIo7WW7NigM-Zr-W4,1735
90
- shotgun/codebase/core/ingestor.py,sha256=xWCz84Iwad4kXOqcb5JYHTtBc3YqLdYoPuUcWccrX-o,64708
89
+ shotgun/codebase/core/ingestor.py,sha256=CNYbdoJycnbA2psYCD9uKcUwIe3Ao7I7T6NrPhTQE9k,64613
91
90
  shotgun/codebase/core/language_config.py,sha256=vsqHyuFnumRPRBV1lMOxWKNOIiClO6FyfKQR0fGrtl4,8934
92
- shotgun/codebase/core/manager.py,sha256=8FbiLyTe2JDELgx1tpOv_Kqba8J7QSXyORCAO3dERmk,66722
93
- shotgun/codebase/core/nl_query.py,sha256=qH32btb5w7eY2ij7-wc6Z0QXIDOqjz0pZXXRUboSbYs,16121
91
+ shotgun/codebase/core/manager.py,sha256=1ykkGSrR4ooEKiluGp-17q3n9hd2LSjonvZL10Xb0pk,66697
92
+ shotgun/codebase/core/nl_query.py,sha256=kPoSJXBlm5rLhzOofZhqPVMJ_Lj3rV2H6sld6BwtMdg,16115
94
93
  shotgun/codebase/core/parser_loader.py,sha256=LZRrDS8Sp518jIu3tQW-BxdwJ86lnsTteI478ER9Td8,4278
95
94
  shotgun/llm_proxy/__init__.py,sha256=3ST3ygtf2sXXSOjIFHxVZ5xqRbT3TF7jpNHwuZAtIwA,452
96
95
  shotgun/llm_proxy/clients.py,sha256=Y19W8Gb2e-37w8rUKPmxJOqoTk6GlcPhZhoeAbbURU0,1341
@@ -130,14 +129,14 @@ shotgun/shotgun_web/client.py,sha256=n5DDuVfSa6VPZjhSsfSxQlSFOnhgDHyidRnB8Hv9XF4
130
129
  shotgun/shotgun_web/constants.py,sha256=eNvtjlu81bAVQaCwZXOVjSpDopUm9pf34XuZEvuMiko,661
131
130
  shotgun/shotgun_web/models.py,sha256=Ie9VfqKZM2tIJhIjentU9qLoNaMZvnUJaIu-xg9kQsA,1391
132
131
  shotgun/tui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
133
- shotgun/tui/app.py,sha256=63eg_5bL3v2xfoep3wDA1YfikI6Gyn8WG2cXtMIIRuQ,12700
134
- shotgun/tui/containers.py,sha256=c2gJnFWab873F8IDOwgUBM-2ukf2kbIlO7_s20JxH1w,3540
135
- shotgun/tui/dependencies.py,sha256=I8xIPUujCeQqqkkKbNYrsL6dCA2MfQ8Vlh4Q0VGlAfI,1331
132
+ shotgun/tui/app.py,sha256=zXV2WIc5mdunDXRUBlrlSbaO4J8D__0UxikfxMDaR6k,12287
133
+ shotgun/tui/containers.py,sha256=OyKNgtB9TJZrQwObmEN44cYgodTyEL6xX4YAUFUw0Mg,3333
134
+ shotgun/tui/dependencies.py,sha256=gxLyejHMxS5Fef4Xf06GnMDVRJSaRt9j2JT9lyEIILQ,1319
136
135
  shotgun/tui/filtered_codebase_service.py,sha256=lJ8gTMhIveTatmvmGLP299msWWTkVYKwvY_2FhuL2s4,1687
137
136
  shotgun/tui/protocols.py,sha256=udScqPLb6yRGw1uDO6AuskRu33riaVVh0CAynEogvPM,1256
138
137
  shotgun/tui/styles.tcss,sha256=ETyyw1bpMBOqTi5RLcAJUScdPWTvAWEqE9YcT0kVs_E,121
139
138
  shotgun/tui/commands/__init__.py,sha256=qxYz-9aGhXAZF9VQ5AyALejI1TacsEc2cX2DH7vTXoM,2559
140
- shotgun/tui/components/context_indicator.py,sha256=GeEMvLYf09Hkw-sTqX1v8RDHb6rt6mXcUpI4DT9DVHQ,5792
139
+ shotgun/tui/components/context_indicator.py,sha256=TNvzGmzALHGbOf-kPqImTy-0-spBibXGi63de7VbDHk,4270
141
140
  shotgun/tui/components/mode_indicator.py,sha256=NWswddRaYxTY27XOd2oKsWKhaM4dFmCl_LyclRJJQR4,2354
142
141
  shotgun/tui/components/prompt_input.py,sha256=Ss-htqraHZAPaehGE4x86ij0veMjc4UgadMXpbdXr40,2229
143
142
  shotgun/tui/components/spinner.py,sha256=ovTDeaJ6FD6chZx_Aepia6R3UkPOVJ77EKHfRmn39MY,2427
@@ -147,24 +146,22 @@ shotgun/tui/components/vertical_tail.py,sha256=kROwTaRjUwVB7H35dtmNcUVPQqNYvvfq7
147
146
  shotgun/tui/screens/chat.tcss,sha256=7jM4YTBj-N-5T4NIiU2AJiGtKYvYO50OAkI0o7_qimI,574
148
147
  shotgun/tui/screens/confirmation_dialog.py,sha256=62RYcTSfZHLH77bewmtSEeGgLRyYvCQh16ZoZuIE1J0,4788
149
148
  shotgun/tui/screens/directory_setup.py,sha256=lIZ1J4A6g5Q2ZBX8epW7BhR96Dmdcg22CyiM5S-I5WU,3237
150
- shotgun/tui/screens/feedback.py,sha256=V4Fkk0Nqe-S7Cak-mzqGtGKNeEeluW4oCZGZKsOtiN0,5732
151
- shotgun/tui/screens/github_issue.py,sha256=5i-Uo4U6q7T7Sdb-uj8LK2WJYbYGOkLgkpahUbFCex4,2902
152
- shotgun/tui/screens/model_picker.py,sha256=JXtFs476WGhu4fhDNG0Bit59e4mtuykNziAM953CNEk,12930
153
- shotgun/tui/screens/onboarding.py,sha256=inSdwIMbfMf376fOA0x3AdSDvNhJcxjWnDNKpMRMCp0,13821
149
+ shotgun/tui/screens/feedback.py,sha256=VxpW0PVxMp22ZvSfQkTtgixNrpEOlfWtekjqlVfYEjA,5708
150
+ shotgun/tui/screens/model_picker.py,sha256=I5lMa6GZci6uZ1TmE90S--L_bsgoUC5sMbXXNOsPODc,12752
154
151
  shotgun/tui/screens/pipx_migration.py,sha256=i5g9pQLKeGfqwppVFddRTypXCBk9byaIQ_1wgYuDTfc,4326
155
- shotgun/tui/screens/provider_config.py,sha256=bBPtgdcmUln8tPDoVrECmcWDq_2_BDfdsUVWumA4Ebo,12036
156
- shotgun/tui/screens/shotgun_auth.py,sha256=g1mA4d0hlIH8AWwV8go95WNEQsPKoq9n6QJQ3vtviSo,10675
152
+ shotgun/tui/screens/provider_config.py,sha256=UCnAzjXPoP7Y73gsXxZF2PNA4LdSgpgoGYwiOd6fERA,10902
153
+ shotgun/tui/screens/shotgun_auth.py,sha256=Y--7LZewV6gfDkucxymfAO7BCd7eI2C3H1ClDMztVio,10663
157
154
  shotgun/tui/screens/splash.py,sha256=E2MsJihi3c9NY1L28o_MstDxGwrCnnV7zdq00MrGAsw,706
158
- shotgun/tui/screens/welcome.py,sha256=Lr7fJqXccjZnbBF_9qn5UpewW1gHsRuVLAioWEKbhPE,6364
155
+ shotgun/tui/screens/welcome.py,sha256=XOKhd3hjhEUBjs9ZlUIZDdmrlIAvQ7qdO1_KKruGcqo,6134
159
156
  shotgun/tui/screens/chat/__init__.py,sha256=wChPqpJG-7kPYVYZjE8BlkXWxfW_YABhTR2fQ51opHY,113
160
157
  shotgun/tui/screens/chat/chat.tcss,sha256=7jM4YTBj-N-5T4NIiU2AJiGtKYvYO50OAkI0o7_qimI,574
161
- shotgun/tui/screens/chat/chat_screen.py,sha256=OvzQcCJDEvOzW0OJ63jJLjamZHUTucxnbZi6Xq00Ijw,50828
158
+ shotgun/tui/screens/chat/chat_screen.py,sha256=3SbRSeRRcdy2XUYRcveDzM6ah9VRtXxdTc0QBEwv8Ho,45339
162
159
  shotgun/tui/screens/chat/codebase_index_prompt_screen.py,sha256=QjqOOqaXJks-82prEHCUnIZbmNBoGb2FLqxet_dUUYM,2070
163
160
  shotgun/tui/screens/chat/codebase_index_selection.py,sha256=Zz0vi3uLhWysdPHRO8Rye9QX4hIPeWhSAw6Y9-BlOVA,241
164
- shotgun/tui/screens/chat/help_text.py,sha256=MkDq0Z7yQCXHVtLlnZaFU_Ijq1rbQX9KMOGVsb_1Hm8,1610
161
+ shotgun/tui/screens/chat/help_text.py,sha256=VMvQ9VTuTaVOrMiyLWid0_5iX9qhNhQMRUM9Yq57ggs,1405
165
162
  shotgun/tui/screens/chat/prompt_history.py,sha256=uL3KVFb32vD09jN338mebFAi0QI-EJXTxcEQy-j6QdQ,1201
166
163
  shotgun/tui/screens/chat_screen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
167
- shotgun/tui/screens/chat_screen/command_providers.py,sha256=w8Ga9R2QDHa2Y-IzqZ5-ofZ0BqB-FjNErdgZieFqnZg,15482
164
+ shotgun/tui/screens/chat_screen/command_providers.py,sha256=vHqNS9ELQlP-Yjm5IoT_LkqqBAQXyshwucKVntW4d_Y,15098
168
165
  shotgun/tui/screens/chat_screen/hint_message.py,sha256=WOpbk8q7qt7eOHTyyHvh_IQIaublVDeJGaLpsxEk9FA,933
169
166
  shotgun/tui/screens/chat_screen/history/__init__.py,sha256=PRznBlnm9caNE0YYC08PkvNMAK-JpuULwmByaRNTKO0,581
170
167
  shotgun/tui/screens/chat_screen/history/agent_response.py,sha256=m-RtSg77y-g_mzkVHOBMTMSW1ZE6RUCUYupn-PylPcc,2378
@@ -173,22 +170,21 @@ shotgun/tui/screens/chat_screen/history/formatters.py,sha256=R1roy6Ap04dUJ7clMLt
173
170
  shotgun/tui/screens/chat_screen/history/partial_response.py,sha256=loMaUoXLphnRh3gl4xvmTtkfaFY-ULrSDjndAWQcy1s,1318
174
171
  shotgun/tui/screens/chat_screen/history/user_question.py,sha256=BKl4FVKh4veszykkfr8RI06O5NEDIBZ17IZSCLzlImA,1305
175
172
  shotgun/tui/services/__init__.py,sha256=-BKRCRYQSnQZI4PxxUpkbvq8eYhXGjWHJtVW06CYQ2o,149
176
- shotgun/tui/services/conversation_service.py,sha256=iT8YP4c8nncbYiSk82t-1j06_71RBxLVUCUJnj5EmGE,6741
173
+ shotgun/tui/services/conversation_service.py,sha256=ZViELMDrwaos_fSgTsuFtH_8CAGuAeW9J766-u6igAQ,6573
177
174
  shotgun/tui/state/__init__.py,sha256=oPV_VsvoiXhuZPwnra38kCT3RyXLvVxkVKDOv-LXGgA,141
178
175
  shotgun/tui/state/processing_state.py,sha256=O0SxqQmljWyaSAhdCAr2fNgS0ibFiIhGRNHpiUSCkW0,6234
179
176
  shotgun/tui/utils/__init__.py,sha256=cFjDfoXTRBq29wgP7TGRWUu1eFfiIG-LLOzjIGfadgI,150
180
- shotgun/tui/utils/mode_progress.py,sha256=6zh5NKtx0mF5eIOL9OPex93a4l_--s2uXrpOkqemAFU,11168
177
+ shotgun/tui/utils/mode_progress.py,sha256=lseRRo7kMWLkBzI3cU5vqJmS2ZcCjyRYf9Zwtvc-v58,10931
181
178
  shotgun/tui/widgets/__init__.py,sha256=rfWJJ3R9ID9J-qWm4ESnGgTK5KpKZJ7bdO0BH0PLdPI,152
182
- shotgun/tui/widgets/widget_coordinator.py,sha256=ApHslajShTHXJUSqqEdE_GMJe3ntumTJBkNyBUbnrlo,9026
179
+ shotgun/tui/widgets/widget_coordinator.py,sha256=n91OOxeZ4XE9FlLgzxlFYAFqv1uLHQ_V_p3L0vv1doI,8508
183
180
  shotgun/utils/__init__.py,sha256=WinIEp9oL2iMrWaDkXz2QX4nYVPAm8C9aBSKTeEwLtE,198
184
181
  shotgun/utils/datetime_utils.py,sha256=x_uYmG1n9rkhSO2oR2uV9ttiuPL0nKa9os8YYaPfdWY,2592
185
182
  shotgun/utils/env_utils.py,sha256=ulM3BRi9ZhS7uC-zorGeDQm4SHvsyFuuU9BtVPqdrHY,1418
186
- shotgun/utils/file_system_utils.py,sha256=zuuWO12bzSfeocTbi4DHVJKJTBekjP-_vRmb36FHrQ4,1525
187
- shotgun/utils/marketing.py,sha256=WAPEtJDagNsDmIBdrZ0XBHOgsLONz_eT25wEng-HDBs,3759
183
+ shotgun/utils/file_system_utils.py,sha256=2SbEWaJnxNbAWUeBCcYNfHMiz-10EOALMIpgo8AYMjY,1020
188
184
  shotgun/utils/source_detection.py,sha256=Co6Q03R3fT771TF3RzB-70stfjNP2S4F_ArZKibwzm8,454
189
185
  shotgun/utils/update_checker.py,sha256=6fjiVUXgdxUrI54dfw0xBsrw7jlobYkjYNZaR-JoTpI,9667
190
- shotgun_sh-0.2.11.dist-info/METADATA,sha256=EMOT14E5wB9Zd0aOCRfS4a8RQpL-hdP0zzg7mh5ZAb0,4480
191
- shotgun_sh-0.2.11.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
192
- shotgun_sh-0.2.11.dist-info/entry_points.txt,sha256=GQmtjKaPtviqYOuB3C0SMGlG5RZS9-VDDIKxV_IVHmY,75
193
- shotgun_sh-0.2.11.dist-info/licenses/LICENSE,sha256=ZZEiPnjIkv3rNT-CJBMU6l7VukLUdddCo3bTwal1NIQ,1070
194
- shotgun_sh-0.2.11.dist-info/RECORD,,
186
+ shotgun_sh-0.2.11.dev2.dist-info/METADATA,sha256=PQ9hFDtc75521Z7uU6PdhjnJFpeWkkC-XZryiKlo7-M,4453
187
+ shotgun_sh-0.2.11.dev2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
188
+ shotgun_sh-0.2.11.dev2.dist-info/entry_points.txt,sha256=GQmtjKaPtviqYOuB3C0SMGlG5RZS9-VDDIKxV_IVHmY,75
189
+ shotgun_sh-0.2.11.dev2.dist-info/licenses/LICENSE,sha256=ZZEiPnjIkv3rNT-CJBMU6l7VukLUdddCo3bTwal1NIQ,1070
190
+ shotgun_sh-0.2.11.dev2.dist-info/RECORD,,
shotgun/exceptions.py DELETED
@@ -1,32 +0,0 @@
1
- """General exceptions for Shotgun application."""
2
-
3
-
4
- class ErrorNotPickedUpBySentry(Exception): # noqa: N818
5
- """Base for user-actionable errors that shouldn't be sent to Sentry.
6
-
7
- These errors represent expected user conditions requiring action
8
- rather than bugs that need tracking.
9
- """
10
-
11
-
12
- class ContextSizeLimitExceeded(ErrorNotPickedUpBySentry):
13
- """Raised when conversation context exceeds the model's limits.
14
-
15
- This is a user-actionable error - they need to either:
16
- 1. Switch to a larger context model
17
- 2. Switch to a larger model, compact their conversation, then switch back
18
- 3. Clear the conversation and start fresh
19
- """
20
-
21
- def __init__(self, model_name: str, max_tokens: int):
22
- """Initialize the exception.
23
-
24
- Args:
25
- model_name: Name of the model whose limit was exceeded
26
- max_tokens: Maximum tokens allowed by the model
27
- """
28
- self.model_name = model_name
29
- self.max_tokens = max_tokens
30
- super().__init__(
31
- f"Context too large for {model_name} (limit: {max_tokens:,} tokens)"
32
- )
@@ -1,102 +0,0 @@
1
- """Screen for guiding users to create GitHub issues."""
2
-
3
- import webbrowser
4
-
5
- from textual import on
6
- from textual.app import ComposeResult
7
- from textual.containers import Container, Vertical
8
- from textual.screen import ModalScreen
9
- from textual.widgets import Button, Markdown, Static
10
-
11
-
12
- class GitHubIssueScreen(ModalScreen[None]):
13
- """Guide users to create issues on GitHub."""
14
-
15
- CSS = """
16
- GitHubIssueScreen {
17
- align: center middle;
18
- }
19
-
20
- #issue-container {
21
- width: 70;
22
- max-width: 100;
23
- height: auto;
24
- border: thick $primary;
25
- background: $surface;
26
- padding: 2;
27
- }
28
-
29
- #issue-header {
30
- text-style: bold;
31
- color: $text-accent;
32
- padding-bottom: 1;
33
- text-align: center;
34
- }
35
-
36
- #issue-content {
37
- padding: 1 0;
38
- }
39
-
40
- #issue-buttons {
41
- height: auto;
42
- padding: 2 0 0 0;
43
- align: center middle;
44
- }
45
-
46
- #issue-buttons Button {
47
- margin: 1 1;
48
- min-width: 20;
49
- }
50
- """
51
-
52
- BINDINGS = [
53
- ("escape", "dismiss", "Close"),
54
- ]
55
-
56
- def compose(self) -> ComposeResult:
57
- """Compose the GitHub issue screen."""
58
- with Container(id="issue-container"):
59
- yield Static("Create a GitHub Issue", id="issue-header")
60
- with Vertical(id="issue-content"):
61
- yield Markdown(
62
- """
63
- ## Report Bugs or Request Features
64
-
65
- We track all bugs, feature requests, and improvements on GitHub Issues.
66
-
67
- ### How to Create an Issue:
68
-
69
- 1. Click the button below to open our GitHub Issues page
70
- 2. Click **"New Issue"**
71
- 3. Choose a template:
72
- - **Bug Report** - Report a bug or unexpected behavior
73
- - **Feature Request** - Suggest new functionality
74
- - **Documentation** - Report docs issues or improvements
75
- 4. Fill in the details and submit
76
-
77
- We review all issues and will respond as soon as possible!
78
-
79
- ### Before Creating an Issue:
80
-
81
- - Search existing issues to avoid duplicates
82
- - Include steps to reproduce for bugs
83
- - Be specific about what you'd like for feature requests
84
- """,
85
- id="issue-markdown",
86
- )
87
- with Vertical(id="issue-buttons"):
88
- yield Button(
89
- "🐙 Open GitHub Issues", id="github-button", variant="primary"
90
- )
91
- yield Button("Close", id="close-button")
92
-
93
- @on(Button.Pressed, "#github-button")
94
- def handle_github(self) -> None:
95
- """Open GitHub issues page in browser."""
96
- webbrowser.open("https://github.com/shotgun-sh/shotgun/issues")
97
- self.notify("Opening GitHub Issues in your browser...")
98
-
99
- @on(Button.Pressed, "#close-button")
100
- def handle_close(self) -> None:
101
- """Handle close button press."""
102
- self.dismiss()