TunaCode Source Code Structure Tree
===================================

Generated: 2026-03-29
Source: <repo_root>/src/tunacode
Output: <repo_root>/docs/codebase-map/structure/tree-structure.txt

src/tunacode/
├── configuration/
│   ├── __init__.py
│   ├── defaults.py
│   ├── ignore_patterns.py
│   ├── limits.py
│   ├── models.py
│   ├── models_registry.json
│   ├── paths.py
│   ├── pricing.py
│   ├── settings.py
│   └── user_config.py
├── core/
│   ├── agents/
│   │   ├── agent_components/
│   │   │   ├── __init__.py
│   │   │   ├── agent_config.py
│   │   │   ├── agent_helpers.py
│   │   │   └── agent_session_config.py
│   │   ├── resume/
│   │   │   ├── __init__.py
│   │   │   ├── sanitize.py
│   │   │   └── sanitize_debug.py
│   │   ├── __init__.py
│   │   ├── helpers.py
│   │   └── main.py
│   ├── compaction/
│   │   ├── __init__.py
│   │   ├── controller.py
│   │   ├── prompts.py
│   │   ├── summarizer.py
│   │   └── types.py
│   ├── debug/
│   │   ├── __init__.py
│   │   └── usage_trace.py
│   ├── logging/
│   │   ├── __init__.py
│   │   ├── handlers.py
│   │   ├── levels.py
│   │   ├── manager.py
│   │   └── records.py
│   ├── session/
│   │   ├── __init__.py
│   │   └── state.py
│   ├── types/
│   │   ├── __init__.py
│   │   ├── agent_state.py
│   │   ├── state.py
│   │   └── state_structures.py
│   ├── ui_api/
│   │   ├── __init__.py
│   │   ├── configuration.py
│   │   ├── constants.py
│   │   ├── file_filter.py
│   │   ├── formatting.py
│   │   ├── lsp_status.py
│   │   ├── messaging.py
│   │   ├── shared_types.py
│   │   ├── system_paths.py
│   │   └── user_configuration.py
│   └── __init__.py
├── infrastructure/
│   ├── cache/
│   │   ├── caches/
│   │   │   ├── __init__.py
│   │   │   ├── agents.py
│   │   │   ├── limits_settings.py
│   │   │   ├── models_registry.py
│   │   │   ├── skills.py
│   │   │   └── tunacode_context.py
│   │   ├── __init__.py
│   │   ├── manager.py
│   │   ├── metadata.py
│   │   └── strategies.py
│   ├── __init__.py
│   └── file_filter.py
├── prompts/
│   └── system_prompt.md
├── skills/
│   ├── __init__.py
│   ├── discovery.py
│   ├── loader.py
│   ├── models.py
│   ├── prompting.py
│   ├── registry.py
│   ├── search.py
│   └── selection.py
├── tools/
│   ├── cache_accessors/
│   │   ├── __init__.py
│   │   ├── ignore_manager_cache.py
│   │   └── ripgrep_cache.py
│   ├── grep_components/
│   ├── lsp/
│   │   ├── __init__.py
│   │   ├── client.py
│   │   ├── diagnostics.py
│   │   └── servers.py
│   ├── utils/
│   │   ├── __init__.py
│   │   ├── discover_pipeline.py
│   │   ├── discover_terms.py
│   │   ├── discover_types.py
│   │   ├── file_errors.py
│   │   ├── formatting.py
│   │   └── ripgrep.py
│   ├── __init__.py
│   ├── bash.py
│   ├── discover.py
│   ├── hashline.py
│   ├── hashline_edit.py
│   ├── ignore.py
│   ├── ignore_manager.py
│   ├── line_cache.py
│   ├── read_file.py
│   ├── web_fetch.py
│   └── write_file.py
├── types/
│   ├── __init__.py
│   ├── base.py
│   ├── callbacks.py
│   ├── canonical.py
│   ├── dataclasses.py
│   └── models_registry.py
├── ui/
│   ├── assets/
│   │   └── logo.ansi
│   ├── commands/
│   │   ├── __init__.py
│   │   ├── base.py
│   │   ├── cancel.py
│   │   ├── clear.py
│   │   ├── compact.py
│   │   ├── debug.py
│   │   ├── exit.py
│   │   ├── help.py
│   │   ├── model.py
│   │   ├── resume.py
│   │   ├── skills.py
│   │   ├── theme.py
│   │   ├── thoughts.py
│   │   └── update.py
│   ├── esc/
│   │   ├── __init__.py
│   │   ├── handler.py
│   │   └── types.py
│   ├── renderers/
│   │   ├── tools/
│   │   │   ├── __init__.py
│   │   │   ├── base.py
│   │   │   ├── bash.py
│   │   │   ├── diagnostics.py
│   │   │   ├── discover.py
│   │   │   ├── hashline_edit.py
│   │   │   ├── read_file.py
│   │   │   ├── syntax_utils.py
│   │   │   ├── web_fetch.py
│   │   │   └── write_file.py
│   │   ├── __init__.py
│   │   ├── agent_response.py
│   │   ├── errors.py
│   │   ├── panel_widths.py
│   │   ├── panels.py
│   │   ├── search.py
│   │   └── thinking.py
│   ├── screens/
│   │   ├── __init__.py
│   │   ├── api_key_entry.py
│   │   ├── model_picker.py
│   │   ├── session_picker.py
│   │   ├── setup.py
│   │   ├── theme_picker.py
│   │   └── update_confirm.py
│   ├── slopgotchi/
│   │   ├── __init__.py
│   │   └── panel.py
│   ├── styles/
│   │   ├── layout.tcss
│   │   ├── modals.tcss
│   │   ├── panels.tcss
│   │   └── widgets.tcss
│   ├── widgets/
│   │   ├── __init__.py
│   │   ├── chat.py
│   │   ├── command_autocomplete.py
│   │   ├── editor.py
│   │   ├── file_autocomplete.py
│   │   ├── messages.py
│   │   ├── resource_bar.py
│   │   └── skills_autocomplete.py
│   ├── __init__.py
│   ├── app.py
│   ├── clipboard.py
│   ├── command_registry.py
│   ├── context_panel.py
│   ├── lifecycle.py
│   ├── logo_assets.py
│   ├── main.py
│   ├── model_display.py
│   ├── repl_support.py
│   ├── request_bridge.py
│   ├── request_debug.py
│   ├── shell_runner.py
│   ├── streaming.py
│   ├── styles.py
│   ├── thinking_state.py
│   └── welcome.py
├── utils/
│   ├── messaging/
│   │   ├── __init__.py
│   │   ├── adapter.py
│   │   └── token_counter.py
│   ├── system/
│   │   ├── __init__.py
│   │   └── gitignore.py
│   └── __init__.py
├── __init__.py
├── constants.py
├── exceptions.py
└── py.typed
