teddy-cli 0.1.17.dev1408__tar.gz → 0.1.17.dev1410__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.
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/PKG-INFO +24 -24
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/README.md +23 -23
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/pyproject.toml +1 -1
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/__main__.py +3 -5
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/local_repo_tree_generator.py +7 -9
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/config_schema.py +4 -4
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/repo_tree_generator.py +1 -1
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/context_service.py +1 -1
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/registries/infrastructure.py +4 -4
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/config.yaml +11 -8
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/.gitignore +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/LICENSE +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/cli_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/cli_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/session_cli_handlers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_app.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_editor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_execution.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_logic.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_previews.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_widgets.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/console_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/console_interactor_ask_loop.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/console_interactor_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/console_tooling.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/filesystem_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/litellm_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/local_file_system_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/openrouter_hydrator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/shell_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/shell_command_builder.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/suppressed_logging.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/system_environment_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/system_environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/system_time_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/terminal_quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/web_scraper_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/web_searcher_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/outbound/yaml_config_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/container.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/action_ports.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/change_set.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/drift_report.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/exceptions.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/execution_report.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/orchestrator_ports.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/plan.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/planning_ports.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/project_context.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/report_assembly_data.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/session.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/shell_output.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/web_search_results.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/get_context_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/init.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/planning_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/run_plan_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/config_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/file_system_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/llm_client.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/session_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/shell_executor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/system_environment.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/time_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/user_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/web_scraper.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/outbound/web_searcher.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/action_changeset_builder.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/action_diff_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/action_dispatcher.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/action_executor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/action_factory.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/action_parser_complex.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/action_parser_strategies.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/execution_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/init_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/markdown_plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/parser_infrastructure.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/parser_metadata.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/parser_reporting.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/planning_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_lifecycle_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_planner.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_pruning_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_replanner.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/session_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/templates/execution_report.md.j2 +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/update_checker.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/edit.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/edit_matcher.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/edit_matcher_heuristics.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/execute.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/filesystem.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/validation_rules/message.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/diff.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/editor_names.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/interrupt_guard.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/interruptible_call.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/io.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/markdown.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/paths.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/serialization.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/session_notices.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/stdin_ownership.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/string.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/terminal.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/prompts.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/registries/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/registries/reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/registries/validators.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/MRP.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/init.context +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/prompts/architect.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/prompts/assistant.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/prompts/debugger.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/prompts/developer.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/prompts/pathfinder.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/config/prompts/prototyper.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/ARCHITECTURE.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/PROJECT.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/case-file.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/ci.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/component-design.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/makefile.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/milestone.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/pre-commit.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/specification-document.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/vertical-slice.md +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: teddy-cli
|
|
3
|
-
Version: 0.1.17.
|
|
3
|
+
Version: 0.1.17.dev1410
|
|
4
4
|
Summary: The local-first, test-driven agentic engineering harness. Because you should own the means of development.
|
|
5
5
|
Author: Raphael Atteritano
|
|
6
6
|
License: AGPL-3.0-only
|
|
@@ -159,7 +159,7 @@ TeDDy is built on the belief that you should own your software delivery lifecycl
|
|
|
159
159
|
|
|
160
160
|
- **High-Level Governance Rules (`PROJECT.md` & `ARCHITECTURE.md`):** The simplest way to guide agents. Define product roadmaps, engineering principles, system laws, and component boundaries in living Markdown documents that agents read on every turn.
|
|
161
161
|
- **Artifact Templates (`docs/templates/`):** Standardize the artifacts produced during development. Customize the Markdown templates for vertical slices, specifications, case files, and milestones to match your documentation standards.
|
|
162
|
-
- **Agent Prompts (`.teddy/prompts/`):** To change the process itself, customize the agent prompts. Each agent's workflow is broken down into structured phases and individual steps, defined entirely in Markdown. You can tweak instructions, add domain-specific quality gates, or introduce brand-new agent personas to match how your team builds software.
|
|
162
|
+
- **Agent Prompts (`.teddy/prompts/`):** To change the process itself, customize the agent prompts. Each agent's workflow is broken down into structured phases and individual steps, defined entirely in Markdown. You can tweak instructions, add domain-specific quality gates, or introduce brand-new agent personas to match how your team builds software. TeDDy assembles each system prompt from two layers: the agent-specific instructions come first and the shared response protocol instructions are appended automatically. The composed prompt is saved in the session folder, and `teddy get-prompt <agent>` prints the identical result, so you can read exactly what the model receives. A customized prompt that already carries its own `<response_format>` suppresses the shared block and is used as-is.
|
|
163
163
|
- **Command Automation (`Makefile`):** Instead of hardcoding shell commands inside agent prompts, common development and verification operations are routed through the Makefile. When you need to change a flag, runner, or environment setup, you change it once in the Makefile instead of updating instructions across multiple agent prompts.
|
|
164
164
|
- **Context Filtering (`.teddyignore`):** Control which files TeDDy scans during context generation and tree traversal. A `.teddyignore` file in the project root follows standard ignore syntax and takes precedence over `.gitignore`, allowing you to ignore extra paths or re-include git-ignored files using negation patterns.
|
|
165
165
|
|
|
@@ -270,17 +270,17 @@ teddy resume -m "your next instruction"
|
|
|
270
270
|
|
|
271
271
|
### Optional Flags
|
|
272
272
|
|
|
273
|
-
| Flag
|
|
274
|
-
|
|
|
275
|
-
| <nobr>`--agent`, `-a`</nobr>
|
|
276
|
-
| <nobr>`--context`, `-c`</nobr>
|
|
277
|
-
| <nobr>`--model`</nobr>
|
|
278
|
-
| <nobr>`--yolo`, `-y`</nobr>
|
|
279
|
-
| <nobr>`--no-yolo`, `-n`</nobr>
|
|
280
|
-
| <nobr>`--message`, `-m`</nobr>
|
|
281
|
-
| <nobr>`--pipeline`, `-p`</nobr> | Pipeline mode. Auto-approves actions, requires `-m`, exits immediately after the first message turn, and defaults to the `assistant` agent.
|
|
282
|
-
| <nobr>`--max-turns`</nobr>
|
|
283
|
-
| <nobr>`--max-cost`</nobr>
|
|
273
|
+
| Flag | Description |
|
|
274
|
+
| :------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
275
|
+
| <nobr>`--agent`, `-a`</nobr> | Select agent persona (`pathfinder`, `architect`, `developer`, `debugger`, `assistant`). Default: `pathfinder` (`assistant` in pipeline mode). |
|
|
276
|
+
| <nobr>`--context`, `-c`</nobr> | Supply additional context files or directories. Repeatable (`-c a.py -c b.md`) or comma-separated (`-c "a.py,b.md"`). |
|
|
277
|
+
| <nobr>`--model`</nobr> | Override the default configured model. |
|
|
278
|
+
| <nobr>`--yolo`, `-y`</nobr> | Auto-approve all actions. To make this default, set `yolo_default: true` in `.teddy/config.yaml`. |
|
|
279
|
+
| <nobr>`--no-yolo`, `-n`</nobr> | Force interactive mode for a single run. |
|
|
280
|
+
| <nobr>`--message`, `-m`</nobr> | Initial instruction to pass directly to the agent. |
|
|
281
|
+
| <nobr>`--pipeline`, `-p`</nobr> | Pipeline mode. Auto-approves actions, requires `-m`, exits immediately after the first message turn, and defaults to the `assistant` agent. |
|
|
282
|
+
| <nobr>`--max-turns`</nobr> | Maximum turns for a non-interactive run. Overrides `guardrails.max_turns` in `.teddy/config.yaml`. |
|
|
283
|
+
| <nobr>`--max-cost`</nobr> | Maximum session cost in dollars for a non-interactive run. Overrides `guardrails.max_session_cost` in `.teddy/config.yaml`. |
|
|
284
284
|
|
|
285
285
|
### Chat-Oriented Workflow (CHOP)
|
|
286
286
|
|
|
@@ -323,18 +323,18 @@ teddy context -c review.context
|
|
|
323
323
|
|
|
324
324
|
## Command Reference
|
|
325
325
|
|
|
326
|
-
| Command | Description
|
|
327
|
-
| :---------------------------- |
|
|
328
|
-
| `init` | Initialize `.teddy` workspace with defaults and pre-warm dependencies.
|
|
329
|
-
| <nobr>`init prompts`</nobr> | Overwrite bundled prompt Markdown files in `.teddy/prompts/` with defaults.
|
|
330
|
-
| <nobr>`init config`</nobr> | Overwrite `config.yaml`, `.gitignore`, and `init.context` with defaults.
|
|
331
|
-
| <nobr>`init templates`</nobr> | Overwrite bundled Markdown templates in `docs/templates/` with defaults.
|
|
332
|
-
| `start` | Start an interactive agent session.
|
|
333
|
-
| `resume` | Resume an existing session.
|
|
334
|
-
| `update` | Check for updates and display upgrade instructions.
|
|
335
|
-
| `execute` | Execute a Markdown plan (reads from clipboard if no path is provided).
|
|
326
|
+
| Command | Description |
|
|
327
|
+
| :---------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- |
|
|
328
|
+
| `init` | Initialize `.teddy` workspace with defaults and pre-warm dependencies. |
|
|
329
|
+
| <nobr>`init prompts`</nobr> | Overwrite bundled prompt Markdown files in `.teddy/prompts/` with defaults. |
|
|
330
|
+
| <nobr>`init config`</nobr> | Overwrite `config.yaml`, `.gitignore`, and `init.context` with defaults. |
|
|
331
|
+
| <nobr>`init templates`</nobr> | Overwrite bundled Markdown templates in `docs/templates/` with defaults. |
|
|
332
|
+
| `start` | Start an interactive agent session. |
|
|
333
|
+
| `resume` | Resume an existing session. |
|
|
334
|
+
| `update` | Check for updates and display upgrade instructions. |
|
|
335
|
+
| `execute` | Execute a Markdown plan (reads from clipboard if no path is provided). |
|
|
336
336
|
| `context` | Export context payload (system info, git status, file tree, `init.context`). Add ad-hoc files with `-c` and skip defaults with `--only`. |
|
|
337
|
-
| <nobr>`get-prompt`</nobr> |
|
|
337
|
+
| <nobr>`get-prompt`</nobr> | Print the composed system prompt (agent-specific instructions plus shared `MRP.md`). |
|
|
338
338
|
|
|
339
339
|
> [!NOTE]
|
|
340
340
|
> By default, `execute` and `context` copy output to the clipboard. Use `--no-copy` to bypass.
|
|
@@ -125,7 +125,7 @@ TeDDy is built on the belief that you should own your software delivery lifecycl
|
|
|
125
125
|
|
|
126
126
|
- **High-Level Governance Rules (`PROJECT.md` & `ARCHITECTURE.md`):** The simplest way to guide agents. Define product roadmaps, engineering principles, system laws, and component boundaries in living Markdown documents that agents read on every turn.
|
|
127
127
|
- **Artifact Templates (`docs/templates/`):** Standardize the artifacts produced during development. Customize the Markdown templates for vertical slices, specifications, case files, and milestones to match your documentation standards.
|
|
128
|
-
- **Agent Prompts (`.teddy/prompts/`):** To change the process itself, customize the agent prompts. Each agent's workflow is broken down into structured phases and individual steps, defined entirely in Markdown. You can tweak instructions, add domain-specific quality gates, or introduce brand-new agent personas to match how your team builds software.
|
|
128
|
+
- **Agent Prompts (`.teddy/prompts/`):** To change the process itself, customize the agent prompts. Each agent's workflow is broken down into structured phases and individual steps, defined entirely in Markdown. You can tweak instructions, add domain-specific quality gates, or introduce brand-new agent personas to match how your team builds software. TeDDy assembles each system prompt from two layers: the agent-specific instructions come first and the shared response protocol instructions are appended automatically. The composed prompt is saved in the session folder, and `teddy get-prompt <agent>` prints the identical result, so you can read exactly what the model receives. A customized prompt that already carries its own `<response_format>` suppresses the shared block and is used as-is.
|
|
129
129
|
- **Command Automation (`Makefile`):** Instead of hardcoding shell commands inside agent prompts, common development and verification operations are routed through the Makefile. When you need to change a flag, runner, or environment setup, you change it once in the Makefile instead of updating instructions across multiple agent prompts.
|
|
130
130
|
- **Context Filtering (`.teddyignore`):** Control which files TeDDy scans during context generation and tree traversal. A `.teddyignore` file in the project root follows standard ignore syntax and takes precedence over `.gitignore`, allowing you to ignore extra paths or re-include git-ignored files using negation patterns.
|
|
131
131
|
|
|
@@ -236,17 +236,17 @@ teddy resume -m "your next instruction"
|
|
|
236
236
|
|
|
237
237
|
### Optional Flags
|
|
238
238
|
|
|
239
|
-
| Flag
|
|
240
|
-
|
|
|
241
|
-
| <nobr>`--agent`, `-a`</nobr>
|
|
242
|
-
| <nobr>`--context`, `-c`</nobr>
|
|
243
|
-
| <nobr>`--model`</nobr>
|
|
244
|
-
| <nobr>`--yolo`, `-y`</nobr>
|
|
245
|
-
| <nobr>`--no-yolo`, `-n`</nobr>
|
|
246
|
-
| <nobr>`--message`, `-m`</nobr>
|
|
247
|
-
| <nobr>`--pipeline`, `-p`</nobr> | Pipeline mode. Auto-approves actions, requires `-m`, exits immediately after the first message turn, and defaults to the `assistant` agent.
|
|
248
|
-
| <nobr>`--max-turns`</nobr>
|
|
249
|
-
| <nobr>`--max-cost`</nobr>
|
|
239
|
+
| Flag | Description |
|
|
240
|
+
| :------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
241
|
+
| <nobr>`--agent`, `-a`</nobr> | Select agent persona (`pathfinder`, `architect`, `developer`, `debugger`, `assistant`). Default: `pathfinder` (`assistant` in pipeline mode). |
|
|
242
|
+
| <nobr>`--context`, `-c`</nobr> | Supply additional context files or directories. Repeatable (`-c a.py -c b.md`) or comma-separated (`-c "a.py,b.md"`). |
|
|
243
|
+
| <nobr>`--model`</nobr> | Override the default configured model. |
|
|
244
|
+
| <nobr>`--yolo`, `-y`</nobr> | Auto-approve all actions. To make this default, set `yolo_default: true` in `.teddy/config.yaml`. |
|
|
245
|
+
| <nobr>`--no-yolo`, `-n`</nobr> | Force interactive mode for a single run. |
|
|
246
|
+
| <nobr>`--message`, `-m`</nobr> | Initial instruction to pass directly to the agent. |
|
|
247
|
+
| <nobr>`--pipeline`, `-p`</nobr> | Pipeline mode. Auto-approves actions, requires `-m`, exits immediately after the first message turn, and defaults to the `assistant` agent. |
|
|
248
|
+
| <nobr>`--max-turns`</nobr> | Maximum turns for a non-interactive run. Overrides `guardrails.max_turns` in `.teddy/config.yaml`. |
|
|
249
|
+
| <nobr>`--max-cost`</nobr> | Maximum session cost in dollars for a non-interactive run. Overrides `guardrails.max_session_cost` in `.teddy/config.yaml`. |
|
|
250
250
|
|
|
251
251
|
### Chat-Oriented Workflow (CHOP)
|
|
252
252
|
|
|
@@ -289,18 +289,18 @@ teddy context -c review.context
|
|
|
289
289
|
|
|
290
290
|
## Command Reference
|
|
291
291
|
|
|
292
|
-
| Command | Description
|
|
293
|
-
| :---------------------------- |
|
|
294
|
-
| `init` | Initialize `.teddy` workspace with defaults and pre-warm dependencies.
|
|
295
|
-
| <nobr>`init prompts`</nobr> | Overwrite bundled prompt Markdown files in `.teddy/prompts/` with defaults.
|
|
296
|
-
| <nobr>`init config`</nobr> | Overwrite `config.yaml`, `.gitignore`, and `init.context` with defaults.
|
|
297
|
-
| <nobr>`init templates`</nobr> | Overwrite bundled Markdown templates in `docs/templates/` with defaults.
|
|
298
|
-
| `start` | Start an interactive agent session.
|
|
299
|
-
| `resume` | Resume an existing session.
|
|
300
|
-
| `update` | Check for updates and display upgrade instructions.
|
|
301
|
-
| `execute` | Execute a Markdown plan (reads from clipboard if no path is provided).
|
|
292
|
+
| Command | Description |
|
|
293
|
+
| :---------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- |
|
|
294
|
+
| `init` | Initialize `.teddy` workspace with defaults and pre-warm dependencies. |
|
|
295
|
+
| <nobr>`init prompts`</nobr> | Overwrite bundled prompt Markdown files in `.teddy/prompts/` with defaults. |
|
|
296
|
+
| <nobr>`init config`</nobr> | Overwrite `config.yaml`, `.gitignore`, and `init.context` with defaults. |
|
|
297
|
+
| <nobr>`init templates`</nobr> | Overwrite bundled Markdown templates in `docs/templates/` with defaults. |
|
|
298
|
+
| `start` | Start an interactive agent session. |
|
|
299
|
+
| `resume` | Resume an existing session. |
|
|
300
|
+
| `update` | Check for updates and display upgrade instructions. |
|
|
301
|
+
| `execute` | Execute a Markdown plan (reads from clipboard if no path is provided). |
|
|
302
302
|
| `context` | Export context payload (system info, git status, file tree, `init.context`). Add ad-hoc files with `-c` and skip defaults with `--only`. |
|
|
303
|
-
| <nobr>`get-prompt`</nobr> |
|
|
303
|
+
| <nobr>`get-prompt`</nobr> | Print the composed system prompt (agent-specific instructions plus shared `MRP.md`). |
|
|
304
304
|
|
|
305
305
|
> [!NOTE]
|
|
306
306
|
> By default, `execute` and `context` copy output to the clipboard. Use `--no-copy` to bypass.
|
|
@@ -193,11 +193,9 @@ def _ensure_project_initialized(container, root_dir: str | None = None) -> None:
|
|
|
193
193
|
IRepoTreeGenerator,
|
|
194
194
|
factory=lambda: LocalRepoTreeGenerator(
|
|
195
195
|
root_dir=root,
|
|
196
|
-
max_depth=c.resolve(IConfigService).get_setting(
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
max_tree_width=c.resolve(IConfigService).get_setting(
|
|
200
|
-
"context.max_tree_width", 20
|
|
196
|
+
max_depth=c.resolve(IConfigService).get_setting("context.max_depth", 3),
|
|
197
|
+
max_children=c.resolve(IConfigService).get_setting(
|
|
198
|
+
"context.max_children", 20
|
|
201
199
|
),
|
|
202
200
|
),
|
|
203
201
|
scope=Scope.transient,
|
|
@@ -18,21 +18,19 @@ class LocalRepoTreeGenerator(IRepoTreeGenerator):
|
|
|
18
18
|
def __init__(
|
|
19
19
|
self,
|
|
20
20
|
root_dir: str = ".",
|
|
21
|
-
max_depth: int = DEFAULT_APP_CONFIG.context.
|
|
22
|
-
|
|
21
|
+
max_depth: int = DEFAULT_APP_CONFIG.context.max_depth,
|
|
22
|
+
max_children: int = DEFAULT_APP_CONFIG.context.max_children,
|
|
23
23
|
):
|
|
24
24
|
from teddy_executor.adapters.outbound.filesystem_helpers import (
|
|
25
25
|
load_ignore_spec,
|
|
26
26
|
)
|
|
27
27
|
|
|
28
28
|
assert max_depth >= 0, f"max_depth must be non-negative, got {max_depth}"
|
|
29
|
-
assert
|
|
30
|
-
f"max_tree_width must be positive, got {max_tree_width}"
|
|
31
|
-
)
|
|
29
|
+
assert max_children >= 1, f"max_children must be positive, got {max_children}"
|
|
32
30
|
self.root_dir = Path(root_dir).resolve()
|
|
33
31
|
self.ignore_spec = load_ignore_spec(self.root_dir)
|
|
34
32
|
self._max_depth = max_depth
|
|
35
|
-
self.
|
|
33
|
+
self._max_children = max_children
|
|
36
34
|
|
|
37
35
|
@property
|
|
38
36
|
def max_depth(self) -> int:
|
|
@@ -40,9 +38,9 @@ class LocalRepoTreeGenerator(IRepoTreeGenerator):
|
|
|
40
38
|
return self._max_depth
|
|
41
39
|
|
|
42
40
|
@property
|
|
43
|
-
def
|
|
41
|
+
def max_children(self) -> int:
|
|
44
42
|
"""The configured maximum visible entries per non-root directory."""
|
|
45
|
-
return self.
|
|
43
|
+
return self._max_children
|
|
46
44
|
|
|
47
45
|
def generate_tree(self) -> str:
|
|
48
46
|
"""
|
|
@@ -97,7 +95,7 @@ class LocalRepoTreeGenerator(IRepoTreeGenerator):
|
|
|
97
95
|
if entries is None:
|
|
98
96
|
return [UNREADABLE_MARKER]
|
|
99
97
|
|
|
100
|
-
if not is_root and len(entries) > self.
|
|
98
|
+
if not is_root and len(entries) > self._max_children:
|
|
101
99
|
return [self._compact_notice(entries)]
|
|
102
100
|
|
|
103
101
|
names: list[str] = []
|
|
@@ -44,8 +44,8 @@ class ReadConfig:
|
|
|
44
44
|
|
|
45
45
|
@dataclass(frozen=True)
|
|
46
46
|
class ContextConfig:
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
max_depth: int = 3
|
|
48
|
+
max_children: int = 20
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
@dataclass(frozen=True)
|
|
@@ -211,8 +211,8 @@ _SCHEMA_FIELDS: tuple[_FieldSpec, ...] = (
|
|
|
211
211
|
_FieldSpec("workspace.pre-commit", "workspace", "pre_commit", bool),
|
|
212
212
|
_FieldSpec("workspace.pull", "workspace", "pull", bool),
|
|
213
213
|
_FieldSpec("read.max_lines", "read", "max_lines", int, minimum=1),
|
|
214
|
-
_FieldSpec("context.
|
|
215
|
-
_FieldSpec("context.
|
|
214
|
+
_FieldSpec("context.max_depth", "context", "max_depth", int, minimum=0),
|
|
215
|
+
_FieldSpec("context.max_children", "context", "max_children", int, minimum=1),
|
|
216
216
|
_FieldSpec("research.max_results", "research", "max_results", int, minimum=1),
|
|
217
217
|
_FieldSpec("checks.prompts", "checks", "prompts", bool),
|
|
218
218
|
_FieldSpec("checks.templates", "checks", "templates", bool),
|
|
@@ -393,7 +393,7 @@ class ContextService(IGetContextUseCase):
|
|
|
393
393
|
"""State both tree limits once, so the compact notices stay meaningful."""
|
|
394
394
|
return (
|
|
395
395
|
f"*Tree capped at depth {self._repo_tree_generator.max_depth} "
|
|
396
|
-
f"and width {self._repo_tree_generator.
|
|
396
|
+
f"and width {self._repo_tree_generator.max_children}: "
|
|
397
397
|
"truncated directories show counts only.*"
|
|
398
398
|
)
|
|
399
399
|
|
|
@@ -147,11 +147,11 @@ def register_infrastructure(container: punq.Container) -> None:
|
|
|
147
147
|
IRepoTreeGenerator,
|
|
148
148
|
factory=lambda: LocalRepoTreeGenerator(
|
|
149
149
|
max_depth=container.resolve(IConfigService).get_setting(
|
|
150
|
-
"context.
|
|
150
|
+
"context.max_depth", DEFAULT_APP_CONFIG.context.max_depth
|
|
151
151
|
),
|
|
152
|
-
|
|
153
|
-
"context.
|
|
154
|
-
DEFAULT_APP_CONFIG.context.
|
|
152
|
+
max_children=container.resolve(IConfigService).get_setting(
|
|
153
|
+
"context.max_children",
|
|
154
|
+
DEFAULT_APP_CONFIG.context.max_children,
|
|
155
155
|
),
|
|
156
156
|
),
|
|
157
157
|
scope=punq.Scope.transient,
|
|
@@ -10,16 +10,16 @@ edit:
|
|
|
10
10
|
similarity_threshold: 0.95 # EDIT match threshold (1.0 = exact match; ignores relative indentation).
|
|
11
11
|
|
|
12
12
|
workspace:
|
|
13
|
-
init: true
|
|
14
|
-
pre-commit: true
|
|
15
|
-
pull: true
|
|
13
|
+
init: true # Initialize a missing Git repository (start and resume).
|
|
14
|
+
pre-commit: true # Install pre-commit and post-commit git hooks (start and resume).
|
|
15
|
+
pull: true # Fast-forward pull before starting a new session (start only).
|
|
16
16
|
|
|
17
17
|
read:
|
|
18
18
|
max_lines: 1000 # Caps READ action output lines.
|
|
19
19
|
|
|
20
20
|
context:
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
max_depth: 3 # Max project tree depth.
|
|
22
|
+
max_children: 20 # Max entries listed per directory.
|
|
23
23
|
|
|
24
24
|
research:
|
|
25
25
|
max_results: 5 # Number of search results to fetch and scrape.
|
|
@@ -40,15 +40,18 @@ guardrails: # Non-interactive limits (--yolo / --pipelin
|
|
|
40
40
|
auto_pruning:
|
|
41
41
|
enabled: true
|
|
42
42
|
turn_context_threshold: 50000 # Token budget for turn-scoped files only (excludes session.context & system prompts).
|
|
43
|
-
prune_failure_history: true
|
|
43
|
+
prune_failure_history: true # Prunes non-green turns once recovery succeeds.
|
|
44
44
|
prune_validation_failures: true # Prunes malformed turns that failed validation.
|
|
45
45
|
preserve_message_turns: true # Preserves user-communicating turns from pruning.
|
|
46
46
|
max_turns_retention: 10 # Max historical turns retained in turn context.
|
|
47
47
|
|
|
48
48
|
# LiteLLM reference: https://docs.litellm.ai/docs/completion/input (all keys under llm pass directly to litellm).
|
|
49
|
+
# OpenRouter syntax: "openrouter/<slug>" (:nitro=fastest, :floor=cheapest).
|
|
50
|
+
# ${TEDDY_LLM_API_KEY} resolves from .teddy/.env or shell environment.
|
|
51
|
+
|
|
49
52
|
llm:
|
|
50
|
-
model: "openrouter/~deepseek/deepseek-flash-latest:nitro"
|
|
51
|
-
api_key: "${TEDDY_LLM_API_KEY}"
|
|
53
|
+
model: "openrouter/~deepseek/deepseek-flash-latest:nitro"
|
|
54
|
+
api_key: "${TEDDY_LLM_API_KEY}"
|
|
52
55
|
max_retries: 3
|
|
53
56
|
timeout: 300
|
|
54
57
|
extra_headers:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/adapters/__init__.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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/__init__.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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/domain/models/plan.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/ports/inbound/init.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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/services/__init__.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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/editor_names.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/markdown.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/paths.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/serialization.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/string.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/core/utils/terminal.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/registries/__init__.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/registries/reviewer.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/registries/validators.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/__init__.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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1410}/src/teddy_executor/resources/templates/ci.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|