cecli-dev 0.99.11__tar.gz → 0.100.0rc1__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.99.11 → cecli_dev-0.100.0rc1}/PKG-INFO +8 -6
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/README.md +6 -5
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/__init__.py +1 -1
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/_version.py +3 -3
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/args.py +1 -1
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/__init__.py +2 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/agent_coder.py +115 -15
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/base_coder.py +99 -22
- cecli_dev-0.100.0rc1/cecli/coders/sub_agent_coder.py +22 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/__init__.py +10 -1
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/clear.py +2 -1
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/core.py +16 -11
- cecli_dev-0.100.0rc1/cecli/commands/invoke_agent.py +51 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/ls.py +3 -3
- cecli_dev-0.100.0rc1/cecli/commands/reap_agent.py +66 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/reset.py +2 -1
- cecli_dev-0.100.0rc1/cecli/commands/spawn_agent.py +40 -0
- cecli_dev-0.100.0rc1/cecli/helpers/agents/__init__.py +7 -0
- cecli_dev-0.100.0rc1/cecli/helpers/agents/config.py +79 -0
- cecli_dev-0.100.0rc1/cecli/helpers/agents/service.py +506 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/files.py +29 -11
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/integration.py +69 -13
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/manager.py +29 -11
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/service.py +1 -2
- cecli_dev-0.100.0rc1/cecli/helpers/io_proxy.py +256 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/leak_detect.py +42 -0
- cecli_dev-0.99.11/cecli/helpers/observations/manager.py → cecli_dev-0.100.0rc1/cecli/helpers/observations/service.py +56 -19
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/io.py +21 -20
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/main.py +14 -8
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/models.py +20 -0
- cecli_dev-0.100.0rc1/cecli/prompts/subagent.yml +62 -0
- cecli_dev-0.100.0rc1/cecli/queries/tree-sitter-language-pack/bash-tags.scm +8 -0
- cecli_dev-0.100.0rc1/cecli/queries/tree-sitter-languages/bash-tags.scm +8 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/repomap.py +30 -7
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/sessions.py +2 -2
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/__init__.py +2 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/context_manager.py +52 -7
- cecli_dev-0.100.0rc1/cecli/tools/delegate.py +125 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/edit_text.py +3 -3
- cecli_dev-0.100.0rc1/cecli/tools/finished.py +86 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/load_skill.py +1 -4
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/read_range.py +113 -28
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/remove_skill.py +1 -4
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/thinking.py +2 -2
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/utils/base_tool.py +2 -2
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/utils/registry.py +11 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/app.py +357 -49
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/io.py +179 -55
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/styles.tcss +2 -1
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/__init__.py +2 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/file_list.py +12 -2
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/footer.py +61 -4
- cecli_dev-0.100.0rc1/cecli/tui/widgets/input_container.py +127 -0
- cecli_dev-0.100.0rc1/cecli/tui/widgets/subagent_pills.py +164 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/worker.py +26 -6
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/agent-mode.md +18 -28
- cecli_dev-0.100.0rc1/cecli/website/docs/config/subagents.md +235 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli_dev.egg-info/PKG-INFO +8 -6
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli_dev.egg-info/SOURCES.txt +26 -2
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli_dev.egg-info/requires.txt +1 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/pytest.ini +1 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/common-constraints.txt +3 -1
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/requirements-dev.in +1 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/requirements-dev.txt +4 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_coder.py +17 -9
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_models.py +52 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_reasoning.py +4 -4
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_repomap.py +3 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/conversations/test_conversation_integration.py +1 -1
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/conversations/test_conversation_system.py +1 -1
- cecli_dev-0.100.0rc1/tests/fixtures/languages/bash/test.sh +19 -0
- cecli_dev-0.99.11/tests/helpers/observations/test_observation_manager.py → cecli_dev-0.100.0rc1/tests/helpers/observations/test_observation_service.py +7 -9
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/scrape/test_playwright_disable.py +2 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/scrape/test_scrape.py +2 -0
- cecli_dev-0.100.0rc1/tests/subagents/__init__.py +0 -0
- cecli_dev-0.100.0rc1/tests/subagents/conftest.py +60 -0
- cecli_dev-0.100.0rc1/tests/subagents/test_commands.py +234 -0
- cecli_dev-0.100.0rc1/tests/subagents/test_config.py +109 -0
- cecli_dev-0.100.0rc1/tests/subagents/test_delegate.py +116 -0
- cecli_dev-0.100.0rc1/tests/subagents/test_finished.py +109 -0
- cecli_dev-0.100.0rc1/tests/subagents/test_io_proxy.py +187 -0
- cecli_dev-0.100.0rc1/tests/subagents/test_service.py +653 -0
- cecli_dev-0.100.0rc1/tests/subagents/test_sub_agent_coder.py +153 -0
- cecli_dev-0.99.11/cecli/tools/finished.py +0 -41
- cecli_dev-0.99.11/cecli/tui/widgets/input_container.py +0 -24
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.dockerignore +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.flake8 +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.gitattributes +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/ISSUE_TEMPLATE/issue.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/check_pypi_version.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/docker-build-test.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/docker-release.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/issues.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/pages.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/pre-commit.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/release.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/ubuntu-tests.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/windows-tests.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.github/workflows/windows_check_pypi_version.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.gitignore +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/.pre-commit-config.yaml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/CHANGELOG.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/CNAME +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/CONTRIBUTING.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/HISTORY.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/LICENSE.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/MANIFEST.in +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/Dockerfile +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/README.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/benchmark.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/benchmark_classic.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/clone-exercism.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/cpp-test.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/docker.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/docker_build.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/install-docker-ubuntu.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/npm-test.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/over_time.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/plot.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/plots.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/problem_stats.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/prompts.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/refactor_tools.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/rsync.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/rungrid.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/swe-bench-lite.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/swe-bench.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/swe_bench.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/test_benchmark.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/variations.1.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/variations.2.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/variations.3.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/benchmark/variations.4.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/__main__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/args_formatter.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/change_tracker.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/architect_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/ask_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/chat_chunks.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/context_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/copypaste_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/editblock_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/editblock_fenced_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/editblock_func_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/editor_diff_fenced_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/editor_editblock_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/editor_whole_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/hashline_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/help_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/patch_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/search_replace.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/shell.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/single_wholefile_func_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/udiff_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/udiff_simple.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/wholefile_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/coders/wholefile_func_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/add.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/agent.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/agent_model.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/architect.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/ask.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/chat_mode.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/code.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/command_prefix.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/commit.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/compact.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/context.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/context_blocks.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/context_management.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/copy.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/copy_context.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/diff.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/drop.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/editor.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/editor_model.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/exclude_skill.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/exit.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/git.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/hashline.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/help.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/history_search.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/hooks.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/include_skill.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/lint.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/list_sessions.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/list_skills.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/load.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/load_hook.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/load_mcp.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/load_session.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/load_skill.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/map.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/map_refresh.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/model.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/models.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/multiline_mode.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/paste.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/quit.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/read_only.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/read_only_stub.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/reasoning_effort.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/remove_hook.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/remove_mcp.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/remove_skill.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/report.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/rules.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/run.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/save.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/save_session.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/settings.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/terminal_data/linux.keytab +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/terminal_setup.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/test.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/think_tokens.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/tokens.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/undo.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/utils/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/utils/base_command.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/utils/helpers.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/utils/registry.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/utils/save_load_manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/voice.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/weak_model.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/web.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/commands/workspace.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/deprecated_args.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/diffs.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/dump.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/editor.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/exceptions.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/format_settings.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/help.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/help_pats.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/background_commands.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/command_parser.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/base_message.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/tags.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/conversation/utils.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/copypaste.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/coroutines.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/file_searcher.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/grep_ast/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/grep_ast/dump.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/grep_ast/grep_ast.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/grep_ast/main.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/grep_ast/parsers.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/grep_ast/tsl.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/hashline.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/hashpos/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/hashpos/hashpos.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/model_providers.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/monorepo/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/monorepo/config.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/monorepo/project.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/monorepo/workspace.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/monorepo/worktree.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/nested.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/observations/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/plugin_manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/profiler.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/requests.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/responses.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/similarity.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/helpers/skills.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/history.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/hooks/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/hooks/base.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/hooks/integration.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/hooks/manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/hooks/registry.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/hooks/types.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/interruptible_input.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/linter.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/llm.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/mcp/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/mcp/manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/mcp/oauth.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/mcp/server.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/mcp/utils.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/mdstream.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/onboarding.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/agent.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/architect.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/ask.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/base.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/context.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/copypaste.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/editblock.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/editblock_fenced.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/editblock_func.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/editor_diff_fenced.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/editor_editblock.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/editor_whole.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/hashline.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/help.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/patch.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/single_wholefile_func.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/udiff.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/udiff_simple.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/utils/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/utils/registry.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/utils/system.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/wholefile.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/prompts/wholefile_func.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/README.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/c-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/clojure-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/d-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/go-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/java-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/matlab-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/ocaml-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/python-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/r-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/README.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/c-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/cpp-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/dart-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/elisp-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/elixir-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/elm-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/fortran-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/go-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/haskell-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/hcl-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/java-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/javascript-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/julia-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/matlab-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/ocaml_interface-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/php-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/python-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/ql-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/ruby-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/rust-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/scala-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/typescript-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/queries/tree-sitter-languages/zig-tags.scm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/reasoning_tags.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/repo.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/report.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/resources/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/resources/model-metadata.json +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/resources/model-settings.yml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/resources/providers.json +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/run_cmd.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/scrape.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/sendchat.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/special.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/command.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/command_interactive.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/explore_code.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/git_branch.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/git_diff.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/git_log.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/git_remote.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/git_show.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/git_status.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/grep.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/ls.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/undo_change.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/update_todo_list.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/utils/helpers.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tools/utils/output.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/completion_bar.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/input_area.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/key_hints.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/output.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/tui/widgets/status_bar.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/urls.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/utils.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/versioncheck.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/voice.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/waiting.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/watch.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/watch_prompts.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/Gemfile +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/blame.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/get-started.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/help-tip.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/help.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/install.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/keys.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/model-warnings.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/multi-line.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/python-m-aider.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/recording.css +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/recording.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_includes/works-best.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_features.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_footer.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_hero.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_info.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_layout.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_reset.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_testimonials.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_typography.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/_variables.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/custom/custom.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/_sass/global-overrides.scss +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/adv-model-settings.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/aider_conf.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/api-keys.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/custom-commands.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/custom-system-prompts.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/dotenv.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/editor.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/hooks.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/mcp.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/model-aliases.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/options.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/reasoning.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/security.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/skills.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/tui.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config/workspaces.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/config.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/faq.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/git.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/index.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/install/docker.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/install/optional.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/install.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/languages.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/legal/contributor-agreement.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/legal/privacy.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/anthropic.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/azure.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/bedrock.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/cohere.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/deepseek.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/gemini.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/github.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/groq.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/lm-studio.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/ollama.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/openai-compat.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/openai.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/openrouter.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/other.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/vertex.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/warnings.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms/xai.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/llms.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/more/analytics.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/more/edit-formats.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/more/infinite-output.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/more-info.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/repomap.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/scripting.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting/cecli-not-found.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting/edit-errors.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting/imports.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting/models-and-keys.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting/support.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting/token-limits.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting/warnings.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/troubleshooting.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/commands.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/conventions.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/copypaste.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/images-urls.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/lint-test.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/modes.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/not-code.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/notifications.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/sessions.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/tips.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/voice.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage/watch.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/docs/usage.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli/website/share/index.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli_dev.egg-info/dependency_links.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli_dev.egg-info/entry_points.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/cecli_dev.egg-info/top_level.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/docker/Dockerfile +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/docker/Dockerfile.local.nvidia.cuda.ubuntu +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/pyproject.toml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/requirements-help.in +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/requirements-help.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/requirements-playwright.in +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/requirements-playwright.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/requirements.in +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements/tree-sitter.in +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/requirements.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/30k-image.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/Dockerfile.jekyll +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/blame.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/clean_metadata.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/cost_analyzer.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/cost_calculator.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/dl_icons.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/filter-chat-mode.js +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/generate_providers.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/get_contributor_list.js +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/get_hashline.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/history_prompts.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/homepage.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/issues.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/jekyll_build.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/jekyll_run.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/logo_svg.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/pip-compile.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/recording_audio.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/redact-cast.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/rename_to_cecli.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/tmux_record.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/tsl_pack_langs.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/update-blame.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/update-docs.sh +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/update-history.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/versionbump.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/scripts/yank-old-versions.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/setup.cfg +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/shim.pyproject.toml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_aws_credentials.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_background_commands.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_commands.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_custom_commands.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_deprecated.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_editblock.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_editor.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_exceptions.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_find_or_blocks.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_hashline.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_history.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_io.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_linter.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_main.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_model_info_manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_model_provider_manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_onboarding.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_plugin_manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_prompts.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_repo.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_run_cmd.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_sanity_check_repo.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_scripting.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_sendchat.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_sessions.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_skills.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_special.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_ssl_verification.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_udiff.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_urls.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_voice.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_watch.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/basic/test_wholefile.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/coders/test_copypaste_coder.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/conftest.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/chat-history-search-replace-gold.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/chat-history.md +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/arduino/test.ino +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/c/test.c +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/chatito/test.chatito +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/clojure/test.clj +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/commonlisp/test.lisp +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/cpp/test.cpp +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/csharp/test.cs +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/d/test.d +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/dart/test.dart +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/elisp/test.el +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/elixir/test.ex +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/elm/test.elm +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/gleam/test.gleam +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/go/test.go +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/haskell/test.hs +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/hcl/test.tf +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/java/test.java +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/javascript/test.js +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/kotlin/test.kt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/lua/test.lua +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/matlab/test.m +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/ocaml/test.ml +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/ocaml_interface/test.mli +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/php/test.php +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/pony/test.pony +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/properties/test.properties +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/python/test.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/ql/test.ql +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/r/test.r +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/racket/test.rkt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/ruby/test.rb +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/rust/test.rs +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/scala/test.scala +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/solidity/test.sol +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/swift/test.swift +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/tsx/test.tsx +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/typescript/test.ts +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/udev/test.rules +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/languages/zig/test.zig +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/sample-code-base/sample.js +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/sample-code-base/sample.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/sample-code-base-repo-map.txt +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/watch.js +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/watch.lisp +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/watch.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/fixtures/watch_question.js +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/help/test_help.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/helpers/monorepo/test_config.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/helpers/monorepo/test_config_active.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/helpers/monorepo/test_ignore_logic.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/helpers/monorepo/test_repomap_workspace.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/helpers/monorepo/test_workspace.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/hooks/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/hooks/test_base.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/hooks/test_manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/hooks/test_registry.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/mcp/__init__.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/mcp/test_manager.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/tools/test_get_lines.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/tools/test_git_branch.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/tools/test_git_diff.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/tools/test_grep.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/tools/test_insert_block.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/tools/test_registry.py +0 -0
- {cecli_dev-0.99.11 → cecli_dev-0.100.0rc1}/tests/tui/test_app.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cecli-dev
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.100.0rc1
|
|
4
4
|
Summary: we also can't pronounce cecli
|
|
5
5
|
Project-URL: Homepage, https://github.com/dwash96/cecli
|
|
6
6
|
Project-URL: Documentation, https://github.com/dwash96/cecli
|
|
@@ -80,6 +80,7 @@ Requires-Dist: memray; extra == "dev"
|
|
|
80
80
|
Requires-Dist: objgraph; extra == "dev"
|
|
81
81
|
Requires-Dist: pympler; extra == "dev"
|
|
82
82
|
Requires-Dist: guppy3; extra == "dev"
|
|
83
|
+
Requires-Dist: psutil; extra == "dev"
|
|
83
84
|
Provides-Extra: help
|
|
84
85
|
Requires-Dist: llama-index-embeddings-huggingface; extra == "help"
|
|
85
86
|
Requires-Dist: numpy>=1.26.4; extra == "help"
|
|
@@ -110,6 +111,7 @@ LLMs are a part of our lives from here on out so join us in learning about and c
|
|
|
110
111
|
* [MCP Configuration](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/mcp.md)
|
|
111
112
|
* [TUI Configuration](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/tui.md)
|
|
112
113
|
* [Skills](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/skills.md)
|
|
114
|
+
* [Subagents](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/subagents.md)
|
|
113
115
|
* [Session Management](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/sessions.md)
|
|
114
116
|
* [Hooks](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/hooks.md)
|
|
115
117
|
* [Workspaces](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/workspaces.md)
|
|
@@ -232,7 +234,7 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
232
234
|
* [ ] Build an explicit workflow and local tooling for internal discovery mechanisms
|
|
233
235
|
|
|
234
236
|
4. **Context Delivery** - [Discussion](https://github.com/dwash96/cecli/issues/47)
|
|
235
|
-
* [
|
|
237
|
+
* [x] Use workflow for internal discovery to better target file snippets needed for specific tasks (ExploreCode and ReadRange)
|
|
236
238
|
* [x] Add support for partial files and code snippets in model completion messages
|
|
237
239
|
* [x] Update message request structure for optimal caching
|
|
238
240
|
|
|
@@ -251,12 +253,12 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
251
253
|
* [x] Add a dynamic tool discovery tool to allow the system to have only the tools it needs in context
|
|
252
254
|
|
|
253
255
|
7. **Sub Agents**
|
|
254
|
-
* [
|
|
256
|
+
* [x] Add `/invoke-agent` command to manually branch a sub agent and return a summary to the main context
|
|
255
257
|
* [x] Add an instance-able view of the conversation system so sub agents get their own context and workspaces
|
|
256
258
|
* [x] Modify coder classes to have discrete identifiers for themselves/management utilities for them to have their own slices of the world
|
|
257
259
|
* [x] Refactor global files like todo lists to live inside instance folders to avoid state conflicts
|
|
258
|
-
* [
|
|
259
|
-
* [
|
|
260
|
+
* [x] Add a `Delegate` tool that launches a sub agent as a background command that the parent model waits for to finish
|
|
261
|
+
* [x] Add visibility into active sub agent calls in TUI
|
|
260
262
|
|
|
261
263
|
8. **Hooks**
|
|
262
264
|
* [x] Add hooks base class for user defined python hooks with an execute method with type and priority settings
|
|
@@ -270,7 +272,7 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
270
272
|
* [x] Update internal file diff representation to support hashline propagation
|
|
271
273
|
|
|
272
274
|
10. **Dynamic Context Management**
|
|
273
|
-
* [
|
|
275
|
+
* [x] Update compaction to use observational memory sub agent calls to generate decision records that are used as the compaction basis
|
|
274
276
|
* [ ] Persist decision records to disk for sessions with some settings for managing lifetimes of such persistence
|
|
275
277
|
* [ ] Integrate RLM to extract information from decision records on disk and other definable notes
|
|
276
278
|
* [ ] Add a "describe" tool that launches a sub agent workflow that populates an RLM call's context with:
|
|
@@ -20,6 +20,7 @@ LLMs are a part of our lives from here on out so join us in learning about and c
|
|
|
20
20
|
* [MCP Configuration](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/mcp.md)
|
|
21
21
|
* [TUI Configuration](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/tui.md)
|
|
22
22
|
* [Skills](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/skills.md)
|
|
23
|
+
* [Subagents](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/subagents.md)
|
|
23
24
|
* [Session Management](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/sessions.md)
|
|
24
25
|
* [Hooks](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/hooks.md)
|
|
25
26
|
* [Workspaces](https://github.com/dwash96/cecli/blob/main/cecli/website/docs/config/workspaces.md)
|
|
@@ -142,7 +143,7 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
142
143
|
* [ ] Build an explicit workflow and local tooling for internal discovery mechanisms
|
|
143
144
|
|
|
144
145
|
4. **Context Delivery** - [Discussion](https://github.com/dwash96/cecli/issues/47)
|
|
145
|
-
* [
|
|
146
|
+
* [x] Use workflow for internal discovery to better target file snippets needed for specific tasks (ExploreCode and ReadRange)
|
|
146
147
|
* [x] Add support for partial files and code snippets in model completion messages
|
|
147
148
|
* [x] Update message request structure for optimal caching
|
|
148
149
|
|
|
@@ -161,12 +162,12 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
161
162
|
* [x] Add a dynamic tool discovery tool to allow the system to have only the tools it needs in context
|
|
162
163
|
|
|
163
164
|
7. **Sub Agents**
|
|
164
|
-
* [
|
|
165
|
+
* [x] Add `/invoke-agent` command to manually branch a sub agent and return a summary to the main context
|
|
165
166
|
* [x] Add an instance-able view of the conversation system so sub agents get their own context and workspaces
|
|
166
167
|
* [x] Modify coder classes to have discrete identifiers for themselves/management utilities for them to have their own slices of the world
|
|
167
168
|
* [x] Refactor global files like todo lists to live inside instance folders to avoid state conflicts
|
|
168
|
-
* [
|
|
169
|
-
* [
|
|
169
|
+
* [x] Add a `Delegate` tool that launches a sub agent as a background command that the parent model waits for to finish
|
|
170
|
+
* [x] Add visibility into active sub agent calls in TUI
|
|
170
171
|
|
|
171
172
|
8. **Hooks**
|
|
172
173
|
* [x] Add hooks base class for user defined python hooks with an execute method with type and priority settings
|
|
@@ -180,7 +181,7 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
180
181
|
* [x] Update internal file diff representation to support hashline propagation
|
|
181
182
|
|
|
182
183
|
10. **Dynamic Context Management**
|
|
183
|
-
* [
|
|
184
|
+
* [x] Update compaction to use observational memory sub agent calls to generate decision records that are used as the compaction basis
|
|
184
185
|
* [ ] Persist decision records to disk for sessions with some settings for managing lifetimes of such persistence
|
|
185
186
|
* [ ] Integrate RLM to extract information from decision records on disk and other definable notes
|
|
186
187
|
* [ ] Add a "describe" tool that launches a sub agent workflow that populates an RLM call's context with:
|
|
@@ -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.
|
|
22
|
-
__version_tuple__ = version_tuple = (0,
|
|
21
|
+
__version__ = version = '0.100.0rc1'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 100, 0, 'rc1')
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'gd703941b6'
|
|
@@ -12,6 +12,7 @@ from .editor_whole_coder import EditorWholeFileCoder
|
|
|
12
12
|
from .hashline_coder import HashLineCoder
|
|
13
13
|
from .help_coder import HelpCoder
|
|
14
14
|
from .patch_coder import PatchCoder
|
|
15
|
+
from .sub_agent_coder import SubAgentCoder
|
|
15
16
|
from .udiff_coder import UnifiedDiffCoder
|
|
16
17
|
from .udiff_simple import UnifiedDiffSimpleCoder
|
|
17
18
|
from .wholefile_coder import WholeFileCoder
|
|
@@ -37,4 +38,5 @@ __all__ = [
|
|
|
37
38
|
AgentCoder,
|
|
38
39
|
CopyPasteCoder,
|
|
39
40
|
HashLineCoder,
|
|
41
|
+
SubAgentCoder,
|
|
40
42
|
]
|
|
@@ -2,6 +2,7 @@ import asyncio
|
|
|
2
2
|
import base64
|
|
3
3
|
import json
|
|
4
4
|
import locale
|
|
5
|
+
import logging
|
|
5
6
|
import os
|
|
6
7
|
import platform
|
|
7
8
|
import random
|
|
@@ -14,6 +15,7 @@ from pathlib import Path
|
|
|
14
15
|
from cecli import utils
|
|
15
16
|
from cecli.change_tracker import ChangeTracker
|
|
16
17
|
from cecli.helpers import nested, responses
|
|
18
|
+
from cecli.helpers.agents.service import AgentService
|
|
17
19
|
from cecli.helpers.background_commands import BackgroundCommandManager
|
|
18
20
|
from cecli.helpers.conversation import ConversationService, MessageTag
|
|
19
21
|
from cecli.helpers.similarity import (
|
|
@@ -33,6 +35,8 @@ from .base_coder import Coder
|
|
|
33
35
|
|
|
34
36
|
from cecli.helpers.coroutines import interruptible # isort:skip
|
|
35
37
|
|
|
38
|
+
logger = logging.getLogger(__name__)
|
|
39
|
+
|
|
36
40
|
|
|
37
41
|
class AgentCoder(Coder):
|
|
38
42
|
"""Mode where the LLM autonomously manages which files are in context."""
|
|
@@ -40,6 +44,7 @@ class AgentCoder(Coder):
|
|
|
40
44
|
edit_format = "agent"
|
|
41
45
|
prompt_format = "agent"
|
|
42
46
|
context_management_enabled = True
|
|
47
|
+
|
|
43
48
|
hashlines = True
|
|
44
49
|
stop_on_empty = False
|
|
45
50
|
|
|
@@ -92,11 +97,32 @@ class AgentCoder(Coder):
|
|
|
92
97
|
self.skip_cli_confirmations = False
|
|
93
98
|
self.agent_finished = False
|
|
94
99
|
self.agent_config = self._get_agent_config()
|
|
100
|
+
self.max_sub_agents = self.agent_config.get("max_sub_agents", 3)
|
|
101
|
+
self.sub_agent_paths = self.agent_config.get("subagent_paths", [])
|
|
95
102
|
self._setup_agent()
|
|
103
|
+
|
|
104
|
+
AgentService.build_registry(self.sub_agent_paths)
|
|
96
105
|
ToolRegistry.build_registry(agent_config=self.agent_config)
|
|
106
|
+
|
|
97
107
|
self.loaded_custom_tools = ToolRegistry.loaded_custom_tools
|
|
98
108
|
super().__init__(*args, **kwargs)
|
|
99
109
|
|
|
110
|
+
def post_init(self):
|
|
111
|
+
super().post_init()
|
|
112
|
+
# Populate per-instance tool and server filters from config
|
|
113
|
+
self.registered_tools["included"] = set(
|
|
114
|
+
map(str.lower, self.agent_config.get("tools_includelist", []))
|
|
115
|
+
)
|
|
116
|
+
self.registered_tools["excluded"] = set(
|
|
117
|
+
map(str.lower, self.agent_config.get("tools_excludelist", []))
|
|
118
|
+
)
|
|
119
|
+
self.registered_servers["included"] = set(
|
|
120
|
+
map(str.lower, self.agent_config.get("servers_includelist", []))
|
|
121
|
+
)
|
|
122
|
+
self.registered_servers["excluded"] = set(
|
|
123
|
+
map(str.lower, self.agent_config.get("servers_excludelist", []))
|
|
124
|
+
)
|
|
125
|
+
|
|
100
126
|
def _setup_agent(self):
|
|
101
127
|
os.makedirs(".cecli/temp", exist_ok=True)
|
|
102
128
|
|
|
@@ -137,6 +163,12 @@ class AgentCoder(Coder):
|
|
|
137
163
|
config, ["tools_excludelist", "tools_blacklist"], []
|
|
138
164
|
)
|
|
139
165
|
|
|
166
|
+
config["servers_includelist"] = nested.getter(
|
|
167
|
+
config, ["servers_includelist", "servers_whitelist"], []
|
|
168
|
+
)
|
|
169
|
+
config["servers_excludelist"] = nested.getter(
|
|
170
|
+
config, ["servers_excludelist", "servers_blacklist"], []
|
|
171
|
+
)
|
|
140
172
|
config["include_context_blocks"] = set(
|
|
141
173
|
nested.getter(
|
|
142
174
|
config,
|
|
@@ -148,6 +180,7 @@ class AgentCoder(Coder):
|
|
|
148
180
|
# "git_status",
|
|
149
181
|
# "symbol_outline",
|
|
150
182
|
"todo_list",
|
|
183
|
+
"sub_agents",
|
|
151
184
|
"skills",
|
|
152
185
|
},
|
|
153
186
|
)
|
|
@@ -282,9 +315,7 @@ class AgentCoder(Coder):
|
|
|
282
315
|
content_parts.append(item.text)
|
|
283
316
|
return "".join(content_parts)
|
|
284
317
|
except Exception as e:
|
|
285
|
-
self.io.tool_warning(
|
|
286
|
-
(f"Executing {tool_name} on {server.name} failed:\nError: {e}")
|
|
287
|
-
)
|
|
318
|
+
self.io.tool_warning(f"Executing {tool_name} on {server.name} failed:\nError: {e}")
|
|
288
319
|
return f"Error executing tool call {tool_name}: {e}"
|
|
289
320
|
|
|
290
321
|
result, interrupted = await interruptible(_exec_async(), self.interrupt_event)
|
|
@@ -354,6 +385,8 @@ class AgentCoder(Coder):
|
|
|
354
385
|
content = self.get_skills_context()
|
|
355
386
|
elif block_name == "loaded_skills":
|
|
356
387
|
content = self.get_skills_content()
|
|
388
|
+
elif block_name == "sub_agents":
|
|
389
|
+
content = self.get_sub_agents_context()
|
|
357
390
|
if content is not None:
|
|
358
391
|
self.context_blocks_cache[block_name] = content
|
|
359
392
|
return content
|
|
@@ -381,7 +414,10 @@ class AgentCoder(Coder):
|
|
|
381
414
|
try:
|
|
382
415
|
result = '<context name="symbol_outline" from="agent">\n'
|
|
383
416
|
result += "## Symbol Outline (Current Context)\n\n"
|
|
384
|
-
result +=
|
|
417
|
+
result += (
|
|
418
|
+
"Code definitions (classes, functions, methods, etc.) found in files currently in"
|
|
419
|
+
" chat context."
|
|
420
|
+
)
|
|
385
421
|
result += "\n\n"
|
|
386
422
|
files_to_outline = list(self.abs_fnames) + list(self.abs_read_only_fnames)
|
|
387
423
|
if not files_to_outline:
|
|
@@ -459,7 +495,22 @@ class AgentCoder(Coder):
|
|
|
459
495
|
ConversationService.get_chunks(self).add_file_list_reminder()
|
|
460
496
|
|
|
461
497
|
# Add system messages (including examples and reminder)
|
|
462
|
-
|
|
498
|
+
# For sub-agents, use their specific system prompt via AgentService lookup
|
|
499
|
+
# For primary agents, use the default system messages flow
|
|
500
|
+
needs_system_prompts = True
|
|
501
|
+
if hasattr(self, "parent_uuid") and self.parent_uuid:
|
|
502
|
+
from cecli.helpers.agents.service import AgentService
|
|
503
|
+
|
|
504
|
+
service = AgentService.get_instance(self)
|
|
505
|
+
info = service.sub_agents.get(self.uuid)
|
|
506
|
+
if info:
|
|
507
|
+
config = AgentService.get_registry().get(info.name)
|
|
508
|
+
if config and config.prompt and config.prompt.strip():
|
|
509
|
+
ConversationService.get_chunks(self).add_system_message(config.prompt)
|
|
510
|
+
needs_system_prompts = False
|
|
511
|
+
|
|
512
|
+
if needs_system_prompts:
|
|
513
|
+
ConversationService.get_chunks(self).add_system_messages()
|
|
463
514
|
|
|
464
515
|
# Add static context blocks (priority 50 - between SYSTEM and EXAMPLES)
|
|
465
516
|
ConversationService.get_chunks(self).add_static_context_blocks()
|
|
@@ -522,7 +573,10 @@ class AgentCoder(Coder):
|
|
|
522
573
|
)
|
|
523
574
|
if editable_files:
|
|
524
575
|
result += "\n".join(editable_files) + "\n\n"
|
|
525
|
-
result +=
|
|
576
|
+
result += (
|
|
577
|
+
f"**Total editable: {len(editable_files)} files,"
|
|
578
|
+
f" {editable_tokens:,} tokens**\n\n"
|
|
579
|
+
)
|
|
526
580
|
else:
|
|
527
581
|
result += "No editable files in context\n\n"
|
|
528
582
|
if self.abs_read_only_fnames:
|
|
@@ -542,7 +596,10 @@ class AgentCoder(Coder):
|
|
|
542
596
|
)
|
|
543
597
|
if readonly_files:
|
|
544
598
|
result += "\n".join(readonly_files) + "\n\n"
|
|
545
|
-
result +=
|
|
599
|
+
result += (
|
|
600
|
+
f"**Total read-only: {len(readonly_files)} files,"
|
|
601
|
+
f" {readonly_tokens:,} tokens**\n\n"
|
|
602
|
+
)
|
|
546
603
|
else:
|
|
547
604
|
result += "No read-only files in context\n\n"
|
|
548
605
|
extra_tokens = sum(self.context_block_tokens.values())
|
|
@@ -730,7 +787,7 @@ class AgentCoder(Coder):
|
|
|
730
787
|
self.model_kwargs = {}
|
|
731
788
|
result_message = f"Error executing {tool_name}: {e}"
|
|
732
789
|
self.io.tool_error(
|
|
733
|
-
|
|
790
|
+
f"Error during {tool_name} execution: {e}\n{traceback.format_exc()}"
|
|
734
791
|
)
|
|
735
792
|
tool_responses.append(
|
|
736
793
|
{"role": "tool", "tool_call_id": tool_call.id, "content": result_message}
|
|
@@ -801,6 +858,7 @@ class AgentCoder(Coder):
|
|
|
801
858
|
# 1. Handle Tool Execution Follow-up (Reflection)
|
|
802
859
|
if self.agent_finished:
|
|
803
860
|
self.tool_usage_history = []
|
|
861
|
+
self.tool_call_vectors = []
|
|
804
862
|
self.reflected_message = None
|
|
805
863
|
if self.files_edited_by_tools:
|
|
806
864
|
_ = await self.auto_commit(self.files_edited_by_tools)
|
|
@@ -853,11 +911,15 @@ class AgentCoder(Coder):
|
|
|
853
911
|
self.tool_usage_history = []
|
|
854
912
|
return True
|
|
855
913
|
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
914
|
+
# 4. If we have called no tools (e.g. the first message)
|
|
915
|
+
# Allow early exiting
|
|
916
|
+
# If a model forgets a tool call, replay the request instead of stopping early
|
|
917
|
+
if self.tool_call_vectors:
|
|
918
|
+
if content and not tool_calls_found and self.num_reflections < self.max_reflections:
|
|
919
|
+
self.reflected_message = (
|
|
920
|
+
"Continue with your task. If you have completed it, call the `Finished` tool."
|
|
921
|
+
)
|
|
922
|
+
return True
|
|
861
923
|
|
|
862
924
|
if tool_calls_found and self.num_reflections < self.max_reflections:
|
|
863
925
|
self.tool_call_count = 0
|
|
@@ -1020,8 +1082,8 @@ class AgentCoder(Coder):
|
|
|
1020
1082
|
context_parts.append("## File Editing Tools Disabled")
|
|
1021
1083
|
context_parts.append(
|
|
1022
1084
|
"File editing tools are currently disabled. Use `ReadRange` to determine the"
|
|
1023
|
-
" current content hash prefixes needed to perform an edit and activate them when
|
|
1024
|
-
" are ready to edit a file."
|
|
1085
|
+
" current content hash prefixes needed to perform an edit and activate them when"
|
|
1086
|
+
" you are ready to edit a file."
|
|
1025
1087
|
)
|
|
1026
1088
|
|
|
1027
1089
|
context_parts.append("\n\n")
|
|
@@ -1377,6 +1439,44 @@ Todo list does not exist. Please update it with the `UpdateTodoList` tool.</cont
|
|
|
1377
1439
|
self.io.tool_error(f"Error generating skills content context: {str(e)}")
|
|
1378
1440
|
return None
|
|
1379
1441
|
|
|
1442
|
+
def get_sub_agents_context(self):
|
|
1443
|
+
"""
|
|
1444
|
+
Generate a context block for registered sub-agents.
|
|
1445
|
+
Only shown for primary coders (no parent_uuid).
|
|
1446
|
+
|
|
1447
|
+
Returns:
|
|
1448
|
+
Formatted context block string with sub-agent names and descriptions,
|
|
1449
|
+
or None if no sub-agents are registered or if called from a sub-agent.
|
|
1450
|
+
"""
|
|
1451
|
+
if not self.use_enhanced_context:
|
|
1452
|
+
return None
|
|
1453
|
+
if hasattr(self, "parent_uuid") and self.parent_uuid:
|
|
1454
|
+
return None
|
|
1455
|
+
try:
|
|
1456
|
+
from cecli.helpers.agents.service import AgentService
|
|
1457
|
+
|
|
1458
|
+
registry = AgentService.get_registry()
|
|
1459
|
+
if not registry:
|
|
1460
|
+
return None
|
|
1461
|
+
|
|
1462
|
+
result = '<context name="sub_agents" from="agent">\n'
|
|
1463
|
+
result += "## Available Sub-Agents\n\n"
|
|
1464
|
+
result += f"Found {len(registry)} registered sub-agent(s):\n\n"
|
|
1465
|
+
|
|
1466
|
+
for name, config in sorted(registry.items()):
|
|
1467
|
+
result += f"**{name}**:\n"
|
|
1468
|
+
desc = config.metadata.get("description", "")
|
|
1469
|
+
if desc:
|
|
1470
|
+
result += f"{desc}\n"
|
|
1471
|
+
result += "\n"
|
|
1472
|
+
|
|
1473
|
+
result += "Use the `Delegate` tool with the sub-agent name to delegate tasks.\n"
|
|
1474
|
+
result += "</context>"
|
|
1475
|
+
return result
|
|
1476
|
+
except Exception as e:
|
|
1477
|
+
self.io.tool_error(f"Error generating sub-agents context: {str(e)}")
|
|
1478
|
+
return None
|
|
1479
|
+
|
|
1380
1480
|
def get_background_command_output(self):
|
|
1381
1481
|
"""
|
|
1382
1482
|
Get background command output to append after the main message.
|