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