tunacode-cli 0.0.42__tar.gz → 0.0.44__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 tunacode-cli might be problematic. Click here for more details.
- {tunacode_cli-0.0.42/src/tunacode_cli.egg-info → tunacode_cli-0.0.44}/PKG-INFO +1 -1
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/pyproject.toml +1 -1
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/main.py +4 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/constants.py +1 -1
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/agents/main.py +26 -24
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/token_counter.py +1 -2
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44/src/tunacode_cli.egg-info}/PKG-INFO +1 -1
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/CLAUDE.md +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/LICENSE +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/MANIFEST.in +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/README.md +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/TUNACODE.md +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/setup.cfg +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/setup.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/base.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/conversation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/debug.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/development.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/model.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/system.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/todo.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/registry.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/repl.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/configuration/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/configuration/defaults.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/configuration/models.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/configuration/settings.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/context.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/agents/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/agents/dspy_integration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/agents/dspy_tunacode.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/agents/utils.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/background/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/background/manager.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/code_index.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/llm/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/recursive/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/recursive/aggregator.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/recursive/budget.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/recursive/decomposer.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/recursive/executor.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/recursive/hierarchy.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/setup/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/setup/agent_setup.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/setup/base.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/setup/config_setup.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/setup/coordinator.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/setup/environment_setup.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/setup/git_safety_setup.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/state.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/token_usage/api_response_parser.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/token_usage/cost_calculator.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/token_usage/usage_tracker.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/tool_handler.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/exceptions.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/prompts/dspy_task_planning.md +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/prompts/dspy_tool_selection.md +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/prompts/system.md +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/py.typed +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/services/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/services/mcp.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/setup.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/base.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/bash.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/glob.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/grep.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/list_dir.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/read_file.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/read_file_async_poc.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/run_command.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/todo.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/update_file.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/tools/write_file.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/types.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/completers.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/console.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/constants.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/decorators.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/input.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/keybindings.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/lexers.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/output.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/panels.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/prompt_manager.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/recursive_progress.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/tool_ui.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/utils.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/ui/validators.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/bm25.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/diff_utils.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/file_utils.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/import_cache.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/message_utils.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/retry.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/ripgrep.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/security.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/system.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/text_utils.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/utils/user_configuration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode_cli.egg-info/SOURCES.txt +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode_cli.egg-info/dependency_links.txt +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode_cli.egg-info/entry_points.txt +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode_cli.egg-info/requires.txt +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode_cli.egg-info/top_level.txt +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/conftest.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_agent_creation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_json_tool_parsing.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_process_node.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_process_request.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_tool_message_patching.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_background_edge_cases.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_cleanup.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_task_cancellation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_task_creation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_task_execution.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/code_index/test_cache_management.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/code_index/test_file_scanning.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/code_index/test_index_building.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/code_index/test_search_operations.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/code_index/test_symbol_extraction.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/commands/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/commands/test_init_command.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/conftest.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/context/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/context/test_context_acceptance.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/context/test_context_integration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/context/test_context_loading.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/context/test_tunacode_logging.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_command_parsing.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_error_handling.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_input_handling.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_keyboard_interrupts.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_multiline_input.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_output_display_logic.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_repl_initialization.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_session_flow.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/services/test_error_recovery.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/services/test_llm_routing.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/services/test_mcp_integration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/services/test_service_lifecycle.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_agent_tracking.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_message_history.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_permissions.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_session_management.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_state_initialization.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_user_config.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/test_characterization_commands.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_async_ui.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_console_output.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_diff_display.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_prompt_rendering.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_tool_confirmations.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/conftest.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_expand_file_refs.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_file_operations.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_git_commands.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_token_counting.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_utils_edge_cases.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/conftest.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/crud/test_core_file_operations.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/fixtures/__init__.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/fixtures/file_operations.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/integration/test_error_recovery_flow.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/integration/test_full_session_flow.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/integration/test_mcp_tool_flow.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/integration/test_multi_tool_operations.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/integration/test_performance_scenarios.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/integration/test_usage_tracking_integration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_actual_parallelism.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_agent_initialization.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_agent_output_formatting.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_api_response_parser.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_background_manager.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_agent_main.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_bash.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_commands_system.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_glob.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_grep.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_grep_performance.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_iteration_limits.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_list_dir.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_read_file.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_repl_utils.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_run_command.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_setup_system.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_tool_ui_behavior.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_update_file.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_utilities.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_characterization_write_file.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_cli_command_flow.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_cli_file_operations_integration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_config_directory_creation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_config_setup_async.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_cost_calculator.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_dspy_integration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_enhanced_visual_feedback.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_fallback_responses.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_fast_glob_search.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_file_operations_edge_cases.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_file_operations_stress.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_file_reference_context_tracking.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_file_reference_expansion.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_grep_fast_glob.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_grep_legacy_compat.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_grep_timeout.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_json_retry.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_json_tool_parsing.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_list_dir.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_parallel_execution_demo.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_parallel_execution_freeze_fix.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_parallel_execution_integration.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_parallel_read_only_tools.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_parallel_tool_execution.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_prompt_changes_validation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_read_only_confirmation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_security.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_streaming_panel_tool_confirmation.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_streaming_spinner_conflict.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_todo_functionality.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_tool_batching_retry.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_tool_categorization.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_tool_combinations.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_tool_handler_ui_messages.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_update_command.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/test_visual_parallel_feedback.py +0 -0
- {tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/unit/test_recursive_executor.py +0 -0
|
@@ -5,6 +5,7 @@ Enhanced CLI entry point with better styling while staying CLI-based.
|
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
7
|
import asyncio
|
|
8
|
+
import logging
|
|
8
9
|
|
|
9
10
|
import typer
|
|
10
11
|
|
|
@@ -36,6 +37,9 @@ def main(
|
|
|
36
37
|
):
|
|
37
38
|
"""Start TunaCode - Your AI-powered development assistant"""
|
|
38
39
|
|
|
40
|
+
# Configure logging to suppress INFO messages by default
|
|
41
|
+
logging.basicConfig(level=logging.WARNING, force=True)
|
|
42
|
+
|
|
39
43
|
async def async_main():
|
|
40
44
|
if version:
|
|
41
45
|
await ui.version()
|
|
@@ -974,27 +974,28 @@ async def process_request(
|
|
|
974
974
|
buffered_tasks = tool_buffer.flush()
|
|
975
975
|
start_time = time.time()
|
|
976
976
|
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
977
|
+
if state_manager.session.show_thoughts:
|
|
978
|
+
await ui.muted("\n" + "=" * 60)
|
|
979
|
+
await ui.muted(
|
|
980
|
+
f"🚀 FINAL BATCH: Executing {len(buffered_tasks)} buffered read-only tools"
|
|
981
|
+
)
|
|
982
|
+
await ui.muted("=" * 60)
|
|
982
983
|
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
984
|
+
for idx, (part, node) in enumerate(buffered_tasks, 1):
|
|
985
|
+
tool_desc = f" [{idx}] {part.tool_name}"
|
|
986
|
+
if hasattr(part, "args") and isinstance(part.args, dict):
|
|
987
|
+
if part.tool_name == "read_file" and "file_path" in part.args:
|
|
988
|
+
tool_desc += f" → {part.args['file_path']}"
|
|
989
|
+
elif part.tool_name == "grep" and "pattern" in part.args:
|
|
990
|
+
tool_desc += f" → pattern: '{part.args['pattern']}'"
|
|
991
|
+
if "include_files" in part.args:
|
|
992
|
+
tool_desc += f", files: '{part.args['include_files']}'"
|
|
993
|
+
elif part.tool_name == "list_dir" and "directory" in part.args:
|
|
994
|
+
tool_desc += f" → {part.args['directory']}"
|
|
995
|
+
elif part.tool_name == "glob" and "pattern" in part.args:
|
|
996
|
+
tool_desc += f" → pattern: '{part.args['pattern']}'"
|
|
997
|
+
await ui.muted(tool_desc)
|
|
998
|
+
await ui.muted("=" * 60)
|
|
998
999
|
|
|
999
1000
|
await execute_tools_parallel(buffered_tasks, tool_callback)
|
|
1000
1001
|
|
|
@@ -1002,10 +1003,11 @@ async def process_request(
|
|
|
1002
1003
|
sequential_estimate = len(buffered_tasks) * 100
|
|
1003
1004
|
speedup = sequential_estimate / elapsed_time if elapsed_time > 0 else 1.0
|
|
1004
1005
|
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1006
|
+
if state_manager.session.show_thoughts:
|
|
1007
|
+
await ui.muted(
|
|
1008
|
+
f"✅ Final batch completed in {elapsed_time:.0f}ms "
|
|
1009
|
+
f"(~{speedup:.1f}x faster than sequential)\n"
|
|
1010
|
+
)
|
|
1009
1011
|
|
|
1010
1012
|
# If we need to add a fallback response, create a wrapper
|
|
1011
1013
|
if not response_state.has_user_response and i >= max_iterations and fallback_enabled:
|
|
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
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/debug.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/development.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/model.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/system.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/cli/commands/implementations/todo.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
|
|
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
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/token_usage/api_response_parser.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/src/tunacode/core/token_usage/cost_calculator.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
|
|
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
|
|
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
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_agent_creation.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_json_tool_parsing.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_process_node.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/agent/test_process_request.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_cleanup.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_task_creation.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/background/test_task_execution.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/code_index/test_file_scanning.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/code_index/test_index_building.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/commands/test_init_command.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/context/test_context_loading.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/context/test_tunacode_logging.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_command_parsing.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_error_handling.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_input_handling.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_keyboard_interrupts.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_multiline_input.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_output_display_logic.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_repl_initialization.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/repl/test_session_flow.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/services/test_error_recovery.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/services/test_llm_routing.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/services/test_mcp_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_agent_tracking.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_message_history.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_permissions.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_session_management.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/state/test_user_config.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/test_characterization_commands.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_console_output.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_prompt_rendering.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/ui/test_tool_confirmations.py
RENAMED
|
File without changes
|
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_expand_file_refs.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_file_operations.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_git_commands.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_token_counting.py
RENAMED
|
File without changes
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/characterization/utils/test_utils_edge_cases.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
|
{tunacode_cli-0.0.42 → tunacode_cli-0.0.44}/tests/integration/test_usage_tracking_integration.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
|
|
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
|
|
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
|