shotgun-sh 0.2.5.dev1__tar.gz → 0.2.6.dev1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of shotgun-sh might be problematic. Click here for more details.
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/PKG-INFO +1 -1
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/pyproject.toml +1 -1
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/agent_manager.py +14 -3
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/partials/common_agent_system_prompt.j2 +1 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat_screen/history.py +57 -8
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/.gitignore +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/LICENSE +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/README.md +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/hatch_build.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/common.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/config/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/config/constants.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/config/manager.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/config/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/config/provider.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/conversation_history.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/conversation_manager.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/export.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/compaction.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/constants.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/context_extraction.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/history_building.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/history_processors.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/message_utils.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/anthropic.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/base.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/openai.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/sentencepiece_counter.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/tokenizer_cache.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/utils.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_estimation.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/llm.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/messages.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/plan.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/research.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/specify.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tasks.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/codebase_shell.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/directory_lister.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/file_read.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/query_graph.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/retrieve_code.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/file_management.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/user_interaction.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/anthropic.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/gemini.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/openai.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/utils.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/usage_manager.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/api_endpoints.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/build_constants.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/codebase/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/codebase/commands.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/codebase/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/config.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/export.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/feedback.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/plan.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/research.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/specify.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/tasks.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/update.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/cli/utils.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/change_detector.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/code_retrieval.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/cypher_models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/ingestor.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/language_config.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/manager.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/nl_query.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/parser_loader.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/service.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/llm_proxy/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/llm_proxy/clients.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/llm_proxy/constants.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/logging_config.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/main.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/posthog_telemetry.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/export.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/partials/codebase_understanding.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/partials/content_formatting.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/partials/interactive_mode.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/plan.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/research.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/specify.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/state/codebase/codebase_graphs_available.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/state/system_state.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/tasks.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/cypher_query_patterns.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/cypher_system.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/enhanced_query_context.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/partials/cypher_rules.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/partials/graph_schema.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/partials/temporal_context.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/history/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/history/incremental_summarization.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/history/summarization.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/loader.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/tools/web_search.j2 +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/py.typed +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/sdk/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/sdk/codebase.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/sdk/exceptions.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/sdk/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/sdk/services.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/sentry_telemetry.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/shotgun_web/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/shotgun_web/client.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/shotgun_web/constants.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/shotgun_web/models.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/telemetry.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/app.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/commands/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/components/prompt_input.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/components/spinner.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/components/splash.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/components/vertical_tail.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/filtered_codebase_service.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat.tcss +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat_screen/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat_screen/command_providers.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat_screen/hint_message.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/directory_setup.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/feedback.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/model_picker.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/provider_config.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/shotgun_auth.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/splash.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/welcome.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/styles.tcss +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/utils/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/utils/mode_progress.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/utils/__init__.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/utils/datetime_utils.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/utils/env_utils.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/utils/file_system_utils.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/utils/source_detection.py +0 -0
- {shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/utils/update_checker.py +0 -0
|
@@ -36,6 +36,7 @@ from textual.message import Message
|
|
|
36
36
|
from textual.widget import Widget
|
|
37
37
|
|
|
38
38
|
from shotgun.agents.common import add_system_prompt_message, add_system_status_message
|
|
39
|
+
from shotgun.agents.config.models import KeyProvider
|
|
39
40
|
from shotgun.agents.models import AgentType, FileOperation
|
|
40
41
|
from shotgun.posthog_telemetry import track_event
|
|
41
42
|
from shotgun.tui.screens.chat_screen.hint_message import HintMessage
|
|
@@ -359,10 +360,18 @@ class AgentManager(Widget):
|
|
|
359
360
|
model_name = ""
|
|
360
361
|
if hasattr(deps, "llm_model") and deps.llm_model is not None:
|
|
361
362
|
model_name = deps.llm_model.name
|
|
362
|
-
|
|
363
|
-
|
|
363
|
+
|
|
364
|
+
# Check if it's a Shotgun account
|
|
365
|
+
is_shotgun_account = (
|
|
366
|
+
hasattr(deps, "llm_model")
|
|
367
|
+
and deps.llm_model is not None
|
|
368
|
+
and deps.llm_model.key_provider == KeyProvider.SHOTGUN
|
|
364
369
|
)
|
|
365
370
|
|
|
371
|
+
# Only disable streaming for GPT-5 if NOT a Shotgun account
|
|
372
|
+
# Shotgun accounts support streaming for GPT-5
|
|
373
|
+
is_gpt5_byok = "gpt-5" in model_name.lower() and not is_shotgun_account
|
|
374
|
+
|
|
366
375
|
# Track message send event
|
|
367
376
|
event_name = f"message_send_{self._current_agent_type.value}"
|
|
368
377
|
track_event(
|
|
@@ -383,7 +392,9 @@ class AgentManager(Widget):
|
|
|
383
392
|
usage_limits=usage_limits,
|
|
384
393
|
message_history=message_history,
|
|
385
394
|
deferred_tool_results=deferred_tool_results,
|
|
386
|
-
event_stream_handler=self._handle_event_stream
|
|
395
|
+
event_stream_handler=self._handle_event_stream
|
|
396
|
+
if not is_gpt5_byok
|
|
397
|
+
else None,
|
|
387
398
|
**kwargs,
|
|
388
399
|
)
|
|
389
400
|
finally:
|
|
@@ -20,6 +20,7 @@ Your extensive expertise spans, among other things:
|
|
|
20
20
|
9. **Be Creative**: If the user seems not to know something, always be creative and come up with ideas that fit their thinking.
|
|
21
21
|
10. Greet the user when you're just starting to work.
|
|
22
22
|
11. DO NOT repeat yourself.
|
|
23
|
+
12. If a user has agreed to a plan, you DO NOT NEED TO FOLLOW UP with them after every step to ask "is this search query ok?".
|
|
23
24
|
|
|
24
25
|
|
|
25
26
|
## Quality Standards
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat_screen/history.py
RENAMED
|
@@ -215,8 +215,18 @@ class AgentResponseWidget(Widget):
|
|
|
215
215
|
acc = ""
|
|
216
216
|
if self.item is None:
|
|
217
217
|
return ""
|
|
218
|
+
|
|
219
|
+
# Check if there's an ask_user tool call
|
|
220
|
+
has_ask_user = any(
|
|
221
|
+
isinstance(part, ToolCallPart) and part.tool_name == "ask_user"
|
|
222
|
+
for part in self.item.parts
|
|
223
|
+
)
|
|
224
|
+
|
|
218
225
|
for idx, part in enumerate(self.item.parts):
|
|
219
226
|
if isinstance(part, TextPart):
|
|
227
|
+
# Skip ALL text parts if there's an ask_user tool call
|
|
228
|
+
if has_ask_user:
|
|
229
|
+
continue
|
|
220
230
|
# Only show the circle prefix if there's actual content
|
|
221
231
|
if part.content and part.content.strip():
|
|
222
232
|
acc += f"**⏺** {part.content}\n\n"
|
|
@@ -224,7 +234,25 @@ class AgentResponseWidget(Widget):
|
|
|
224
234
|
parts_str = self._format_tool_call_part(part)
|
|
225
235
|
acc += parts_str + "\n\n"
|
|
226
236
|
elif isinstance(part, BuiltinToolCallPart):
|
|
227
|
-
|
|
237
|
+
# Format builtin tool calls better
|
|
238
|
+
if part.tool_name and "search" in part.tool_name.lower():
|
|
239
|
+
args = self._parse_args(part.args)
|
|
240
|
+
if isinstance(args, dict) and "query" in args:
|
|
241
|
+
query = self._truncate(str(args.get("query", "")))
|
|
242
|
+
acc += f'Searching: "{query}"\n\n'
|
|
243
|
+
else:
|
|
244
|
+
acc += f"{part.tool_name}()\n\n"
|
|
245
|
+
else:
|
|
246
|
+
# For other builtin tools, show name only or with truncated args
|
|
247
|
+
if part.args:
|
|
248
|
+
args_str = (
|
|
249
|
+
str(part.args)[:50] + "..."
|
|
250
|
+
if len(str(part.args)) > 50
|
|
251
|
+
else str(part.args)
|
|
252
|
+
)
|
|
253
|
+
acc += f"{part.tool_name}({args_str})\n\n"
|
|
254
|
+
else:
|
|
255
|
+
acc += f"{part.tool_name}()\n\n"
|
|
228
256
|
elif isinstance(part, BuiltinToolReturnPart):
|
|
229
257
|
acc += f"builtin tool ({part.tool_name}) return: {part.content}\n\n"
|
|
230
258
|
elif isinstance(part, ThinkingPart):
|
|
@@ -305,12 +333,16 @@ class AgentResponseWidget(Widget):
|
|
|
305
333
|
return f'Reading file: "{args["filename"]}"'
|
|
306
334
|
return "Reading file"
|
|
307
335
|
|
|
308
|
-
# Web search tools
|
|
309
|
-
if
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
336
|
+
# Web search tools - handle variations
|
|
337
|
+
if (
|
|
338
|
+
part.tool_name
|
|
339
|
+
in [
|
|
340
|
+
"openai_web_search_tool",
|
|
341
|
+
"anthropic_web_search_tool",
|
|
342
|
+
"gemini_web_search_tool",
|
|
343
|
+
]
|
|
344
|
+
or "search" in part.tool_name.lower()
|
|
345
|
+
): # Catch other search variations
|
|
314
346
|
if "query" in args:
|
|
315
347
|
query = self._truncate(str(args["query"]))
|
|
316
348
|
return f'Searching web: "{query}"'
|
|
@@ -332,7 +364,24 @@ class AgentResponseWidget(Widget):
|
|
|
332
364
|
return f"{part.tool_name}({args['name']})"
|
|
333
365
|
return f"▪ {part.tool_name}()"
|
|
334
366
|
|
|
335
|
-
|
|
367
|
+
# Default case for unrecognized tools - format args properly
|
|
368
|
+
args = self._parse_args(part.args)
|
|
369
|
+
if args and isinstance(args, dict):
|
|
370
|
+
# Try to extract common fields
|
|
371
|
+
if "query" in args:
|
|
372
|
+
return f'{part.tool_name}: "{self._truncate(str(args["query"]))}"'
|
|
373
|
+
elif "question" in args:
|
|
374
|
+
return f'{part.tool_name}: "{self._truncate(str(args["question"]))}"'
|
|
375
|
+
else:
|
|
376
|
+
# Show tool name with truncated args
|
|
377
|
+
args_str = (
|
|
378
|
+
str(part.args)[:50] + "..."
|
|
379
|
+
if len(str(part.args)) > 50
|
|
380
|
+
else str(part.args)
|
|
381
|
+
)
|
|
382
|
+
return f"{part.tool_name}({args_str})"
|
|
383
|
+
else:
|
|
384
|
+
return f"{part.tool_name}()"
|
|
336
385
|
|
|
337
386
|
def _format_ask_user_part(
|
|
338
387
|
self,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/context_extraction.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/history_building.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/history_processors.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/base.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/openai.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_counting/utils.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/history/token_estimation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/__init__.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/codebase_shell.py
RENAMED
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/file_read.py
RENAMED
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/query_graph.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/codebase/retrieve_code.py
RENAMED
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/user_interaction.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/__init__.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/anthropic.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/gemini.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/openai.py
RENAMED
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/agents/tools/web_search/utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/change_detector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/codebase/core/language_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/agents/state/system_state.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/codebase/cypher_system.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/prompts/history/summarization.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/filtered_codebase_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat_screen/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{shotgun_sh-0.2.5.dev1 → shotgun_sh-0.2.6.dev1}/src/shotgun/tui/screens/chat_screen/hint_message.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|