cecli-dev 0.100.6rc7__tar.gz → 0.100.7__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.
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/PKG-INFO +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/_version.py +3 -3
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/agent_coder.py +29 -12
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/base_coder.py +46 -17
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/run.py +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/utils/base_command.py +6 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/utils/helpers.py +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/agents/service.py +12 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/files.py +5 -2
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/integration.py +29 -2
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/hashline.py +384 -50
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/requests.py +25 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/io.py +1 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/agent.yml +19 -19
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/subagent.yml +20 -20
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/reasoning_tags.py +19 -2
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/_yield.py +4 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/command.py +18 -6
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/command_interactive.py +28 -8
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/context_manager.py +22 -11
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/delegate.py +2 -2
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/edit_text.py +7 -4
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/explore_code.py +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/grep.py +13 -11
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/ls.py +5 -3
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/read_range.py +47 -20
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/thinking.py +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/undo_change.py +3 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/update_todo_list.py +22 -10
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/utils/helpers.py +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/app.py +8 -2
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/io.py +3 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/worker.py +87 -36
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/agent-mode.md +2 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/skills.md +1 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli_dev.egg-info/PKG-INFO +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli_dev.egg-info/SOURCES.txt +1 -0
- cecli_dev-0.100.7/tests/basic/test_hashline_closure.py +423 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_grep.py +1 -1
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_insert_block.py +5 -4
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.dockerignore +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.flake8 +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.gitattributes +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/ISSUE_TEMPLATE/issue.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/check_pypi_version.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/docker-build-test.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/docker-release.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/issues.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/pages.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/pre-commit.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/release.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/ubuntu-tests.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/windows-tests.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.github/workflows/windows_check_pypi_version.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.gitignore +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/.pre-commit-config.yaml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/CHANGELOG.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/CNAME +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/CONTRIBUTING.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/HISTORY.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/LICENSE.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/MANIFEST.in +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/README.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/Dockerfile +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/README.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/benchmark.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/benchmark_classic.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/clone-exercism.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/cpp-test.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/docker.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/docker_build.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/install-docker-ubuntu.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/npm-test.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/over_time.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/plot.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/plots.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/problem_stats.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/prompts.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/refactor_tools.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/rsync.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/rungrid.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/swe-bench-lite.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/swe-bench.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/swe_bench.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/test_benchmark.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/variations.1.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/variations.2.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/variations.3.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/benchmark/variations.4.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/__main__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/args.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/args_formatter.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/change_tracker.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/architect_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/ask_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/chat_chunks.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/context_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/copypaste_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/editblock_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/editblock_fenced_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/editblock_func_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/editor_diff_fenced_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/editor_editblock_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/editor_whole_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/hashline_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/help_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/patch_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/search_replace.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/shell.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/single_wholefile_func_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/sub_agent_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/udiff_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/udiff_simple.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/wholefile_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/coders/wholefile_func_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/add.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/agent.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/agent_model.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/architect.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/ask.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/chat_mode.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/clear.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/code.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/command_prefix.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/commit.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/compact.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/context.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/context_blocks.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/context_management.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/copy.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/copy_context.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/core.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/diff.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/drop.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/editor.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/editor_model.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/exclude_skill.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/exit.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/git.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/hashline.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/help.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/history_search.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/hooks.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/include_skill.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/lint.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/list_sessions.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/list_skills.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/load.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/load_hook.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/load_mcp.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/load_session.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/load_skill.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/ls.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/map.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/map_refresh.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/merge.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/model.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/models.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/multiline_mode.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/paste.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/quit.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/read_only.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/read_only_stub.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/reap_agent.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/reasoning_effort.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/remove_hook.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/remove_mcp.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/remove_skill.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/report.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/reset.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/rules.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/save.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/save_session.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/settings.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/spawn_agent.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/switch_agent.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/terminal_data/linux.keytab +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/terminal_setup.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/test.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/think_tokens.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/tokens.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/undo.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/utils/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/utils/registry.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/utils/save_load_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/voice.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/weak_model.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/web.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/commands/workspace.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/deprecated_args.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/diffs.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/dump.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/editor.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/exceptions.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/format_settings.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/help.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/help_pats.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/agents/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/agents/config.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/background_commands.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/command_parser.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/base_message.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/service.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/tags.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/conversation/utils.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/copypaste.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/coroutines.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/crypto.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/file_searcher.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/file_system/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/file_system/builders.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/file_system/ignore.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/file_system/ngram_index.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/file_system/service.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/file_system/trie_index.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/grep_ast/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/grep_ast/dump.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/grep_ast/grep_ast.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/grep_ast/main.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/grep_ast/parsers.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/grep_ast/tsl.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/hashpos/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/hashpos/hashpos.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/hashpos/hashpos.v1.bak +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/io_proxy.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/leak_detect.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/model_providers.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/monorepo/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/monorepo/config.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/monorepo/local_workspace.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/monorepo/project.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/monorepo/workspace.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/monorepo/worktree.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/nested.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/observations/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/observations/service.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/plugin_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/profiler.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/responses.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/similarity.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/skills.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/helpers/threading.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/history.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/hooks/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/hooks/base.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/hooks/integration.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/hooks/manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/hooks/registry.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/hooks/service.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/hooks/types.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/interruptible_input.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/linter.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/llm.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/main.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/mcp/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/mcp/manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/mcp/oauth.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/mcp/server.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/mcp/utils.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/mdstream.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/models.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/onboarding.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/architect.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/ask.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/base.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/context.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/copypaste.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/editblock.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/editblock_fenced.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/editblock_func.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/editor_diff_fenced.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/editor_editblock.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/editor_whole.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/hashline.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/help.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/patch.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/single_wholefile_func.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/udiff.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/udiff_simple.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/utils/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/utils/registry.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/utils/system.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/wholefile.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/prompts/wholefile_func.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/README.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/bash-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/c-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/clojure-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/d-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/go-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/java-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/matlab-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/ocaml-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/python-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/r-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/README.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/bash-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/c-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/cpp-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/dart-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/elisp-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/elixir-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/elm-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/fortran-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/go-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/haskell-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/hcl-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/java-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/javascript-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/julia-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/matlab-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/ocaml_interface-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/php-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/python-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/ql-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/ruby-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/rust-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/scala-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/typescript-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/queries/tree-sitter-languages/zig-tags.scm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/repo.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/repomap.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/report.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/resources/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/resources/model-metadata.json +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/resources/model-settings.yml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/resources/providers.json +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/run_cmd.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/scrape.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/sendchat.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/sessions.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/special.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/git_branch.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/git_diff.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/git_log.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/git_remote.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/git_show.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/git_status.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/load_skill.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/remove_skill.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/utils/base_tool.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/utils/output.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/utils/registry.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/validations/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tools/validations/validations.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/styles.tcss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/completion_bar.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/file_list.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/footer.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/input_area.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/input_container.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/key_hints.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/output.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/status_bar.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/tui/widgets/subagent_pills.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/urls.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/utils.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/versioncheck.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/voice.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/waiting.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/watch.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/watch_prompts.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/Gemfile +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/blame.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/get-started.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/help-tip.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/help.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/install.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/keys.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/model-warnings.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/multi-line.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/python-m-aider.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/recording.css +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/recording.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_includes/works-best.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_features.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_footer.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_hero.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_info.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_layout.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_reset.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_testimonials.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_typography.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/_variables.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/custom/custom.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/_sass/global-overrides.scss +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/adv-model-settings.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/aider_conf.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/api-keys.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/custom-commands.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/custom-system-prompts.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/dotenv.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/editor.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/hooks.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/mcp.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/model-aliases.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/model-configuration.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/options.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/reasoning.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/security.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/subagents.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/tui.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config/workspaces.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/config.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/faq.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/git.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/index.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/install/docker.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/install/optional.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/install.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/languages.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/legal/contributor-agreement.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/legal/privacy.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/anthropic.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/azure.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/bedrock.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/cohere.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/deepseek.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/gemini.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/github.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/groq.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/lm-studio.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/ollama.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/openai-compat.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/openai.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/openrouter.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/other.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/vertex.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/warnings.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms/xai.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/llms.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/more/analytics.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/more/edit-formats.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/more/infinite-output.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/more-info.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/repomap.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/scripting.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting/cecli-not-found.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting/edit-errors.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting/imports.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting/models-and-keys.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting/support.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting/token-limits.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting/warnings.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/troubleshooting.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/commands.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/conventions.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/copypaste.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/images-urls.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/lint-test.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/modes.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/not-code.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/notifications.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/sessions.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/tips.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/voice.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage/watch.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/docs/usage.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli/website/share/index.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli_dev.egg-info/dependency_links.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli_dev.egg-info/entry_points.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli_dev.egg-info/requires.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/cecli_dev.egg-info/top_level.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/docker/Dockerfile +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/docker/Dockerfile.local.nvidia.cuda.ubuntu +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/pyproject.toml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/pytest.ini +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/common-constraints.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/requirements-dev.in +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/requirements-dev.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/requirements-help.in +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/requirements-help.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/requirements-playwright.in +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/requirements-playwright.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/requirements.in +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements/tree-sitter.in +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/requirements.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/30k-image.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/Dockerfile.jekyll +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/blame.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/clean_metadata.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/cost_analyzer.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/cost_calculator.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/dl_icons.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/filter-chat-mode.js +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/generate_providers.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/get_contributor_list.js +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/get_hashline.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/history_prompts.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/homepage.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/issues.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/jekyll_build.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/jekyll_run.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/logo_svg.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/pip-compile.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/recording_audio.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/redact-cast.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/rename_to_cecli.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/tmux_record.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/tsl_pack_langs.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/update-blame.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/update-docs.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/update-history.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/versionbump.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/scripts/yank-old-versions.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/setup.cfg +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/shim.pyproject.toml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/conftest.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_aws_credentials.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_background_commands.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_commands.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_custom_commands.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_deprecated.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_editblock.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_editor.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_exceptions.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_find_or_blocks.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_hashline.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_history.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_io.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_linter.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_main.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_model_info_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_model_provider_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_models.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_onboarding.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_plugin_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_prompts.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_reasoning.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_repo.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_repomap.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_run_cmd.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_sanity_check_repo.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_scripting.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_sendchat.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_session_args.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_session_crypto.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_sessions.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_sessions_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_skills.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_special.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_ssl_verification.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_udiff.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_urls.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_voice.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_watch.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/basic/test_wholefile.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/coders/test_coder_switching.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/coders/test_copypaste_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/commands/test_compaction.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/commands/test_switch_agent.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/conftest.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/conversations/test_conversation_integration.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/conversations/test_conversation_system.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/chat-history-search-replace-gold.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/chat-history.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/arduino/test.ino +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/bash/test.sh +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/c/test.c +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/chatito/test.chatito +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/clojure/test.clj +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/commonlisp/test.lisp +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/cpp/test.cpp +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/csharp/test.cs +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/d/test.d +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/dart/test.dart +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/elisp/test.el +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/elixir/test.ex +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/elm/test.elm +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/gleam/test.gleam +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/go/test.go +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/haskell/test.hs +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/hcl/test.tf +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/java/test.java +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/javascript/test.js +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/kotlin/test.kt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/lua/test.lua +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/matlab/test.m +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/ocaml/test.ml +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/ocaml_interface/test.mli +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/php/test.php +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/pony/test.pony +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/properties/test.properties +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/python/test.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/ql/test.ql +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/r/test.r +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/racket/test.rkt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/ruby/test.rb +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/rust/test.rs +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/scala/test.scala +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/solidity/test.sol +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/swift/test.swift +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/tsx/test.tsx +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/typescript/test.ts +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/udev/test.rules +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/languages/zig/test.zig +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/sample-code-base/sample.js +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/sample-code-base/sample.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/sample-code-base-repo-map.txt +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/watch.js +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/watch.lisp +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/watch.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/fixtures/watch_question.js +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/help/test_help.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/monorepo/LOCAL_WORKSPACE.md +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/monorepo/test_config.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/monorepo/test_config_active.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/monorepo/test_ignore_logic.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/monorepo/test_local_workspace.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/monorepo/test_repomap_workspace.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/monorepo/test_workspace.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/helpers/observations/test_observation_service.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/hooks/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/hooks/test_base.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/hooks/test_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/hooks/test_registry.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/mcp/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/mcp/test_manager.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/scrape/test_playwright_disable.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/scrape/test_scrape.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/__init__.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/conftest.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/test_commands.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/test_config.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/test_delegate.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/test_finished.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/test_io_proxy.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/test_service.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/subagents/test_sub_agent_coder.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_extractions.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_get_lines.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_git_branch.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_git_diff.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_read_range_execute.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_registry.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/test_tool_arguments.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tools/validations.py +0 -0
- {cecli_dev-0.100.6rc7 → cecli_dev-0.100.7}/tests/tui/test_app.py +0 -0
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.100.
|
|
22
|
-
__version_tuple__ = version_tuple = (0, 100,
|
|
21
|
+
__version__ = version = '0.100.7'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 100, 7)
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'gedcb2b7f6'
|
|
@@ -91,6 +91,7 @@ class AgentCoder(Coder):
|
|
|
91
91
|
self.allowed_context_blocks = set()
|
|
92
92
|
self.context_block_tokens = {}
|
|
93
93
|
self.context_blocks_cache = {}
|
|
94
|
+
self.current_tasks = []
|
|
94
95
|
self.hot_reload_enabled = False
|
|
95
96
|
self.tokens_calculated = False
|
|
96
97
|
self.skip_cli_confirmations = False
|
|
@@ -152,6 +153,7 @@ class AgentCoder(Coder):
|
|
|
152
153
|
config, "skip_cli_confirmations", nested.getter(config, "yolo", [])
|
|
153
154
|
)
|
|
154
155
|
config["command_timeout"] = nested.getter(config, "command_timeout", 30)
|
|
156
|
+
config["allowed_commands"] = nested.getter(config, "allowed_commands", [])
|
|
155
157
|
config["hot_reload"] = nested.getter(config, "hot_reload", False)
|
|
156
158
|
config["allow_nested_delegation"] = nested.getter(config, "allow_nested_delegation", False)
|
|
157
159
|
|
|
@@ -160,7 +162,9 @@ class AgentCoder(Coder):
|
|
|
160
162
|
config, ["tools_includelist", "tools_whitelist"], []
|
|
161
163
|
)
|
|
162
164
|
config["tools_excludelist"] = nested.getter(
|
|
163
|
-
config,
|
|
165
|
+
config,
|
|
166
|
+
["tools_excludelist", "tools_blacklist"],
|
|
167
|
+
["gitbranch", "gitdiff", "gitlog", "gitremote", "gitshow", "gitstatus"],
|
|
164
168
|
)
|
|
165
169
|
|
|
166
170
|
config["servers_includelist"] = nested.getter(
|
|
@@ -174,7 +178,7 @@ class AgentCoder(Coder):
|
|
|
174
178
|
config,
|
|
175
179
|
"include_context_blocks",
|
|
176
180
|
{
|
|
177
|
-
"context_summary",
|
|
181
|
+
# "context_summary",
|
|
178
182
|
# "directory_structure",
|
|
179
183
|
"environment_info",
|
|
180
184
|
# "git_status",
|
|
@@ -611,7 +615,7 @@ class AgentCoder(Coder):
|
|
|
611
615
|
percentage = total_tokens / max_input_tokens * 100
|
|
612
616
|
result += f" ({percentage:.1f}% of limit)"
|
|
613
617
|
if percentage > 80:
|
|
614
|
-
result += "\n\n
|
|
618
|
+
result += "\n\n⚠ **Context is getting full!**\n"
|
|
615
619
|
result += "- Remove non-essential files via the `ContextManager` tool.\n"
|
|
616
620
|
result += "- Keep only essential files in context for best performance"
|
|
617
621
|
result += "\n</context>"
|
|
@@ -808,6 +812,9 @@ class AgentCoder(Coder):
|
|
|
808
812
|
"# Fix any linting errors below, if possible and then continue with your task.",
|
|
809
813
|
1,
|
|
810
814
|
)
|
|
815
|
+
ConversationService.get_manager(self).remove_message_by_hash_key(
|
|
816
|
+
("lint_errors", "agent")
|
|
817
|
+
)
|
|
811
818
|
ConversationService.get_manager(self).add_message(
|
|
812
819
|
message_dict=dict(role="user", content=lint_errors),
|
|
813
820
|
tag=MessageTag.CUR,
|
|
@@ -1265,16 +1272,20 @@ class AgentCoder(Coder):
|
|
|
1265
1272
|
abs_path = self.abs_root_path(file_path)
|
|
1266
1273
|
rel_path = self.get_rel_fname(abs_path)
|
|
1267
1274
|
if not os.path.isfile(abs_path):
|
|
1268
|
-
self.io.tool_output(f"
|
|
1275
|
+
self.io.tool_output(f"⚠ File '{file_path}' not found", type="tool-result")
|
|
1269
1276
|
return "File not found"
|
|
1270
1277
|
if abs_path in self.abs_fnames:
|
|
1271
1278
|
if explicit:
|
|
1272
|
-
self.io.tool_output(
|
|
1279
|
+
self.io.tool_output(
|
|
1280
|
+
f"🗀 File '{file_path}' already in context as editable", type="tool-result"
|
|
1281
|
+
)
|
|
1273
1282
|
return "File already in context as editable"
|
|
1274
1283
|
return "File already in context as editable"
|
|
1275
1284
|
if abs_path in self.abs_read_only_fnames:
|
|
1276
1285
|
if explicit:
|
|
1277
|
-
self.io.tool_output(
|
|
1286
|
+
self.io.tool_output(
|
|
1287
|
+
f"🗀 File '{file_path}' already in context as read-only", type="tool-result"
|
|
1288
|
+
)
|
|
1278
1289
|
return "File already in context as read-only"
|
|
1279
1290
|
return "File already in context as read-only"
|
|
1280
1291
|
try:
|
|
@@ -1285,13 +1296,18 @@ class AgentCoder(Coder):
|
|
|
1285
1296
|
file_tokens = self.get_active_model().token_count(content)
|
|
1286
1297
|
if file_tokens > self.large_file_token_threshold:
|
|
1287
1298
|
self.io.tool_output(
|
|
1288
|
-
|
|
1289
|
-
|
|
1299
|
+
(
|
|
1300
|
+
f"⚠ '{file_path}' is very large ({file_tokens} tokens). Use"
|
|
1301
|
+
" /context-management to toggle truncation off if needed."
|
|
1302
|
+
),
|
|
1303
|
+
type="tool-result",
|
|
1290
1304
|
)
|
|
1291
1305
|
self.abs_read_only_fnames.add(abs_path)
|
|
1292
1306
|
self.files_added_in_exploration.add(rel_path)
|
|
1293
1307
|
if explicit:
|
|
1294
|
-
self.io.tool_output(
|
|
1308
|
+
self.io.tool_output(
|
|
1309
|
+
f"🗀 Viewed '{file_path}' (added to context as read-only)", type="tool-result"
|
|
1310
|
+
)
|
|
1295
1311
|
return "Viewed file (added to context as read-only)"
|
|
1296
1312
|
else:
|
|
1297
1313
|
return "Added file to context as read-only"
|
|
@@ -1418,10 +1434,11 @@ Todo list does not exist. Please update it with the `UpdateTodoList` tool.</cont
|
|
|
1418
1434
|
content = self.io.read_text(abs_path)
|
|
1419
1435
|
if content is None or not content.strip():
|
|
1420
1436
|
return None
|
|
1437
|
+
|
|
1438
|
+
current_tasks = "\n".join(self.current_tasks)
|
|
1421
1439
|
result = '<context name="todo_list" from="agent">\n'
|
|
1422
|
-
result += "## Current
|
|
1423
|
-
result += "
|
|
1424
|
-
result += f"```\n{content}\n```\n"
|
|
1440
|
+
result += "## Current Active Tasks\n\n"
|
|
1441
|
+
result += f"```{current_tasks}```\n"
|
|
1425
1442
|
result += "</context>"
|
|
1426
1443
|
return result
|
|
1427
1444
|
except Exception as e:
|
|
@@ -419,6 +419,8 @@ class Coder(metaclass=UsageMeta):
|
|
|
419
419
|
uuid: str = "",
|
|
420
420
|
parent_uuid: str = "",
|
|
421
421
|
):
|
|
422
|
+
from cecli.helpers.agents.service import AgentService
|
|
423
|
+
|
|
422
424
|
# initialize from args.map_cache_dir
|
|
423
425
|
self.coroutines = coroutines
|
|
424
426
|
# Per-instance tool and server filtering dictionaries
|
|
@@ -427,6 +429,7 @@ class Coder(metaclass=UsageMeta):
|
|
|
427
429
|
self.registered_servers = {"included": set(), "excluded": set()}
|
|
428
430
|
self.interrupt_event = ThreadSafeEvent()
|
|
429
431
|
self.uuid = str(generate_unique_id())
|
|
432
|
+
self.reflected_message = None
|
|
430
433
|
|
|
431
434
|
if uuid:
|
|
432
435
|
self.uuid = str(uuid)
|
|
@@ -543,8 +546,10 @@ class Coder(metaclass=UsageMeta):
|
|
|
543
546
|
|
|
544
547
|
self.show_diffs = show_diffs
|
|
545
548
|
|
|
546
|
-
# Initialize
|
|
549
|
+
# Initialize all registry sub systems
|
|
550
|
+
AgentService.get_instance(self)
|
|
547
551
|
ConversationService.get_chunks(self).initialize_conversation_system()
|
|
552
|
+
ObservationService.get_instance(self)
|
|
548
553
|
|
|
549
554
|
self.commands = commands or Commands(self.io, self, args=args)
|
|
550
555
|
self.commands.coder = self
|
|
@@ -1107,7 +1112,7 @@ class Coder(metaclass=UsageMeta):
|
|
|
1107
1112
|
|
|
1108
1113
|
# Add message about showing definitions instead of full content
|
|
1109
1114
|
# self.io.tool_output(
|
|
1110
|
-
# f"
|
|
1115
|
+
# f"⚠ '{relative_fname}' is very large ({file_tokens} tokens). "
|
|
1111
1116
|
# "Use /context-management to toggle truncation off if needed."
|
|
1112
1117
|
# )
|
|
1113
1118
|
|
|
@@ -1175,7 +1180,7 @@ class Coder(metaclass=UsageMeta):
|
|
|
1175
1180
|
|
|
1176
1181
|
# Add message about showing definitions instead of full content
|
|
1177
1182
|
# self.io.tool_output(
|
|
1178
|
-
# f"
|
|
1183
|
+
# f"⚠ '{relative_fname}' is very large ({file_tokens} tokens). "
|
|
1179
1184
|
# "Use /context-management to toggle truncation off if needed."
|
|
1180
1185
|
# )
|
|
1181
1186
|
|
|
@@ -2560,7 +2565,9 @@ class Coder(metaclass=UsageMeta):
|
|
|
2560
2565
|
return
|
|
2561
2566
|
finally:
|
|
2562
2567
|
if self.mdstream:
|
|
2563
|
-
content_to_show =
|
|
2568
|
+
content_to_show = (
|
|
2569
|
+
"" if self.tui and self.tui() else self.live_incremental_response(True)
|
|
2570
|
+
)
|
|
2564
2571
|
self.stream_wrapper(content_to_show, final=True)
|
|
2565
2572
|
self.mdstream = None
|
|
2566
2573
|
|
|
@@ -3583,24 +3590,13 @@ class Coder(metaclass=UsageMeta):
|
|
|
3583
3590
|
except AttributeError:
|
|
3584
3591
|
reasoning_content = None
|
|
3585
3592
|
|
|
3586
|
-
if reasoning_content:
|
|
3587
|
-
if nested.getter(self.args, "show_thinking"):
|
|
3588
|
-
if not self.got_reasoning_content:
|
|
3589
|
-
text += f"<{REASONING_TAG}>\n\n"
|
|
3590
|
-
text += reasoning_content
|
|
3591
|
-
self.got_reasoning_content = True
|
|
3592
|
-
received_content = True
|
|
3593
|
-
self.token_profiler.on_token()
|
|
3594
|
-
self.io.update_spinner_suffix(reasoning_content)
|
|
3595
|
-
self.partial_response_reasoning_content += reasoning_content
|
|
3596
|
-
|
|
3597
3593
|
try:
|
|
3598
3594
|
content = chunk.choices[0].delta.content
|
|
3599
3595
|
if content:
|
|
3600
3596
|
if self.got_reasoning_content and not self.ended_reasoning_content:
|
|
3601
3597
|
text += f"\n\n</{self.reasoning_tag_name}>\n\n"
|
|
3602
|
-
self.ended_reasoning_content = True
|
|
3603
3598
|
|
|
3599
|
+
self.ended_reasoning_content = True
|
|
3604
3600
|
text += content
|
|
3605
3601
|
received_content = True
|
|
3606
3602
|
self.token_profiler.on_token()
|
|
@@ -3608,6 +3604,22 @@ class Coder(metaclass=UsageMeta):
|
|
|
3608
3604
|
except AttributeError:
|
|
3609
3605
|
pass
|
|
3610
3606
|
|
|
3607
|
+
if reasoning_content:
|
|
3608
|
+
if (
|
|
3609
|
+
nested.getter(self.args, "show_thinking")
|
|
3610
|
+
and not self.ended_reasoning_content
|
|
3611
|
+
):
|
|
3612
|
+
if not self.got_reasoning_content:
|
|
3613
|
+
text += f"<{REASONING_TAG}>\n\n"
|
|
3614
|
+
|
|
3615
|
+
text += reasoning_content
|
|
3616
|
+
self.got_reasoning_content = True
|
|
3617
|
+
received_content = True
|
|
3618
|
+
|
|
3619
|
+
self.token_profiler.on_token()
|
|
3620
|
+
self.io.update_spinner_suffix(reasoning_content)
|
|
3621
|
+
self.partial_response_reasoning_content += reasoning_content
|
|
3622
|
+
|
|
3611
3623
|
self.partial_response_content += text
|
|
3612
3624
|
|
|
3613
3625
|
chunk_index += 1
|
|
@@ -3634,6 +3646,16 @@ class Coder(metaclass=UsageMeta):
|
|
|
3634
3646
|
except (asyncio.CancelledError, KeyboardInterrupt):
|
|
3635
3647
|
raise KeyboardInterrupt
|
|
3636
3648
|
|
|
3649
|
+
if (
|
|
3650
|
+
self.show_pretty()
|
|
3651
|
+
and nested.getter(self.args, "show_thinking")
|
|
3652
|
+
and self.got_reasoning_content
|
|
3653
|
+
and not self.ended_reasoning_content
|
|
3654
|
+
):
|
|
3655
|
+
self.partial_response_content += f"\n\n</{self.reasoning_tag_name}>\n\n"
|
|
3656
|
+
content_to_show = self.live_incremental_response(False)
|
|
3657
|
+
self.stream_wrapper(content_to_show, final=False)
|
|
3658
|
+
|
|
3637
3659
|
# The Part Doing the Heavy Lifting Now
|
|
3638
3660
|
self.consolidate_chunks()
|
|
3639
3661
|
|
|
@@ -3657,6 +3679,12 @@ class Coder(metaclass=UsageMeta):
|
|
|
3657
3679
|
func_err = None
|
|
3658
3680
|
content_err = None
|
|
3659
3681
|
|
|
3682
|
+
if len(self.partial_response_chunks):
|
|
3683
|
+
last_chunk = self.partial_response_chunks[len(self.partial_response_chunks) - 1]
|
|
3684
|
+
if last_chunk:
|
|
3685
|
+
if getattr(last_chunk, "usage", None):
|
|
3686
|
+
response.usage = last_chunk.usage
|
|
3687
|
+
|
|
3660
3688
|
# Collect provider-specific fields from chunks to preserve them
|
|
3661
3689
|
# We need to track both by ID (primary) and index (fallback) since
|
|
3662
3690
|
# early chunks might not have IDs established yet
|
|
@@ -3848,6 +3876,7 @@ class Coder(metaclass=UsageMeta):
|
|
|
3848
3876
|
cache_hit_tokens = (
|
|
3849
3877
|
getattr(completion.usage, "prompt_cache_hit_tokens", 0)
|
|
3850
3878
|
or getattr(completion.usage, "cache_read_input_tokens", 0)
|
|
3879
|
+
or nested.getter(completion.usage, "prompt_tokens_details.cached_tokens", 0)
|
|
3851
3880
|
or 0
|
|
3852
3881
|
)
|
|
3853
3882
|
cache_write_tokens = getattr(completion.usage, "cache_creation_input_tokens", 0) or 0
|
|
@@ -4463,7 +4492,7 @@ class Coder(metaclass=UsageMeta):
|
|
|
4463
4492
|
if output:
|
|
4464
4493
|
accumulated_output += f"Output from {command}\n{output}\n"
|
|
4465
4494
|
|
|
4466
|
-
|
|
4495
|
+
self.io.tool_output(accumulated_output)
|
|
4467
4496
|
|
|
4468
4497
|
if accumulated_output.strip() and await self.io.confirm_ask(
|
|
4469
4498
|
"Add command output to the chat?", allow_never=True
|
|
@@ -159,6 +159,12 @@ class BaseCommand(ABC, metaclass=CommandMeta):
|
|
|
159
159
|
await new_coder.generate(user_message=user_msg, preproc=False)
|
|
160
160
|
coder.coder_commit_hashes = new_coder.coder_commit_hashes
|
|
161
161
|
|
|
162
|
+
# Transfer files added during the /agent (or other temp-coder) turn back to the original
|
|
163
|
+
if new_coder.abs_fnames - original_coder.abs_fnames:
|
|
164
|
+
original_coder.abs_fnames.update(new_coder.abs_fnames)
|
|
165
|
+
if new_coder.abs_read_only_fnames - original_coder.abs_read_only_fnames:
|
|
166
|
+
original_coder.abs_read_only_fnames.update(new_coder.abs_read_only_fnames)
|
|
167
|
+
|
|
162
168
|
# Clear manager and restore original state
|
|
163
169
|
ConversationService.get_manager(original_coder).initialize(
|
|
164
170
|
reset=True,
|
|
@@ -273,7 +273,7 @@ def format_command_result(
|
|
|
273
273
|
io.tool_error(f"Error in {command_name}: {str(error)}")
|
|
274
274
|
return f"Error: {str(error)}"
|
|
275
275
|
else:
|
|
276
|
-
io.tool_output(f"
|
|
276
|
+
io.tool_output(f"✓ {success_message}")
|
|
277
277
|
return f"Successfully executed {command_name}."
|
|
278
278
|
|
|
279
279
|
|
|
@@ -571,11 +571,13 @@ class AgentService:
|
|
|
571
571
|
Returns:
|
|
572
572
|
The ``asyncio.Task`` wrapping ``generate()``.
|
|
573
573
|
"""
|
|
574
|
+
from cecli.commands import SwitchCoderSignal
|
|
574
575
|
|
|
575
576
|
async def _run_generate():
|
|
576
577
|
info.status = SubAgentStatus.RUNNING
|
|
577
578
|
try:
|
|
578
579
|
await info.coder.generate(user_message=user_message, preproc=True)
|
|
580
|
+
|
|
579
581
|
if info.status == SubAgentStatus.RUNNING:
|
|
580
582
|
info.status = SubAgentStatus.FINISHED
|
|
581
583
|
info.summary = info.summary or DEFAULT_SUMMARY_COMPLETED
|
|
@@ -597,6 +599,8 @@ class AgentService:
|
|
|
597
599
|
)
|
|
598
600
|
await self._inject_sub_agent_result(info)
|
|
599
601
|
raise
|
|
602
|
+
except SwitchCoderSignal:
|
|
603
|
+
raise
|
|
600
604
|
|
|
601
605
|
# Cancel any previous generate task to prevent duplicate concurrent generates
|
|
602
606
|
if info.generate_task is not None and not info.generate_task.done():
|
|
@@ -604,8 +608,15 @@ class AgentService:
|
|
|
604
608
|
|
|
605
609
|
task = asyncio.create_task(_run_generate())
|
|
606
610
|
info.generate_task = task
|
|
611
|
+
|
|
612
|
+
def _raise_if_signal(exc):
|
|
613
|
+
if isinstance(exc, SwitchCoderSignal):
|
|
614
|
+
raise exc
|
|
615
|
+
|
|
607
616
|
# Suppress "Task exception was never retrieved" for fire-and-forget tasks
|
|
608
|
-
task.add_done_callback(
|
|
617
|
+
task.add_done_callback(
|
|
618
|
+
lambda t: _raise_if_signal(t.exception()) if not t.cancelled() else None
|
|
619
|
+
)
|
|
609
620
|
return task
|
|
610
621
|
|
|
611
622
|
async def _inject_sub_agent_result(self, info: SubAgentInfo) -> None:
|
|
@@ -272,16 +272,19 @@ class ConversationFiles:
|
|
|
272
272
|
self._file_diffs[abs_fname] = diff
|
|
273
273
|
|
|
274
274
|
rel_fname = fname
|
|
275
|
+
prefix_str = ""
|
|
275
276
|
|
|
276
277
|
if coder:
|
|
277
278
|
rel_fname = coder.get_rel_fname(fname)
|
|
279
|
+
prefix_str = "content ID prefixed " if getattr(coder, "hashlines") else ""
|
|
278
280
|
|
|
279
281
|
# Add diff message to conversation
|
|
280
282
|
content_hash = xxhash.xxh3_128_hexdigest(diff.encode("utf-8"))
|
|
283
|
+
|
|
281
284
|
diff_message = {
|
|
282
285
|
"role": "user",
|
|
283
286
|
"content": (
|
|
284
|
-
f"{rel_fname} has been updated. Review this diff of the changes to"
|
|
287
|
+
f"{rel_fname} has been updated. Review this {prefix_str}diff of the changes to"
|
|
285
288
|
f" ensure all modifications are appropriate:\n\n{diff}"
|
|
286
289
|
),
|
|
287
290
|
}
|
|
@@ -289,7 +292,7 @@ class ConversationFiles:
|
|
|
289
292
|
assistant_msg = {
|
|
290
293
|
"role": "assistant",
|
|
291
294
|
"content": (
|
|
292
|
-
f"Thank you for sharing this diff of the updates to {rel_fname}."
|
|
295
|
+
f"Thank you for sharing this {prefix_str}diff of the updates to {rel_fname}."
|
|
293
296
|
" I will review their contents."
|
|
294
297
|
),
|
|
295
298
|
}
|
|
@@ -104,6 +104,9 @@ class ConversationChunks:
|
|
|
104
104
|
priority=75 + i,
|
|
105
105
|
)
|
|
106
106
|
|
|
107
|
+
if self._cancel_post_message_injections():
|
|
108
|
+
return
|
|
109
|
+
|
|
107
110
|
# Add system reminder as a pre-prompt context block
|
|
108
111
|
use_reminders = getattr(coder.args, "use_reminders", True)
|
|
109
112
|
if (
|
|
@@ -165,6 +168,9 @@ class ConversationChunks:
|
|
|
165
168
|
if not coder:
|
|
166
169
|
return
|
|
167
170
|
|
|
171
|
+
# if self._cancel_post_message_injections():
|
|
172
|
+
# return
|
|
173
|
+
|
|
168
174
|
message = random.choice(
|
|
169
175
|
[
|
|
170
176
|
"Given the above, please call any tools necessary to make progress on your task",
|
|
@@ -179,7 +185,7 @@ class ConversationChunks:
|
|
|
179
185
|
),
|
|
180
186
|
(
|
|
181
187
|
"Continue making progress. If you have reached the goal, summarize the results."
|
|
182
|
-
" Otherwise, call the next necessary
|
|
188
|
+
" Otherwise, call the next necessary tools."
|
|
183
189
|
),
|
|
184
190
|
(
|
|
185
191
|
"Please use the proper tools to fulfill the next steps of this task based on"
|
|
@@ -278,7 +284,11 @@ class ConversationChunks:
|
|
|
278
284
|
|
|
279
285
|
self._last_clear_count += 1
|
|
280
286
|
|
|
281
|
-
if
|
|
287
|
+
if (
|
|
288
|
+
should_clear
|
|
289
|
+
and self._last_clear_count >= 20
|
|
290
|
+
and diff_tokens + other_tokens > coder.context_compaction_max_tokens * 0.5
|
|
291
|
+
):
|
|
282
292
|
self._last_clear_count = 0
|
|
283
293
|
|
|
284
294
|
# Clear all diff messages
|
|
@@ -344,6 +354,9 @@ class ConversationChunks:
|
|
|
344
354
|
if not coder:
|
|
345
355
|
return
|
|
346
356
|
|
|
357
|
+
if self._cancel_post_message_injections():
|
|
358
|
+
return
|
|
359
|
+
|
|
347
360
|
# Get relative paths for display
|
|
348
361
|
readonly_rel_files = []
|
|
349
362
|
if hasattr(coder, "abs_read_only_fnames"):
|
|
@@ -976,6 +989,9 @@ class ConversationChunks:
|
|
|
976
989
|
if not hasattr(coder, "use_enhanced_context") or not coder.use_enhanced_context:
|
|
977
990
|
return
|
|
978
991
|
|
|
992
|
+
if self._cancel_post_message_injections():
|
|
993
|
+
return
|
|
994
|
+
|
|
979
995
|
# Add post-message blocks as dict with block type as key
|
|
980
996
|
message_blocks = {}
|
|
981
997
|
|
|
@@ -1059,6 +1075,17 @@ class ConversationChunks:
|
|
|
1059
1075
|
def flush_removals(self):
|
|
1060
1076
|
self._deferred_removals.clear()
|
|
1061
1077
|
|
|
1078
|
+
def _cancel_post_message_injections(self):
|
|
1079
|
+
coder = self.get_coder()
|
|
1080
|
+
if not coder:
|
|
1081
|
+
return False
|
|
1082
|
+
|
|
1083
|
+
# Add system reminder as a pre-prompt context block
|
|
1084
|
+
if coder.edit_format in ("agent", "subagent") and coder.turn_count % 5 != 0:
|
|
1085
|
+
return True
|
|
1086
|
+
|
|
1087
|
+
return False
|
|
1088
|
+
|
|
1062
1089
|
def _shuffle_reminders(self, content: str) -> str:
|
|
1063
1090
|
"""
|
|
1064
1091
|
If the string is a critical_reminders block, shuffle all bulleted points
|