shotgun-sh 0.1.14__py3-none-any.whl → 0.2.11__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 (143) hide show
  1. shotgun/agents/agent_manager.py +715 -75
  2. shotgun/agents/common.py +80 -75
  3. shotgun/agents/config/constants.py +21 -10
  4. shotgun/agents/config/manager.py +322 -97
  5. shotgun/agents/config/models.py +114 -84
  6. shotgun/agents/config/provider.py +232 -88
  7. shotgun/agents/context_analyzer/__init__.py +28 -0
  8. shotgun/agents/context_analyzer/analyzer.py +471 -0
  9. shotgun/agents/context_analyzer/constants.py +9 -0
  10. shotgun/agents/context_analyzer/formatter.py +115 -0
  11. shotgun/agents/context_analyzer/models.py +212 -0
  12. shotgun/agents/conversation_history.py +125 -2
  13. shotgun/agents/conversation_manager.py +57 -19
  14. shotgun/agents/export.py +6 -7
  15. shotgun/agents/history/compaction.py +10 -5
  16. shotgun/agents/history/context_extraction.py +93 -6
  17. shotgun/agents/history/history_processors.py +129 -12
  18. shotgun/agents/history/token_counting/__init__.py +31 -0
  19. shotgun/agents/history/token_counting/anthropic.py +127 -0
  20. shotgun/agents/history/token_counting/base.py +78 -0
  21. shotgun/agents/history/token_counting/openai.py +90 -0
  22. shotgun/agents/history/token_counting/sentencepiece_counter.py +127 -0
  23. shotgun/agents/history/token_counting/tokenizer_cache.py +92 -0
  24. shotgun/agents/history/token_counting/utils.py +144 -0
  25. shotgun/agents/history/token_estimation.py +12 -12
  26. shotgun/agents/llm.py +62 -0
  27. shotgun/agents/models.py +59 -4
  28. shotgun/agents/plan.py +6 -7
  29. shotgun/agents/research.py +7 -8
  30. shotgun/agents/specify.py +6 -7
  31. shotgun/agents/tasks.py +6 -7
  32. shotgun/agents/tools/__init__.py +0 -2
  33. shotgun/agents/tools/codebase/codebase_shell.py +6 -0
  34. shotgun/agents/tools/codebase/directory_lister.py +6 -0
  35. shotgun/agents/tools/codebase/file_read.py +11 -2
  36. shotgun/agents/tools/codebase/query_graph.py +6 -0
  37. shotgun/agents/tools/codebase/retrieve_code.py +6 -0
  38. shotgun/agents/tools/file_management.py +82 -16
  39. shotgun/agents/tools/registry.py +217 -0
  40. shotgun/agents/tools/web_search/__init__.py +55 -16
  41. shotgun/agents/tools/web_search/anthropic.py +76 -51
  42. shotgun/agents/tools/web_search/gemini.py +50 -27
  43. shotgun/agents/tools/web_search/openai.py +26 -17
  44. shotgun/agents/tools/web_search/utils.py +2 -2
  45. shotgun/agents/usage_manager.py +164 -0
  46. shotgun/api_endpoints.py +15 -0
  47. shotgun/cli/clear.py +53 -0
  48. shotgun/cli/compact.py +186 -0
  49. shotgun/cli/config.py +41 -67
  50. shotgun/cli/context.py +111 -0
  51. shotgun/cli/export.py +1 -1
  52. shotgun/cli/feedback.py +50 -0
  53. shotgun/cli/models.py +3 -2
  54. shotgun/cli/plan.py +1 -1
  55. shotgun/cli/research.py +1 -1
  56. shotgun/cli/specify.py +1 -1
  57. shotgun/cli/tasks.py +1 -1
  58. shotgun/cli/update.py +16 -2
  59. shotgun/codebase/core/change_detector.py +5 -3
  60. shotgun/codebase/core/code_retrieval.py +4 -2
  61. shotgun/codebase/core/ingestor.py +57 -16
  62. shotgun/codebase/core/manager.py +20 -7
  63. shotgun/codebase/core/nl_query.py +1 -1
  64. shotgun/codebase/models.py +4 -4
  65. shotgun/exceptions.py +32 -0
  66. shotgun/llm_proxy/__init__.py +19 -0
  67. shotgun/llm_proxy/clients.py +44 -0
  68. shotgun/llm_proxy/constants.py +15 -0
  69. shotgun/logging_config.py +18 -27
  70. shotgun/main.py +91 -12
  71. shotgun/posthog_telemetry.py +81 -10
  72. shotgun/prompts/agents/export.j2 +18 -1
  73. shotgun/prompts/agents/partials/common_agent_system_prompt.j2 +5 -1
  74. shotgun/prompts/agents/partials/interactive_mode.j2 +24 -7
  75. shotgun/prompts/agents/plan.j2 +1 -1
  76. shotgun/prompts/agents/research.j2 +1 -1
  77. shotgun/prompts/agents/specify.j2 +270 -3
  78. shotgun/prompts/agents/state/system_state.j2 +4 -0
  79. shotgun/prompts/agents/tasks.j2 +1 -1
  80. shotgun/prompts/loader.py +2 -2
  81. shotgun/prompts/tools/web_search.j2 +14 -0
  82. shotgun/sentry_telemetry.py +27 -18
  83. shotgun/settings.py +238 -0
  84. shotgun/shotgun_web/__init__.py +19 -0
  85. shotgun/shotgun_web/client.py +138 -0
  86. shotgun/shotgun_web/constants.py +21 -0
  87. shotgun/shotgun_web/models.py +47 -0
  88. shotgun/telemetry.py +24 -36
  89. shotgun/tui/app.py +251 -23
  90. shotgun/tui/commands/__init__.py +1 -1
  91. shotgun/tui/components/context_indicator.py +179 -0
  92. shotgun/tui/components/mode_indicator.py +70 -0
  93. shotgun/tui/components/status_bar.py +48 -0
  94. shotgun/tui/containers.py +91 -0
  95. shotgun/tui/dependencies.py +39 -0
  96. shotgun/tui/protocols.py +45 -0
  97. shotgun/tui/screens/chat/__init__.py +5 -0
  98. shotgun/tui/screens/chat/chat.tcss +54 -0
  99. shotgun/tui/screens/chat/chat_screen.py +1234 -0
  100. shotgun/tui/screens/chat/codebase_index_prompt_screen.py +64 -0
  101. shotgun/tui/screens/chat/codebase_index_selection.py +12 -0
  102. shotgun/tui/screens/chat/help_text.py +40 -0
  103. shotgun/tui/screens/chat/prompt_history.py +48 -0
  104. shotgun/tui/screens/chat.tcss +11 -0
  105. shotgun/tui/screens/chat_screen/command_providers.py +226 -11
  106. shotgun/tui/screens/chat_screen/history/__init__.py +22 -0
  107. shotgun/tui/screens/chat_screen/history/agent_response.py +66 -0
  108. shotgun/tui/screens/chat_screen/history/chat_history.py +116 -0
  109. shotgun/tui/screens/chat_screen/history/formatters.py +115 -0
  110. shotgun/tui/screens/chat_screen/history/partial_response.py +43 -0
  111. shotgun/tui/screens/chat_screen/history/user_question.py +42 -0
  112. shotgun/tui/screens/confirmation_dialog.py +151 -0
  113. shotgun/tui/screens/feedback.py +193 -0
  114. shotgun/tui/screens/github_issue.py +102 -0
  115. shotgun/tui/screens/model_picker.py +352 -0
  116. shotgun/tui/screens/onboarding.py +431 -0
  117. shotgun/tui/screens/pipx_migration.py +153 -0
  118. shotgun/tui/screens/provider_config.py +156 -39
  119. shotgun/tui/screens/shotgun_auth.py +295 -0
  120. shotgun/tui/screens/welcome.py +198 -0
  121. shotgun/tui/services/__init__.py +5 -0
  122. shotgun/tui/services/conversation_service.py +184 -0
  123. shotgun/tui/state/__init__.py +7 -0
  124. shotgun/tui/state/processing_state.py +185 -0
  125. shotgun/tui/utils/mode_progress.py +14 -7
  126. shotgun/tui/widgets/__init__.py +5 -0
  127. shotgun/tui/widgets/widget_coordinator.py +262 -0
  128. shotgun/utils/datetime_utils.py +77 -0
  129. shotgun/utils/env_utils.py +13 -0
  130. shotgun/utils/file_system_utils.py +22 -2
  131. shotgun/utils/marketing.py +110 -0
  132. shotgun/utils/update_checker.py +69 -14
  133. shotgun_sh-0.2.11.dist-info/METADATA +130 -0
  134. shotgun_sh-0.2.11.dist-info/RECORD +194 -0
  135. {shotgun_sh-0.1.14.dist-info → shotgun_sh-0.2.11.dist-info}/entry_points.txt +1 -0
  136. {shotgun_sh-0.1.14.dist-info → shotgun_sh-0.2.11.dist-info}/licenses/LICENSE +1 -1
  137. shotgun/agents/history/token_counting.py +0 -429
  138. shotgun/agents/tools/user_interaction.py +0 -37
  139. shotgun/tui/screens/chat.py +0 -797
  140. shotgun/tui/screens/chat_screen/history.py +0 -350
  141. shotgun_sh-0.1.14.dist-info/METADATA +0 -466
  142. shotgun_sh-0.1.14.dist-info/RECORD +0 -133
  143. {shotgun_sh-0.1.14.dist-info → shotgun_sh-0.2.11.dist-info}/WHEEL +0 -0
