cecli-dev 0.96.5__tar.gz → 0.96.6__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.96.5 → cecli_dev-0.96.6}/PKG-INFO +12 -12
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/README.md +11 -11
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/__init__.py +1 -1
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/_version.py +3 -3
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/base_coder.py +9 -3
- cecli_dev-0.96.6/cecli/helpers/command_parser.py +179 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/output.py +21 -18
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli_dev.egg-info/PKG-INFO +12 -12
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli_dev.egg-info/SOURCES.txt +1 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.dockerignore +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.flake8 +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.gitattributes +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/ISSUE_TEMPLATE/issue.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/check_pypi_version.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/docker-build-test.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/docker-release.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/issues.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/pages.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/pre-commit.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/release.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/ubuntu-tests.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/windows-tests.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.github/workflows/windows_check_pypi_version.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.gitignore +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/.pre-commit-config.yaml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/CHANGELOG.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/CNAME +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/CONTRIBUTING.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/HISTORY.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/LICENSE.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/MANIFEST.in +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/Dockerfile +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/README.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/benchmark.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/benchmark_classic.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/clone-exercism.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/cpp-test.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/docker.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/docker_build.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/install-docker-ubuntu.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/npm-test.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/over_time.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/plot.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/plots.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/problem_stats.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/prompts.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/refactor_tools.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/rsync.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/rungrid.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/swe-bench-lite.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/swe-bench.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/swe_bench.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/benchmark/test_benchmark.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/__main__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/args.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/args_formatter.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/change_tracker.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/agent_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/architect_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/ask_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/chat_chunks.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/context_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/copypaste_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/editblock_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/editblock_fenced_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/editblock_func_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/editor_diff_fenced_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/editor_editblock_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/editor_whole_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/help_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/patch_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/search_replace.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/shell.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/single_wholefile_func_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/udiff_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/udiff_simple.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/wholefile_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/coders/wholefile_func_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/add.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/agent.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/architect.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/ask.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/chat_mode.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/clear.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/code.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/command_prefix.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/commit.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/compact.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/context.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/context_blocks.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/context_management.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/copy.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/copy_context.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/core.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/diff.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/drop.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/editor.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/editor_model.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/exit.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/git.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/help.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/history_search.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/lint.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/list_sessions.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/load.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/load_mcp.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/load_session.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/load_skill.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/ls.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/map.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/map_refresh.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/model.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/models.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/multiline_mode.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/paste.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/quit.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/read_only.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/read_only_stub.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/reasoning_effort.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/remove_mcp.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/remove_skill.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/report.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/reset.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/run.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/save.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/save_session.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/settings.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/terminal_data/linux.keytab +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/terminal_setup.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/test.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/think_tokens.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/tokens.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/undo.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/utils/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/utils/base_command.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/utils/helpers.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/utils/registry.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/utils/save_load_manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/voice.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/weak_model.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/commands/web.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/deprecated_args.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/diffs.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/dump.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/editor.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/exceptions.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/format_settings.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/help.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/help_pats.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/background_commands.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/conversation/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/conversation/base_message.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/conversation/files.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/conversation/integration.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/conversation/manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/conversation/tags.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/conversation/utils.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/copypaste.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/coroutines.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/file_searcher.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/model_providers.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/nested.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/plugin_manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/profiler.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/requests.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/similarity.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/helpers/skills.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/history.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/io.py +2 -2
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/linter.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/llm.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/main.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/mcp/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/mcp/manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/mcp/oauth.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/mcp/server.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/mcp/utils.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/mdstream.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/models.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/onboarding.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/agent.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/architect.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/ask.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/base.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/context.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/copypaste.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/editblock.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/editblock_fenced.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/editblock_func.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/editor_diff_fenced.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/editor_editblock.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/editor_whole.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/help.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/patch.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/single_wholefile_func.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/udiff.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/udiff_simple.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/utils/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/utils/registry.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/utils/system.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/wholefile.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/prompts/wholefile_func.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/README.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/c-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/clojure-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/d-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/go-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/java-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/matlab-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/ocaml-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/python-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/r-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/README.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/c-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/cpp-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/dart-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/elisp-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/elixir-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/elm-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/fortran-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/go-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/haskell-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/hcl-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/java-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/javascript-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/julia-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/matlab-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/ocaml_interface-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/php-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/python-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/ql-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/ruby-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/rust-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/scala-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/typescript-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/queries/tree-sitter-languages/zig-tags.scm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/reasoning_tags.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/repo.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/repomap.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/report.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/resources/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/resources/model-metadata.json +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/resources/model-settings.yml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/resources/providers.json +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/run_cmd.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/scrape.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/sendchat.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/sessions.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/special.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/command.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/command_interactive.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/context_manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/delete_block.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/delete_line.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/delete_lines.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/extract_lines.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/finished.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/git_branch.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/git_diff.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/git_log.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/git_remote.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/git_show.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/git_status.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/grep.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/indent_lines.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/insert_block.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/list_changes.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/load_skill.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/ls.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/remove_skill.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/replace_text.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/show_numbered_context.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/thinking.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/undo_change.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/update_todo_list.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/utils/base_tool.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/utils/helpers.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/utils/output.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/utils/registry.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/view_files_matching.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tools/view_files_with_symbol.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/app.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/io.py +2 -2
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/styles.tcss +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/completion_bar.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/file_list.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/footer.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/input_area.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/input_container.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/key_hints.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/widgets/status_bar.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/tui/worker.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/urls.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/utils.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/versioncheck.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/voice.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/waiting.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/watch.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/watch_prompts.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/Gemfile +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/blame.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/get-started.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/help-tip.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/help.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/install.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/keys.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/model-warnings.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/multi-line.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/python-m-aider.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/recording.css +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/recording.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/replit-pipx.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_includes/works-best.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/_sass/custom/custom.scss +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/adv-model-settings.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/agent-mode.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/aider_conf.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/api-keys.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/custom-commands.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/custom-system-prompts.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/dotenv.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/editor.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/mcp.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/model-aliases.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/options.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/reasoning.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/skills.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config/tui.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/config.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/faq.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/git.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/index.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/install/codespaces.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/install/docker.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/install/optional.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/install/replit.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/install.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/languages.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/legal/contributor-agreement.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/legal/privacy.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/anthropic.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/azure.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/bedrock.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/cohere.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/deepseek.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/gemini.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/github.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/groq.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/lm-studio.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/ollama.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/openai-compat.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/openai.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/openrouter.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/other.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/vertex.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/warnings.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms/xai.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/llms.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/more/analytics.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/more/edit-formats.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/more/infinite-output.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/more-info.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/recordings/auto-accept-architect.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/recordings/dont-drop-original-read-files.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/recordings/index.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/recordings/model-accepts-settings.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/recordings/tree-sitter-language-pack.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/repomap.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/scripting.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/sessions.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting/aider-not-found.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting/edit-errors.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting/imports.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting/models-and-keys.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting/support.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting/token-limits.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting/warnings.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/troubleshooting.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/browser.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/caching.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/commands.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/conventions.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/copypaste.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/images-urls.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/lint-test.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/modes.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/not-code.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/notifications.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/tips.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/tutorials.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/voice.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage/watch.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/docs/usage.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli/website/share/index.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli_dev.egg-info/dependency_links.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli_dev.egg-info/entry_points.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli_dev.egg-info/requires.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/cecli_dev.egg-info/top_level.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/docker/Dockerfile +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/docker/Dockerfile.local.nvidia.cuda.ubuntu +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/pyproject.toml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/pytest.ini +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/common-constraints.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/requirements-dev.in +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/requirements-dev.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/requirements-help.in +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/requirements-help.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/requirements-playwright.in +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/requirements-playwright.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/requirements.in +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements/tree-sitter.in +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/requirements.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/30k-image.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/Dockerfile.jekyll +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/blame.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/clean_metadata.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/cost_analyzer.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/dl_icons.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/filter-chat-mode.js +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/generate_providers.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/get_contributor_list.js +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/history_prompts.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/homepage.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/issues.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/jekyll_build.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/jekyll_run.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/logo_svg.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/pip-compile.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/recording_audio.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/redact-cast.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/rename_to_cecli.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/tmux_record.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/tsl_pack_langs.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/update-blame.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/update-docs.sh +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/update-history.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/versionbump.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/scripts/yank-old-versions.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/setup.cfg +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/shim.pyproject.toml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_aws_credentials.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_background_commands.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_commands.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_custom_commands.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_deprecated.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_editblock.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_editor.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_exceptions.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_find_or_blocks.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_history.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_io.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_linter.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_main.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_model_info_manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_model_provider_manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_models.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_onboarding.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_plugin_manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_prompts.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_reasoning.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_repo.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_repomap.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_run_cmd.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_sanity_check_repo.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_scripting.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_sendchat.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_sessions.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_skills.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_special.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_ssl_verification.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_udiff.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_urls.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_voice.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_watch.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/basic/test_wholefile.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/coders/test_copypaste_coder.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/conftest.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/chat-history-search-replace-gold.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/chat-history.md +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/arduino/test.ino +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/c/test.c +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/chatito/test.chatito +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/clojure/test.clj +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/commonlisp/test.lisp +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/cpp/test.cpp +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/csharp/test.cs +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/d/test.d +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/dart/test.dart +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/elisp/test.el +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/elixir/test.ex +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/elm/test.elm +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/gleam/test.gleam +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/go/test.go +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/haskell/test.hs +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/hcl/test.tf +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/java/test.java +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/javascript/test.js +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/kotlin/test.kt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/lua/test.lua +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/matlab/test.m +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/ocaml/test.ml +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/ocaml_interface/test.mli +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/php/test.php +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/pony/test.pony +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/properties/test.properties +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/python/test.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/ql/test.ql +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/r/test.r +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/racket/test.rkt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/ruby/test.rb +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/rust/test.rs +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/scala/test.scala +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/solidity/test.sol +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/swift/test.swift +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/tsx/test.tsx +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/typescript/test.ts +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/udev/test.rules +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/languages/zig/test.zig +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/sample-code-base/sample.js +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/sample-code-base/sample.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/sample-code-base-repo-map.txt +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/watch.js +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/watch.lisp +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/watch.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/fixtures/watch_question.js +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/help/test_help.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/mcp/__init__.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/mcp/test_manager.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/scrape/test_playwright_disable.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/scrape/test_scrape.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/test_conversation_integration.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/test_conversation_system.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/tools/test_git_branch.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/tools/test_git_diff.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/tools/test_grep.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/tools/test_insert_block.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/tools/test_registry.py +0 -0
- {cecli_dev-0.96.5 → cecli_dev-0.96.6}/tests/tools/test_show_numbered_context.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cecli-dev
|
|
3
|
-
Version: 0.96.
|
|
3
|
+
Version: 0.96.6
|
|
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
|
|
@@ -131,14 +131,14 @@ or
|
|
|
131
131
|
uv pip install --native-tls cecli-dev
|
|
132
132
|
```
|
|
133
133
|
|
|
134
|
-
The package exports a `cecli` command that accepts all of Aider's configuration options
|
|
134
|
+
The package exports a `cecli` command that accepts all of Aider's configuration options (and a few more!)
|
|
135
135
|
|
|
136
136
|
### Tool Installation
|
|
137
137
|
```bash
|
|
138
138
|
uv tool install --native-tls --python python3.12 cecli-dev
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
-
Use the tool installation so
|
|
141
|
+
Use the tool installation so cecli doesn't interfere with your development environment
|
|
142
142
|
|
|
143
143
|
## Configuration
|
|
144
144
|
|
|
@@ -155,15 +155,15 @@ cache-prompts: true
|
|
|
155
155
|
check-update: true
|
|
156
156
|
debug: false
|
|
157
157
|
enable-context-compaction: true
|
|
158
|
-
context-compaction-max-tokens:
|
|
159
|
-
env-file: .
|
|
158
|
+
context-compaction-max-tokens: 0.8
|
|
159
|
+
env-file: .cecli.env
|
|
160
160
|
show-model-warnings: true
|
|
161
|
-
use-enhanced-map: true
|
|
161
|
+
use-enhanced-map: true.p
|
|
162
162
|
watch-files: false
|
|
163
163
|
tui: true
|
|
164
164
|
|
|
165
165
|
agent-config:
|
|
166
|
-
large_file_token_threshold:
|
|
166
|
+
large_file_token_threshold: 8192
|
|
167
167
|
skip_cli_confirmations: false
|
|
168
168
|
|
|
169
169
|
mcp-servers:
|
|
@@ -173,7 +173,7 @@ mcp-servers:
|
|
|
173
173
|
url: https://mcp.context7.com/mcp
|
|
174
174
|
```
|
|
175
175
|
|
|
176
|
-
Use the adjacent .
|
|
176
|
+
Use the adjacent .cecli.env file to store model api keys as environment variables, e.g:
|
|
177
177
|
|
|
178
178
|
```
|
|
179
179
|
ANTHROPIC_API_KEY="..."
|
|
@@ -185,7 +185,7 @@ DEEPSEEK_API_KEY="..."
|
|
|
185
185
|
|
|
186
186
|
### Run Program
|
|
187
187
|
|
|
188
|
-
If you are in the directory with your .
|
|
188
|
+
If you are in the directory with your .cecli.conf.yml file, then simply running `cecli` or `aider-ce` will start the agent with your configuration. For best results, since terminal emulators can be finicky, we highly suggest running:
|
|
189
189
|
|
|
190
190
|
```bash
|
|
191
191
|
cecli --terminal-setup
|
|
@@ -210,7 +210,7 @@ This command will make sure all commands ran by the coding agent happen in conte
|
|
|
210
210
|
|
|
211
211
|
## Project Roadmap/Goals
|
|
212
212
|
|
|
213
|
-
The current priorities are to improve core capabilities and user experience of the
|
|
213
|
+
The current priorities are to improve core capabilities and user experience of the `cecli` project
|
|
214
214
|
|
|
215
215
|
1. **Base Asynchronicity (cecli coroutine-experiment branch)**
|
|
216
216
|
* [x] Refactor codebase to have the main loop run asynchronously
|
|
@@ -223,14 +223,14 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
223
223
|
|
|
224
224
|
3. **Context Discovery** - [Discussion](https://github.com/dwash96/cecli/issues/46)
|
|
225
225
|
* [ ] Develop AST-based search capabilities
|
|
226
|
-
* [
|
|
226
|
+
* [x] Enhance file search with ripgrep integration
|
|
227
227
|
* [ ] Implement RAG (Retrieval-Augmented Generation) for better code retrieval
|
|
228
228
|
* [ ] Build an explicit workflow and local tooling for internal discovery mechanisms
|
|
229
229
|
|
|
230
230
|
4. **Context Delivery** - [Discussion](https://github.com/dwash96/cecli/issues/47)
|
|
231
231
|
* [ ] Use workflow for internal discovery to better target file snippets needed for specific tasks
|
|
232
232
|
* [ ] Add support for partial files and code snippets in model completion messages
|
|
233
|
-
* [
|
|
233
|
+
* [x] Update message request structure for optimal caching
|
|
234
234
|
|
|
235
235
|
5. **TUI Experience** - [Discussion](https://github.com/dwash96/cecli/issues/48)
|
|
236
236
|
* [x] Add a full TUI (probably using textual) to have a visual interface competitive with the other coding agent terminal programs
|
|
@@ -47,14 +47,14 @@ or
|
|
|
47
47
|
uv pip install --native-tls cecli-dev
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
The package exports a `cecli` command that accepts all of Aider's configuration options
|
|
50
|
+
The package exports a `cecli` command that accepts all of Aider's configuration options (and a few more!)
|
|
51
51
|
|
|
52
52
|
### Tool Installation
|
|
53
53
|
```bash
|
|
54
54
|
uv tool install --native-tls --python python3.12 cecli-dev
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
-
Use the tool installation so
|
|
57
|
+
Use the tool installation so cecli doesn't interfere with your development environment
|
|
58
58
|
|
|
59
59
|
## Configuration
|
|
60
60
|
|
|
@@ -71,15 +71,15 @@ cache-prompts: true
|
|
|
71
71
|
check-update: true
|
|
72
72
|
debug: false
|
|
73
73
|
enable-context-compaction: true
|
|
74
|
-
context-compaction-max-tokens:
|
|
75
|
-
env-file: .
|
|
74
|
+
context-compaction-max-tokens: 0.8
|
|
75
|
+
env-file: .cecli.env
|
|
76
76
|
show-model-warnings: true
|
|
77
|
-
use-enhanced-map: true
|
|
77
|
+
use-enhanced-map: true.p
|
|
78
78
|
watch-files: false
|
|
79
79
|
tui: true
|
|
80
80
|
|
|
81
81
|
agent-config:
|
|
82
|
-
large_file_token_threshold:
|
|
82
|
+
large_file_token_threshold: 8192
|
|
83
83
|
skip_cli_confirmations: false
|
|
84
84
|
|
|
85
85
|
mcp-servers:
|
|
@@ -89,7 +89,7 @@ mcp-servers:
|
|
|
89
89
|
url: https://mcp.context7.com/mcp
|
|
90
90
|
```
|
|
91
91
|
|
|
92
|
-
Use the adjacent .
|
|
92
|
+
Use the adjacent .cecli.env file to store model api keys as environment variables, e.g:
|
|
93
93
|
|
|
94
94
|
```
|
|
95
95
|
ANTHROPIC_API_KEY="..."
|
|
@@ -101,7 +101,7 @@ DEEPSEEK_API_KEY="..."
|
|
|
101
101
|
|
|
102
102
|
### Run Program
|
|
103
103
|
|
|
104
|
-
If you are in the directory with your .
|
|
104
|
+
If you are in the directory with your .cecli.conf.yml file, then simply running `cecli` or `aider-ce` will start the agent with your configuration. For best results, since terminal emulators can be finicky, we highly suggest running:
|
|
105
105
|
|
|
106
106
|
```bash
|
|
107
107
|
cecli --terminal-setup
|
|
@@ -126,7 +126,7 @@ This command will make sure all commands ran by the coding agent happen in conte
|
|
|
126
126
|
|
|
127
127
|
## Project Roadmap/Goals
|
|
128
128
|
|
|
129
|
-
The current priorities are to improve core capabilities and user experience of the
|
|
129
|
+
The current priorities are to improve core capabilities and user experience of the `cecli` project
|
|
130
130
|
|
|
131
131
|
1. **Base Asynchronicity (cecli coroutine-experiment branch)**
|
|
132
132
|
* [x] Refactor codebase to have the main loop run asynchronously
|
|
@@ -139,14 +139,14 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
139
139
|
|
|
140
140
|
3. **Context Discovery** - [Discussion](https://github.com/dwash96/cecli/issues/46)
|
|
141
141
|
* [ ] Develop AST-based search capabilities
|
|
142
|
-
* [
|
|
142
|
+
* [x] Enhance file search with ripgrep integration
|
|
143
143
|
* [ ] Implement RAG (Retrieval-Augmented Generation) for better code retrieval
|
|
144
144
|
* [ ] Build an explicit workflow and local tooling for internal discovery mechanisms
|
|
145
145
|
|
|
146
146
|
4. **Context Delivery** - [Discussion](https://github.com/dwash96/cecli/issues/47)
|
|
147
147
|
* [ ] Use workflow for internal discovery to better target file snippets needed for specific tasks
|
|
148
148
|
* [ ] Add support for partial files and code snippets in model completion messages
|
|
149
|
-
* [
|
|
149
|
+
* [x] Update message request structure for optimal caching
|
|
150
150
|
|
|
151
151
|
5. **TUI Experience** - [Discussion](https://github.com/dwash96/cecli/issues/48)
|
|
152
152
|
* [x] Add a full TUI (probably using textual) to have a visual interface competitive with the other coding agent terminal programs
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.96.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 96,
|
|
31
|
+
__version__ = version = '0.96.6'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 96, 6)
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g275cf49cc'
|
|
@@ -38,7 +38,7 @@ import cecli.prompts.utils.system as prompts
|
|
|
38
38
|
from cecli import __version__, models, urls, utils
|
|
39
39
|
from cecli.commands import Commands, SwitchCoderSignal
|
|
40
40
|
from cecli.exceptions import LiteLLMExceptions
|
|
41
|
-
from cecli.helpers import coroutines, nested
|
|
41
|
+
from cecli.helpers import command_parser, coroutines, nested
|
|
42
42
|
from cecli.helpers.conversation import (
|
|
43
43
|
ConversationChunks,
|
|
44
44
|
ConversationManager,
|
|
@@ -2865,7 +2865,13 @@ class Coder:
|
|
|
2865
2865
|
if self.args.tui:
|
|
2866
2866
|
message = f"Add file to the chat? ({rel_fname})"
|
|
2867
2867
|
|
|
2868
|
-
if await self.io.confirm_ask(
|
|
2868
|
+
if await self.io.confirm_ask(
|
|
2869
|
+
message,
|
|
2870
|
+
subject=rel_fname,
|
|
2871
|
+
group=group,
|
|
2872
|
+
group_response=str(new_mentions),
|
|
2873
|
+
allow_never=True,
|
|
2874
|
+
):
|
|
2869
2875
|
self.add_rel_fname(rel_fname)
|
|
2870
2876
|
added_fnames.append(rel_fname)
|
|
2871
2877
|
else:
|
|
@@ -3841,7 +3847,7 @@ class Coder:
|
|
|
3841
3847
|
self.commands.cmd_running_event.set() # Command finished
|
|
3842
3848
|
|
|
3843
3849
|
async def handle_shell_commands(self, commands_str, group):
|
|
3844
|
-
commands =
|
|
3850
|
+
commands = command_parser.split_shell_commands(commands_str)
|
|
3845
3851
|
command_count = sum(
|
|
3846
3852
|
1 for cmd in commands if cmd.strip() and not cmd.strip().startswith("#")
|
|
3847
3853
|
)
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
from typing import List
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def split_shell_commands(commands_str: str) -> List[str]:
|
|
5
|
+
"""
|
|
6
|
+
Split shell commands on semicolons, respecting quoted strings and heredoc boundaries.
|
|
7
|
+
|
|
8
|
+
Args:
|
|
9
|
+
commands_str: String containing shell commands separated by semicolons
|
|
10
|
+
|
|
11
|
+
Returns:
|
|
12
|
+
List of command strings split at semicolons outside quotes/heredocs
|
|
13
|
+
"""
|
|
14
|
+
if not commands_str:
|
|
15
|
+
return []
|
|
16
|
+
|
|
17
|
+
commands: List[str] = []
|
|
18
|
+
current_command = []
|
|
19
|
+
|
|
20
|
+
# State tracking
|
|
21
|
+
in_single_quote = False
|
|
22
|
+
in_double_quote = False
|
|
23
|
+
in_heredoc = False
|
|
24
|
+
heredoc_delimiter = ""
|
|
25
|
+
heredoc_ignore_tabs = False # True for <<-EOF (dash before delimiter)
|
|
26
|
+
heredoc_seen_newline = False # Have we seen a newline since entering heredoc?
|
|
27
|
+
escaped = False
|
|
28
|
+
|
|
29
|
+
i = 0
|
|
30
|
+
n = len(commands_str)
|
|
31
|
+
|
|
32
|
+
while i < n:
|
|
33
|
+
char = commands_str[i]
|
|
34
|
+
|
|
35
|
+
if escaped:
|
|
36
|
+
# Current character is escaped, treat it as literal
|
|
37
|
+
current_command.append(char)
|
|
38
|
+
escaped = False
|
|
39
|
+
i += 1
|
|
40
|
+
continue
|
|
41
|
+
|
|
42
|
+
if char == "\\":
|
|
43
|
+
# Escape character
|
|
44
|
+
escaped = True
|
|
45
|
+
current_command.append(char)
|
|
46
|
+
i += 1
|
|
47
|
+
continue
|
|
48
|
+
|
|
49
|
+
if not in_heredoc:
|
|
50
|
+
# Not in heredoc, handle quotes and semicolons
|
|
51
|
+
if char == "'" and not in_double_quote:
|
|
52
|
+
in_single_quote = not in_single_quote
|
|
53
|
+
current_command.append(char)
|
|
54
|
+
elif char == '"' and not in_single_quote:
|
|
55
|
+
in_double_quote = not in_double_quote
|
|
56
|
+
current_command.append(char)
|
|
57
|
+
elif char == ";" and not in_single_quote and not in_double_quote:
|
|
58
|
+
# Split at semicolon outside quotes
|
|
59
|
+
command = "".join(current_command).strip()
|
|
60
|
+
if command:
|
|
61
|
+
commands.append(command)
|
|
62
|
+
current_command = []
|
|
63
|
+
else:
|
|
64
|
+
# Check for heredoc start (<<)
|
|
65
|
+
if char == "<" and i + 1 < n and commands_str[i + 1] == "<":
|
|
66
|
+
# Remember position for capturing the heredoc start
|
|
67
|
+
heredoc_start_pos = i
|
|
68
|
+
i += 2 # Skip "<<"
|
|
69
|
+
|
|
70
|
+
# Check for dash (<<-)
|
|
71
|
+
if i < n and commands_str[i] == "-":
|
|
72
|
+
heredoc_ignore_tabs = True
|
|
73
|
+
i += 1
|
|
74
|
+
|
|
75
|
+
# Skip whitespace before delimiter
|
|
76
|
+
while i < n and commands_str[i] in (" ", "\t"):
|
|
77
|
+
i += 1
|
|
78
|
+
|
|
79
|
+
# Parse delimiter (can be quoted or unquoted)
|
|
80
|
+
delimiter_start = i
|
|
81
|
+
|
|
82
|
+
# Check for quotes
|
|
83
|
+
if i < n and commands_str[i] in ("'", '"'):
|
|
84
|
+
quote_char = commands_str[i]
|
|
85
|
+
i += 1
|
|
86
|
+
delimiter_start = i
|
|
87
|
+
|
|
88
|
+
# Find closing quote
|
|
89
|
+
while i < n and commands_str[i] != quote_char:
|
|
90
|
+
i += 1
|
|
91
|
+
|
|
92
|
+
heredoc_delimiter = commands_str[delimiter_start:i]
|
|
93
|
+
if i < n:
|
|
94
|
+
i += 1 # Skip closing quote
|
|
95
|
+
else:
|
|
96
|
+
# Unquoted delimiter - alphanumeric and underscore only
|
|
97
|
+
while i < n and (commands_str[i].isalnum() or commands_str[i] == "_"):
|
|
98
|
+
i += 1
|
|
99
|
+
heredoc_delimiter = commands_str[delimiter_start:i]
|
|
100
|
+
|
|
101
|
+
if heredoc_delimiter:
|
|
102
|
+
# Valid heredoc found - capture the entire heredoc start
|
|
103
|
+
heredoc_start_text = commands_str[heredoc_start_pos:i]
|
|
104
|
+
current_command.append(heredoc_start_text)
|
|
105
|
+
|
|
106
|
+
# Enter heredoc mode
|
|
107
|
+
in_heredoc = True
|
|
108
|
+
heredoc_seen_newline = False
|
|
109
|
+
continue
|
|
110
|
+
else:
|
|
111
|
+
# Not a valid heredoc, treat as normal "<<"
|
|
112
|
+
current_command.append("<<")
|
|
113
|
+
continue
|
|
114
|
+
else:
|
|
115
|
+
current_command.append(char)
|
|
116
|
+
else:
|
|
117
|
+
# Inside heredoc
|
|
118
|
+
current_command.append(char)
|
|
119
|
+
|
|
120
|
+
# Track if we've seen a newline (heredoc content starts after newline)
|
|
121
|
+
if char == "\n":
|
|
122
|
+
heredoc_seen_newline = True
|
|
123
|
+
|
|
124
|
+
# Look ahead to see if next line starts with delimiter
|
|
125
|
+
j = i + 1
|
|
126
|
+
|
|
127
|
+
# Skip leading whitespace (tabs if heredoc_ignore_tabs)
|
|
128
|
+
while j < n and commands_str[j] in (" ", "\t"):
|
|
129
|
+
if heredoc_ignore_tabs and commands_str[j] == "\t":
|
|
130
|
+
j += 1
|
|
131
|
+
elif not heredoc_ignore_tabs:
|
|
132
|
+
j += 1
|
|
133
|
+
else:
|
|
134
|
+
break
|
|
135
|
+
|
|
136
|
+
# Check if we have the delimiter at this position
|
|
137
|
+
if (
|
|
138
|
+
j + len(heredoc_delimiter) <= n
|
|
139
|
+
and commands_str[j : j + len(heredoc_delimiter)] == heredoc_delimiter
|
|
140
|
+
):
|
|
141
|
+
# Check what comes after delimiter
|
|
142
|
+
k = j + len(heredoc_delimiter)
|
|
143
|
+
if k >= n or commands_str[k] in (" ", "\t", "\n", "\r", ";"):
|
|
144
|
+
# Found heredoc end
|
|
145
|
+
in_heredoc = False
|
|
146
|
+
heredoc_delimiter = ""
|
|
147
|
+
heredoc_ignore_tabs = False
|
|
148
|
+
heredoc_seen_newline = False
|
|
149
|
+
elif char == ";" and not heredoc_seen_newline:
|
|
150
|
+
# Semicolon before seeing a newline in heredoc mode
|
|
151
|
+
# This means heredoc start was immediately followed by semicolon
|
|
152
|
+
# Not a real heredoc - split at this semicolon
|
|
153
|
+
in_heredoc = False
|
|
154
|
+
heredoc_delimiter = ""
|
|
155
|
+
heredoc_ignore_tabs = False
|
|
156
|
+
heredoc_seen_newline = False
|
|
157
|
+
|
|
158
|
+
# Remove the semicolon from current_command
|
|
159
|
+
current_command.pop()
|
|
160
|
+
|
|
161
|
+
# Split at this semicolon
|
|
162
|
+
command = "".join(current_command).strip()
|
|
163
|
+
if command:
|
|
164
|
+
commands.append(command)
|
|
165
|
+
current_command = []
|
|
166
|
+
continue
|
|
167
|
+
|
|
168
|
+
i += 1
|
|
169
|
+
|
|
170
|
+
# Add the last command if any
|
|
171
|
+
if escaped:
|
|
172
|
+
# Handle trailing escape character
|
|
173
|
+
current_command.append("\\")
|
|
174
|
+
|
|
175
|
+
command = "".join(current_command).strip()
|
|
176
|
+
if command:
|
|
177
|
+
commands.append(command)
|
|
178
|
+
|
|
179
|
+
return commands
|
|
@@ -199,12 +199,9 @@ class OutputContainer(RichLog):
|
|
|
199
199
|
if not styles:
|
|
200
200
|
styles = dict()
|
|
201
201
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
capture_text = capture.get()
|
|
206
|
-
|
|
207
|
-
self.output(Padding(capture_text, (0, 0, 0, 2)))
|
|
202
|
+
# Create styled Text object directly
|
|
203
|
+
styled_text = Text(text, style=RichStyle(**styles))
|
|
204
|
+
self.output(Padding(styled_text, (0, 0, 0, 2)))
|
|
208
205
|
|
|
209
206
|
def add_tool_call(self, lines: list):
|
|
210
207
|
"""Add a tool call with themed styling.
|
|
@@ -289,23 +286,29 @@ class OutputContainer(RichLog):
|
|
|
289
286
|
check_duplicates: If True, check for duplicate newlines before writing
|
|
290
287
|
render_markdown: If True and app config allows, render as markdown
|
|
291
288
|
"""
|
|
289
|
+
# Get plain text for duplicate checking BEFORE any markdown conversion
|
|
290
|
+
plain_text = ""
|
|
291
|
+
if isinstance(text, str):
|
|
292
|
+
plain_text = text
|
|
293
|
+
elif isinstance(text, Text):
|
|
294
|
+
plain_text = text.plain
|
|
295
|
+
elif isinstance(text, Markdown):
|
|
296
|
+
# For Markdown objects, we need to get the source markdown text
|
|
297
|
+
# Markdown objects have a .markup attribute with the source
|
|
298
|
+
plain_text = text.markup if hasattr(text, "markup") else str(text)
|
|
299
|
+
else:
|
|
300
|
+
# For other types, convert to string
|
|
301
|
+
plain_text = str(text)
|
|
302
|
+
|
|
292
303
|
# Check if we should render as markdown
|
|
293
304
|
if render_markdown and hasattr(self.app, "render_markdown") and self.app.render_markdown:
|
|
294
305
|
# Only render string content as markdown
|
|
295
306
|
if isinstance(text, str):
|
|
296
307
|
text = Markdown(text)
|
|
297
308
|
|
|
298
|
-
|
|
299
|
-
self.app.console.print(text)
|
|
300
|
-
check = Text(capture.get()).plain
|
|
301
|
-
|
|
302
|
-
# self.write(str(self._write_history))
|
|
303
|
-
# self.write(repr(check))
|
|
304
|
-
|
|
305
|
-
# Check for duplicate newlines
|
|
306
|
-
|
|
309
|
+
# Check for duplicate newlines using the plain text we extracted
|
|
307
310
|
if check_duplicates and len(self._write_history) >= 2:
|
|
308
|
-
nl_check =
|
|
311
|
+
nl_check = plain_text in ["", "\n", "\\n"]
|
|
309
312
|
nl_last = self._write_history[-1] in ["", "\n", "\\n"]
|
|
310
313
|
nl_penultimate = self._write_history[-2] in ["", "\n", "\\n"] or self._write_history[
|
|
311
314
|
-2
|
|
@@ -317,8 +320,8 @@ class OutputContainer(RichLog):
|
|
|
317
320
|
# Call the actual write method
|
|
318
321
|
self.write(text)
|
|
319
322
|
|
|
320
|
-
# Log the write
|
|
321
|
-
self._write_history.append(
|
|
323
|
+
# Log the write using the plain text
|
|
324
|
+
self._write_history.append(plain_text)
|
|
322
325
|
|
|
323
326
|
# Keep history size manageable
|
|
324
327
|
if len(self._write_history) > 5:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cecli-dev
|
|
3
|
-
Version: 0.96.
|
|
3
|
+
Version: 0.96.6
|
|
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
|
|
@@ -131,14 +131,14 @@ or
|
|
|
131
131
|
uv pip install --native-tls cecli-dev
|
|
132
132
|
```
|
|
133
133
|
|
|
134
|
-
The package exports a `cecli` command that accepts all of Aider's configuration options
|
|
134
|
+
The package exports a `cecli` command that accepts all of Aider's configuration options (and a few more!)
|
|
135
135
|
|
|
136
136
|
### Tool Installation
|
|
137
137
|
```bash
|
|
138
138
|
uv tool install --native-tls --python python3.12 cecli-dev
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
-
Use the tool installation so
|
|
141
|
+
Use the tool installation so cecli doesn't interfere with your development environment
|
|
142
142
|
|
|
143
143
|
## Configuration
|
|
144
144
|
|
|
@@ -155,15 +155,15 @@ cache-prompts: true
|
|
|
155
155
|
check-update: true
|
|
156
156
|
debug: false
|
|
157
157
|
enable-context-compaction: true
|
|
158
|
-
context-compaction-max-tokens:
|
|
159
|
-
env-file: .
|
|
158
|
+
context-compaction-max-tokens: 0.8
|
|
159
|
+
env-file: .cecli.env
|
|
160
160
|
show-model-warnings: true
|
|
161
|
-
use-enhanced-map: true
|
|
161
|
+
use-enhanced-map: true.p
|
|
162
162
|
watch-files: false
|
|
163
163
|
tui: true
|
|
164
164
|
|
|
165
165
|
agent-config:
|
|
166
|
-
large_file_token_threshold:
|
|
166
|
+
large_file_token_threshold: 8192
|
|
167
167
|
skip_cli_confirmations: false
|
|
168
168
|
|
|
169
169
|
mcp-servers:
|
|
@@ -173,7 +173,7 @@ mcp-servers:
|
|
|
173
173
|
url: https://mcp.context7.com/mcp
|
|
174
174
|
```
|
|
175
175
|
|
|
176
|
-
Use the adjacent .
|
|
176
|
+
Use the adjacent .cecli.env file to store model api keys as environment variables, e.g:
|
|
177
177
|
|
|
178
178
|
```
|
|
179
179
|
ANTHROPIC_API_KEY="..."
|
|
@@ -185,7 +185,7 @@ DEEPSEEK_API_KEY="..."
|
|
|
185
185
|
|
|
186
186
|
### Run Program
|
|
187
187
|
|
|
188
|
-
If you are in the directory with your .
|
|
188
|
+
If you are in the directory with your .cecli.conf.yml file, then simply running `cecli` or `aider-ce` will start the agent with your configuration. For best results, since terminal emulators can be finicky, we highly suggest running:
|
|
189
189
|
|
|
190
190
|
```bash
|
|
191
191
|
cecli --terminal-setup
|
|
@@ -210,7 +210,7 @@ This command will make sure all commands ran by the coding agent happen in conte
|
|
|
210
210
|
|
|
211
211
|
## Project Roadmap/Goals
|
|
212
212
|
|
|
213
|
-
The current priorities are to improve core capabilities and user experience of the
|
|
213
|
+
The current priorities are to improve core capabilities and user experience of the `cecli` project
|
|
214
214
|
|
|
215
215
|
1. **Base Asynchronicity (cecli coroutine-experiment branch)**
|
|
216
216
|
* [x] Refactor codebase to have the main loop run asynchronously
|
|
@@ -223,14 +223,14 @@ The current priorities are to improve core capabilities and user experience of t
|
|
|
223
223
|
|
|
224
224
|
3. **Context Discovery** - [Discussion](https://github.com/dwash96/cecli/issues/46)
|
|
225
225
|
* [ ] Develop AST-based search capabilities
|
|
226
|
-
* [
|
|
226
|
+
* [x] Enhance file search with ripgrep integration
|
|
227
227
|
* [ ] Implement RAG (Retrieval-Augmented Generation) for better code retrieval
|
|
228
228
|
* [ ] Build an explicit workflow and local tooling for internal discovery mechanisms
|
|
229
229
|
|
|
230
230
|
4. **Context Delivery** - [Discussion](https://github.com/dwash96/cecli/issues/47)
|
|
231
231
|
* [ ] Use workflow for internal discovery to better target file snippets needed for specific tasks
|
|
232
232
|
* [ ] Add support for partial files and code snippets in model completion messages
|
|
233
|
-
* [
|
|
233
|
+
* [x] Update message request structure for optimal caching
|
|
234
234
|
|
|
235
235
|
5. **TUI Experience** - [Discussion](https://github.com/dwash96/cecli/issues/48)
|
|
236
236
|
* [x] Add a full TUI (probably using textual) to have a visual interface competitive with the other coding agent terminal programs
|
|
@@ -175,6 +175,7 @@ cecli/commands/utils/registry.py
|
|
|
175
175
|
cecli/commands/utils/save_load_manager.py
|
|
176
176
|
cecli/helpers/__init__.py
|
|
177
177
|
cecli/helpers/background_commands.py
|
|
178
|
+
cecli/helpers/command_parser.py
|
|
178
179
|
cecli/helpers/copypaste.py
|
|
179
180
|
cecli/helpers/coroutines.py
|
|
180
181
|
cecli/helpers/file_searcher.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|