tunacode-cli 0.0.68__tar.gz → 0.0.70__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.68 → tunacode_cli-0.0.70}/.claude/README.md +2 -0
- tunacode_cli-0.0.70/.claude/development/model-updates-2025.md +18 -0
- tunacode_cli-0.0.70/.claude/development/onboarding-improvements.md +20 -0
- tunacode_cli-0.0.70/.claude/development/slash-commands.md +34 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/metadata/components.yml +16 -0
- tunacode_cli-0.0.70/.claude/settings.local.json +122 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/CHANGELOG.md +26 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/PKG-INFO +1 -1
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/pyproject.toml +2 -2
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/constants.py +1 -1
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/config_setup.py +5 -1
- tunacode_cli-0.0.68/.claude/settings.local.json +0 -130
- tunacode_cli-0.0.68/SEARCH_ENHANCEMENT_PLAN.md +0 -287
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/MEMORY_ANCHOR_SPEC.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/NEXT_PR_RULES.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/bug-context-analyzer.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/code-synthesis-analyzer.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/documentation-synthesis-qa.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/expert-debugger.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/phased-task-processor.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/prompt-engineer.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/rapid-code-synthesis-qa.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/agents/tech-docs-maintainer.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/anchors.json +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/commands/deploy.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/commands/github-issue.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/commands/smells.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/commands/work.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/commands/workflow.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/delta/2025-01-05-baseline.yml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/delta/fix-text-alignment-layout-task3.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/delta/task4_ui_formatting_fix.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/delta/v0.0.53_to_v0.0.54.diff +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/always-on-display-implementation.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/cli-json-recovery-incident.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/directory-caching-optimization.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/esc-investigation/ESC_KEY_INVESTIGATION.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/esc-investigation/ESC_KEY_STREAMING_ANALYSIS.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/hatch-commands.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/phase5-prompt-injection-system.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/uv-hatch-setup.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/development/uv-installer-updates.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/metadata/hotspots.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/patterns/json_retry_implementation.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/qa/fix-agent-errors.yml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/qa/fix-publish-script.yml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/qa/fix-runtime-warnings.yml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/README.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/active/task_json_retry_implementation_summary_2025-07-24_13-05-40.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/active/task_standardize_ui_formatting_patterns_2025-07-23_20-43-28.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/agents/default/spinner-enhancement-2025-08-07.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/agents/esc-investigation/scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/agents/phase5-recovery/scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/agents/tech-docs-maintainer/scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/code-synthesis-analyzer_ESC_Double-Press_REPL_Abort_Analysis_2025-08-06_134859_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Add_Prompt_Injection_to_Remaining_Tools_-_Continuation_2025-08-13_152542_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Add_Prompt_Injection_to_Remaining_Tools_2025-08-13_152352_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_CLI_Agent_JSON_Recovery_Investigation_2025-08-12_124206_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_CLI_Agent_JSON_Recovery_Investigation_2025-08-12_124727_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Completely_remove_TUNACODE_TASK_COMPLETE_from_plan_mode_2025-08-09_091836_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Debug_ESC_key_still_not_working_in_approval_prompt_2025-08-09_033534_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Debug_persistent_KeyboardInterrupt_in_event_loop_2025-08-09_034136_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Debug_present_plan_tool_registration_and_model_capability_2025-08-09_092923_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Debug_stuck_double_escape_in_plan_approval_2025-08-09_033214_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fix_Application.exit()_failed_error_in_ESC_keybinding_2025-08-09_075607_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fix_ESC_double-tap_and_plan_display_issues_2025-08-09_090055_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fix_ESC_exceptions_and_missing_present_plan_tool_2025-08-09_081700_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fix_agent_not_calling_present_plan_tool_2025-08-09_090827_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fix_double_escape_for_planning_mode_approval_prompt_2025-08-09_032759_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fix_unhandled_KeyboardInterrupt_exception_in_event_loop_2025-08-09_033843_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fix_wizard_UI_-_branch_safety_interference_2025-08-20_222738_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Fixed_Thinking_dots_animation_2025-08-11_121009_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Force_agent_to_actually_call_present_plan_tool_2025-08-09_091334_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_GitHub_Directory_Review_2025-08-11_122451_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Implementing_ESC_key_double-press_for_REPL_abort_2025-08-06_124754_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_JSON_Recovery_Implementation_2025-08-12_130251_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Makefile_to_Hatch_Migration_2025-08-07_192356_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Performance_Optimization_-_Agent_Initialization_2025-08-13_160447_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Phase_3_-_Glob_Tool_Optimization_2025-08-13_142601_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Replace_entire_system_prompt_with_tool-only_instructions_2025-08-09_112839_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_TunaCode_Search_Enhancement_Implementation_2025-08-13_140905_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Update_Documentation_for_JSON_Recovery_System_2025-08-12_131127_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_Update_documentation_for_always-on_display_UX_improvements_2025-08-12_154818_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/default_slash_command_system_implementation_2025-08-14_034024_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/archived/phase5-recovery_Phase_5_Recovery_Analysis_2025-08-13_145339_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/locks/code-synthesis-analyzer.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/locks/default.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/locks/esc-investigation.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/locks/phase5-recovery.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/locks/tech-docs-maintainer.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/code-synthesis-analyzer_ESC_Double-Press_REPL_Abort_Analysis_2025-08-06_134859_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Add_Prompt_Injection_to_Remaining_Tools_-_Continuation_2025-08-13_152542_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Add_Prompt_Injection_to_Remaining_Tools_2025-08-13_152352_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_CLI_Agent_JSON_Recovery_Investigation_2025-08-12_124206_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_CLI_Agent_JSON_Recovery_Investigation_2025-08-12_124727_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Completely_remove_TUNACODE_TASK_COMPLETE_from_plan_mode_2025-08-09_091836_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Debug_ESC_key_still_not_working_in_approval_prompt_2025-08-09_033534_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Debug_persistent_KeyboardInterrupt_in_event_loop_2025-08-09_034136_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Debug_present_plan_tool_registration_and_model_capability_2025-08-09_092923_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Debug_stuck_double_escape_in_plan_approval_2025-08-09_033214_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fix_Application.exit()_failed_error_in_ESC_keybinding_2025-08-09_075607_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fix_ESC_double-tap_and_plan_display_issues_2025-08-09_090055_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fix_ESC_exceptions_and_missing_present_plan_tool_2025-08-09_081700_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fix_agent_not_calling_present_plan_tool_2025-08-09_090827_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fix_double_escape_for_planning_mode_approval_prompt_2025-08-09_032759_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fix_unhandled_KeyboardInterrupt_exception_in_event_loop_2025-08-09_033843_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fix_wizard_UI_-_branch_safety_interference_2025-08-20_222738_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Fixed_Thinking_dots_animation_2025-08-11_121009_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Force_agent_to_actually_call_present_plan_tool_2025-08-09_091334_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_GitHub_Directory_Review_2025-08-11_122451_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Implementing_ESC_key_double-press_for_REPL_abort_2025-08-06_124754_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_JSON_Recovery_Implementation_2025-08-12_130251_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Makefile_to_Hatch_Migration_2025-08-07_192356_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Performance_Optimization_-_Agent_Initialization_2025-08-13_160447_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Phase_3_-_Glob_Tool_Optimization_2025-08-13_142601_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Replace_entire_system_prompt_with_tool-only_instructions_2025-08-09_112839_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_TunaCode_Search_Enhancement_Implementation_2025-08-13_140905_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Update_Documentation_for_JSON_Recovery_System_2025-08-12_131127_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/default_Update_documentation_for_always-on_display_UX_improvements_2025-08-12_154818_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/scratchpad/shared/done_tasks/phase5-recovery_Phase_5_Recovery_Analysis_2025-08-13_145339_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/tech-docs-maintainer.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.claude/test_suite_issues_resolved.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.env.example +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.github/pull_request_template.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.github/scripts/check_file_size.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.github/workflows/lint.yml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.gitignore +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.pre-commit-config.yaml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/CLAUDE.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/config.json +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/docs/prd.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/state.json +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/tasks/task_001.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/tasks/task_002.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/tasks/task_003.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/tasks/task_004.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/tasks/task_005.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/tasks/task_006.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/tasks/tasks.json +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/.taskmaster/templates/example_prd.txt +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/CLAUDE.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/LICENSE +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/MANIFEST.in +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/README.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/TUNACODE.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/assets/tunacode_example.png +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/README.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/agent/TOOLS_WORKFLOW.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/agent/agent-inspo.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/agent/how-tunacode-agent-works.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/agent/main-agent-architecture.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/agent/swepmini-example.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/configuration/config-file-example.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/configuration/logging-configuration.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/development/codebase-hygiene.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/development/command-system-architecture.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/development/creating-custom-commands.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/development/hatch-build-system.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/development/performance-optimizations.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/development/prompt-principles.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/ui/ui-architecture.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/user/commands.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/user/getting-started.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/documentation/user/tools.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/example.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/activeContext.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/locks/claude.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/locks/default.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/locks/main.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/locks/task-15.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/locks/task17.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/locks/tunacode.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/locks/workflow.lock +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/memory-bank.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/productContext.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/progress.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/projectbrief.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/claude_Task_18:_Create_comprehensive_test_suite_for_multi-turn_retry_bug_fix_2025-07-29_153844_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Task_11:_Create_template_directory_structure_for_TunaCode_2025-08-02_132101_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Task_11:_Update_setup_dev_env.sh_script_-_COMPLETED_2025-07-29_111547_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Task_12:_Create_Template_dataclass_and_TemplateLoader_class_2025-08-02_132215_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Task_12:_pyproject.toml_updates_2025-07-29_112303_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Task_13:_Add_active_template_property_to_ToolHandler_2025-08-02_132326_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Task_14:_Create_TemplateCommand_class_with_subcommands_2025-08-02_132621_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Task_15:_Create_example_JSON_templates_2025-08-02_132813_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/default_Tasks_11-13:_Setup_robustness_and_documentation_2025-07-29_113044_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/main_Task_16:_Error_synthesis_system_implementation_complete_2025-07-29_150745_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/task-15_Task_15:_Implement_retry_limit_mechanism_2025-07-29_145737_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/task17_Task_17:_Fix_message_history_cleanup_in_patch_tool_messages()_2025-07-29_152006_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/tunacode_Task_14_Completed:_Defensive_Type_Checking_in__attempt_tool_recovery()_2025-07-29_144542_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/shared/done_tasks/workflow_Task_6:_Implement_Multi-Turn_Recursive_Loop_for_Complex_Task_Decomposition_2025-07-23_213518_scratchpad.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/systemPatterns.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/memory-bank/techContext.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/pytest.ini +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/check-file-length.sh +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/download_ripgrep.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/install_linux.sh +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/playwright_cache.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/publish_to_pip.sh +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/setup_dev_env.sh +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/startup_timer.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/uninstall.sh +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/utils/vulture_whitelist.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/scripts/verify_dev_env.sh +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/setup.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/README.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/base.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/command_reload.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/conversation.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/debug.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/development.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/model.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/plan.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/quickstart.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/system.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/template.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/implementations/todo.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/registry.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/slash/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/slash/command.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/slash/loader.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/slash/processor.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/slash/types.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/slash/validator.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/commands/template_shortcut.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/main.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/repl.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/repl_components/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/repl_components/command_parser.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/repl_components/error_recovery.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/repl_components/output_display.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/cli/repl_components/tool_executor.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/configuration/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/configuration/defaults.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/configuration/models.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/configuration/settings.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/context.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/agent_config.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/agent_helpers.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/json_tool_parser.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/message_handler.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/node_processor.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/response_state.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/result_wrapper.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/task_completion.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/tool_buffer.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/tool_executor.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/agent_components/truncation_checker.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/main.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/agents/utils.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/background/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/background/manager.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/code_index.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/llm/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/logging/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/logging/config.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/logging/formatters.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/logging/handlers.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/logging/logger.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/agent_setup.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/base.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/coordinator.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/environment_setup.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/git_safety_setup.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/setup/template_setup.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/state.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/token_usage/api_response_parser.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/token_usage/cost_calculator.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/token_usage/usage_tracker.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/core/tool_handler.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/exceptions.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/prompts/system.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/prompts/system.md.bak +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/py.typed +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/services/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/services/mcp.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/setup.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/templates/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/templates/loader.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/base.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/bash.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/exit_plan_mode.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/glob.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/grep.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/grep_components/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/grep_components/file_filter.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/grep_components/pattern_matcher.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/grep_components/result_formatter.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/grep_components/search_result.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/list_dir.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/present_plan.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/bash_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/exit_plan_mode_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/glob_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/grep_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/list_dir_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/present_plan_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/read_file_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/run_command_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/todo_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/update_file_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/prompts/write_file_prompt.xml +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/read_file.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/run_command.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/schema_assembler.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/todo.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/update_file.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/write_file.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tools/xml_helper.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tutorial/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tutorial/content.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tutorial/manager.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/tutorial/steps.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/types.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/completers.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/console.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/constants.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/decorators.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/input.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/keybindings.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/lexers.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/logging_compat.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/output.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/panels.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/prompt_manager.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/tool_descriptions.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/tool_ui.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/utils.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/ui/validators.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/bm25.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/diff_utils.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/file_utils.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/import_cache.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/json_utils.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/message_utils.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/retry.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/ripgrep.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/security.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/system.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/text_utils.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/token_counter.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/src/tunacode/utils/user_configuration.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/CHARACTERIZATION_README.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/CHARACTERIZATION_TEST_PLAN.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/CHARACTERIZATION_TEST_PLAN_AGENT_MAIN.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/CHARACTERIZATION_TEST_PLAN_COMMANDS.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/FILE_OPERATIONS_TEST_GUIDE.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/agent/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/agent/conftest.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/agent/test_agent_creation.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/agent/test_json_tool_parsing.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/agent/test_process_node.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/agent/test_process_request.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/agent/test_tool_message_patching.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/background/test_background_edge_cases.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/background/test_cleanup.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/background/test_task_cancellation.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/background/test_task_creation.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/background/test_task_execution.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/code_index/test_cache_management.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/code_index/test_file_scanning.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/code_index/test_index_building.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/code_index/test_search_operations.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/code_index/test_symbol_extraction.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/commands/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/commands/test_init_command.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/conftest.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/context/README.md +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/context/__init__.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/context/test_context_acceptance.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/context/test_context_integration.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/context/test_context_loading.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/context/test_tunacode_logging.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_command_parsing.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_error_handling.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_escape_key_behavior.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_input_handling.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_keyboard_interrupts.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_multiline_input.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_output_display_logic.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_repl_initialization.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/repl/test_session_flow.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/services/test_error_recovery.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/services/test_llm_routing.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/services/test_mcp_integration.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/services/test_service_lifecycle.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/state/test_agent_tracking.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/state/test_message_history.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/state/test_permissions.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/state/test_session_management.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/state/test_state_initialization.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/state/test_user_config.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/test_characterization_commands.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/test_characterization_grep.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/test_characterization_main.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/test_characterization_repl.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/ui/test_async_ui.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/ui/test_console_output.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/ui/test_diff_display.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/ui/test_prompt_rendering.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/ui/test_spinner_messages.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/ui/test_tool_confirmations.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/utils/test_expand_file_refs.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/utils/test_file_operations.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/utils/test_git_commands.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/utils/test_token_counting.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/characterization/utils/test_utils_edge_cases.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/conftest.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_agent_output_formatting.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_command_parser_retry.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_completion_detection.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_glob_phase3.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_json_concatenation_recovery.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_json_retry.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_logging_config.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_onboarding_features.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_phase2_type_hints.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_plan_mode.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_prompt_changes_validation.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_prompt_injection.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_security.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_slash_commands_comprehensive.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_slash_commands_functional.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_slash_commands_integration.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_slash_commands_isolated.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_spinner_updates.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/test_tool_batching_retry.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tests/unit/test_constants_enums.py +0 -0
- {tunacode_cli-0.0.68 → tunacode_cli-0.0.70}/tools/emoji_cleaner.py +0 -0
|
@@ -27,6 +27,8 @@ Developer and agent-specific documentation for tunacode.
|
|
|
27
27
|
│ ├── task4_ui_formatting_fix.md
|
|
28
28
|
│ └── v0.0.53_to_v0.0.54.diff
|
|
29
29
|
├── development/ # Development setup and guides
|
|
30
|
+
│ ├── model-updates-2025.md # Latest model versions
|
|
31
|
+
│ ├── slash-commands.md # Slash command system overview
|
|
30
32
|
│ └── uv-hatch-setup.md # UV + Hatch configuration guide
|
|
31
33
|
├── metadata/ # Project metadata
|
|
32
34
|
│ ├── components.yml
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Model Updates (2025)
|
|
2
|
+
|
|
3
|
+
## Latest Model Versions
|
|
4
|
+
Updated in `src/tunacode/core/setup/config_setup.py`:
|
|
5
|
+
|
|
6
|
+
### Claude Models
|
|
7
|
+
- **Opus**: 4.1 (from 4.0)
|
|
8
|
+
- **Sonnet**: 3.5-v2
|
|
9
|
+
|
|
10
|
+
### OpenRouter
|
|
11
|
+
- **GPT**: 4.1 (from 4o)
|
|
12
|
+
|
|
13
|
+
### Google Gemini (New)
|
|
14
|
+
- **Gemini 2.5 Pro**: gemini/gemini-2.0-pro-latest
|
|
15
|
+
- **Gemini 2.5 Flash**: gemini/gemini-2.0-flash-latest
|
|
16
|
+
|
|
17
|
+
## Configuration
|
|
18
|
+
Models configured during wizard setup with API key validation.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Onboarding Improvements (PR #88)
|
|
2
|
+
|
|
3
|
+
## Key Enhancements
|
|
4
|
+
|
|
5
|
+
### Wizard Setup
|
|
6
|
+
- Fixed branch safety interference during setup
|
|
7
|
+
- GitSafetySetup now skips prompts in wizard mode
|
|
8
|
+
- Better error messaging and retry guidance
|
|
9
|
+
- Improved API key validation flow
|
|
10
|
+
|
|
11
|
+
### First-Time User Experience
|
|
12
|
+
- Clear post-install instructions via UV
|
|
13
|
+
- References to `tunacode --setup` wizard
|
|
14
|
+
- Default OpenRouter configuration
|
|
15
|
+
- Streamlined initial setup flow
|
|
16
|
+
|
|
17
|
+
### Technical Details
|
|
18
|
+
- `wizard_mode` parameter passed to setup steps
|
|
19
|
+
- Coordinator handles mode propagation
|
|
20
|
+
- Non-intrusive safety checks during wizard
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Slash Command System
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Extensible command infrastructure in `src/tunacode/cli/commands/slash/` supporting auto-discovery and hot-reloading.
|
|
5
|
+
|
|
6
|
+
## Architecture
|
|
7
|
+
- **command.py**: Base command interface and metadata
|
|
8
|
+
- **loader.py**: Dynamic command discovery from `.claude/commands/`
|
|
9
|
+
- **processor.py**: Command execution and routing
|
|
10
|
+
- **validator.py**: Input validation and parsing
|
|
11
|
+
|
|
12
|
+
## Command Format
|
|
13
|
+
Commands stored as markdown files in `.claude/commands/`:
|
|
14
|
+
```yaml
|
|
15
|
+
command: /name
|
|
16
|
+
parameters:
|
|
17
|
+
- name: param1
|
|
18
|
+
required: true
|
|
19
|
+
---
|
|
20
|
+
Command logic here
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Built-in Commands
|
|
24
|
+
- `/deploy` - Deployment workflows
|
|
25
|
+
- `/github-issue` - GitHub issue management
|
|
26
|
+
- `/smells` - Code smell detection
|
|
27
|
+
- `/work` - Task management
|
|
28
|
+
- `/workflow` - Workflow automation
|
|
29
|
+
|
|
30
|
+
## Key Features
|
|
31
|
+
- Hot-reload on file changes
|
|
32
|
+
- Parameter validation
|
|
33
|
+
- Error handling with suggestions
|
|
34
|
+
- Extensible via markdown files
|
|
@@ -22,12 +22,28 @@ components:
|
|
|
22
22
|
- repl.py
|
|
23
23
|
- commands.py
|
|
24
24
|
- main.py
|
|
25
|
+
- commands/slash/processor.py
|
|
26
|
+
- commands/slash/loader.py
|
|
25
27
|
dependencies:
|
|
26
28
|
- prompt_toolkit
|
|
27
29
|
- rich
|
|
28
30
|
risk_level: medium
|
|
29
31
|
churn_score: 70
|
|
30
32
|
|
|
33
|
+
slash_commands:
|
|
34
|
+
path: src/tunacode/cli/commands/slash/
|
|
35
|
+
description: Extensible slash command system with hot-reloading
|
|
36
|
+
key_files:
|
|
37
|
+
- command.py
|
|
38
|
+
- loader.py
|
|
39
|
+
- processor.py
|
|
40
|
+
- validator.py
|
|
41
|
+
dependencies:
|
|
42
|
+
- pydantic
|
|
43
|
+
- prompt_toolkit
|
|
44
|
+
risk_level: low
|
|
45
|
+
churn_score: 15
|
|
46
|
+
|
|
31
47
|
tools:
|
|
32
48
|
path: src/tunacode/tools/
|
|
33
49
|
description: Agent tools (file ops, grep, bash)
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
{
|
|
2
|
+
"permissions": {
|
|
3
|
+
"allow": [
|
|
4
|
+
"Bash(grep:*)",
|
|
5
|
+
"Bash(python test:*)",
|
|
6
|
+
"Bash(python3:*)",
|
|
7
|
+
"Bash(mv:*)",
|
|
8
|
+
"Bash(source:*)",
|
|
9
|
+
"Bash(pip install:*)",
|
|
10
|
+
"Bash(tunacode:*)",
|
|
11
|
+
"Bash(make lint)",
|
|
12
|
+
"Bash(flake8)",
|
|
13
|
+
"Bash(flake8:*)",
|
|
14
|
+
"Bash(git add:*)",
|
|
15
|
+
"Bash(git commit:*)",
|
|
16
|
+
"Bash(cat:*)",
|
|
17
|
+
"Bash(gh label create:*)",
|
|
18
|
+
"Bash(find:*)",
|
|
19
|
+
"Bash(rg:*)",
|
|
20
|
+
"Bash(gh issue create:*)",
|
|
21
|
+
"Bash(python -m pytest tests/test_escape_mechanism.py -v)",
|
|
22
|
+
"Bash(python -m pytest tests/test_escape_mechanism.py::test_state_manager_has_interrupt_flag -v)",
|
|
23
|
+
"Bash(true)",
|
|
24
|
+
"Bash(ls:*)",
|
|
25
|
+
"Bash(python:*)",
|
|
26
|
+
"Bash(gh api:*)",
|
|
27
|
+
"Bash(bash:*)",
|
|
28
|
+
"Bash(git reset:*)",
|
|
29
|
+
"Bash(./scripts/publish_to_pip.sh:*)",
|
|
30
|
+
"Bash(gh pr view:*)",
|
|
31
|
+
"Bash(gh pr checkout:*)",
|
|
32
|
+
"Bash(pytest:*)",
|
|
33
|
+
"Bash(rm:*)",
|
|
34
|
+
"Bash(make test:*)",
|
|
35
|
+
"Bash(mkdir:*)",
|
|
36
|
+
"Bash(./.test_venv/bin/pip install:*)",
|
|
37
|
+
"Bash(time:*)",
|
|
38
|
+
"Bash(git checkout:*)",
|
|
39
|
+
"Bash(git for-each-ref:*)",
|
|
40
|
+
"Bash(git pull:*)",
|
|
41
|
+
"Bash(git rebase:*)",
|
|
42
|
+
"Bash(venv/bin/pytest tests/test_agent_initialization.py -v)",
|
|
43
|
+
"Bash(venv/bin/pip install -e \".[dev]\")",
|
|
44
|
+
"Bash(venv/bin/flake8:*)",
|
|
45
|
+
"Bash(sed:*)",
|
|
46
|
+
"Bash(git tag:*)",
|
|
47
|
+
"Bash(git push:*)",
|
|
48
|
+
"Bash(venv/bin/python:*)",
|
|
49
|
+
"Bash(git fetch:*)",
|
|
50
|
+
"Bash(git stash:*)",
|
|
51
|
+
"WebFetch(domain:github.com)",
|
|
52
|
+
"Bash(gh issue view:*)",
|
|
53
|
+
"Bash(PYTHONPATH=/home/tuna/tunacode/src python3 test_request_analyzer.py)",
|
|
54
|
+
"Bash(chmod:*)",
|
|
55
|
+
"Bash(./test_architect_simple.sh:*)",
|
|
56
|
+
"Bash(kill:*)",
|
|
57
|
+
"Bash(awk:*)",
|
|
58
|
+
"Bash(./agent-tools/wakeup.sh:*)",
|
|
59
|
+
"Bash(./agent-tools/scratchpad.sh:*)",
|
|
60
|
+
"Bash(./agent-tools/check_workflow.sh:*)",
|
|
61
|
+
"Bash(black:*)",
|
|
62
|
+
"Bash(isort:*)",
|
|
63
|
+
"WebFetch(domain:api.pepy.tech)",
|
|
64
|
+
"WebFetch(domain:pypi.org)",
|
|
65
|
+
"Bash(./llm-tooling/wakeup.sh:*)",
|
|
66
|
+
"Bash(tree:*)",
|
|
67
|
+
"Bash(./context.sh)",
|
|
68
|
+
"Bash(./context.sh:*)",
|
|
69
|
+
"Bash(./scratchpad-multi.sh:*)",
|
|
70
|
+
"Bash(gh issue comment:*)",
|
|
71
|
+
"Bash(gh pr list:*)",
|
|
72
|
+
"Bash(gh auth:*)",
|
|
73
|
+
"Bash(pre-commit:*)",
|
|
74
|
+
"Bash(ruff format:*)",
|
|
75
|
+
"Bash(ruff check:*)",
|
|
76
|
+
"mcp__task-master__get_task",
|
|
77
|
+
"Bash(./scratchpad.sh:*)",
|
|
78
|
+
"mcp__task-master__get_tasks",
|
|
79
|
+
"mcp__task-master__set_task_status",
|
|
80
|
+
"mcp__task-master__update_task",
|
|
81
|
+
"Bash(git remote set-url:*)",
|
|
82
|
+
"mcp__task-master__next_task",
|
|
83
|
+
"Bash(gh issue list:*)",
|
|
84
|
+
"Bash(gh issue close:*)",
|
|
85
|
+
"mcp__task-master__add_task",
|
|
86
|
+
"mcp__task-master__expand_task",
|
|
87
|
+
"mcp__task-master__update_subtask",
|
|
88
|
+
"Bash(./llm-agent-tools/scratchpad-multi.sh:*)",
|
|
89
|
+
"Bash(test:*)",
|
|
90
|
+
"Bash(gh pr create:*)",
|
|
91
|
+
"Bash(gh pr merge:*)",
|
|
92
|
+
"WebFetch(domain:docs.anthropic.com)",
|
|
93
|
+
"Bash(gh:*)",
|
|
94
|
+
"Bash(radon cc:*)",
|
|
95
|
+
"Bash(pip uninstall:*)",
|
|
96
|
+
"Bash(git log:*)",
|
|
97
|
+
"Bash(venv/bin/pytest -q tests/characterization tests/test_security.py tests/test_agent_output_formatting.py tests/test_prompt_changes_validation.py)",
|
|
98
|
+
"Bash(hatch run test:*)",
|
|
99
|
+
"Bash(git merge:*)",
|
|
100
|
+
"Bash(git branch:*)",
|
|
101
|
+
"Bash(hatch run lint:*)",
|
|
102
|
+
"Bash(venv/bin/ruff check:*)",
|
|
103
|
+
"Bash(git worktree:*)",
|
|
104
|
+
"Bash(hatch env:*)",
|
|
105
|
+
"Bash(venv/bin/hatch run test)",
|
|
106
|
+
"Bash(uv sync:*)",
|
|
107
|
+
"Bash(uv tool install:*)",
|
|
108
|
+
"Bash(uv tool:*)",
|
|
109
|
+
"Bash(command -v:*)",
|
|
110
|
+
"Bash(/dev/null)",
|
|
111
|
+
"Bash(shellcheck:*)",
|
|
112
|
+
"Bash(hatch run python:*)",
|
|
113
|
+
"Bash(hatch run tunacode:*)",
|
|
114
|
+
"Read(//home/tuna/.claude/**)",
|
|
115
|
+
"Read(//home/tuna/.claude/**)",
|
|
116
|
+
"Read(//home/tuna/.config/**)"
|
|
117
|
+
],
|
|
118
|
+
"deny": [],
|
|
119
|
+
"defaultMode": "acceptEdits"
|
|
120
|
+
},
|
|
121
|
+
"enableAllProjectMcpServers": false
|
|
122
|
+
}
|
|
@@ -5,6 +5,32 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.0.69] - 2025-08-21
|
|
9
|
+
|
|
10
|
+
### Summary
|
|
11
|
+
This release includes comprehensive command system documentation, updated model configurations, and builds upon recent community contributions including the slash command system by @Lftobs (#85) and onboarding improvements by @ryumacodes (#88).
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
- Updated OpenRouter GPT model reference from `gpt-4o` to `gpt-4.1` in setup configuration
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
- Additional development documentation in `.claude/` directory
|
|
18
|
+
- Model updates documentation
|
|
19
|
+
- Slash commands documentation
|
|
20
|
+
- Onboarding improvements documentation
|
|
21
|
+
|
|
22
|
+
## [0.0.68] - 2025-08-21
|
|
23
|
+
|
|
24
|
+
### Added
|
|
25
|
+
- **Comprehensive Command System Documentation**
|
|
26
|
+
- Created `command-system-architecture.md` with technical overview of command infrastructure
|
|
27
|
+
- Created `creating-custom-commands.md` with step-by-step guide for developers
|
|
28
|
+
- Updated user documentation with slash command information
|
|
29
|
+
- Added `/command-reload` command documentation
|
|
30
|
+
|
|
31
|
+
### Fixed
|
|
32
|
+
- Removed broken link to non-existent `templates.md` file in documentation
|
|
33
|
+
|
|
8
34
|
## [Unreleased] - 2025-08-20
|
|
9
35
|
|
|
10
36
|
### Added
|
|
@@ -5,7 +5,7 @@ build-backend = "hatchling.build"
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tunacode-cli"
|
|
7
7
|
|
|
8
|
-
version = "0.0.
|
|
8
|
+
version = "0.0.70"
|
|
9
9
|
description = "Your agentic CLI developer."
|
|
10
10
|
keywords = ["cli", "agent", "development", "automation"]
|
|
11
11
|
readme = "README.md"
|
|
@@ -170,7 +170,7 @@ typecheck = "mypy src/"
|
|
|
170
170
|
security = "bandit -r src/ -ll"
|
|
171
171
|
|
|
172
172
|
# Version management
|
|
173
|
-
version = "0.0.
|
|
173
|
+
version = "0.0.70"
|
|
174
174
|
|
|
175
175
|
# Release workflow
|
|
176
176
|
release = [
|
|
@@ -44,6 +44,10 @@ class ConfigSetup(BaseSetup):
|
|
|
44
44
|
self.state_manager.session.device_id = system.get_device_id()
|
|
45
45
|
loaded_config = user_configuration.load_config()
|
|
46
46
|
|
|
47
|
+
# Set the loaded config to session BEFORE initializing first-time user
|
|
48
|
+
if loaded_config:
|
|
49
|
+
self.state_manager.session.user_config = loaded_config
|
|
50
|
+
|
|
47
51
|
# Initialize first-time user settings if needed
|
|
48
52
|
user_configuration.initialize_first_time_user(self.state_manager)
|
|
49
53
|
|
|
@@ -497,7 +501,7 @@ class ConfigSetup(BaseSetup):
|
|
|
497
501
|
"openrouter:anthropic/claude-sonnet-4",
|
|
498
502
|
"Claude Sonnet 4 via OpenRouter (recommended)",
|
|
499
503
|
),
|
|
500
|
-
("openrouter:openai/gpt-
|
|
504
|
+
("openrouter:openai/gpt-4.1", "GPT-4.1 via OpenRouter"),
|
|
501
505
|
("openrouter:google/gemini-2.5-flash", "Google Gemini 2.5 Flash latest"),
|
|
502
506
|
],
|
|
503
507
|
"Google": [
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"permissions": {
|
|
3
|
-
"allow": [
|
|
4
|
-
"Bash(git add:*)",
|
|
5
|
-
"Bash(git commit:*)",
|
|
6
|
-
"Bash(find:*)",
|
|
7
|
-
"Bash(grep:*)",
|
|
8
|
-
"Bash(cat:*)",
|
|
9
|
-
"Bash(source:*)",
|
|
10
|
-
"Bash(pip show:*)",
|
|
11
|
-
"Bash(python:*)",
|
|
12
|
-
"Bash(pip install:*)",
|
|
13
|
-
"Bash(tunacode:*)",
|
|
14
|
-
"Bash(rg:*)",
|
|
15
|
-
"Bash(rm:*)",
|
|
16
|
-
"Bash(git fetch:*)",
|
|
17
|
-
"Bash(pipx list:*)",
|
|
18
|
-
"Bash(pipx uninstall:*)",
|
|
19
|
-
"Bash(ls:*)",
|
|
20
|
-
"Bash(make:*)",
|
|
21
|
-
"Bash(gh issue close:*)",
|
|
22
|
-
"Bash(true)",
|
|
23
|
-
"Bash(gh issue create:*)",
|
|
24
|
-
"Bash(venv/bin/python:*)",
|
|
25
|
-
"Bash(gh pr view:*)",
|
|
26
|
-
"Bash(git merge:*)",
|
|
27
|
-
"WebFetch(domain:github.com)",
|
|
28
|
-
"WebFetch(domain:ai.pydantic.dev)",
|
|
29
|
-
"WebFetch(domain:til.simonwillison.net)",
|
|
30
|
-
"Bash(./scripts/publish_to_pip.sh:*)",
|
|
31
|
-
"Bash(pytest:*)",
|
|
32
|
-
"Bash(git push:*)",
|
|
33
|
-
"Bash(git checkout:*)",
|
|
34
|
-
"Bash(git tag:*)",
|
|
35
|
-
"Bash(git pull:*)",
|
|
36
|
-
"Bash(git rebase:*)",
|
|
37
|
-
"Bash(bash:*)",
|
|
38
|
-
"Bash(chmod:*)",
|
|
39
|
-
"Bash(gh pr list:*)",
|
|
40
|
-
"Bash(gh api:*)",
|
|
41
|
-
"Bash(gh issue:*)",
|
|
42
|
-
"Bash(/dev/null)",
|
|
43
|
-
"Bash(PYTHONPATH=/root/tunacode/src python -c \"import sys; print(sys.path)\")",
|
|
44
|
-
"Bash(PYTHONPATH=/root/tunacode/src python -m pytest tests/test_list_dir.py::test_list_empty_directory -v)",
|
|
45
|
-
"Bash(PYTHONPATH=/root/tunacode/src python -m pytest tests/characterization/repl/test_command_parsing.py -v)",
|
|
46
|
-
"Bash(./agent-tools/scratchpad.sh:*)",
|
|
47
|
-
"Bash(./agent-tools/wakeup.sh:*)",
|
|
48
|
-
"Bash(awk:*)",
|
|
49
|
-
"Bash(sed:*)",
|
|
50
|
-
"Bash(./agent-tools/check_workflow.sh:*)",
|
|
51
|
-
"Bash(venv/bin/pytest tests/test_parallel_tool_execution.py -xvs)",
|
|
52
|
-
"Bash(venv/bin/pytest tests/test_parallel_read_only_tools.py -xvs)",
|
|
53
|
-
"Bash(venv/bin/pytest tests/test_parallel_read_only_tools.py::test_read_only_tools_execute_in_parallel -xvs)",
|
|
54
|
-
"Bash(black:*)",
|
|
55
|
-
"Bash(./wakeup.sh:*)",
|
|
56
|
-
"Bash(./scratchpad.sh:*)",
|
|
57
|
-
"Bash(mkdir:*)",
|
|
58
|
-
"Bash(./llm-agent-tools/context.sh:*)",
|
|
59
|
-
"Bash(./llm-agent-tools/scratchpad-multi.sh:*)",
|
|
60
|
-
"Bash(repolinter lint:*)",
|
|
61
|
-
"Bash(./llm-agent-tools/knowledge.sh:*)",
|
|
62
|
-
"Bash(./llm-agent-tools/codemap.sh:*)",
|
|
63
|
-
"Bash(./llm-agent-tools/researcher.sh:*)",
|
|
64
|
-
"Bash(flake8:*)",
|
|
65
|
-
"Bash(isort:*)",
|
|
66
|
-
"Bash(gh pr checkout:*)",
|
|
67
|
-
"Bash(gh pr diff:*)",
|
|
68
|
-
"Bash(gh pr merge:*)",
|
|
69
|
-
"Bash(git branch:*)",
|
|
70
|
-
"Bash(gh pr close:*)",
|
|
71
|
-
"Bash(git remote:*)",
|
|
72
|
-
"Bash(venv/bin/black:*)",
|
|
73
|
-
"Bash(venv/bin/isort:*)",
|
|
74
|
-
"Bash(git restore:*)",
|
|
75
|
-
"Bash(ruff check:*)",
|
|
76
|
-
"Bash(./scratchpad-multi.sh:*)",
|
|
77
|
-
"Bash(ruff format:*)",
|
|
78
|
-
"Bash(venv/bin/ruff check:*)",
|
|
79
|
-
"Bash(./scripts/fix_simple_errors.sh:*)",
|
|
80
|
-
"Bash(venv/bin/ruff:*)",
|
|
81
|
-
"Bash(venv/bin/pytest --version)",
|
|
82
|
-
"Bash(git reset:*)",
|
|
83
|
-
"Bash(git gc:*)",
|
|
84
|
-
"Bash(git clean:*)",
|
|
85
|
-
"Bash(./codemap.sh)",
|
|
86
|
-
"Bash(./codemap.sh:*)",
|
|
87
|
-
"Bash(../llm-agent-tools/codemap.sh:*)",
|
|
88
|
-
"Bash(gh pr create:*)",
|
|
89
|
-
"Bash(cp:*)",
|
|
90
|
-
"Bash(gh pr comment:*)",
|
|
91
|
-
"Bash(pip3 list:*)",
|
|
92
|
-
"Bash(gh pr checks:*)",
|
|
93
|
-
"Bash(git cherry-pick:*)",
|
|
94
|
-
"Bash(gh pr push:*)",
|
|
95
|
-
"Bash(mv:*)",
|
|
96
|
-
"Bash(./run_recursive_branch.sh:*)",
|
|
97
|
-
"mcp__task-master__add_task",
|
|
98
|
-
"mcp__task-master__set_task_status",
|
|
99
|
-
"mcp__task-master__update_task",
|
|
100
|
-
"mcp__task-master__get_task",
|
|
101
|
-
"Bash(pre-commit:*)",
|
|
102
|
-
"Bash(pre-commit run:*)",
|
|
103
|
-
"Bash(vulture:*)",
|
|
104
|
-
"Bash(git stash:*)",
|
|
105
|
-
"Bash(venv/bin/unimport:*)",
|
|
106
|
-
"Bash(time venv/bin/unimport:*)",
|
|
107
|
-
"Bash(timeout:*)",
|
|
108
|
-
"Bash(/root/tunacode/llm-agent-tools/scratchpad-multi.sh:*)",
|
|
109
|
-
"Bash(PYTHONPATH=/root/tunacode/src venv/bin/python test_spinner_demo.py)",
|
|
110
|
-
"Bash(hatch run test:*)",
|
|
111
|
-
"Bash(/tmp/test_detection.sh:*)",
|
|
112
|
-
"Bash(/root/tunacode/scripts/uninstall.sh:*)",
|
|
113
|
-
"Bash(~/.local/bin/tunacode:*)",
|
|
114
|
-
"Bash(pip uninstall:*)",
|
|
115
|
-
"Bash(/root/.tunacode-venv/bin/pip list)",
|
|
116
|
-
"Bash(uv pip list:*)",
|
|
117
|
-
"Bash(uv pip install:*)",
|
|
118
|
-
"Bash(uv venv:*)",
|
|
119
|
-
"Bash(test-env/bin/tunacode:*)",
|
|
120
|
-
"Bash(hatch env remove:*)",
|
|
121
|
-
"Bash(hatch env:*)",
|
|
122
|
-
"Bash(hatch run pip:*)",
|
|
123
|
-
"Bash(./scripts/install_linux.sh:*)"
|
|
124
|
-
]
|
|
125
|
-
},
|
|
126
|
-
"enableAllProjectMcpServers": true,
|
|
127
|
-
"enabledMcpjsonServers": [
|
|
128
|
-
"task-master-ai"
|
|
129
|
-
]
|
|
130
|
-
}
|