@@ -1,466 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: shotgun-sh
3
- Version: 0.1.14
4
- Summary: AI-powered research, planning, and task management CLI tool
5
- Project-URL: Homepage, https://shotgun.sh/
6
- Project-URL: Repository, https://github.com/shotgun-sh/shotgun
7
- Project-URL: Issues, https://github.com/shotgun-sh/shotgun-alpha/issues
8
- Project-URL: Discord, https://discord.gg/5RmY6J2N7s
9
- Author-email: "Proofs.io" <hello@proofs.io>
10
- License: MIT
11
- License-File: LICENSE
12
- Keywords: agent,ai,cli,llm,planning,productivity,pydantic-ai,research,task-management
13
- Classifier: Development Status :: 3 - Alpha
14
- Classifier: Environment :: Console
15
- Classifier: Intended Audience :: Developers
16
- Classifier: License :: OSI Approved :: MIT License
17
- Classifier: Operating System :: OS Independent
18
- Classifier: Programming Language :: Python :: 3
19
- Classifier: Programming Language :: Python :: 3.11
20
- Classifier: Programming Language :: Python :: 3.12
21
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
22
- Classifier: Topic :: Utilities
23
- Requires-Python: >=3.11
24
- Requires-Dist: anthropic>=0.39.0
25
- Requires-Dist: google-generativeai>=0.8.5
26
- Requires-Dist: httpx>=0.27.0
27
- Requires-Dist: jinja2>=3.1.0
28
- Requires-Dist: kuzu>=0.7.0
29
- Requires-Dist: logfire[pydantic-ai]>=2.0.0
30
- Requires-Dist: openai>=1.0.0
31
- Requires-Dist: packaging>=23.0
32
- Requires-Dist: posthog>=3.0.0
33
- Requires-Dist: pydantic-ai>=0.0.14
34
- Requires-Dist: rich>=13.0.0
35
- Requires-Dist: sentry-sdk[pure-eval]>=2.0.0
36
- Requires-Dist: textual-dev>=1.7.0
37
- Requires-Dist: textual>=6.1.0
38
- Requires-Dist: tiktoken>=0.7.0
39
- Requires-Dist: tree-sitter-go>=0.23.0
40
- Requires-Dist: tree-sitter-javascript>=0.23.0
41
- Requires-Dist: tree-sitter-python>=0.23.0
42
- Requires-Dist: tree-sitter-rust>=0.23.0
43
- Requires-Dist: tree-sitter-typescript>=0.23.0
44
- Requires-Dist: tree-sitter>=0.21.0
45
- Requires-Dist: typer>=0.12.0
46
- Requires-Dist: watchdog>=4.0.0
47
- Provides-Extra: dev
48
- Requires-Dist: commitizen>=3.13.0; extra == 'dev'
49
- Requires-Dist: lefthook>=1.12.0; extra == 'dev'
50
- Requires-Dist: mypy>=1.11.0; extra == 'dev'
51
- Requires-Dist: ruff>=0.6.0; extra == 'dev'
52
- Description-Content-Type: text/markdown
53
-
54
- # Shotgun
55
-
56
- A Python CLI tool for research, planning, and task management powered by AI agents.
57
-
58
- ## Features
59
-
60
- - **Research**: Perform research with agentic loops
61
- - **Planning**: Generate structured plans for achieving goals
62
- - **Tasks**: Generate prioritized task lists with agentic approaches
63
-
64
- ## Installation
65
-
66
- ### From PyPI (Recommended)
67
-
68
- ```bash
69
- pip install shotgun-sh
70
- ```
71
-
72
- ### From Source
73
-
74
- ```bash
75
- git clone https://github.com/shotgun-sh/shotgun.git
76
- cd shotgun
77
- uv sync --all-extras
78
- ```
79
-
80
- After installation from source, you can use either method:
81
-
82
- **Method 1: Direct command (after uv sync)**
83
- ```bash
84
- shotgun --help
85
- ```
86
-
87
- **Method 2: Via uv run**
88
- ```bash
89
- uv run shotgun --help
90
- ```
91
-
92
- If installed from PyPI, simply use:
93
- ```bash
94
- shotgun --help
95
- ```
96
-
97
- ### Virtual Environment Setup (Optional)
98
-
99
- If you prefer using a local virtual environment:
100
-
101
- ```bash
102
- uv venv
103
- source .venv/bin/activate # On Windows: .venv\Scripts\activate
104
- uv sync --all-extras
105
- shotgun --help
106
- ```
107
-
108
- ## Usage
109
-
110
- ### Using Direct Commands (after uv sync)
111
-
112
- ```bash
113
- # Research a topic
114
- shotgun research "What is quantum computing?"
115
-
116
- # Generate a plan
117
- shotgun plan "Build a web application"
118
- shotgun plan "build me a house"
119
-
120
- # Generate tasks for a project
121
- shotgun tasks "Create a machine learning model"
122
- ```
123
-
124
- ### Using uv run
125
-
126
- ```bash
127
- # Research a topic
128
- uv run shotgun research "What is quantum computing?"
129
-
130
- # Generate a plan
131
- uv run shotgun plan "Build a web application"
132
-
133
- # Generate tasks for a project
134
- uv run shotgun tasks "Create a machine learning model"
135
- ```
136
-
137
- ## Auto-Updates
138
-
139
- Shotgun automatically checks for updates to keep you on the latest version.
140
-
141
- ### How it works
142
-
143
- - Checks for updates on startup (runs in background, non-blocking)
144
- - Caches results for 24 hours to minimize API calls
145
- - Shows notification after command execution if an update is available
146
- - Never auto-updates development versions
147
-
148
- ### Update Commands
149
-
150
- ```bash
151
- # Check for available updates
152
- shotgun update --check
153
-
154
- # Install available updates
155
- shotgun update
156
-
157
- # Force update (even for dev versions with confirmation)
158
- shotgun update --force
159
- ```
160
-
161
- ### Disable Update Checks
162
-
163
- ```bash
164
- # Disable for a single command
165
- shotgun --no-update-check research "topic"
166
- ```
167
-
168
- ### Installation Methods
169
-
170
- The update command automatically detects and uses the appropriate method:
171
- - **pipx**: `pipx upgrade shotgun-sh`
172
- - **pip**: `pip install --upgrade shotgun-sh`
173
- - **venv**: Updates within the virtual environment
174
-
175
- ## Development Setup
176
-
177
- ### Requirements
178
-
179
- - **Python 3.11+** (3.13 recommended)
180
- - **uv** - Fast Python package installer and resolver
181
- - **actionlint** (optional) - For GitHub Actions workflow validation
182
-
183
- ### Quick Start
184
-
185
- 1. **Clone and setup**:
186
- ```bash
187
- git clone https://github.com/shotgun-sh/shotgun.git
188
- cd shotgun
189
- ```
190
-
191
- 2. **Install uv** (if not already installed):
192
- ```bash
193
- # macOS/Linux
194
- curl -LsSf https://astral.sh/uv/install.sh | sh
195
-
196
- # Or via brew
197
- brew install uv
198
- ```
199
-
200
- 3. **Install dependencies**:
201
- ```bash
202
- uv sync --all-extras
203
- ```
204
-
205
- 4. **Install git hooks**:
206
- ```bash
207
- uv run lefthook install
208
- ```
209
-
210
- 5. **Verify setup**:
211
- ```bash
212
- uv run shotgun --version
213
- ```
214
-
215
- ### Development Commands
216
-
217
- ```bash
218
- # Run the CLI
219
- uv run shotgun --help
220
-
221
- # Run the TUI
222
- uv run tui
223
-
224
- # Run tests
225
- uv run pytest
226
-
227
- # Run tests with coverage
228
- uv run pytest --cov=src --cov-report=term-missing --cov-report=html
229
-
230
- # Run linting
231
- uv run ruff check .
232
-
233
- # Run formatting
234
- uv run ruff format .
235
-
236
- # Run type checking
237
- uv run mypy src/
238
-
239
- # Run all pre-commit hooks manually
240
- uv run lefthook run pre-commit
241
- ```
242
-
243
- ### Code Coverage
244
-
245
- To analyze test coverage and identify areas that need testing:
246
-
247
- ```bash
248
- # Run tests with coverage analysis
249
- uv run pytest --cov=src --cov-report=term-missing --cov-report=html
250
- ```
251
-
252
- This will:
253
- - Display coverage summary in the terminal
254
- - Generate a detailed HTML coverage report
255
-
256
- **Viewing the coverage report:**
257
- Open `htmlcov/index.html` in your browser to see:
258
- - Overall coverage percentage
259
- - File-by-file coverage breakdown
260
- - Line-by-line coverage highlighting
261
- - Missing coverage areas
262
-
263
- The coverage configuration is in `pyproject.toml` and will automatically run when you use `uv run pytest`.
264
-
265
- ### Git Hooks (Lefthook)
266
-
267
- This project uses [lefthook](https://github.com/evilmartians/lefthook) for git hooks. The hooks automatically run:
268
-
269
- - **ruff** - Python linting with auto-fix
270
- - **ruff-format** - Code formatting
271
- - **mypy** - Type checking
272
- - **commitizen** - Commit message validation
273
- - **actionlint** - GitHub Actions workflow validation (if installed)
274
-
275
- #### Installing actionlint (recommended)
276
-
277
- ```bash
278
- # macOS
279
- brew install actionlint
280
-
281
- # Linux/macOS (direct download)
282
- curl -sSfL https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash | bash
283
-
284
- # Go install
285
- go install github.com/rhysd/actionlint/cmd/actionlint@latest
286
- ```
287
-
288
-
289
- ### Python Version Management
290
-
291
- The project supports **Python 3.11+**. The `.python-version` file specifies Python 3.11 to ensure development against the minimum supported version.
292
-
293
- If using **pyenv**:
294
- ```bash
295
- pyenv install 3.11
296
- ```
297
-
298
- If using **uv** (recommended):
299
- ```bash
300
- uv python install 3.11
301
- uv sync --python 3.11
302
- ```
303
-
304
- ### Commit Message Convention
305
-
306
- This project enforces **Conventional Commits** specification. All commit messages must follow this format:
307
-
308
- ```
309
- <type>[optional scope]: <description>
310
- ```
311
-
312
- **Required commit types:**
313
- - `feat`: New feature
314
- - `fix`: Bug fix
315
- - `docs`: Documentation changes
316
- - `style`: Code formatting changes
317
- - `refactor`: Code restructuring without feature changes
318
- - `perf`: Performance improvements
319
- - `test`: Adding or updating tests
320
- - `build`: Build system changes
321
- - `ci`: CI/CD changes
322
- - `chore`: Maintenance tasks
323
- - `revert`: Reverting previous commits
324
-
325
- **Examples:**
326
- ```bash
327
- feat: add user authentication system
328
- fix: resolve memory leak in data processing
329
- docs: update API documentation
330
- refactor: simplify user validation logic
331
- ```
332
-
333
- **For interactive commit creation:**
334
- ```bash
335
- uv run cz commit
336
- ```
337
-
338
- ### Contributing
339
-
340
- 1. Fork the repository
341
- 2. Create a feature branch: `git checkout -b feat/feature-name`
342
- 3. Make your changes
343
- 4. Run the pre-commit hooks: `uv run lefthook run pre-commit`
344
- 5. Commit with conventional format: `git commit -m "feat: add new feature"`
345
- 6. Push to your fork: `git push origin feat/feature-name`
346
- 7. Create a Pull Request with conventional title format
347
-
348
- ### CI/CD
349
-
350
- GitHub Actions automatically:
351
- - Runs on pull requests and pushes to main
352
- - Tests with Python 3.11
353
- - Validates code with ruff, ruff-format, and mypy
354
- - Ensures all checks pass before merge
355
-
356
- ## Observability & Telemetry
357
-
358
- Shotgun includes built-in observability with Sentry for error tracking and Logfire for logging and tracing. Both services track users anonymously using a UUID generated on first run.
359
-
360
- ### Anonymous User Tracking
361
-
362
- Each user gets a unique anonymous ID stored in their config:
363
- ```bash
364
- # Get your anonymous user ID
365
- shotgun config get-user-id
366
- ```
367
-
368
- This ID is automatically included in:
369
- - **Sentry**: Error reports and exceptions
370
- - **Logfire**: All logs, traces, and spans
371
-
372
- ### Logfire Queries
373
-
374
- Logfire uses SQL for querying logs. Here are helpful queries for debugging and analysis:
375
-
376
- #### Find all logs for a specific user
377
- ```sql
378
- SELECT * FROM records
379
- WHERE attributes->>'user_id' = 'your-user-id-here'
380
- ORDER BY timestamp DESC;
381
- ```
382
-
383
- #### Track user actions
384
- ```sql
385
- SELECT
386
- timestamp,
387
- span_name,
388
- message,
389
- attributes
390
- FROM records
391
- WHERE attributes->>'user_id' = 'your-user-id-here'
392
- AND span_name LIKE '%research%'
393
- ORDER BY timestamp DESC;
394
- ```
395
-
396
- #### Find slow operations for a user
397
- ```sql
398
- SELECT
399
- span_name,
400
- duration_ms,
401
- attributes
402
- FROM records
403
- WHERE attributes->>'user_id' = 'your-user-id-here'
404
- AND duration_ms > 1000
405
- ORDER BY duration_ms DESC;
406
- ```
407
-
408
- #### Find errors for a user
409
- ```sql
410
- SELECT * FROM records
411
- WHERE attributes->>'user_id' = 'your-user-id-here'
412
- AND level = 'error'
413
- ORDER BY timestamp DESC;
414
- ```
415
-
416
- #### Analyze user's AI provider usage
417
- ```sql
418
- SELECT
419
- attributes->>'provider' as provider,
420
- COUNT(*) as usage_count,
421
- AVG(duration_ms) as avg_duration
422
- FROM records
423
- WHERE attributes->>'user_id' = 'your-user-id-here'
424
- AND attributes->>'provider' IS NOT NULL
425
- GROUP BY provider;
426
- ```
427
-
428
- #### Track feature usage by user
429
- ```sql
430
- SELECT
431
- span_name,
432
- COUNT(*) as usage_count
433
- FROM records
434
- WHERE attributes->>'user_id' = 'your-user-id-here'
435
- AND span_name IN ('research', 'plan', 'tasks')
436
- GROUP BY span_name
437
- ORDER BY usage_count DESC;
438
- ```
439
-
440
- ### Setting Up Observability (Optional)
441
-
442
- For local development with Logfire:
443
- ```bash
444
- # Set environment variables
445
- export LOGFIRE_ENABLED=true
446
- export LOGFIRE_TOKEN=your-logfire-token
447
-
448
- # Run shotgun - will now send logs to Logfire
449
- shotgun research "topic"
450
- ```
451
-
452
- For Sentry (automatically configured in production builds):
453
- ```bash
454
- # Set for local development
455
- export SENTRY_DSN=your-sentry-dsn
456
- ```
457
-
458
- ### Privacy
459
-
460
- - **No PII collected**: Only anonymous UUIDs are used for identification
461
- - **Opt-in for development**: Telemetry requires explicit environment variables
462
- - **Automatic in production**: Production builds include telemetry for error tracking
463
-
464
- ## Support
465
-
466
- Join our discord https://discord.gg/5RmY6J2N7s
@@ -1,133 +0,0 @@
1
- shotgun/__init__.py,sha256=P40K0fnIsb7SKcQrFnXZ4aREjpWchVDhvM1HxI4cyIQ,104
2
- shotgun/build_constants.py,sha256=hDFr6eO0lwN0iCqHQ1A5s0D68txR8sYrTJLGa7tSi0o,654
3
- shotgun/logging_config.py,sha256=UKenihvgH8OA3W0b8ZFcItYaFJVe9MlsMYlcevyW1HY,7440
4
- shotgun/main.py,sha256=Fbg4MNEOR-FPibcbIQ7LwdQIOdYMNYMbMCPPjasbJyA,4834
5
- shotgun/posthog_telemetry.py,sha256=tu5FLao8uXd76RcKMyWQ9RWPCCJos749XJ_9uT_NNwI,4294
6
- shotgun/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- shotgun/sentry_telemetry.py,sha256=L7jFMNAnDIENWVeQYSLpyul2nmIm2w3wnOp2kDP_cic,2902
8
- shotgun/telemetry.py,sha256=Ves6Ih3hshpKVNVAUUmwRdtW8NkTjFPg8hEqvFKZ0t0,3208
9
- shotgun/agents/__init__.py,sha256=8Jzv1YsDuLyNPFJyckSr_qI4ehTVeDyIMDW4omsfPGc,25
10
- shotgun/agents/agent_manager.py,sha256=wXUQCEsSs68FG8edFLryeePBzxxX1GStJZwd1sS5WsE,26245
11
- shotgun/agents/common.py,sha256=vt7ECq1rT6GR5Rt63t0whH0R0cydrk7Mty2KyPL8mEg,19045
12
- shotgun/agents/conversation_history.py,sha256=5J8_1yxdZiiWTq22aDio88DkBDZ4_Lh_p5Iy5_ENszc,3898
13
- shotgun/agents/conversation_manager.py,sha256=fxAvXbEl3Cl2ugJ4N9aWXaqZtkrnfj3QzwjWC4LFXwI,3514
14
- shotgun/agents/export.py,sha256=Zke952DbJ_lOBUmN-TPHw7qmjbfqsFu1uycBRQI_pkg,2969
15
- shotgun/agents/messages.py,sha256=wNn0qC5AqASM8LMaSGFOerZEJPn5FsIOmaJs1bdosuU,1036
16
- shotgun/agents/models.py,sha256=fljmjHoCzNXPWOHSA-1KmQk1epk8ovowqDM7j5zZKB8,7853
17
- shotgun/agents/plan.py,sha256=s-WfILBOW4l8kY59RUOVtX5MJSuSzFm1nGp6b17If78,3030
18
- shotgun/agents/research.py,sha256=lYG7Rytcitop8mXs3isMI3XvYzzI3JH9u0VZz6K9zfo,3274
19
- shotgun/agents/specify.py,sha256=7MoMxfIn34G27mw6wrp_F0i2O5rid476L3kHFONDCd0,3137
20
- shotgun/agents/tasks.py,sha256=nk8zIl24o01hfzOGyWSbeVWeke6OGseO4Ppciurh13U,2999
21
- shotgun/agents/config/__init__.py,sha256=Fl8K_81zBpm-OfOW27M_WWLSFdaHHek6lWz95iDREjQ,318
22
- shotgun/agents/config/constants.py,sha256=MogArrb2r5rFI6BBzc6NhPz1payGeM6K-t5oIFbJgxg,494
23
- shotgun/agents/config/manager.py,sha256=kwMbPjz0kEH_WCQAamESGjHdE8d_P-ztel4NL4FWNUw,10662
24
- shotgun/agents/config/models.py,sha256=vpVXrtiHsDt2D_h7BLyMiiQeT97vAz2L6lYKx2SEMjo,5909
25
- shotgun/agents/config/provider.py,sha256=pVWf_WM3MNWH0v2fU-peBCqx49X-nW81piQ_M-AKWRE,7249
26
- shotgun/agents/history/__init__.py,sha256=XFQj2a6fxDqVg0Q3juvN9RjV_RJbgvFZtQOCOjVJyp4,147
27
- shotgun/agents/history/compaction.py,sha256=Je8-7T2i78gv_QWzgZNe9mvscaHcaTMttQX9xS8M38Q,3509
28
- shotgun/agents/history/constants.py,sha256=yWY8rrTZarLA3flCCMB_hS2NMvUDRDTwP4D4j7MIh1w,446
29
- shotgun/agents/history/context_extraction.py,sha256=yVka1U6TqNVsORR4JlxpWi9yBt3Quip8g_u3x2Vi9Gs,3564
30
- shotgun/agents/history/history_building.py,sha256=6LFDZ60MTPDoGAcmu_mjlnjVYu8YYWdIi-cGbF3jm7A,3532
31
- shotgun/agents/history/history_processors.py,sha256=NbStr6CvszwK3DKO5LCiaVEJI-RAcVnH5dCpHTAHjQo,17731
32
- shotgun/agents/history/message_utils.py,sha256=aPusAl2RYKbjc7lBxPaNprRHmZEG6fe97q7DQUlhlzU,2918
33
- shotgun/agents/history/token_counting.py,sha256=RasWy84eNjbmqyQDTGAzj1Q1I9ml_G_9R-maWN7gr8s,13839
34
- shotgun/agents/history/token_estimation.py,sha256=iNqhDSqFzG0YYxGijMRzj54GALFglOp0qVMB6G59RhU,4690
35
- shotgun/agents/tools/__init__.py,sha256=QaN80IqWvB5qEcjHqri1-PYvYlO74vdhcwLugoEdblo,772
36
- shotgun/agents/tools/file_management.py,sha256=HYNe_QA4T3_bPzSWBYcFZcnWdj8eb4aQ3GB735-G8Nw,7138
37
- shotgun/agents/tools/user_interaction.py,sha256=b3ncEpvoD06Cz4hwsS-ppVbQajQj640iWnVfA5WBjAA,1236
38
- shotgun/agents/tools/codebase/__init__.py,sha256=ceAGkK006NeOYaIJBLQsw7Q46sAyCRK9PYDs8feMQVw,661
39
- shotgun/agents/tools/codebase/codebase_shell.py,sha256=9b7ZStAVFprdGqp1O23ZgwkToMytlUdp_R4MhvmENhc,8584
40
- shotgun/agents/tools/codebase/directory_lister.py,sha256=eX5GKDSmbKggKDvjPpYMa2WPSGPYQAtUEZ4eN01T0t8,4703
41
- shotgun/agents/tools/codebase/file_read.py,sha256=EGK5yNqiS4cbIEQfDtdKVoJSJYk20NbZv1AQKNBUKVc,5051
42
- shotgun/agents/tools/codebase/models.py,sha256=8eR3_8DQiBNgB2twu0aC_evIJbugN9KW3gtxMZdGYCE,10087
43
- shotgun/agents/tools/codebase/query_graph.py,sha256=vOeyN4-OZj-vpTSk3Z9W5TjraZAepJ-Qjk_zzvum3fU,2115
44
- shotgun/agents/tools/codebase/retrieve_code.py,sha256=2VjiqVKJMd9rPV-mGrL4C-N8fqGjYLW6ZInFGbcTxOM,2878
45
- shotgun/agents/tools/web_search/__init__.py,sha256=Sj1tVokrCsJiLRWWTq0zrAolMHEGntRIYnqiyFi8L2E,1840
46
- shotgun/agents/tools/web_search/anthropic.py,sha256=NDhj8MrdxLsmGwHp7uM0IQeJVW2poY58GCUTJEM9dew,4827
47
- shotgun/agents/tools/web_search/gemini.py,sha256=hXjWUF-aTX3B9ViaKe5aF2aHXlaoBA5am40cgilinGE,2981
48
- shotgun/agents/tools/web_search/openai.py,sha256=V8GeqwUAi5wrbRuU41Y38schpXRdyeIfw85-CT5rAhY,3415
49
- shotgun/agents/tools/web_search/utils.py,sha256=GLJ5QV9bT2ubFMuFN7caMN7tK9OTJ0R3GD57B-tCMF0,532
50
- shotgun/cli/__init__.py,sha256=_F1uW2g87y4bGFxz8Gp8u7mq2voHp8vQIUtCmm8Tojo,40
51
- shotgun/cli/config.py,sha256=LbjxDNPdetYJiwlcyOYLnqwzALfgU-m54cfstUshbrs,8715
52
- shotgun/cli/export.py,sha256=3hIwK2_OM1MFYSTfzBxsGuuBGm5fo0XdxASfQ5Uqb3Y,2471
53
- shotgun/cli/models.py,sha256=LoajeEK7MEDUSnZXb1Li-dbhXqne812YZglx-LcVpiQ,181
54
- shotgun/cli/plan.py,sha256=T-eu-I9z-dSoKqJ-KI8X5i5Mm0VL1BfornxRiUjTgnk,2324
55
- shotgun/cli/research.py,sha256=qvBBtX3Wyn6pDZlJpcEvbeK-0iTOXegi71tm8HKVYaE,2490
56
- shotgun/cli/specify.py,sha256=ErRQ72Zc75fmxopZbKy0vvnLPuYBLsGynpjj1X6-BwI,2166
57
- shotgun/cli/tasks.py,sha256=17qWoGCVYpNIxa2vaoIH1P-xz2RcGLaK8SF4JlPsOWI,2420
58
- shotgun/cli/update.py,sha256=Dn_No7jPmdZ-7qYlhzI0BtmlufetVdw1BN-xRi_UE5A,4718
59
- shotgun/cli/utils.py,sha256=umVWXDx8pelovMk-nT8B7m0c39AKY9hHsuAMnbw_Hcg,732
60
- shotgun/cli/codebase/__init__.py,sha256=rKdvx33p0i_BYbNkz5_4DCFgEMwzOOqLi9f5p7XTLKM,73
61
- shotgun/cli/codebase/commands.py,sha256=1N2yOGmok0ZarqXPIpWGcsQrwm_ZJcyWiMxy6tm0j70,8711
62
- shotgun/cli/codebase/models.py,sha256=B9vs-d-Bq0aS6FZKebhHT-9tw90Y5f6k_t71VlZpL8k,374
63
- shotgun/codebase/__init__.py,sha256=QBgFE2Abd5Vl7_NdYOglF9S6d-vIjkb3C0cpIYoHZEU,309
64
- shotgun/codebase/models.py,sha256=1AAipm6KrGOHmYBBavugnyeOsVkzX-YXAD6dDsSVRWg,5299
65
- shotgun/codebase/service.py,sha256=nyggapfHKdwkKXyuT9oA0tJ9qf4RNVsOxfY8lC5pHro,8006
66
- shotgun/codebase/core/__init__.py,sha256=GWWhJEqChiDXAF4omYCgzgoZmJjwsAf6P1aZ5Bl8OE0,1170
67
- shotgun/codebase/core/change_detector.py,sha256=kWCYLWzRzb3IGGOj71KBn7UOCOKMpINJbOBDf98aMxE,12409
68
- shotgun/codebase/core/code_retrieval.py,sha256=_JVyyQKHDFm3dxOOua1mw9eIIOHIVz3-I8aZtEsEj1E,7927
69
- shotgun/codebase/core/cypher_models.py,sha256=Yfysfa9lLguILftkmtuJCN3kLBFIo7WW7NigM-Zr-W4,1735
70
- shotgun/codebase/core/ingestor.py,sha256=yh6BEIuUUfXU3dVpP0Llk19SrxA-uo3pdGnfcQsDsSo,63368
71
- shotgun/codebase/core/language_config.py,sha256=vsqHyuFnumRPRBV1lMOxWKNOIiClO6FyfKQR0fGrtl4,8934
72
- shotgun/codebase/core/manager.py,sha256=USGLBdDUoFtq6fMFWRtUu2HBC_FI8d6lWcAV4l6fcvk,66000
73
- shotgun/codebase/core/nl_query.py,sha256=kPoSJXBlm5rLhzOofZhqPVMJ_Lj3rV2H6sld6BwtMdg,16115
74
- shotgun/codebase/core/parser_loader.py,sha256=LZRrDS8Sp518jIu3tQW-BxdwJ86lnsTteI478ER9Td8,4278
75
- shotgun/prompts/__init__.py,sha256=RswUm0HMdfm2m2YKUwUsEdRIwoczdbI7zlucoEvHYRo,132
76
- shotgun/prompts/loader.py,sha256=jy24-E02pCSmz2651aCT2NgHfRrHAGMYvKrD6gs0Er8,4424
77
- shotgun/prompts/agents/__init__.py,sha256=YRIJMbzpArojNX1BP5gfxxois334z_GQga8T-xyWMbY,39
78
- shotgun/prompts/agents/export.j2,sha256=GKpOfGbZA9PVa4TNtMORUYiBIAcN6JCo8URmTCWKlWw,15936
79
- shotgun/prompts/agents/plan.j2,sha256=MyZDyOS21V-zrHNzbIhIdzcESGh_3KVbA4qh9rZR2_E,6086
80
- shotgun/prompts/agents/research.j2,sha256=JBtjXaMVDRuNTt7-Ai8gUb2InfolfqCkQoEkn9PsQZk,3929
81
- shotgun/prompts/agents/specify.j2,sha256=AP7XrA3KE7GZsCvW4guASxZHBM2mnrMw3irdZ3RUOBs,2808
82
- shotgun/prompts/agents/tasks.j2,sha256=9gGCimCWVvpaQSxkAjt7WmIxFHXJY2FlmqhqomFxQTA,5949
83
- shotgun/prompts/agents/partials/codebase_understanding.j2,sha256=7WH-PVd-TRBFQUdOdKkwwn9hAUaJznFZMAGHhO7IGGU,5633
84
- shotgun/prompts/agents/partials/common_agent_system_prompt.j2,sha256=eFuc3z1pSJzQtPJfjMIDNHv5XX9lP6YVrmKcbbskJj8,1877
85
- shotgun/prompts/agents/partials/content_formatting.j2,sha256=MG0JB7SSp8YV5akDWpbs2f9DcdREIYqLp38NnoWLeQ0,1854
86
- shotgun/prompts/agents/partials/interactive_mode.j2,sha256=9sYPbyc46HXg3k1FT_LugIQvOyNDnMQwsMIgOgN-_aY,1100
87
- shotgun/prompts/agents/state/system_state.j2,sha256=TQPnCLtmiNwQCbMxnCE7nLhXMJpKlBCnlNBKt7FTjuo,1033
88
- shotgun/prompts/agents/state/codebase/codebase_graphs_available.j2,sha256=U-hy-H9bPwV0sYIHTZ5TESxc5EOCtntI8GUZOmJipJw,601
89
- shotgun/prompts/codebase/__init__.py,sha256=NYuPMtmYM2ptuwf3YxVuotNlJOUq0hnjmwlzKcJkGK4,42
90
- shotgun/prompts/codebase/cypher_query_patterns.j2,sha256=ufTx_xT3VoS76KcVUbIgGQx-bJoJHx3bBE3dagAXv18,8913
91
- shotgun/prompts/codebase/cypher_system.j2,sha256=jo8d_AIoyAd0zKCvPXSmYGBxvtulMsCfeaOTdOfeC5g,2620
92
- shotgun/prompts/codebase/enhanced_query_context.j2,sha256=WzGnFaBLZO-mOdkZ_u_PewSu9niKy87DKNL4uzQq1Jg,724
93
- shotgun/prompts/codebase/partials/cypher_rules.j2,sha256=yhptyyZNzFNJWFGmOkxpF5PzZtUAXWDF4xl9ADu7yDw,3200
94
- shotgun/prompts/codebase/partials/graph_schema.j2,sha256=fUsD1ZgU1pIWUzrs97jHq3TatKeGSvZgG8XP5gCQUJc,1939
95
- shotgun/prompts/codebase/partials/temporal_context.j2,sha256=yYHQHBQ4EeSs6TtKPm9fflGW3y6H0-yAANcTdsApkk4,1388
96
- shotgun/prompts/history/__init__.py,sha256=wbMLQ8yWmYz1sfXXigEAUlNkFcM50KdQv0kp4VU_P58,43
97
- shotgun/prompts/history/incremental_summarization.j2,sha256=GmnNh0pWTjaEaI1sPwKNsGCys5fK8xrzWqalAs_LhJw,2447
98
- shotgun/prompts/history/summarization.j2,sha256=OYNVHg65zbuWB6_pXzTOs2T2k5qFD2gyfbmr6NP01rs,2268
99
- shotgun/sdk/__init__.py,sha256=ESV0WM9MigjXG30g9qVjcCMI40GQv-P-MSMGVuOisK4,380
100
- shotgun/sdk/codebase.py,sha256=7doUvwwl27RDJZIbP56LQsAx26GANtAKEBptTUhLT6w,8842
101
- shotgun/sdk/exceptions.py,sha256=qBcQv0v7ZTwP7CMcxZST4GqCsfOWtOUjSzGBo0-heqo,412
102
- shotgun/sdk/models.py,sha256=X9nOTUHH0cdkQW1NfnMEDu-QgK9oUsEISh1Jtwr5Am4,5496
103
- shotgun/sdk/services.py,sha256=J4PJFSxCQ6--u7rb3Ta-9eYtlYcxcbnzrMP6ThyCnw4,705
104
- shotgun/tui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
- shotgun/tui/app.py,sha256=xosEcdzWzRv0Aa0ZLJ04DYlYPpJ6dk2BITEPNLyFxms,4330
106
- shotgun/tui/filtered_codebase_service.py,sha256=lJ8gTMhIveTatmvmGLP299msWWTkVYKwvY_2FhuL2s4,1687
107
- shotgun/tui/styles.tcss,sha256=ETyyw1bpMBOqTi5RLcAJUScdPWTvAWEqE9YcT0kVs_E,121
108
- shotgun/tui/commands/__init__.py,sha256=8D5lvtpqMW5-fF7Bg3oJtUzU75cKOv6aUaHYYszydU8,2518
109
- shotgun/tui/components/prompt_input.py,sha256=Ss-htqraHZAPaehGE4x86ij0veMjc4UgadMXpbdXr40,2229
110
- shotgun/tui/components/spinner.py,sha256=ovTDeaJ6FD6chZx_Aepia6R3UkPOVJ77EKHfRmn39MY,2427
111
- shotgun/tui/components/splash.py,sha256=vppy9vEIEvywuUKRXn2y11HwXSRkQZHLYoVjhDVdJeU,1267
112
- shotgun/tui/components/vertical_tail.py,sha256=kROwTaRjUwVB7H35dtmNcUVPQqNYvvfq7K2tXBKEb6c,638
113
- shotgun/tui/screens/chat.py,sha256=HIDnqt8og2KMmtdOok1lL44130M8V7IP6Un_8HcRwsA,30178
114
- shotgun/tui/screens/chat.tcss,sha256=2Yq3E23jxsySYsgZf4G1AYrYVcpX0UDW6kNNI0tDmtM,437
115
- shotgun/tui/screens/directory_setup.py,sha256=lIZ1J4A6g5Q2ZBX8epW7BhR96Dmdcg22CyiM5S-I5WU,3237
116
- shotgun/tui/screens/provider_config.py,sha256=A_tvDHF5KLP5PV60LjMJ_aoOdT3TjI6_g04UIUqGPqM,7126
117
- shotgun/tui/screens/splash.py,sha256=E2MsJihi3c9NY1L28o_MstDxGwrCnnV7zdq00MrGAsw,706
118
- shotgun/tui/screens/chat_screen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
119
- shotgun/tui/screens/chat_screen/command_providers.py,sha256=55JIH9T8QnyHRsMoXhOi87FiVM-d6o7OKpCe82uDP9I,7840
120
- shotgun/tui/screens/chat_screen/hint_message.py,sha256=WOpbk8q7qt7eOHTyyHvh_IQIaublVDeJGaLpsxEk9FA,933
121
- shotgun/tui/screens/chat_screen/history.py,sha256=NVLA3_tERTyB4vkH71w8ef_M5CszfkwbQOuMb100Fzc,12272
122
- shotgun/tui/utils/__init__.py,sha256=cFjDfoXTRBq29wgP7TGRWUu1eFfiIG-LLOzjIGfadgI,150
123
- shotgun/tui/utils/mode_progress.py,sha256=lseRRo7kMWLkBzI3cU5vqJmS2ZcCjyRYf9Zwtvc-v58,10931
124
- shotgun/utils/__init__.py,sha256=WinIEp9oL2iMrWaDkXz2QX4nYVPAm8C9aBSKTeEwLtE,198
125
- shotgun/utils/env_utils.py,sha256=8QK5aw_f_V2AVTleQQlcL0RnD4sPJWXlDG46fsHu0d8,1057
126
- shotgun/utils/file_system_utils.py,sha256=l-0p1bEHF34OU19MahnRFdClHufThfGAjQ431teAIp0,1004
127
- shotgun/utils/source_detection.py,sha256=Co6Q03R3fT771TF3RzB-70stfjNP2S4F_ArZKibwzm8,454
128
- shotgun/utils/update_checker.py,sha256=IgzPHRhS1ETH7PnJR_dIx6lxgr1qHpCkMTgzUxvGjhI,7586
129
- shotgun_sh-0.1.14.dist-info/METADATA,sha256=r3-C5lO7UudGSk7J0yO7SKvEBn5GW3Rm9_gKhfmkcn4,11192
130
- shotgun_sh-0.1.14.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
131
- shotgun_sh-0.1.14.dist-info/entry_points.txt,sha256=asZxLU4QILneq0MWW10saVCZc4VWhZfb0wFZvERnzfA,45
132
- shotgun_sh-0.1.14.dist-info/licenses/LICENSE,sha256=YebsZl590zCHrF_acCU5pmNt0pnAfD2DmAnevJPB1tY,1065
133
- shotgun_sh-0.1.14.dist-info/RECORD,,