shotgun-sh 0.3.3.dev1__py3-none-any.whl → 0.6.2__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.
- shotgun/agents/agent_manager.py +497 -30
- shotgun/agents/cancellation.py +103 -0
- shotgun/agents/common.py +90 -77
- shotgun/agents/config/README.md +0 -1
- shotgun/agents/config/manager.py +52 -8
- shotgun/agents/config/models.py +21 -27
- shotgun/agents/config/provider.py +44 -27
- shotgun/agents/conversation/history/file_content_deduplication.py +66 -43
- shotgun/agents/conversation/history/token_counting/base.py +51 -9
- shotgun/agents/export.py +12 -13
- shotgun/agents/file_read.py +176 -0
- shotgun/agents/messages.py +15 -3
- shotgun/agents/models.py +90 -2
- shotgun/agents/plan.py +12 -13
- shotgun/agents/research.py +13 -10
- shotgun/agents/router/__init__.py +47 -0
- shotgun/agents/router/models.py +384 -0
- shotgun/agents/router/router.py +185 -0
- shotgun/agents/router/tools/__init__.py +18 -0
- shotgun/agents/router/tools/delegation_tools.py +557 -0
- shotgun/agents/router/tools/plan_tools.py +403 -0
- shotgun/agents/runner.py +17 -2
- shotgun/agents/specify.py +12 -13
- shotgun/agents/tasks.py +12 -13
- shotgun/agents/tools/__init__.py +8 -0
- shotgun/agents/tools/codebase/directory_lister.py +27 -39
- shotgun/agents/tools/codebase/file_read.py +26 -35
- shotgun/agents/tools/codebase/query_graph.py +9 -0
- shotgun/agents/tools/codebase/retrieve_code.py +9 -0
- shotgun/agents/tools/file_management.py +81 -3
- shotgun/agents/tools/file_read_tools/__init__.py +7 -0
- shotgun/agents/tools/file_read_tools/multimodal_file_read.py +167 -0
- shotgun/agents/tools/markdown_tools/__init__.py +62 -0
- shotgun/agents/tools/markdown_tools/insert_section.py +148 -0
- shotgun/agents/tools/markdown_tools/models.py +86 -0
- shotgun/agents/tools/markdown_tools/remove_section.py +114 -0
- shotgun/agents/tools/markdown_tools/replace_section.py +119 -0
- shotgun/agents/tools/markdown_tools/utils.py +453 -0
- shotgun/agents/tools/registry.py +46 -6
- shotgun/agents/tools/web_search/__init__.py +1 -2
- shotgun/agents/tools/web_search/gemini.py +1 -3
- shotgun/agents/tools/web_search/openai.py +42 -23
- shotgun/attachments/__init__.py +41 -0
- shotgun/attachments/errors.py +60 -0
- shotgun/attachments/models.py +107 -0
- shotgun/attachments/parser.py +257 -0
- shotgun/attachments/processor.py +193 -0
- shotgun/build_constants.py +4 -7
- shotgun/cli/clear.py +2 -2
- shotgun/cli/codebase/commands.py +181 -65
- shotgun/cli/compact.py +2 -2
- shotgun/cli/context.py +2 -2
- shotgun/cli/error_handler.py +2 -2
- shotgun/cli/run.py +90 -0
- shotgun/cli/spec/backup.py +2 -1
- shotgun/codebase/__init__.py +2 -0
- shotgun/codebase/benchmarks/__init__.py +35 -0
- shotgun/codebase/benchmarks/benchmark_runner.py +309 -0
- shotgun/codebase/benchmarks/exporters.py +119 -0
- shotgun/codebase/benchmarks/formatters/__init__.py +49 -0
- shotgun/codebase/benchmarks/formatters/base.py +34 -0
- shotgun/codebase/benchmarks/formatters/json_formatter.py +106 -0
- shotgun/codebase/benchmarks/formatters/markdown.py +136 -0
- shotgun/codebase/benchmarks/models.py +129 -0
- shotgun/codebase/core/__init__.py +4 -0
- shotgun/codebase/core/call_resolution.py +91 -0
- shotgun/codebase/core/change_detector.py +11 -6
- shotgun/codebase/core/errors.py +159 -0
- shotgun/codebase/core/extractors/__init__.py +23 -0
- shotgun/codebase/core/extractors/base.py +138 -0
- shotgun/codebase/core/extractors/factory.py +63 -0
- shotgun/codebase/core/extractors/go/__init__.py +7 -0
- shotgun/codebase/core/extractors/go/extractor.py +122 -0
- shotgun/codebase/core/extractors/javascript/__init__.py +7 -0
- shotgun/codebase/core/extractors/javascript/extractor.py +132 -0
- shotgun/codebase/core/extractors/protocol.py +109 -0
- shotgun/codebase/core/extractors/python/__init__.py +7 -0
- shotgun/codebase/core/extractors/python/extractor.py +141 -0
- shotgun/codebase/core/extractors/rust/__init__.py +7 -0
- shotgun/codebase/core/extractors/rust/extractor.py +139 -0
- shotgun/codebase/core/extractors/types.py +15 -0
- shotgun/codebase/core/extractors/typescript/__init__.py +7 -0
- shotgun/codebase/core/extractors/typescript/extractor.py +92 -0
- shotgun/codebase/core/gitignore.py +252 -0
- shotgun/codebase/core/ingestor.py +644 -354
- shotgun/codebase/core/kuzu_compat.py +119 -0
- shotgun/codebase/core/language_config.py +239 -0
- shotgun/codebase/core/manager.py +256 -46
- shotgun/codebase/core/metrics_collector.py +310 -0
- shotgun/codebase/core/metrics_types.py +347 -0
- shotgun/codebase/core/parallel_executor.py +424 -0
- shotgun/codebase/core/work_distributor.py +254 -0
- shotgun/codebase/core/worker.py +768 -0
- shotgun/codebase/indexing_state.py +86 -0
- shotgun/codebase/models.py +94 -0
- shotgun/codebase/service.py +13 -0
- shotgun/exceptions.py +9 -9
- shotgun/main.py +3 -16
- shotgun/posthog_telemetry.py +165 -24
- shotgun/prompts/agents/export.j2 +2 -0
- shotgun/prompts/agents/file_read.j2 +48 -0
- shotgun/prompts/agents/partials/common_agent_system_prompt.j2 +19 -52
- shotgun/prompts/agents/partials/content_formatting.j2 +12 -33
- shotgun/prompts/agents/partials/interactive_mode.j2 +9 -32
- shotgun/prompts/agents/partials/router_delegation_mode.j2 +35 -0
- shotgun/prompts/agents/plan.j2 +38 -12
- shotgun/prompts/agents/research.j2 +70 -31
- shotgun/prompts/agents/router.j2 +713 -0
- shotgun/prompts/agents/specify.j2 +53 -16
- shotgun/prompts/agents/state/codebase/codebase_graphs_available.j2 +14 -1
- shotgun/prompts/agents/state/system_state.j2 +24 -13
- shotgun/prompts/agents/tasks.j2 +72 -34
- shotgun/settings.py +49 -10
- shotgun/tui/app.py +154 -24
- shotgun/tui/commands/__init__.py +9 -1
- shotgun/tui/components/attachment_bar.py +87 -0
- shotgun/tui/components/mode_indicator.py +120 -25
- shotgun/tui/components/prompt_input.py +25 -28
- shotgun/tui/components/status_bar.py +14 -7
- shotgun/tui/dependencies.py +58 -8
- shotgun/tui/protocols.py +55 -0
- shotgun/tui/screens/chat/chat.tcss +24 -1
- shotgun/tui/screens/chat/chat_screen.py +1376 -213
- shotgun/tui/screens/chat/codebase_index_prompt_screen.py +8 -4
- shotgun/tui/screens/chat_screen/attachment_hint.py +40 -0
- shotgun/tui/screens/chat_screen/command_providers.py +0 -97
- shotgun/tui/screens/chat_screen/history/agent_response.py +7 -3
- shotgun/tui/screens/chat_screen/history/chat_history.py +58 -6
- shotgun/tui/screens/chat_screen/history/formatters.py +75 -15
- shotgun/tui/screens/chat_screen/history/partial_response.py +11 -1
- shotgun/tui/screens/chat_screen/history/user_question.py +25 -3
- shotgun/tui/screens/chat_screen/messages.py +219 -0
- shotgun/tui/screens/database_locked_dialog.py +219 -0
- shotgun/tui/screens/database_timeout_dialog.py +158 -0
- shotgun/tui/screens/kuzu_error_dialog.py +135 -0
- shotgun/tui/screens/model_picker.py +1 -3
- shotgun/tui/screens/models.py +11 -0
- shotgun/tui/state/processing_state.py +19 -0
- shotgun/tui/utils/mode_progress.py +20 -86
- shotgun/tui/widgets/__init__.py +2 -1
- shotgun/tui/widgets/approval_widget.py +152 -0
- shotgun/tui/widgets/cascade_confirmation_widget.py +203 -0
- shotgun/tui/widgets/plan_panel.py +129 -0
- shotgun/tui/widgets/step_checkpoint_widget.py +180 -0
- shotgun/tui/widgets/widget_coordinator.py +18 -0
- shotgun/utils/file_system_utils.py +4 -1
- {shotgun_sh-0.3.3.dev1.dist-info → shotgun_sh-0.6.2.dist-info}/METADATA +88 -35
- shotgun_sh-0.6.2.dist-info/RECORD +291 -0
- shotgun/cli/export.py +0 -81
- shotgun/cli/plan.py +0 -73
- shotgun/cli/research.py +0 -93
- shotgun/cli/specify.py +0 -70
- shotgun/cli/tasks.py +0 -78
- shotgun/sentry_telemetry.py +0 -232
- shotgun/tui/screens/onboarding.py +0 -580
- shotgun_sh-0.3.3.dev1.dist-info/RECORD +0 -229
- {shotgun_sh-0.3.3.dev1.dist-info → shotgun_sh-0.6.2.dist-info}/WHEEL +0 -0
- {shotgun_sh-0.3.3.dev1.dist-info → shotgun_sh-0.6.2.dist-info}/entry_points.txt +0 -0
- {shotgun_sh-0.3.3.dev1.dist-info → shotgun_sh-0.6.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: shotgun-sh
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.6.2
|
|
4
4
|
Summary: AI-powered research, planning, and task management CLI tool
|
|
5
5
|
Project-URL: Homepage, https://shotgun.sh/
|
|
6
6
|
Project-URL: Repository, https://github.com/shotgun-sh/shotgun
|
|
@@ -20,24 +20,26 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.12
|
|
21
21
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
22
22
|
Classifier: Topic :: Utilities
|
|
23
|
-
Requires-Python:
|
|
23
|
+
Requires-Python: <3.14,>=3.11
|
|
24
24
|
Requires-Dist: aiofiles>=24.0.0
|
|
25
25
|
Requires-Dist: anthropic>=0.39.0
|
|
26
26
|
Requires-Dist: dependency-injector>=4.41.0
|
|
27
27
|
Requires-Dist: genai-prices>=0.0.27
|
|
28
28
|
Requires-Dist: httpx>=0.27.0
|
|
29
29
|
Requires-Dist: jinja2>=3.1.0
|
|
30
|
-
Requires-Dist: kuzu>=0.7.0
|
|
31
30
|
Requires-Dist: logfire>=2.0.0
|
|
32
31
|
Requires-Dist: openai>=1.0.0
|
|
33
32
|
Requires-Dist: packaging>=23.0
|
|
33
|
+
Requires-Dist: pathspec>=0.12.0
|
|
34
34
|
Requires-Dist: posthog>=3.0.0
|
|
35
|
+
Requires-Dist: psutil>=5.9.0
|
|
35
36
|
Requires-Dist: pydantic-ai>=1.26.0
|
|
36
37
|
Requires-Dist: pydantic-settings>=2.0.0
|
|
38
|
+
Requires-Dist: pymupdf>=1.26.7
|
|
37
39
|
Requires-Dist: pyperclip>=1.10.0
|
|
40
|
+
Requires-Dist: real-ladybug==0.14.0
|
|
38
41
|
Requires-Dist: rich>=13.0.0
|
|
39
42
|
Requires-Dist: sentencepiece>=0.2.0
|
|
40
|
-
Requires-Dist: sentry-sdk[pure-eval]>=2.0.0
|
|
41
43
|
Requires-Dist: tenacity>=8.0.0
|
|
42
44
|
Requires-Dist: textual-dev>=1.7.0
|
|
43
45
|
Requires-Dist: textual-serve>=0.1.0
|
|
@@ -51,11 +53,6 @@ Requires-Dist: tree-sitter-typescript>=0.23.0
|
|
|
51
53
|
Requires-Dist: tree-sitter>=0.21.0
|
|
52
54
|
Requires-Dist: typer>=0.12.0
|
|
53
55
|
Requires-Dist: watchdog>=4.0.0
|
|
54
|
-
Provides-Extra: dev
|
|
55
|
-
Requires-Dist: commitizen>=3.13.0; extra == 'dev'
|
|
56
|
-
Requires-Dist: lefthook>=1.12.0; extra == 'dev'
|
|
57
|
-
Requires-Dist: mypy>=1.11.0; extra == 'dev'
|
|
58
|
-
Requires-Dist: ruff>=0.6.0; extra == 'dev'
|
|
59
56
|
Description-Content-Type: text/markdown
|
|
60
57
|
|
|
61
58
|
<div align="center">
|
|
@@ -97,10 +94,6 @@ Description-Content-Type: text/markdown
|
|
|
97
94
|
|
|
98
95
|
It includes research on existing patterns, implementation plans that respect your architecture, and task breakdowns ready to export as **AGENTS.md** files. Each spec is complete enough that your AI agent can work longer and further without losing context or creating conflicts.
|
|
99
96
|
|
|
100
|
-
<p align="center">
|
|
101
|
-
<img src="https://github.com/user-attachments/assets/9c7ca014-1ed3-4935-b310-9147b275fdc7" alt="Shotgun Demo" />
|
|
102
|
-
</p>
|
|
103
|
-
|
|
104
97
|
</td>
|
|
105
98
|
</tr>
|
|
106
99
|
</table>
|
|
@@ -141,12 +134,52 @@ curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
|
141
134
|
<td>
|
|
142
135
|
|
|
143
136
|
```powershell
|
|
144
|
-
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
137
|
+
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
145
138
|
```
|
|
146
139
|
</td>
|
|
147
140
|
</tr>
|
|
148
141
|
</table>
|
|
149
142
|
|
|
143
|
+
<details>
|
|
144
|
+
<summary><strong>Windows Installation</strong></summary>
|
|
145
|
+
|
|
146
|
+
```powershell
|
|
147
|
+
# Set execution policy (one-time)
|
|
148
|
+
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
|
|
149
|
+
|
|
150
|
+
# Install uv
|
|
151
|
+
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
152
|
+
|
|
153
|
+
# Add to PATH (or restart terminal)
|
|
154
|
+
$env:Path = "C:\Users\$env:USERNAME\.local\bin;$env:Path"
|
|
155
|
+
|
|
156
|
+
# Run Shotgun (ephemeral)
|
|
157
|
+
uvx --python 3.12 shotgun-sh@latest
|
|
158
|
+
|
|
159
|
+
# Or install permanently
|
|
160
|
+
uv tool install --python 3.12 shotgun-sh
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
| Supported | Not Supported |
|
|
164
|
+
|-----------|---------------|
|
|
165
|
+
| Windows x64 (regular PCs) | 32-bit Python |
|
|
166
|
+
| Python 3.11-3.13 | Python 3.14+ (no wheels yet) |
|
|
167
|
+
|
|
168
|
+
**Important:** Run in **PowerShell**, not Command Prompt or VS Developer shells.
|
|
169
|
+
|
|
170
|
+
#### Optional: Enable Code Indexing
|
|
171
|
+
|
|
172
|
+
Code indexing requires the Visual C++ Redistributable. Run this in PowerShell (as Administrator):
|
|
173
|
+
|
|
174
|
+
```powershell
|
|
175
|
+
# Download and install Visual C++ Redistributable
|
|
176
|
+
Import-Module BitsTransfer
|
|
177
|
+
Start-BitsTransfer -Source "https://aka.ms/vs/17/release/vc_redist.x64.exe" -Destination "$env:TEMP\vc_redist.x64.exe"
|
|
178
|
+
Start-Process -FilePath "$env:TEMP\vc_redist.x64.exe" -ArgumentList "/install", "/quiet", "/norestart" -Wait
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
</details>
|
|
182
|
+
|
|
150
183
|
_💡 Restart your terminal after installation_
|
|
151
184
|
|
|
152
185
|
### 2. Run Shotgun
|
|
@@ -218,17 +251,25 @@ _Click the image above to watch the full demo on YouTube_
|
|
|
218
251
|
|
|
219
252
|
# 🎯 Usage
|
|
220
253
|
|
|
221
|
-
Shotgun's Terminal UI guides you through **5 specialized modes** — from research to export. Each mode has a dedicated AI agent optimized for that phase.
|
|
222
|
-
|
|
223
254
|
### Launch Shotgun in your project directory:
|
|
224
255
|
|
|
225
256
|
| Already Installed | First Time / Try It Out |
|
|
226
257
|
|-------------------|------------------------|
|
|
227
258
|
| `shotgun` | `uvx shotgun-sh@latest` |
|
|
228
259
|
|
|
229
|
-
|
|
260
|
+
Shotgun's Terminal UI runs a Router that orchestrates your work using two execution modes: **Planning** and **Drafting**.
|
|
261
|
+
|
|
262
|
+
### Planning vs Drafting
|
|
263
|
+
|
|
264
|
+
| Mode | How It Works | When to Use It |
|
|
265
|
+
|------|--------------|---------------|
|
|
266
|
+
| **Planning** (default) | Shotgun proposes an execution plan, shows each step, and asks for confirmation before running agents that change files. You get checkpoints, can refine the plan, and can confirm or skip cascaded updates when one change affects other docs. | When you want control, visibility, and the ability to refine the plan before execution. |
|
|
267
|
+
| **Drafting** | Shotgun runs the full plan in one go, without intermediate confirmations. Progress is still tracked internally, but you won’t be prompted at each step. | When you’re confident in the plan and want fast, end-to-end execution. |
|
|
268
|
+
|
|
269
|
+
_The TUI opens automatically. **Press `Shift+Tab` to switch between Planning & Drafting** or `Ctrl+P` for the command palette._
|
|
230
270
|
|
|
231
|
-
###
|
|
271
|
+
### How the Router Works Internally
|
|
272
|
+
Under the hood, the Router relies on specialized sub-agents. You don’t select or manage them manually.
|
|
232
273
|
|
|
233
274
|
<table>
|
|
234
275
|
<tr>
|
|
@@ -244,22 +285,10 @@ _The TUI opens automatically. **Press `Shift+Tab` to switch modes** or `Ctrl+P`
|
|
|
244
285
|
</tr>
|
|
245
286
|
</table>
|
|
246
287
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
### Mode Reference
|
|
250
|
-
|
|
251
|
-
| Mode | What It Does | Example Prompt | Output |
|
|
252
|
-
|:-----|:-------------|:---------------|:-------|
|
|
253
|
-
| **🔬 Research** | Searches codebase + web, identifies patterns | `How do we handle authentication in this codebase?` | `research.md` |
|
|
254
|
-
| **📝 Specify** | Creates technical specs aware of architecture | `Add OAuth2 authentication with refresh token support` | `specification.md` |
|
|
255
|
-
| **📋 Plan** | Generates implementation roadmap | `Create an implementation plan for the payment system` | `plan.md` |
|
|
256
|
-
| **✅ Tasks** | Breaks plans into actionable items | `Break down the user dashboard plan into tasks` | `tasks.md` |
|
|
257
|
-
| **📤 Export** | Formats for AI coding agents | `Export everything to AGENTS.md` | `AGENTS.md` |
|
|
288
|
+
> Planning and Drafting are the only execution modes you control; everything else is handled by the Router.
|
|
258
289
|
|
|
259
290
|
_**Mode switching:** `Shift+Tab` cycles through modes_
|
|
260
291
|
|
|
261
|
-
_**Visual status:** See current mode and progress at bottom_
|
|
262
|
-
|
|
263
292
|
### ⌨️ Keyboard Shortcuts
|
|
264
293
|
|
|
265
294
|
| Shortcut | Action |
|
|
@@ -277,7 +306,7 @@ _**Visual status:** See current mode and progress at bottom_
|
|
|
277
306
|
| ✅ `Research how we handle auth` | ❌ Jump straight to building |
|
|
278
307
|
| ✅ `Shotgun please ask me questions first` | ❌ Assume Shotgun knows your needs |
|
|
279
308
|
| ✅ `I'm working on payments, need refunds` | ❌ `Add refunds` (no context) |
|
|
280
|
-
| ✅
|
|
309
|
+
| ✅ Start in Planning mode, let Shotgun propose and refine a plan with you, then run it | ❌ Blast everything in one go without reviewing the plan first (unless you intentionally switch to Drafting mode) |
|
|
281
310
|
|
|
282
311
|
**Result:** Your AI coding agent gets complete context—what exists, why, and what to build.
|
|
283
312
|
|
|
@@ -285,6 +314,30 @@ _**Visual status:** See current mode and progress at bottom_
|
|
|
285
314
|
|
|
286
315
|
---
|
|
287
316
|
|
|
317
|
+
# 🤝 Share Specs with Your Team
|
|
318
|
+
|
|
319
|
+
Sharing specs to a workspace is available on **paid Shotgun plans**.
|
|
320
|
+
|
|
321
|
+
Shotgun lets you share specs externally by publishing them to a **workspace**. This creates a versioned, shareable snapshot your team can access outside the repo.
|
|
322
|
+
|
|
323
|
+
### How to Share a Spec
|
|
324
|
+
|
|
325
|
+
1. Hit `Ctrl+P` → select _Share specs to workspace_
|
|
326
|
+
2. Choose one option:
|
|
327
|
+
- **Create new spec** — publish a fresh spec from your current `.shotgun/` files
|
|
328
|
+
- **Add new version** — publish an updated version of an existing spec
|
|
329
|
+
3. Wait for upload to complete. When finished, you can:
|
|
330
|
+
- **Open in Browser** — view the shared spec in the workspace
|
|
331
|
+
- **Copy URL** — share the link with your team
|
|
332
|
+
- **Done** — return to Shotgun
|
|
333
|
+
<img width="516" height="181" alt="image" src="https://github.com/user-attachments/assets/6dd9412c-345e-4dab-a40a-ad5f1c994d34" />
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
Your local `.shotgun/*.md` files remain unchanged.
|
|
337
|
+
The workspace contains a **shareable, versioned snapshot** of the spec.
|
|
338
|
+
|
|
339
|
+
---
|
|
340
|
+
|
|
288
341
|
# ✨ Features
|
|
289
342
|
|
|
290
343
|
### What Makes Shotgun Different
|
|
@@ -329,7 +382,7 @@ Single-agent or one-size-fits-all prompts.
|
|
|
329
382
|
<tr>
|
|
330
383
|
<td><strong>Structured Workflow</strong></td>
|
|
331
384
|
<td>
|
|
332
|
-
|
|
385
|
+
Router-driven flow with Planning and Drafting modes; internally it runs Research → Spec → Plan → Tasks → Export with checkpoints in Planning mode.
|
|
333
386
|
</td>
|
|
334
387
|
<td>
|
|
335
388
|
No structure. Just "prompt and hope."
|
|
@@ -376,7 +429,7 @@ We had to implement payments. Cursor, Claude Code, and Copilot all suggested bui
|
|
|
376
429
|
|
|
377
430
|
**Q: Does Shotgun collect any stats or data?**
|
|
378
431
|
|
|
379
|
-
A: We only gather minimal, anonymous events (e.g., install, server start, tool call). We don't collect the content itself—only that an event occurred. We use
|
|
432
|
+
A: We only gather minimal, anonymous events (e.g., install, server start, tool call). We don't collect the content itself—only that an event occurred. We use PostHog for analytics and error reporting to improve stability.
|
|
380
433
|
|
|
381
434
|
**Q: Does my code leave my computer when indexing?**
|
|
382
435
|
|
|
@@ -433,7 +486,7 @@ Shotgun is open-source and we welcome contributions. Whether you're fixing bugs,
|
|
|
433
486
|
|
|
434
487
|
## 🚀 Ready to Stop AI Agents from Derailing?
|
|
435
488
|
|
|
436
|
-
**
|
|
489
|
+
**Planning → Drafting** — Two execution modes that give AI agents the full picture, backed by internal phases for Research → Specify → Plan → Tasks → Export.
|
|
437
490
|
|
|
438
491
|
```bash
|
|
439
492
|
uvx shotgun-sh@latest
|
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
shotgun/__init__.py,sha256=P40K0fnIsb7SKcQrFnXZ4aREjpWchVDhvM1HxI4cyIQ,104
|
|
2
|
+
shotgun/api_endpoints.py,sha256=cHNkXbaxMOw6t9M7_SGHwEkz9bL1CH_kw8qIhgdXfi0,630
|
|
3
|
+
shotgun/build_constants.py,sha256=SB4-57hLh6G5VLRlVd5QBjJ_zxVJskv7GV8biVEohUM,528
|
|
4
|
+
shotgun/exceptions.py,sha256=kowOxDbs46D31siIAetP41C17RBaLviyeCos1Sdp9Kg,12678
|
|
5
|
+
shotgun/logging_config.py,sha256=o9erNhWl5CvXpgEIzdpm9BmVwO1PBVm1VmgTPjpm8OI,8460
|
|
6
|
+
shotgun/main.py,sha256=wfmUc1Sii2qWQMa3YYU9M95eFO-XVp8m01WTMOdsKUI,6716
|
|
7
|
+
shotgun/posthog_telemetry.py,sha256=kpGqX9kFQInvgruvkYzVuAuuOHKxKpUoJVMrBgPWd6g,11525
|
|
8
|
+
shotgun/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
+
shotgun/settings.py,sha256=TYewUc1NT-bs4adLOZfQxJyQvSc8rtwBNSM89UgVrLU,8503
|
|
10
|
+
shotgun/telemetry.py,sha256=6trR92Q6ERvSuUGyS8VyBCv1Dfs20vI1-4BYPieLcxM,2917
|
|
11
|
+
shotgun/agents/__init__.py,sha256=8Jzv1YsDuLyNPFJyckSr_qI4ehTVeDyIMDW4omsfPGc,25
|
|
12
|
+
shotgun/agents/agent_manager.py,sha256=60lscqXVJEYV1hpQuq4K6d0j-StzBm7_8Thp7FXCGWY,71543
|
|
13
|
+
shotgun/agents/cancellation.py,sha256=KTYwR2gHYnJ0FyhrHKc4sSuxLMEiLaTR7KJhFiluKVQ,3643
|
|
14
|
+
shotgun/agents/common.py,sha256=2cG03e7NDET3Z_6_b3GxcmNToxnWG6TTb4jKQ01G_lw,19067
|
|
15
|
+
shotgun/agents/export.py,sha256=FW2fJjLzWusu2SLEFMKV_hGudobzA3_1f7_MO-EqHFE,2922
|
|
16
|
+
shotgun/agents/file_read.py,sha256=A12NCN_mlPGW_8AIFyI2ig778ZaFhjS8IVYsx9izkxU,5647
|
|
17
|
+
shotgun/agents/llm.py,sha256=hs8j1wwTczGtehzahL1Z_5D4qus5QUx4-h9-m5ZPzm4,2209
|
|
18
|
+
shotgun/agents/messages.py,sha256=ckjkBv50pS9UbsHfviQkiZmbS3nSnWNfHYbhcTiBEaM,1451
|
|
19
|
+
shotgun/agents/models.py,sha256=VRPiyCMoNtpO9HyiDITl94kSu9xEVEhYjNay4UoJuww,13007
|
|
20
|
+
shotgun/agents/plan.py,sha256=90KUnDaIfPurWoHnV5ogUirXme-FPsSI2EntLBnM9ho,3035
|
|
21
|
+
shotgun/agents/research.py,sha256=KluBLucQza_TTKo6Da1v4IEQraVNBc1Jjd97jp7xZwE,3505
|
|
22
|
+
shotgun/agents/runner.py,sha256=VuoJnoWUBS9kE7aZUezErEiL7IgI0QgwJKgdcOVW6rQ,9395
|
|
23
|
+
shotgun/agents/specify.py,sha256=ly_A1VeZonMoyZy41xxfwVoE3MwLSBr8_UYwUzc9-HI,3084
|
|
24
|
+
shotgun/agents/tasks.py,sha256=QuCuVxJ9ODV3eXCXhb32c9HbPCLLVMuv3PTx1lyC4gY,2958
|
|
25
|
+
shotgun/agents/usage_manager.py,sha256=0O1G7ovgYtJ_zCTITQ1Cks75eXMwvjl1SgGE1uoZ0x4,5383
|
|
26
|
+
shotgun/agents/config/README.md,sha256=-2Amj3h1_WnwGABo6P1kUzDFK6o-pK8JKj-HMDsLrb4,3243
|
|
27
|
+
shotgun/agents/config/__init__.py,sha256=QuGC057dzMrzhrdRJ7c8KNwWzFqISiSk3t5LqnvOVN0,471
|
|
28
|
+
shotgun/agents/config/constants.py,sha256=GZ62PTrMd_yXDBvQwpNqh401GVlMHh5Li7_xM-zdp8Y,742
|
|
29
|
+
shotgun/agents/config/manager.py,sha256=Edh0NB_3r3AaK9-MmxbuML2mCdSNtEegV0m4bOzLlfY,30694
|
|
30
|
+
shotgun/agents/config/models.py,sha256=hcVK4w38u2dSzx3Xs8iCsMLwZDgKZCMldSxTfyK1Wv8,9043
|
|
31
|
+
shotgun/agents/config/provider.py,sha256=sail0z4kfqcPdmz9MsrV9hd0ND5L43cOQsV36xJt9O0,15694
|
|
32
|
+
shotgun/agents/config/streaming_test.py,sha256=ALOM4fjYf7dH7bsY-onKYJBcYH8ujx-50RdMwvw6RXM,4443
|
|
33
|
+
shotgun/agents/context_analyzer/__init__.py,sha256=p-R3SVa3yDkXnHaZ7XV_SI_9FGhoYwvnbvDr3oxGU3M,732
|
|
34
|
+
shotgun/agents/context_analyzer/analyzer.py,sha256=6-LaICd53RUD7GpXZ_H-jwE8YfW7lmWRiWssBvpQ-Cw,20049
|
|
35
|
+
shotgun/agents/context_analyzer/constants.py,sha256=oG8IJXEFN-V5wtnoz_ZBhOIGNXG1kjR4K_yOC5e95hY,323
|
|
36
|
+
shotgun/agents/context_analyzer/formatter.py,sha256=QovmxUdpGkBKwxegxhvXRmHrpNFF31MoD3LRYTVCKY8,4008
|
|
37
|
+
shotgun/agents/context_analyzer/models.py,sha256=Ww2NOgqaQlZ45tyBsVevt5r9bz0X-dQ4lNwAElfwAJk,8362
|
|
38
|
+
shotgun/agents/conversation/__init__.py,sha256=lFCHhW1x9tjIiKLaJIHqBJoCNPByKJHlWeviW1asTgg,493
|
|
39
|
+
shotgun/agents/conversation/filters.py,sha256=aAT6jDitEEYT-6i_kZ3KfUzDClBZzBbEyttO908d4OI,5195
|
|
40
|
+
shotgun/agents/conversation/manager.py,sha256=nMOkIu22pS9wQAoOjsfZdWGXDSBBEK4Otmpirk9YKlo,5266
|
|
41
|
+
shotgun/agents/conversation/models.py,sha256=agKF1F04T6rc08aVhjwVjtQ4Cl6H-pb4JlZR_XyPWR4,5406
|
|
42
|
+
shotgun/agents/conversation/history/__init__.py,sha256=XFQj2a6fxDqVg0Q3juvN9RjV_RJbgvFZtQOCOjVJyp4,147
|
|
43
|
+
shotgun/agents/conversation/history/chunking.py,sha256=aiUte-nO54swbtDGG1ZglB7TKpm4XrhDwnX_hvJA3Ck,9186
|
|
44
|
+
shotgun/agents/conversation/history/compaction.py,sha256=G5WWsmlZn19VBkdh89YKkvQRSYEIppuJR2LYrxGjkNM,4992
|
|
45
|
+
shotgun/agents/conversation/history/constants.py,sha256=xwDgaazdIXT2Dd7lNxuyt4-wKJK5y903F0WKe4Hi3WY,708
|
|
46
|
+
shotgun/agents/conversation/history/context_extraction.py,sha256=yPF3oYpv5GFsFQT5y53ORKdADtrkGH4u8LwPdO0YVzU,7157
|
|
47
|
+
shotgun/agents/conversation/history/file_content_deduplication.py,sha256=agwKqOeukNiCuPtpB4Ku6GYpaoZryd1UzFuN78lM9Qw,8543
|
|
48
|
+
shotgun/agents/conversation/history/history_building.py,sha256=6LFDZ60MTPDoGAcmu_mjlnjVYu8YYWdIi-cGbF3jm7A,3532
|
|
49
|
+
shotgun/agents/conversation/history/history_processors.py,sha256=OZMU6c9hFBXg9J783wRE5uWqgMcrDS-esEjMnnYkfIQ,31519
|
|
50
|
+
shotgun/agents/conversation/history/message_utils.py,sha256=aPusAl2RYKbjc7lBxPaNprRHmZEG6fe97q7DQUlhlzU,2918
|
|
51
|
+
shotgun/agents/conversation/history/token_estimation.py,sha256=iRyKq-YDivEpJrULIbQgNpjhOuSC4nHVJYfsWEFV8sQ,4770
|
|
52
|
+
shotgun/agents/conversation/history/token_counting/__init__.py,sha256=YZt5Lus--fkF6l1hdkIlp1e_oAIpACNwHOI0FRP4q8s,924
|
|
53
|
+
shotgun/agents/conversation/history/token_counting/anthropic.py,sha256=999gzwEn3Q31nmCDlJqJtt3maU4NtkEgr9PaUJdVKa4,4931
|
|
54
|
+
shotgun/agents/conversation/history/token_counting/base.py,sha256=bFiTrKlcbvtCd1uXJN48Tza4Mq38u84T9Qs2MEo8S6c,4169
|
|
55
|
+
shotgun/agents/conversation/history/token_counting/openai.py,sha256=lZgoMSVSlBN899Cp8sMFggYVDiSaqB-gTHUSaRoQ0yk,2746
|
|
56
|
+
shotgun/agents/conversation/history/token_counting/sentencepiece_counter.py,sha256=JTSWGAuCtqa7e2fJQzNQ52HqprSJJOcMZLnwxDId-vk,4201
|
|
57
|
+
shotgun/agents/conversation/history/token_counting/tokenizer_cache.py,sha256=owa4E12iMx8H1mNpCbHEtArE_b4vuwHl_0zKeRovv3w,2936
|
|
58
|
+
shotgun/agents/conversation/history/token_counting/utils.py,sha256=zL9pzrQHCyi5YMgUyLTnLI9WJmMr3UEEDUECgh4_TjE,4872
|
|
59
|
+
shotgun/agents/error/__init__.py,sha256=7md1HR_iAoCmTe5mzgQT0y3VBoC8D5zvRI4vQch4Ess,231
|
|
60
|
+
shotgun/agents/error/models.py,sha256=SLUCsMR0UPH0Lxm5AJKXBKTuL6wtdTzJJ3NHDzAIk_I,501
|
|
61
|
+
shotgun/agents/router/__init__.py,sha256=Cs3cobiGHGH-qaRuX7BGZ04a6tJ12NmyZIZf9rngBwM,1040
|
|
62
|
+
shotgun/agents/router/models.py,sha256=yvUU6sX6M0gn_hCiT-gretolsCYyj2eFVTo07WE6dSk,14392
|
|
63
|
+
shotgun/agents/router/router.py,sha256=oZzV-55gK8tX1SHPgjVHm8_z2b_YmkEqX_r-Ob6fXpo,6288
|
|
64
|
+
shotgun/agents/router/tools/__init__.py,sha256=ogt35kGrWSzjFauSL4EgieY7fGtu8jlfhDAzHOcw8nY,378
|
|
65
|
+
shotgun/agents/router/tools/delegation_tools.py,sha256=_Gtfy7n_5vNqazotn5mpZHrEBg4yBLP_M1brwuHhKz4,17380
|
|
66
|
+
shotgun/agents/router/tools/plan_tools.py,sha256=P9hgDFFQGMRhZdZZhG2cAOdpMW-mY_FQ4dwfNuWujbw,12850
|
|
67
|
+
shotgun/agents/tools/__init__.py,sha256=Tlej5fcXUrEcdb9fxqLEzb152ExpL0RQOeuYEc0K3Os,931
|
|
68
|
+
shotgun/agents/tools/file_management.py,sha256=zMoO_04ug0HzhrTmUNluvRKmeL-FSI_lnPcCiQCqv00,12729
|
|
69
|
+
shotgun/agents/tools/registry.py,sha256=uNZU_y-CQ5oQE96pAxIHj1HdeG5tq3Z_qQjkG1paeqw,7677
|
|
70
|
+
shotgun/agents/tools/codebase/__init__.py,sha256=ceAGkK006NeOYaIJBLQsw7Q46sAyCRK9PYDs8feMQVw,661
|
|
71
|
+
shotgun/agents/tools/codebase/codebase_shell.py,sha256=XwrfxAyDGRTRBaZdO0ivcllwIZnDX-Dfbtdp-ncJXlM,8779
|
|
72
|
+
shotgun/agents/tools/codebase/directory_lister.py,sha256=Gb7NTUQpSafal3l8G1yEFgYZ1QQsqBGBgWSLrJJ5XiE,4752
|
|
73
|
+
shotgun/agents/tools/codebase/file_read.py,sha256=ZTtMoESx7sOTC95BjFqO6ScLfNfHA3GEC6BhaK4_tCk,5326
|
|
74
|
+
shotgun/agents/tools/codebase/models.py,sha256=8eR3_8DQiBNgB2twu0aC_evIJbugN9KW3gtxMZdGYCE,10087
|
|
75
|
+
shotgun/agents/tools/codebase/query_graph.py,sha256=YsO87YwU87F7e_3ABNzSd2rWILGgAo7SSJFspEKUZQ0,2661
|
|
76
|
+
shotgun/agents/tools/codebase/retrieve_code.py,sha256=wuyDLp4SY5ViuafkIAuq9Nk4vX1lE0bwf5ZowDYUt7g,3452
|
|
77
|
+
shotgun/agents/tools/file_read_tools/__init__.py,sha256=gCRYzSaHeScLX9Jal_OsaELlUOzy7NmOzasEEmbon4o,186
|
|
78
|
+
shotgun/agents/tools/file_read_tools/multimodal_file_read.py,sha256=SV-wZEl34ZMXoIm-a2OvrQ-8gByjZnN4pEJg2iD3TUk,5719
|
|
79
|
+
shotgun/agents/tools/markdown_tools/__init__.py,sha256=1uts7dXktSaeWxXZzA-YYMtp5uxOuNiJkqsswpBSY7c,1540
|
|
80
|
+
shotgun/agents/tools/markdown_tools/insert_section.py,sha256=Tdg48gUWf9n4-KWgSAuKZWSjPTwH7Eqn6zye6n6_1eE,5505
|
|
81
|
+
shotgun/agents/tools/markdown_tools/models.py,sha256=dOt_pLeKmfb6tnedpc9aXl5rAt67wrdFvC3oQLVWiGk,2293
|
|
82
|
+
shotgun/agents/tools/markdown_tools/remove_section.py,sha256=dJFOFt6Zgj7oMFcl8RXgHzMhCLiXDhu3zML5E5GpQ6U,3977
|
|
83
|
+
shotgun/agents/tools/markdown_tools/replace_section.py,sha256=xvplMVDIsOPAOTd_OD3u0APoY4zZBsJSEXcn4S7Wcyc,4189
|
|
84
|
+
shotgun/agents/tools/markdown_tools/utils.py,sha256=aJapRcrtG0AvNiNtW6q1WSkToa7FX8BA4E4gK9aZRsE,13742
|
|
85
|
+
shotgun/agents/tools/web_search/__init__.py,sha256=HN-EXSQzX5Z5c08w04kcoluQhAVqmkJdvBn_rFi82As,3707
|
|
86
|
+
shotgun/agents/tools/web_search/anthropic.py,sha256=CqkKlMTBajz3bGbQfSvYYndy9npe00bTOSw8luLc5MY,5700
|
|
87
|
+
shotgun/agents/tools/web_search/gemini.py,sha256=PlU90AkWxvLieBKw-nC2AT2dWoyvq3Zb6K_UickI-UQ,3818
|
|
88
|
+
shotgun/agents/tools/web_search/openai.py,sha256=74llmbNGgtMRTO1cBY9TUK2UOnTfI-zbbUEPcYhEJpk,4459
|
|
89
|
+
shotgun/agents/tools/web_search/utils.py,sha256=O4IMu9mPBZe5551fNclfXbSmoL7fxP1hziqkWq8CRrI,544
|
|
90
|
+
shotgun/attachments/__init__.py,sha256=ekcmX00vMC_tpMnTu3bD4JMtYlRjfLVi6H5u3WlnvXI,1041
|
|
91
|
+
shotgun/attachments/errors.py,sha256=zDSCj2vTY2yt8iAkJj_jocQ_q5HlL9sroiwg9yZ1fVw,1901
|
|
92
|
+
shotgun/attachments/models.py,sha256=9p4a8FE1mESdMWzrCY4Po8PO9G3HHaNtOM7-r7Q74is,3328
|
|
93
|
+
shotgun/attachments/parser.py,sha256=_7AdkdVXbszO4M_vQe8NVQxKwGhldb4ue7iQzE9amd4,7629
|
|
94
|
+
shotgun/attachments/processor.py,sha256=7IbRGzfQhkMgbNPyJ45jWAgaA_y-pIjP0OGd7A779V8,5660
|
|
95
|
+
shotgun/cli/__init__.py,sha256=_F1uW2g87y4bGFxz8Gp8u7mq2voHp8vQIUtCmm8Tojo,40
|
|
96
|
+
shotgun/cli/clear.py,sha256=vn-1ihd1qmdQUnTUJK7kDKTGQGOBGkvmqDN_a5Fu4mE,1626
|
|
97
|
+
shotgun/cli/compact.py,sha256=9YNgpCbP2NtVxMucA-OFaJ3l1nEE8xrji2XraMdX5xw,5950
|
|
98
|
+
shotgun/cli/config.py,sha256=wKBPSQ8ZVF6ITPS_bE2F46_xyWiI80QJhhgjt8uuDSY,8031
|
|
99
|
+
shotgun/cli/context.py,sha256=Us6iconXv0TbHuCHk-zHpBXis4uSMUhTVTldmJ98DHU,5439
|
|
100
|
+
shotgun/cli/error_handler.py,sha256=ThtvjNHnBUXUj1NHFOkRLfe1gdA570e_ZK1W3mzCfCI,636
|
|
101
|
+
shotgun/cli/feedback.py,sha256=wMRIN6UtBI4832XfUwE7nQLjVLuVu4zjupMme02nfwc,1346
|
|
102
|
+
shotgun/cli/models.py,sha256=cutimFStP6m5pXmg3kbhtWZjNA2us2cPQFJtz2pTdOU,208
|
|
103
|
+
shotgun/cli/run.py,sha256=weN2OovWmBbUn7P0it04MPf_vys0Xx3EsgB-al1e3lY,2825
|
|
104
|
+
shotgun/cli/update.py,sha256=sc3uuw3AXFF0kpskWah1JEoTwrKv67fCnqp9BjeND3o,5328
|
|
105
|
+
shotgun/cli/utils.py,sha256=umVWXDx8pelovMk-nT8B7m0c39AKY9hHsuAMnbw_Hcg,732
|
|
106
|
+
shotgun/cli/codebase/__init__.py,sha256=rKdvx33p0i_BYbNkz5_4DCFgEMwzOOqLi9f5p7XTLKM,73
|
|
107
|
+
shotgun/cli/codebase/commands.py,sha256=ObCmIsfoj6leLiPk8yuu8Fq7WsYu_SWtakbWHlq8f_8,12966
|
|
108
|
+
shotgun/cli/codebase/models.py,sha256=B9vs-d-Bq0aS6FZKebhHT-9tw90Y5f6k_t71VlZpL8k,374
|
|
109
|
+
shotgun/cli/spec/__init__.py,sha256=GZe-ODzMudZcM5NCbz1TTLwK1K5ws7X4KlNT0CBPXEs,69
|
|
110
|
+
shotgun/cli/spec/backup.py,sha256=jid6lXAvE5kct2ejIMx6psXm-w2Mop7n9V2_vY37P3o,2604
|
|
111
|
+
shotgun/cli/spec/commands.py,sha256=em-b4P_9qls3HmRENqONqBoFJvjC7AqjyixGtnNdzyM,4733
|
|
112
|
+
shotgun/cli/spec/models.py,sha256=3M8fgemjMT1iAITM64q0VlroUa2Bx9L0arINevY1XfQ,1428
|
|
113
|
+
shotgun/cli/spec/pull_service.py,sha256=5wiDTlWJYi5GQbVm_B-uOpz4yJXbRn5o5OCkbwwlN5M,7171
|
|
114
|
+
shotgun/codebase/__init__.py,sha256=Hqk7773pk2tB9nr2E5Evz3O5C_OpeXXZisQ-q9_q6Gw,388
|
|
115
|
+
shotgun/codebase/indexing_state.py,sha256=g_fhCWXaCr_z3ePMWu3D14g-_3i-V_YQjHzZgA656i8,2672
|
|
116
|
+
shotgun/codebase/models.py,sha256=B7Erqzy8W57Q_PxoPMeYN6jqF28ouXnTIWPRJ86ryUI,9125
|
|
117
|
+
shotgun/codebase/service.py,sha256=8gctzuZQvTPJKggxv4_rd76PoERlG8LC4KIGjBbEDQY,8455
|
|
118
|
+
shotgun/codebase/benchmarks/__init__.py,sha256=ut_phK8qrs70fXoM_-O4JtHI6SGR0p97z3wW_y2XzFY,875
|
|
119
|
+
shotgun/codebase/benchmarks/benchmark_runner.py,sha256=_o6IsnD_Cq-mQX-UPBtfbOQ-eLV5yA756JKKebnnRvE,10273
|
|
120
|
+
shotgun/codebase/benchmarks/exporters.py,sha256=zqONftGzlRFiRCVWCaJCBo71TvyiykY8PEPNXInGq-I,3667
|
|
121
|
+
shotgun/codebase/benchmarks/models.py,sha256=X8mb5FeHrCovqbPAKXTRSRkKyHr1rUP0f-6z9oVgNQo,3815
|
|
122
|
+
shotgun/codebase/benchmarks/formatters/__init__.py,sha256=zFBW3yOLLPVGHfRA3VKs9Dp1axSLKDJMwQLDvWwWhb4,1386
|
|
123
|
+
shotgun/codebase/benchmarks/formatters/base.py,sha256=WZeBsQRKn784nxNcg3TVjWqYXVOJUqsIgoCqf40FBzU,795
|
|
124
|
+
shotgun/codebase/benchmarks/formatters/json_formatter.py,sha256=ehGI2WPas06XvSzMl2_ZlSlclRLbS2ku_KndF4AyLB0,3869
|
|
125
|
+
shotgun/codebase/benchmarks/formatters/markdown.py,sha256=zIfC-XRg0UZH8NVlCutSsk2e0TIZk_jwWEU-4Um_eE4,4811
|
|
126
|
+
shotgun/codebase/core/__init__.py,sha256=HmCwFQcWYdx9lfQ6g_l1_-aLoMOAnWf4IN4e-jX3Ts8,1335
|
|
127
|
+
shotgun/codebase/core/call_resolution.py,sha256=xL1kqRtRTnf7aUr1ofwP7zDEznuwFBQ62GinlsUf3J8,3301
|
|
128
|
+
shotgun/codebase/core/change_detector.py,sha256=9XDrQmE8BA0ryby8auEukHrS2lcN_dpjJ9FKzmmMWkE,12732
|
|
129
|
+
shotgun/codebase/core/code_retrieval.py,sha256=8ob-xWjcSmEilpI1h5IU94ykd2dETMf84CfY36N_big,8015
|
|
130
|
+
shotgun/codebase/core/cypher_models.py,sha256=Yfysfa9lLguILftkmtuJCN3kLBFIo7WW7NigM-Zr-W4,1735
|
|
131
|
+
shotgun/codebase/core/errors.py,sha256=I32FqYrqlHZLC5z0rTs9S7P7COvBYNib3JJlrTcn6aU,5375
|
|
132
|
+
shotgun/codebase/core/gitignore.py,sha256=Gb8v8exZhidDwFXL-UeT7g7IVpCkIbn6vsCSbV5rq4Q,8404
|
|
133
|
+
shotgun/codebase/core/ingestor.py,sha256=ekGLz5Y4Rqis6j5puwMxIEBvnAeNNeISXP3h7wlEhv8,81516
|
|
134
|
+
shotgun/codebase/core/kuzu_compat.py,sha256=dfI2JwefnAYBCvBf9v3lIohrOPZGZhXIobok8NZ9CGs,3269
|
|
135
|
+
shotgun/codebase/core/language_config.py,sha256=bcsWP6qw72aWAdnyiPOVKmn9y_Amx2nEB2EJaiA_5hE,14426
|
|
136
|
+
shotgun/codebase/core/manager.py,sha256=3Jmb5w1ATCu5AceKAh8__CQ5kUwE3Tr-PNP1YPBLZvI,75000
|
|
137
|
+
shotgun/codebase/core/metrics_collector.py,sha256=V4kImfuQiEFaQxx0st2K-JnSgVLDlArIW2y5FU4t1FA,11023
|
|
138
|
+
shotgun/codebase/core/metrics_types.py,sha256=sNTf9hdEeSBTaZDMHAcSQW9kZVfxbLuuj_G3JKbhW3U,13129
|
|
139
|
+
shotgun/codebase/core/nl_query.py,sha256=qH32btb5w7eY2ij7-wc6Z0QXIDOqjz0pZXXRUboSbYs,16121
|
|
140
|
+
shotgun/codebase/core/parallel_executor.py,sha256=jdPlylitL-xrnCBoTRv3d1J6KPH_SyPfCNUxF9KRwvU,15990
|
|
141
|
+
shotgun/codebase/core/parser_loader.py,sha256=LZRrDS8Sp518jIu3tQW-BxdwJ86lnsTteI478ER9Td8,4278
|
|
142
|
+
shotgun/codebase/core/work_distributor.py,sha256=l8gYcgFDJ1oF-K_Du1vGBjGbG33AkHhjHRy6MsIbzVI,8587
|
|
143
|
+
shotgun/codebase/core/worker.py,sha256=zOjSdeEL1DFtQ_N9ZFb24orek5HP3o9DZavykDixjg0,26040
|
|
144
|
+
shotgun/codebase/core/extractors/__init__.py,sha256=-wgJkjQjoqLamwMJihcDNNzwEk51Md69Zn9aYkDWH9o,616
|
|
145
|
+
shotgun/codebase/core/extractors/base.py,sha256=ismvBVjK4SGwg9SmI6wIodvKJmNA8ncbm4Tu53iQLKk,4386
|
|
146
|
+
shotgun/codebase/core/extractors/factory.py,sha256=q2YvgFTsJQw6sxCMagW1cCgIc79ae5dYw8pm7-QIUHY,1823
|
|
147
|
+
shotgun/codebase/core/extractors/protocol.py,sha256=Ay01Dvbs9Omb34C3JpGZBDN06b2y4t6ZyeLcumKMfBo,3062
|
|
148
|
+
shotgun/codebase/core/extractors/types.py,sha256=oNLGj2dPkEJhSvxyi4EOEkNtaIwhKw5Oi25kVdoHrR0,325
|
|
149
|
+
shotgun/codebase/core/extractors/go/__init__.py,sha256=t4BzF5GQY7cPzBqeawdywm6tv-EWEsPQDj5AxWuHFog,128
|
|
150
|
+
shotgun/codebase/core/extractors/go/extractor.py,sha256=_94AvqfC4WcqmJbugEII8WUiybfRPP85CqFM3LOp57k,4289
|
|
151
|
+
shotgun/codebase/core/extractors/javascript/__init__.py,sha256=MaSTREM8b6l8dYV0ZQdzDJI7acFHwxq276tYbjxLKMg,152
|
|
152
|
+
shotgun/codebase/core/extractors/javascript/extractor.py,sha256=HPCAeAzWKEh80m9DdKkB9HwQPmpYpfHJFVH5nQVS0Ak,4602
|
|
153
|
+
shotgun/codebase/core/extractors/python/__init__.py,sha256=VzZqaV0g3jTpWBdBJ0wINIEJYo_h5Yxh1F6fFz9EGjQ,140
|
|
154
|
+
shotgun/codebase/core/extractors/python/extractor.py,sha256=522HsOJQ0wg7Xt_KZTyR1MnjukQSLz8jH95j6V8DhZo,5156
|
|
155
|
+
shotgun/codebase/core/extractors/rust/__init__.py,sha256=Mp-HCbuKGnjw-9mJJctQP2ytEfO_fI_R-bwFZCrf_dk,134
|
|
156
|
+
shotgun/codebase/core/extractors/rust/extractor.py,sha256=fk6vNscNBdnH-76WC7nDzFbL0akrIU1x4IsRPcrpiU0,4871
|
|
157
|
+
shotgun/codebase/core/extractors/typescript/__init__.py,sha256=tVdvxoSRO72XZkVkBHSTKCcsKRAH9fh4LdVJTIx3FrQ,152
|
|
158
|
+
shotgun/codebase/core/extractors/typescript/extractor.py,sha256=ILQ2kJFkV4AeuBwA3iV_uGQNcNJkuUpEe3ebnaX7IrY,3236
|
|
159
|
+
shotgun/llm_proxy/__init__.py,sha256=z7YnPfyhW0WYrz6tHOoVcVOoi6iO0zWjUHbpu6o38oA,817
|
|
160
|
+
shotgun/llm_proxy/client.py,sha256=qtmJng-ESRbiXqw-Dn8zMduF5MEiNJdkPbG4uu4u4XU,6507
|
|
161
|
+
shotgun/llm_proxy/clients.py,sha256=Y19W8Gb2e-37w8rUKPmxJOqoTk6GlcPhZhoeAbbURU0,1341
|
|
162
|
+
shotgun/llm_proxy/constants.py,sha256=_4piKdyvM7pAIRdAGrzYexwWoDlueUZiEMfwWrOa4T0,381
|
|
163
|
+
shotgun/llm_proxy/models.py,sha256=KzYcBjE5yiiU9hpkvExQKCnySrv44EdgTTM9XSxRBVE,4375
|
|
164
|
+
shotgun/prompts/__init__.py,sha256=RswUm0HMdfm2m2YKUwUsEdRIwoczdbI7zlucoEvHYRo,132
|
|
165
|
+
shotgun/prompts/loader.py,sha256=_7CdUYrAo6ZwvTBUlXugKyLU0IDBg5CVzUIAHFPw418,4433
|
|
166
|
+
shotgun/prompts/agents/__init__.py,sha256=YRIJMbzpArojNX1BP5gfxxois334z_GQga8T-xyWMbY,39
|
|
167
|
+
shotgun/prompts/agents/export.j2,sha256=o-4pdwRNOtXZR9akcWLcJYwF_V1wMOyF8sbLtKKXtDo,17116
|
|
168
|
+
shotgun/prompts/agents/file_read.j2,sha256=kyv5WAy6LLKIg3J2Q50lLjcGZaYdu9Rrm5hVwhkfHB4,1967
|
|
169
|
+
shotgun/prompts/agents/plan.j2,sha256=l0eH-AC8h1m7SQmVxCEY3OOg_o9Eg3zabg05dIO26U4,7545
|
|
170
|
+
shotgun/prompts/agents/research.j2,sha256=TRCf6wOfrOhpz49mwENpdJqt0LpN49iJi1MG_gqOMVA,5619
|
|
171
|
+
shotgun/prompts/agents/router.j2,sha256=w6VAaKjJqKmDDZ__2-ntvZkLI2ufknUdWJC1YJ9goAc,28564
|
|
172
|
+
shotgun/prompts/agents/specify.j2,sha256=nCJfauEn080peif6iWAZ3X2mKAFH-hrAflAcEELPIC8,15748
|
|
173
|
+
shotgun/prompts/agents/tasks.j2,sha256=2le3wZ00NVPba1lgs7jk2xf4eQ2MPMa6cnaKE9hPuI8,8929
|
|
174
|
+
shotgun/prompts/agents/partials/codebase_understanding.j2,sha256=7WH-PVd-TRBFQUdOdKkwwn9hAUaJznFZMAGHhO7IGGU,5633
|
|
175
|
+
shotgun/prompts/agents/partials/common_agent_system_prompt.j2,sha256=03SRfJ-UlszT_s6kc4VC6dgWQ1j2x5aARwdhemChJ0M,1937
|
|
176
|
+
shotgun/prompts/agents/partials/content_formatting.j2,sha256=zM80rlH8T79GBYXithsZQO0A4PZ_3ht6yC4fmvjEEHY,1459
|
|
177
|
+
shotgun/prompts/agents/partials/interactive_mode.j2,sha256=xyJGKrGrOPz5_74ELUcF7sEWZDzk5gMkU4SqrC-xIuk,1175
|
|
178
|
+
shotgun/prompts/agents/partials/router_delegation_mode.j2,sha256=c9UcRkpo2bZ4dOd6sfI7K1y_vXYO4bVofMTMM3wjoXY,1339
|
|
179
|
+
shotgun/prompts/agents/state/system_state.j2,sha256=WnOczRSfiETWwl0L0Mzvldvg-V8c55ZW0jon8R179ZY,1477
|
|
180
|
+
shotgun/prompts/agents/state/codebase/codebase_graphs_available.j2,sha256=YZA11xCSdwAm7Xh176xas2Y2xtO-PBzW-Xx9tl_xpGk,1306
|
|
181
|
+
shotgun/prompts/codebase/__init__.py,sha256=NYuPMtmYM2ptuwf3YxVuotNlJOUq0hnjmwlzKcJkGK4,42
|
|
182
|
+
shotgun/prompts/codebase/cypher_query_patterns.j2,sha256=ufTx_xT3VoS76KcVUbIgGQx-bJoJHx3bBE3dagAXv18,8913
|
|
183
|
+
shotgun/prompts/codebase/cypher_system.j2,sha256=jo8d_AIoyAd0zKCvPXSmYGBxvtulMsCfeaOTdOfeC5g,2620
|
|
184
|
+
shotgun/prompts/codebase/enhanced_query_context.j2,sha256=WzGnFaBLZO-mOdkZ_u_PewSu9niKy87DKNL4uzQq1Jg,724
|
|
185
|
+
shotgun/prompts/codebase/partials/cypher_rules.j2,sha256=yhptyyZNzFNJWFGmOkxpF5PzZtUAXWDF4xl9ADu7yDw,3200
|
|
186
|
+
shotgun/prompts/codebase/partials/graph_schema.j2,sha256=fUsD1ZgU1pIWUzrs97jHq3TatKeGSvZgG8XP5gCQUJc,1939
|
|
187
|
+
shotgun/prompts/codebase/partials/temporal_context.j2,sha256=yYHQHBQ4EeSs6TtKPm9fflGW3y6H0-yAANcTdsApkk4,1388
|
|
188
|
+
shotgun/prompts/history/__init__.py,sha256=wbMLQ8yWmYz1sfXXigEAUlNkFcM50KdQv0kp4VU_P58,43
|
|
189
|
+
shotgun/prompts/history/chunk_summarization.j2,sha256=pePysCKgSp1UjqavQEzR_DNcsBtnpigip6zzcDsgKuE,1295
|
|
190
|
+
shotgun/prompts/history/combine_summaries.j2,sha256=OL2Zr668UpDOLq1-rBeXpjYMNDV7FL4RH7tQsKVQrKc,2151
|
|
191
|
+
shotgun/prompts/history/incremental_summarization.j2,sha256=GmnNh0pWTjaEaI1sPwKNsGCys5fK8xrzWqalAs_LhJw,2447
|
|
192
|
+
shotgun/prompts/history/summarization.j2,sha256=OYNVHg65zbuWB6_pXzTOs2T2k5qFD2gyfbmr6NP01rs,2268
|
|
193
|
+
shotgun/prompts/tools/web_search.j2,sha256=_F1m5UYiZENPQCqTUiO2du9Lkzs1SWujjAiauDD_5-Y,568
|
|
194
|
+
shotgun/sdk/__init__.py,sha256=ESV0WM9MigjXG30g9qVjcCMI40GQv-P-MSMGVuOisK4,380
|
|
195
|
+
shotgun/sdk/codebase.py,sha256=wscfPjqrutoASD24hMJp42sghray4wmUPc5NZ8UMH5g,9119
|
|
196
|
+
shotgun/sdk/exceptions.py,sha256=qBcQv0v7ZTwP7CMcxZST4GqCsfOWtOUjSzGBo0-heqo,412
|
|
197
|
+
shotgun/sdk/models.py,sha256=X9nOTUHH0cdkQW1NfnMEDu-QgK9oUsEISh1Jtwr5Am4,5496
|
|
198
|
+
shotgun/sdk/services.py,sha256=J4PJFSxCQ6--u7rb3Ta-9eYtlYcxcbnzrMP6ThyCnw4,705
|
|
199
|
+
shotgun/shotgun_web/__init__.py,sha256=tVQ4vfCAiR5rZfwj9FfCv1psTgyU3Ilo6sPz4d-CTPU,2009
|
|
200
|
+
shotgun/shotgun_web/client.py,sha256=_IO0jLzyEeysK6F74nuhaMgnqYlON_-vAA5wC625vXc,5383
|
|
201
|
+
shotgun/shotgun_web/constants.py,sha256=EaaqQT-jYLz4-JyMuiVllEb5ohAf_GTIc4oyubvuQDI,2254
|
|
202
|
+
shotgun/shotgun_web/exceptions.py,sha256=HtAkFQxRAsitJMm9vdjola_2O79o4YWMMjfa16D2Uo4,707
|
|
203
|
+
shotgun/shotgun_web/models.py,sha256=vPUmXt9S7C2DlroTIzzhYqxH-v85Lc-oV9JsyyCoNes,14847
|
|
204
|
+
shotgun/shotgun_web/specs_client.py,sha256=EoRit622sIlRWixB9Gt_8YR4zZwEZhPOXF-VtceDps0,23447
|
|
205
|
+
shotgun/shotgun_web/supabase_client.py,sha256=UcuM-MgssV-C4BKo5t2_YfoE9eB9RSbpi0YHRbOVVwA,876
|
|
206
|
+
shotgun/shotgun_web/shared_specs/__init__.py,sha256=k5ZHrkN8eNog5aitREEo1M8N1X-rUfaU9eT4oh-SMgs,882
|
|
207
|
+
shotgun/shotgun_web/shared_specs/file_scanner.py,sha256=SR2jpn2mxO2B2wMMkupI1HQhDxVJ4CoF9XQ6pnB9eTE,4827
|
|
208
|
+
shotgun/shotgun_web/shared_specs/hasher.py,sha256=dA5G8zgvpsko68Is_5_HbjB4lCF4YWajBFKjq5eVOak,2225
|
|
209
|
+
shotgun/shotgun_web/shared_specs/models.py,sha256=RkKWw4POBMvmaIwGiSq1pho2mgw6zoGoQjQ0hQFrR5w,1856
|
|
210
|
+
shotgun/shotgun_web/shared_specs/upload_pipeline.py,sha256=rowaQ6pJFyBLLyGmSoOSaQ2napGX1OQTQXl8qMq_R1w,10549
|
|
211
|
+
shotgun/shotgun_web/shared_specs/utils.py,sha256=8hXchaiYhSyG9FP_O6YXk8tMupJQiVgGXZKKWhD_SsU,812
|
|
212
|
+
shotgun/tui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
213
|
+
shotgun/tui/app.py,sha256=kVB-EjjMw8NCDzRueOG_fNMj1l09Yu7fz17uu4LpuJ8,20591
|
|
214
|
+
shotgun/tui/containers.py,sha256=g7sx0WOHZXXboP7gJLgOkSUSIaPemO8VZcESoXdzmSQ,3532
|
|
215
|
+
shotgun/tui/dependencies.py,sha256=m_5FoN5ktSS71rIb7Bj7GIYJDMbzhsF2hA0rc2z6c4o,2950
|
|
216
|
+
shotgun/tui/filtered_codebase_service.py,sha256=lJ8gTMhIveTatmvmGLP299msWWTkVYKwvY_2FhuL2s4,1687
|
|
217
|
+
shotgun/tui/layout.py,sha256=_hCXwbdPGLXgN8h54ri2Pnk8Gpw6B3pTP3horBlyZz0,247
|
|
218
|
+
shotgun/tui/protocols.py,sha256=bIswoPRdLhzrXaju_K8hvYFSJfaBLDf59eckn9NmhLo,2776
|
|
219
|
+
shotgun/tui/styles.tcss,sha256=ETyyw1bpMBOqTi5RLcAJUScdPWTvAWEqE9YcT0kVs_E,121
|
|
220
|
+
shotgun/tui/commands/__init__.py,sha256=ckUzWOegC5znk9vMweyrRgKKNvFjXtmFWjQTGYoRpb4,2936
|
|
221
|
+
shotgun/tui/components/attachment_bar.py,sha256=JZtXc9hWm_BNPxqXn-HhGNj0hK2vT4ht6t5H_0ChGog,2607
|
|
222
|
+
shotgun/tui/components/context_indicator.py,sha256=GeEMvLYf09Hkw-sTqX1v8RDHb6rt6mXcUpI4DT9DVHQ,5792
|
|
223
|
+
shotgun/tui/components/mode_indicator.py,sha256=yTi7cnWgLjg2jZaJlMoLPVrS4YhNmFhrRz1EWwNVuww,5514
|
|
224
|
+
shotgun/tui/components/prompt_input.py,sha256=eHeQPnkf-0OtcXvE2ayr3GlVxCPHvKB500bNYzRtbDk,2154
|
|
225
|
+
shotgun/tui/components/spinner.py,sha256=ovTDeaJ6FD6chZx_Aepia6R3UkPOVJ77EKHfRmn39MY,2427
|
|
226
|
+
shotgun/tui/components/splash.py,sha256=vppy9vEIEvywuUKRXn2y11HwXSRkQZHLYoVjhDVdJeU,1267
|
|
227
|
+
shotgun/tui/components/status_bar.py,sha256=3d7POlrxLQa9U0sLoJW4ERnqB6JzoX8WWASlBGml4Ww,2097
|
|
228
|
+
shotgun/tui/components/vertical_tail.py,sha256=kROwTaRjUwVB7H35dtmNcUVPQqNYvvfq7K2tXBKEb6c,638
|
|
229
|
+
shotgun/tui/screens/chat.tcss,sha256=7jM4YTBj-N-5T4NIiU2AJiGtKYvYO50OAkI0o7_qimI,574
|
|
230
|
+
shotgun/tui/screens/confirmation_dialog.py,sha256=g2DqxNiVx7OCsGlvuot_iGuHZjrlBlQN91hSTlhGXC4,6113
|
|
231
|
+
shotgun/tui/screens/database_locked_dialog.py,sha256=VMOXWOSAopahIhwsX06ZlYVJL93QeT-EgSggfxemqow,7693
|
|
232
|
+
shotgun/tui/screens/database_timeout_dialog.py,sha256=FcpbqKP2hKrE-WU-FxNmVxhp3wPmfGVbMcVe5QfOLSs,5086
|
|
233
|
+
shotgun/tui/screens/directory_setup.py,sha256=cwtl9KRsSnpm7HbGx84TE6wahUXKeXbi8L0TRtCfYJQ,3274
|
|
234
|
+
shotgun/tui/screens/feedback.py,sha256=BRrAcgDMAVsEvCNFYjuqdF6FmqzuqiBxeLz4Ah7MGMQ,5955
|
|
235
|
+
shotgun/tui/screens/github_issue.py,sha256=OdjaNLb997UOqVTWMq-GawVbTPjxarynMb-y0ktxeCA,3178
|
|
236
|
+
shotgun/tui/screens/kuzu_error_dialog.py,sha256=SRgeS-VSero_O0tjG685QM3jOwKC1_YpWS4HiDvkDvE,4292
|
|
237
|
+
shotgun/tui/screens/model_picker.py,sha256=W693qUjP9OuIae2OIdTjfZzt1inQJ-giMWG_O0Rk4_Y,13800
|
|
238
|
+
shotgun/tui/screens/models.py,sha256=hsS62WEKpJkGOBbmT0UqVw1Hrunm-4b9ZEzgblwtHaY,223
|
|
239
|
+
shotgun/tui/screens/pipx_migration.py,sha256=e9DojUzdlxj7_8IC7T_UMLEjIOk4eOF0uro2s8oAAvs,6145
|
|
240
|
+
shotgun/tui/screens/provider_config.py,sha256=VrlSnYZ-l1VG_qi5H-4G0yuNaJP8BFW20Vxgv8IcS28,13903
|
|
241
|
+
shotgun/tui/screens/shotgun_auth.py,sha256=tFKEMaQ6pocAdMG4JoRXQVjmjgluNGoYNZHBFCgTfck,13951
|
|
242
|
+
shotgun/tui/screens/spec_pull.py,sha256=LYD_ca2c4Je34daU4KFNWKnJ_rfMGGIXN-kJbdLTtzk,9162
|
|
243
|
+
shotgun/tui/screens/splash.py,sha256=E2MsJihi3c9NY1L28o_MstDxGwrCnnV7zdq00MrGAsw,706
|
|
244
|
+
shotgun/tui/screens/welcome.py,sha256=WJ35Cnoj9aHN47qgfBmGg99IXQQzkJ2Ipl-vfzU6oBs,10398
|
|
245
|
+
shotgun/tui/screens/chat/__init__.py,sha256=wChPqpJG-7kPYVYZjE8BlkXWxfW_YABhTR2fQ51opHY,113
|
|
246
|
+
shotgun/tui/screens/chat/chat.tcss,sha256=mJyLkrN20TS4pvmiLLWRajMZDaCMp13QjljotNeiaqs,922
|
|
247
|
+
shotgun/tui/screens/chat/chat_screen.py,sha256=K-W66vgnCWj2ItFjDBY9AQUCfaSjuuomu5uEsQC-33s,110474
|
|
248
|
+
shotgun/tui/screens/chat/codebase_index_prompt_screen.py,sha256=T_mk5Ma4jzdVaW-ojsSfOXIefZ_5hUt10yJsuz3Iu5E,7945
|
|
249
|
+
shotgun/tui/screens/chat/codebase_index_selection.py,sha256=Zz0vi3uLhWysdPHRO8Rye9QX4hIPeWhSAw6Y9-BlOVA,241
|
|
250
|
+
shotgun/tui/screens/chat/help_text.py,sha256=MkDq0Z7yQCXHVtLlnZaFU_Ijq1rbQX9KMOGVsb_1Hm8,1610
|
|
251
|
+
shotgun/tui/screens/chat/prompt_history.py,sha256=uL3KVFb32vD09jN338mebFAi0QI-EJXTxcEQy-j6QdQ,1201
|
|
252
|
+
shotgun/tui/screens/chat_screen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
253
|
+
shotgun/tui/screens/chat_screen/attachment_hint.py,sha256=4N2RnkTqw7jlCddzHG7KGkltmMzXHCcTTJXZ7RpPqBc,1122
|
|
254
|
+
shotgun/tui/screens/chat_screen/command_providers.py,sha256=fT4cJnP678IsDUqqQWAlmu8B2OrsmFM1VrvGF1OoKoc,12327
|
|
255
|
+
shotgun/tui/screens/chat_screen/hint_message.py,sha256=aeG3TB8lamc7VeGUST16A96y6dYc8u3FuTxymM5BI-w,3361
|
|
256
|
+
shotgun/tui/screens/chat_screen/messages.py,sha256=IYHrRixB3EyTmKm4rcKeDR3MqN5snR3GaE1ZHg-AkY0,6563
|
|
257
|
+
shotgun/tui/screens/chat_screen/history/__init__.py,sha256=PRznBlnm9caNE0YYC08PkvNMAK-JpuULwmByaRNTKO0,581
|
|
258
|
+
shotgun/tui/screens/chat_screen/history/agent_response.py,sha256=hGny1oaUV4lMtkO4rhXZriKbQQuxd94yIH2QOyq2yic,2567
|
|
259
|
+
shotgun/tui/screens/chat_screen/history/chat_history.py,sha256=oAQPgIEazTKOK5DSTD7uVEg4jzYzmxUpD95FFBwHt_4,6091
|
|
260
|
+
shotgun/tui/screens/chat_screen/history/formatters.py,sha256=u2P2OWqJ7-YZbI6PktVym_aOqN-nJtviRKjqI8tzv_4,6831
|
|
261
|
+
shotgun/tui/screens/chat_screen/history/partial_response.py,sha256=r1KAJGrtDmTGEJSV66_pg_TAU55BH9foFA63-MHJfCM,1690
|
|
262
|
+
shotgun/tui/screens/chat_screen/history/user_question.py,sha256=q_6aWax8TH0oImOfjo7QhqT02Y7snrSB7WemZbMmCkg,2249
|
|
263
|
+
shotgun/tui/screens/shared_specs/__init__.py,sha256=HTsjeZ2E6ICS8vd1KmG_H0-B0fpjcaVSR3_7AI8jXqU,631
|
|
264
|
+
shotgun/tui/screens/shared_specs/create_spec_dialog.py,sha256=Sp7s0tWJl1AQmOZ118VGM3zhMZF9FqN-eNJLWeU_tcE,7654
|
|
265
|
+
shotgun/tui/screens/shared_specs/models.py,sha256=dxNRmWD9xrqGdkTeSHoV3IyMFESyuyTqWKKKMcapNNU,1431
|
|
266
|
+
shotgun/tui/screens/shared_specs/share_specs_dialog.py,sha256=JEicnRQvBDgLdgRT0uhOF60P53YW05m0vmS7r8Rmbac,12290
|
|
267
|
+
shotgun/tui/screens/shared_specs/upload_progress_screen.py,sha256=VY0uioZvtA8p8ZnCz9kFZ7dAw8vN3wU08qurDOVQaKU,15835
|
|
268
|
+
shotgun/tui/services/__init__.py,sha256=-BKRCRYQSnQZI4PxxUpkbvq8eYhXGjWHJtVW06CYQ2o,149
|
|
269
|
+
shotgun/tui/services/conversation_service.py,sha256=l8v991gTFLpgsv7drmZ5MSZ77_zmqYHc2ejh2zjZt7I,6703
|
|
270
|
+
shotgun/tui/state/__init__.py,sha256=oPV_VsvoiXhuZPwnra38kCT3RyXLvVxkVKDOv-LXGgA,141
|
|
271
|
+
shotgun/tui/state/processing_state.py,sha256=R596JgFKnS4NDt_0k5ix9fyRw4xnxdzkzsWe4Zz1bfI,6927
|
|
272
|
+
shotgun/tui/utils/__init__.py,sha256=cFjDfoXTRBq29wgP7TGRWUu1eFfiIG-LLOzjIGfadgI,150
|
|
273
|
+
shotgun/tui/utils/mode_progress.py,sha256=IdDFAIpIZHL5YTTUGvN_CaSZsN2vdm89Q6d7gNsAvBI,7323
|
|
274
|
+
shotgun/tui/widgets/__init__.py,sha256=6l-rU3Kq4hxKZQif49ZrZvvQlguC5qR20MJxi0kPwWQ,230
|
|
275
|
+
shotgun/tui/widgets/approval_widget.py,sha256=ewbVusx2wzJCXgw81iFsWEdH5nFWRtet1FtajRxgS6I,4382
|
|
276
|
+
shotgun/tui/widgets/cascade_confirmation_widget.py,sha256=AY4KnqGb9vLFqoU2KXMZB9K4st6Z4sLdZ7IMVnrAKlU,6890
|
|
277
|
+
shotgun/tui/widgets/plan_panel.py,sha256=hmIcpKGw4rWvzEh0kWDLWUqwTJ5MKWzLySXqtybMYrI,3607
|
|
278
|
+
shotgun/tui/widgets/step_checkpoint_widget.py,sha256=hiwT9EyQ-ue8iGmOed7CBqau1EWo7jtdFjRk9uTvYu8,5963
|
|
279
|
+
shotgun/tui/widgets/widget_coordinator.py,sha256=J16RinNmB6OMkw9JDwdFOwuuZ3qBKuC_fHolLmrtNh4,9808
|
|
280
|
+
shotgun/utils/__init__.py,sha256=WinIEp9oL2iMrWaDkXz2QX4nYVPAm8C9aBSKTeEwLtE,198
|
|
281
|
+
shotgun/utils/datetime_utils.py,sha256=x_uYmG1n9rkhSO2oR2uV9ttiuPL0nKa9os8YYaPfdWY,2592
|
|
282
|
+
shotgun/utils/env_utils.py,sha256=ulM3BRi9ZhS7uC-zorGeDQm4SHvsyFuuU9BtVPqdrHY,1418
|
|
283
|
+
shotgun/utils/file_system_utils.py,sha256=62l6OtAUzTLxkvsKqib7DB-l03mQUr_Hs2D9_1cLoSE,1702
|
|
284
|
+
shotgun/utils/marketing.py,sha256=WAPEtJDagNsDmIBdrZ0XBHOgsLONz_eT25wEng-HDBs,3759
|
|
285
|
+
shotgun/utils/source_detection.py,sha256=Co6Q03R3fT771TF3RzB-70stfjNP2S4F_ArZKibwzm8,454
|
|
286
|
+
shotgun/utils/update_checker.py,sha256=6fjiVUXgdxUrI54dfw0xBsrw7jlobYkjYNZaR-JoTpI,9667
|
|
287
|
+
shotgun_sh-0.6.2.dist-info/METADATA,sha256=jHIsI_xXi3dQ83rEJl01-hkf9wjc8_CnyX63jrUQbSk,18145
|
|
288
|
+
shotgun_sh-0.6.2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
289
|
+
shotgun_sh-0.6.2.dist-info/entry_points.txt,sha256=GQmtjKaPtviqYOuB3C0SMGlG5RZS9-VDDIKxV_IVHmY,75
|
|
290
|
+
shotgun_sh-0.6.2.dist-info/licenses/LICENSE,sha256=ZZEiPnjIkv3rNT-CJBMU6l7VukLUdddCo3bTwal1NIQ,1070
|
|
291
|
+
shotgun_sh-0.6.2.dist-info/RECORD,,
|
shotgun/cli/export.py
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"""Export command for shotgun CLI."""
|
|
2
|
-
|
|
3
|
-
import asyncio
|
|
4
|
-
from typing import Annotated
|
|
5
|
-
|
|
6
|
-
import typer
|
|
7
|
-
|
|
8
|
-
from shotgun.agents.config import ProviderType
|
|
9
|
-
from shotgun.agents.export import (
|
|
10
|
-
create_export_agent,
|
|
11
|
-
run_export_agent,
|
|
12
|
-
)
|
|
13
|
-
from shotgun.agents.models import AgentRuntimeOptions
|
|
14
|
-
from shotgun.cli.error_handler import print_agent_error
|
|
15
|
-
from shotgun.exceptions import ErrorNotPickedUpBySentry
|
|
16
|
-
from shotgun.logging_config import get_logger
|
|
17
|
-
from shotgun.posthog_telemetry import track_event
|
|
18
|
-
|
|
19
|
-
app = typer.Typer(
|
|
20
|
-
name="export", help="Export artifacts to various formats with agentic approach"
|
|
21
|
-
)
|
|
22
|
-
logger = get_logger(__name__)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
@app.callback(invoke_without_command=True)
|
|
26
|
-
def export(
|
|
27
|
-
instruction: Annotated[
|
|
28
|
-
str, typer.Argument(help="Export instruction or format specification")
|
|
29
|
-
],
|
|
30
|
-
non_interactive: Annotated[
|
|
31
|
-
bool,
|
|
32
|
-
typer.Option(
|
|
33
|
-
"--non-interactive", "-n", help="Disable user interaction (for CI/CD)"
|
|
34
|
-
),
|
|
35
|
-
] = False,
|
|
36
|
-
provider: Annotated[
|
|
37
|
-
ProviderType | None,
|
|
38
|
-
typer.Option("--provider", "-p", help="AI provider to use (overrides default)"),
|
|
39
|
-
] = None,
|
|
40
|
-
) -> None:
|
|
41
|
-
"""Export artifacts and findings to various formats.
|
|
42
|
-
|
|
43
|
-
This command exports research, plans, tasks, and other project artifacts
|
|
44
|
-
to different formats like Markdown, HTML, JSON, CSV, or project management
|
|
45
|
-
tool formats. The AI agent will analyze available content and transform
|
|
46
|
-
it according to your export requirements.
|
|
47
|
-
"""
|
|
48
|
-
|
|
49
|
-
logger.info("📤 Export Instruction: %s", instruction)
|
|
50
|
-
|
|
51
|
-
# Track export command usage
|
|
52
|
-
track_event(
|
|
53
|
-
"export_command",
|
|
54
|
-
{
|
|
55
|
-
"non_interactive": non_interactive,
|
|
56
|
-
"provider": provider.value if provider else "default",
|
|
57
|
-
},
|
|
58
|
-
)
|
|
59
|
-
|
|
60
|
-
# Create agent dependencies
|
|
61
|
-
agent_runtime_options = AgentRuntimeOptions(interactive_mode=not non_interactive)
|
|
62
|
-
|
|
63
|
-
# Create the export agent with deps and provider
|
|
64
|
-
agent, deps = asyncio.run(create_export_agent(agent_runtime_options, provider))
|
|
65
|
-
|
|
66
|
-
# Start export process with error handling
|
|
67
|
-
logger.info("🎯 Starting export...")
|
|
68
|
-
|
|
69
|
-
async def async_export() -> None:
|
|
70
|
-
try:
|
|
71
|
-
result = await run_export_agent(agent, instruction, deps)
|
|
72
|
-
logger.info("✅ Export Complete!")
|
|
73
|
-
logger.info("📤 Results:")
|
|
74
|
-
logger.info("%s", result.output)
|
|
75
|
-
except ErrorNotPickedUpBySentry as e:
|
|
76
|
-
print_agent_error(e)
|
|
77
|
-
except Exception as e:
|
|
78
|
-
logger.exception("Unexpected error in export command")
|
|
79
|
-
print(f"⚠️ An unexpected error occurred: {str(e)}")
|
|
80
|
-
|
|
81
|
-
asyncio.run(async_export())
|