cecli-dev 0.100.12rc5__tar.gz → 1.0.0rc2__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.
Files changed (712) hide show
  1. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/PKG-INFO +1 -1
  2. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/_version.py +3 -3
  3. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/agent_coder.py +41 -5
  4. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/base_coder.py +50 -16
  5. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/__init__.py +3 -1
  6. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/core.py +3 -43
  7. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/hot_reload.py +1 -1
  8. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/agents/service.py +2 -2
  9. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/files.py +25 -11
  10. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/integration.py +8 -56
  11. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/grep_ast/grep_ast.py +15 -8
  12. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/hashline.py +42 -17
  13. cecli_dev-1.0.0rc2/cecli/helpers/hashpos/hashpos.py +247 -0
  14. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/leak_detect.py +13 -0
  15. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/observations/service.py +9 -3
  16. cecli_dev-1.0.0rc2/cecli/helpers/orchestration/__init__.py +35 -0
  17. cecli_dev-1.0.0rc2/cecli/helpers/orchestration/environment.py +616 -0
  18. cecli_dev-1.0.0rc2/cecli/helpers/orchestration/security.py +101 -0
  19. cecli_dev-1.0.0rc2/cecli/helpers/orchestration/service.py +30 -0
  20. cecli_dev-1.0.0rc2/cecli/helpers/similarity.py +77 -0
  21. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/io.py +24 -16
  22. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/main.py +13 -13
  23. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/models.py +8 -5
  24. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/agent.yml +14 -9
  25. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/base.yml +1 -0
  26. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/subagent.yml +14 -9
  27. cecli_dev-1.0.0rc2/cecli/signals.py +49 -0
  28. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/__init__.py +2 -1
  29. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/_yield.py +13 -5
  30. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/command.py +55 -18
  31. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/command_interactive.py +11 -4
  32. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/delegate.py +15 -5
  33. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/edit_file.py +17 -19
  34. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/explore_code.py +17 -11
  35. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/git_branch.py +15 -6
  36. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/git_diff.py +11 -4
  37. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/git_log.py +9 -3
  38. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/git_remote.py +11 -4
  39. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/git_show.py +10 -3
  40. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/git_status.py +10 -3
  41. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/grep.py +15 -8
  42. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/ls.py +18 -7
  43. cecli_dev-1.0.0rc2/cecli/tools/orchestrate.py +75 -0
  44. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/read_file.py +614 -331
  45. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/resource_manager.py +14 -13
  46. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/thinking.py +4 -1
  47. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/undo_change.py +16 -6
  48. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/update_todo_list.py +16 -10
  49. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/utils/base_tool.py +10 -1
  50. cecli_dev-1.0.0rc2/cecli/tools/utils/responses.py +101 -0
  51. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/utils.py +2 -1
  52. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/waiting.py +2 -2
  53. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/agent-mode.md +1 -1
  54. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/subagents.md +2 -2
  55. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli_dev.egg-info/PKG-INFO +1 -1
  56. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli_dev.egg-info/SOURCES.txt +9 -0
  57. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli_dev.egg-info/scm_file_list.json +9 -0
  58. cecli_dev-1.0.0rc2/cecli_dev.egg-info/scm_version.json +8 -0
  59. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/get_hashline.py +2 -0
  60. cecli_dev-1.0.0rc2/scripts/optimize_tokens.sh +113 -0
  61. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_coder.py +1 -1
  62. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_hashline.py +27 -40
  63. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_main.py +1 -1
  64. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_model_provider_manager.py +0 -8
  65. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/observations/test_observation_service.py +30 -12
  66. cecli_dev-1.0.0rc2/tests/helpers/test_orchestration.py +718 -0
  67. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/test_keepalive_integration.py +9 -6
  68. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/test_delegate.py +20 -17
  69. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/test_finished.py +6 -5
  70. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_get_lines.py +7 -7
  71. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_git_branch.py +2 -2
  72. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_git_diff.py +1 -1
  73. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_grep.py +4 -6
  74. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_insert_block.py +5 -5
  75. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_read_range_execute.py +34 -34
  76. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_remove_mcp_tool.py +10 -10
  77. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_tools_load_mcp_tool.py +12 -12
  78. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/unit/test_load_mcp.py +14 -14
  79. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/unit/test_remove_mcp.py +12 -12
  80. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/unit/test_unit_load_mcp_tool.py +5 -4
  81. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/unit/test_unit_remove_mcp_tool.py +12 -12
  82. cecli_dev-0.100.12rc5/cecli/helpers/hashpos/hashpos.py +0 -217
  83. cecli_dev-0.100.12rc5/cecli/helpers/similarity.py +0 -98
  84. cecli_dev-0.100.12rc5/cecli_dev.egg-info/scm_version.json +0 -8
  85. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.dockerignore +0 -0
  86. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.flake8 +0 -0
  87. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.gitattributes +0 -0
  88. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/ISSUE_TEMPLATE/issue.yml +0 -0
  89. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/check_pypi_version.yml +0 -0
  90. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/docker-build-test.yml +0 -0
  91. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/docker-release.yml +0 -0
  92. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/issues.yml +0 -0
  93. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/pages.yml +0 -0
  94. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/pre-commit.yml +0 -0
  95. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/release.yml +0 -0
  96. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/ubuntu-tests.yml +0 -0
  97. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/windows-tests.yml +0 -0
  98. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.github/workflows/windows_check_pypi_version.yml +0 -0
  99. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.gitignore +0 -0
  100. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/.pre-commit-config.yaml +0 -0
  101. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/CHANGELOG.md +0 -0
  102. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/CNAME +0 -0
  103. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/CONTRIBUTING.md +0 -0
  104. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/HISTORY.md +0 -0
  105. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/LICENSE.txt +0 -0
  106. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/MANIFEST.in +0 -0
  107. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/README.md +0 -0
  108. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/Dockerfile +0 -0
  109. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/README.md +0 -0
  110. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/__init__.py +0 -0
  111. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/benchmark.py +0 -0
  112. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/benchmark_classic.py +0 -0
  113. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/clone-exercism.sh +0 -0
  114. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/cpp-test.sh +0 -0
  115. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/docker.sh +0 -0
  116. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/docker_build.sh +0 -0
  117. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/install-docker-ubuntu.sh +0 -0
  118. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/npm-test.sh +0 -0
  119. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/over_time.py +0 -0
  120. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/plot.sh +0 -0
  121. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/plots.py +0 -0
  122. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/problem_stats.py +0 -0
  123. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/prompts.py +0 -0
  124. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/refactor_tools.py +0 -0
  125. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/rsync.sh +0 -0
  126. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/rungrid.py +0 -0
  127. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/swe-bench-lite.txt +0 -0
  128. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/swe-bench.txt +0 -0
  129. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/swe_bench.py +0 -0
  130. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/test_benchmark.py +0 -0
  131. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/variations.1.sh +0 -0
  132. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/variations.2.sh +0 -0
  133. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/variations.3.sh +0 -0
  134. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/benchmark/variations.4.sh +0 -0
  135. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/__init__.py +0 -0
  136. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/__main__.py +0 -0
  137. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/args.py +0 -0
  138. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/args_formatter.py +0 -0
  139. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/change_tracker.py +0 -0
  140. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/__init__.py +0 -0
  141. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/architect_coder.py +0 -0
  142. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/ask_coder.py +0 -0
  143. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/chat_chunks.py +0 -0
  144. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/context_coder.py +0 -0
  145. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/copypaste_coder.py +0 -0
  146. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/editblock_coder.py +0 -0
  147. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/editblock_fenced_coder.py +0 -0
  148. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/editblock_func_coder.py +0 -0
  149. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/editor_diff_fenced_coder.py +0 -0
  150. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/editor_editblock_coder.py +0 -0
  151. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/editor_whole_coder.py +0 -0
  152. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/hashline_coder.py +0 -0
  153. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/help_coder.py +0 -0
  154. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/patch_coder.py +0 -0
  155. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/search_replace.py +0 -0
  156. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/shell.py +0 -0
  157. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/single_wholefile_func_coder.py +0 -0
  158. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/sub_agent_coder.py +0 -0
  159. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/udiff_coder.py +0 -0
  160. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/udiff_simple.py +0 -0
  161. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/wholefile_coder.py +0 -0
  162. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/coders/wholefile_func_coder.py +0 -0
  163. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/add.py +0 -0
  164. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/agent.py +0 -0
  165. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/agent_model.py +0 -0
  166. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/architect.py +0 -0
  167. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/ask.py +0 -0
  168. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/chat_mode.py +0 -0
  169. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/clear.py +0 -0
  170. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/code.py +0 -0
  171. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/command_prefix.py +0 -0
  172. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/commit.py +0 -0
  173. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/compact.py +0 -0
  174. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/context.py +0 -0
  175. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/context_blocks.py +0 -0
  176. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/context_management.py +0 -0
  177. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/copy.py +0 -0
  178. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/copy_context.py +0 -0
  179. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/diff.py +0 -0
  180. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/drop.py +0 -0
  181. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/editor.py +0 -0
  182. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/editor_model.py +0 -0
  183. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/exclude_skill.py +0 -0
  184. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/exit.py +0 -0
  185. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/git.py +0 -0
  186. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/hashline.py +0 -0
  187. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/help.py +0 -0
  188. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/history_search.py +0 -0
  189. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/hooks.py +0 -0
  190. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/include_skill.py +0 -0
  191. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/lint.py +0 -0
  192. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/list_mcp.py +0 -0
  193. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/list_sessions.py +0 -0
  194. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/list_skills.py +0 -0
  195. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/load.py +0 -0
  196. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/load_hook.py +0 -0
  197. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/load_mcp.py +0 -0
  198. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/load_session.py +0 -0
  199. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/load_skill.py +0 -0
  200. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/ls.py +0 -0
  201. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/map.py +0 -0
  202. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/map_refresh.py +0 -0
  203. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/merge.py +0 -0
  204. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/model.py +0 -0
  205. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/models.py +0 -0
  206. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/multiline_mode.py +0 -0
  207. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/paste.py +0 -0
  208. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/quit.py +0 -0
  209. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/read_only.py +0 -0
  210. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/read_only_stub.py +0 -0
  211. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/reap_agent.py +0 -0
  212. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/reasoning_effort.py +0 -0
  213. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/remove_hook.py +0 -0
  214. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/remove_mcp.py +0 -0
  215. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/remove_skill.py +0 -0
  216. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/report.py +0 -0
  217. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/reset.py +0 -0
  218. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/rules.py +0 -0
  219. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/run.py +0 -0
  220. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/save.py +0 -0
  221. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/save_session.py +0 -0
  222. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/settings.py +0 -0
  223. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/spawn_agent.py +0 -0
  224. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/switch_agent.py +0 -0
  225. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/terminal_data/linux.keytab +0 -0
  226. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/terminal_setup.py +0 -0
  227. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/test.py +0 -0
  228. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/think_tokens.py +0 -0
  229. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/tokens.py +0 -0
  230. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/undo.py +0 -0
  231. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/utils/__init__.py +0 -0
  232. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/utils/base_command.py +0 -0
  233. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/utils/helpers.py +0 -0
  234. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/utils/registry.py +0 -0
  235. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/utils/save_load_manager.py +0 -0
  236. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/voice.py +0 -0
  237. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/weak_model.py +0 -0
  238. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/web.py +0 -0
  239. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/commands/workspace.py +0 -0
  240. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/deprecated_args.py +0 -0
  241. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/diffs.py +0 -0
  242. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/dump.py +0 -0
  243. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/editor.py +0 -0
  244. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/exceptions.py +0 -0
  245. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/format_settings.py +0 -0
  246. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/help.py +0 -0
  247. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/help_pats.py +0 -0
  248. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/__init__.py +0 -0
  249. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/agents/__init__.py +0 -0
  250. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/agents/config.py +0 -0
  251. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/background_commands.py +0 -0
  252. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/command_parser.py +0 -0
  253. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/__init__.py +0 -0
  254. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/base_message.py +0 -0
  255. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/manager.py +0 -0
  256. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/service.py +0 -0
  257. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/tags.py +0 -0
  258. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/conversation/utils.py +0 -0
  259. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/copypaste.py +0 -0
  260. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/coroutines.py +0 -0
  261. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/crypto.py +0 -0
  262. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/file_searcher.py +0 -0
  263. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/file_system/__init__.py +0 -0
  264. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/file_system/builders.py +0 -0
  265. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/file_system/ignore.py +0 -0
  266. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/file_system/ngram_index.py +0 -0
  267. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/file_system/service.py +0 -0
  268. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/file_system/trie_index.py +0 -0
  269. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/grep_ast/__init__.py +0 -0
  270. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/grep_ast/dump.py +0 -0
  271. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/grep_ast/main.py +0 -0
  272. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/grep_ast/parsers.py +0 -0
  273. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/grep_ast/tsl.py +0 -0
  274. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/hashpos/__init__.py +0 -0
  275. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/hashpos/hashpos.v1.bak +0 -0
  276. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/io_proxy.py +0 -0
  277. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/model_providers.py +0 -0
  278. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/monorepo/__init__.py +0 -0
  279. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/monorepo/config.py +0 -0
  280. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/monorepo/local_workspace.py +0 -0
  281. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/monorepo/project.py +0 -0
  282. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/monorepo/workspace.py +0 -0
  283. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/monorepo/worktree.py +0 -0
  284. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/nested.py +0 -0
  285. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/observations/__init__.py +0 -0
  286. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/plugin_manager.py +0 -0
  287. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/profiler.py +0 -0
  288. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/requests.py +0 -0
  289. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/responses.py +0 -0
  290. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/skills.py +0 -0
  291. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/helpers/threading.py +0 -0
  292. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/history.py +0 -0
  293. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/__init__.py +0 -0
  294. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/base.py +0 -0
  295. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/helpers.py +0 -0
  296. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/integration.py +0 -0
  297. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/manager.py +0 -0
  298. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/registry.py +0 -0
  299. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/service.py +0 -0
  300. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/hooks/types.py +0 -0
  301. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/interruptible_input.py +0 -0
  302. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/linter.py +0 -0
  303. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/llm.py +0 -0
  304. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/mcp/__init__.py +0 -0
  305. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/mcp/manager.py +0 -0
  306. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/mcp/oauth.py +0 -0
  307. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/mcp/server.py +0 -0
  308. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/mcp/utils.py +0 -0
  309. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/mdstream.py +0 -0
  310. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/onboarding.py +0 -0
  311. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/__init__.py +0 -0
  312. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/architect.yml +0 -0
  313. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/ask.yml +0 -0
  314. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/context.yml +0 -0
  315. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/copypaste.yml +0 -0
  316. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/editblock.yml +0 -0
  317. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/editblock_fenced.yml +0 -0
  318. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/editblock_func.yml +0 -0
  319. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/editor_diff_fenced.yml +0 -0
  320. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/editor_editblock.yml +0 -0
  321. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/editor_whole.yml +0 -0
  322. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/hashline.yml +0 -0
  323. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/help.yml +0 -0
  324. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/patch.yml +0 -0
  325. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/single_wholefile_func.yml +0 -0
  326. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/udiff.yml +0 -0
  327. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/udiff_simple.yml +0 -0
  328. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/utils/__init__.py +0 -0
  329. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/utils/registry.py +0 -0
  330. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/utils/system.py +0 -0
  331. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/wholefile.yml +0 -0
  332. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/prompts/wholefile_func.yml +0 -0
  333. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/README.md +0 -0
  334. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
  335. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/bash-tags.scm +0 -0
  336. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/c-tags.scm +0 -0
  337. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
  338. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/clojure-tags.scm +0 -0
  339. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
  340. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
  341. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
  342. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/d-tags.scm +0 -0
  343. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
  344. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
  345. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
  346. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
  347. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
  348. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/go-tags.scm +0 -0
  349. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/java-tags.scm +0 -0
  350. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
  351. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
  352. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/matlab-tags.scm +0 -0
  353. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/ocaml-tags.scm +0 -0
  354. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +0 -0
  355. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
  356. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
  357. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/python-tags.scm +0 -0
  358. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/r-tags.scm +0 -0
  359. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
  360. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
  361. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
  362. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
  363. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
  364. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
  365. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/README.md +0 -0
  366. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/bash-tags.scm +0 -0
  367. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/c-tags.scm +0 -0
  368. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
  369. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/cpp-tags.scm +0 -0
  370. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/dart-tags.scm +0 -0
  371. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/elisp-tags.scm +0 -0
  372. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/elixir-tags.scm +0 -0
  373. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/elm-tags.scm +0 -0
  374. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/fortran-tags.scm +0 -0
  375. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/go-tags.scm +0 -0
  376. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/haskell-tags.scm +0 -0
  377. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/hcl-tags.scm +0 -0
  378. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/java-tags.scm +0 -0
  379. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/javascript-tags.scm +0 -0
  380. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/julia-tags.scm +0 -0
  381. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
  382. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/matlab-tags.scm +0 -0
  383. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
  384. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/ocaml_interface-tags.scm +0 -0
  385. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/php-tags.scm +0 -0
  386. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/python-tags.scm +0 -0
  387. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/ql-tags.scm +0 -0
  388. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/ruby-tags.scm +0 -0
  389. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/rust-tags.scm +0 -0
  390. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/scala-tags.scm +0 -0
  391. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/typescript-tags.scm +0 -0
  392. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/queries/tree-sitter-languages/zig-tags.scm +0 -0
  393. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/reasoning_tags.py +0 -0
  394. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/repo.py +0 -0
  395. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/repomap.py +0 -0
  396. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/report.py +0 -0
  397. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/resources/__init__.py +0 -0
  398. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/resources/model-metadata.json +0 -0
  399. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/resources/model-settings.yml +0 -0
  400. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/resources/providers.json +0 -0
  401. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/run_cmd.py +0 -0
  402. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/scrape.py +0 -0
  403. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/sendchat.py +0 -0
  404. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/sessions.py +0 -0
  405. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/special.py +0 -0
  406. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/utils/__init__.py +0 -0
  407. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/utils/helpers.py +0 -0
  408. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/utils/output.py +0 -0
  409. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/utils/registry.py +0 -0
  410. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/validations/__init__.py +0 -0
  411. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tools/validations/validations.py +0 -0
  412. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/__init__.py +0 -0
  413. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/app.py +0 -0
  414. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/io.py +0 -0
  415. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/styles.tcss +0 -0
  416. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/__init__.py +0 -0
  417. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/completion_bar.py +0 -0
  418. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/file_list.py +0 -0
  419. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/footer.py +0 -0
  420. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/input_area.py +0 -0
  421. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/input_container.py +0 -0
  422. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/key_hints.py +0 -0
  423. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/output.py +0 -0
  424. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/status_bar.py +0 -0
  425. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/widgets/subagent_pills.py +0 -0
  426. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/tui/worker.py +0 -0
  427. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/urls.py +0 -0
  428. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/versioncheck.py +0 -0
  429. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/voice.py +0 -0
  430. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/watch.py +0 -0
  431. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/watch_prompts.py +0 -0
  432. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/Gemfile +0 -0
  433. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/blame.md +0 -0
  434. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/get-started.md +0 -0
  435. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/help-tip.md +0 -0
  436. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/help.md +0 -0
  437. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/install.md +0 -0
  438. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/keys.md +0 -0
  439. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/model-warnings.md +0 -0
  440. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/multi-line.md +0 -0
  441. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/python-m-aider.md +0 -0
  442. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/recording.css +0 -0
  443. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/recording.md +0 -0
  444. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_includes/works-best.md +0 -0
  445. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_features.scss +0 -0
  446. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_footer.scss +0 -0
  447. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_hero.scss +0 -0
  448. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_info.scss +0 -0
  449. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_layout.scss +0 -0
  450. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_reset.scss +0 -0
  451. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_testimonials.scss +0 -0
  452. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_typography.scss +0 -0
  453. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/_variables.scss +0 -0
  454. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/custom/custom.scss +0 -0
  455. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/_sass/global-overrides.scss +0 -0
  456. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/adv-model-settings.md +0 -0
  457. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/api-keys.md +0 -0
  458. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/conf.md +0 -0
  459. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/custom-commands.md +0 -0
  460. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/custom-system-prompts.md +0 -0
  461. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/dotenv.md +0 -0
  462. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/editor.md +0 -0
  463. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/hooks.md +0 -0
  464. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/mcp.md +0 -0
  465. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/model-aliases.md +0 -0
  466. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/model-configuration.md +0 -0
  467. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/model-providers.md +0 -0
  468. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/options.md +0 -0
  469. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/reasoning.md +0 -0
  470. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/retries.md +0 -0
  471. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/security.md +0 -0
  472. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/skills.md +0 -0
  473. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/tui.md +0 -0
  474. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config/workspaces.md +0 -0
  475. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/config.md +0 -0
  476. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/git.md +0 -0
  477. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/index.md +0 -0
  478. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/install/docker.md +0 -0
  479. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/install.md +0 -0
  480. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/languages.md +0 -0
  481. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/legal/contributor-agreement.md +0 -0
  482. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/legal/privacy.md +0 -0
  483. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/anthropic.md +0 -0
  484. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/azure.md +0 -0
  485. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/bedrock.md +0 -0
  486. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/cohere.md +0 -0
  487. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/deepseek.md +0 -0
  488. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/gemini.md +0 -0
  489. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/github.md +0 -0
  490. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/groq.md +0 -0
  491. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/lm-studio.md +0 -0
  492. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/ollama.md +0 -0
  493. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/openai-compat.md +0 -0
  494. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/openai.md +0 -0
  495. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/openrouter.md +0 -0
  496. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/other.md +0 -0
  497. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/vertex.md +0 -0
  498. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/warnings.md +0 -0
  499. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms/xai.md +0 -0
  500. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/llms.md +0 -0
  501. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/more/analytics.md +0 -0
  502. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/more/edit-formats.md +0 -0
  503. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/more/infinite-output.md +0 -0
  504. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/more-info.md +0 -0
  505. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/repomap.md +0 -0
  506. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/scripting.md +0 -0
  507. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting/cecli-not-found.md +0 -0
  508. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting/edit-errors.md +0 -0
  509. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting/imports.md +0 -0
  510. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting/models-and-keys.md +0 -0
  511. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting/support.md +0 -0
  512. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting/token-limits.md +0 -0
  513. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting/warnings.md +0 -0
  514. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/troubleshooting.md +0 -0
  515. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/commands.md +0 -0
  516. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/conventions.md +0 -0
  517. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/copypaste.md +0 -0
  518. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/images-urls.md +0 -0
  519. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/lint-test.md +0 -0
  520. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/modes.md +0 -0
  521. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/not-code.md +0 -0
  522. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/notifications.md +0 -0
  523. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/optional.md +0 -0
  524. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/sessions.md +0 -0
  525. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/tips.md +0 -0
  526. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/voice.md +0 -0
  527. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage/watch.md +0 -0
  528. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/docs/usage.md +0 -0
  529. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli/website/share/index.md +0 -0
  530. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli_dev.egg-info/dependency_links.txt +0 -0
  531. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli_dev.egg-info/entry_points.txt +0 -0
  532. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli_dev.egg-info/requires.txt +0 -0
  533. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/cecli_dev.egg-info/top_level.txt +0 -0
  534. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/docker/Dockerfile +0 -0
  535. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/docker/Dockerfile.local.nvidia.cuda.ubuntu +0 -0
  536. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/pyproject.toml +0 -0
  537. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/pytest.ini +0 -0
  538. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/common-constraints.txt +0 -0
  539. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/requirements-dev.in +0 -0
  540. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/requirements-dev.txt +0 -0
  541. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/requirements-help.in +0 -0
  542. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/requirements-help.txt +0 -0
  543. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/requirements-playwright.in +0 -0
  544. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/requirements-playwright.txt +0 -0
  545. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/requirements.in +0 -0
  546. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements/tree-sitter.in +0 -0
  547. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/requirements.txt +0 -0
  548. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/30k-image.py +0 -0
  549. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/Dockerfile.jekyll +0 -0
  550. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/__init__.py +0 -0
  551. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/blame.py +0 -0
  552. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/clean_metadata.py +0 -0
  553. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/compare-message-history.py +0 -0
  554. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/cost_analyzer.py +0 -0
  555. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/cost_calculator.py +0 -0
  556. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/dl_icons.py +0 -0
  557. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/filter-chat-mode.js +0 -0
  558. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/generate_providers.py +0 -0
  559. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/get_contributor_list.js +0 -0
  560. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/history_prompts.py +0 -0
  561. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/homepage.py +0 -0
  562. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/issues.py +0 -0
  563. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/jekyll_build.sh +0 -0
  564. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/jekyll_run.sh +0 -0
  565. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/logo_svg.py +0 -0
  566. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/pip-compile.sh +0 -0
  567. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/recording_audio.py +0 -0
  568. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/redact-cast.py +0 -0
  569. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/rename_to_cecli.py +0 -0
  570. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/tmux_record.sh +0 -0
  571. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/tsl_pack_langs.py +0 -0
  572. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/update-blame.sh +0 -0
  573. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/update-docs.sh +0 -0
  574. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/update-history.py +0 -0
  575. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/versionbump.py +0 -0
  576. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/scripts/yank-old-versions.py +0 -0
  577. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/setup.cfg +0 -0
  578. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/shim.pyproject.toml +0 -0
  579. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/__init__.py +0 -0
  580. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/__init__.py +0 -0
  581. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/conftest.py +0 -0
  582. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_aws_credentials.py +0 -0
  583. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_background_commands.py +0 -0
  584. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_commands.py +0 -0
  585. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_custom_commands.py +0 -0
  586. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_deprecated.py +0 -0
  587. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_editblock.py +0 -0
  588. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_editor.py +0 -0
  589. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_exceptions.py +0 -0
  590. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_find_or_blocks.py +0 -0
  591. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_hashline_closure.py +0 -0
  592. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_history.py +0 -0
  593. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_io.py +0 -0
  594. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_linter.py +0 -0
  595. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_model_info_manager.py +0 -0
  596. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_models.py +0 -0
  597. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_onboarding.py +0 -0
  598. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_plugin_manager.py +0 -0
  599. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_prompts.py +0 -0
  600. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_reasoning.py +0 -0
  601. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_repo.py +0 -0
  602. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_repomap.py +0 -0
  603. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_run_cmd.py +0 -0
  604. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_sanity_check_repo.py +0 -0
  605. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_scripting.py +0 -0
  606. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_sendchat.py +0 -0
  607. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_session_args.py +0 -0
  608. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_session_crypto.py +0 -0
  609. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_sessions.py +0 -0
  610. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_sessions_manager.py +0 -0
  611. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_skills.py +0 -0
  612. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_special.py +0 -0
  613. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_ssl_verification.py +0 -0
  614. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_udiff.py +0 -0
  615. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_urls.py +0 -0
  616. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_voice.py +0 -0
  617. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_watch.py +0 -0
  618. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/basic/test_wholefile.py +0 -0
  619. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/coders/test_coder_switching.py +0 -0
  620. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/coders/test_copypaste_coder.py +0 -0
  621. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/commands/test_compaction.py +0 -0
  622. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/commands/test_switch_agent.py +0 -0
  623. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/conftest.py +0 -0
  624. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/conversations/test_conversation_integration.py +0 -0
  625. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/conversations/test_conversation_system.py +0 -0
  626. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/chat-history-search-replace-gold.txt +0 -0
  627. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/chat-history.md +0 -0
  628. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/arduino/test.ino +0 -0
  629. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/bash/test.sh +0 -0
  630. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/c/test.c +0 -0
  631. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/chatito/test.chatito +0 -0
  632. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/clojure/test.clj +0 -0
  633. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/commonlisp/test.lisp +0 -0
  634. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/cpp/test.cpp +0 -0
  635. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/csharp/test.cs +0 -0
  636. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/d/test.d +0 -0
  637. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/dart/test.dart +0 -0
  638. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/elisp/test.el +0 -0
  639. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/elixir/test.ex +0 -0
  640. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/elm/test.elm +0 -0
  641. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/gleam/test.gleam +0 -0
  642. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/go/test.go +0 -0
  643. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/haskell/test.hs +0 -0
  644. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/hcl/test.tf +0 -0
  645. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/java/test.java +0 -0
  646. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/javascript/test.js +0 -0
  647. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/kotlin/test.kt +0 -0
  648. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/lua/test.lua +0 -0
  649. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/matlab/test.m +0 -0
  650. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/ocaml/test.ml +0 -0
  651. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/ocaml_interface/test.mli +0 -0
  652. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/php/test.php +0 -0
  653. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/pony/test.pony +0 -0
  654. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/properties/test.properties +0 -0
  655. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/python/test.py +0 -0
  656. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/ql/test.ql +0 -0
  657. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/r/test.r +0 -0
  658. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/racket/test.rkt +0 -0
  659. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/ruby/test.rb +0 -0
  660. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/rust/test.rs +0 -0
  661. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/scala/test.scala +0 -0
  662. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/solidity/test.sol +0 -0
  663. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/swift/test.swift +0 -0
  664. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/tsx/test.tsx +0 -0
  665. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/typescript/test.ts +0 -0
  666. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/udev/test.rules +0 -0
  667. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/languages/zig/test.zig +0 -0
  668. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/sample-code-base/sample.js +0 -0
  669. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/sample-code-base/sample.py +0 -0
  670. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/sample-code-base-repo-map.txt +0 -0
  671. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/watch.js +0 -0
  672. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/watch.lisp +0 -0
  673. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/watch.py +0 -0
  674. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/fixtures/watch_question.js +0 -0
  675. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/help/test_help.py +0 -0
  676. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/monorepo/LOCAL_WORKSPACE.md +0 -0
  677. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/monorepo/test_config.py +0 -0
  678. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/monorepo/test_config_active.py +0 -0
  679. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/monorepo/test_ignore_logic.py +0 -0
  680. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/monorepo/test_local_workspace.py +0 -0
  681. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/monorepo/test_repomap_workspace.py +0 -0
  682. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/helpers/monorepo/test_workspace.py +0 -0
  683. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/hooks/__init__.py +0 -0
  684. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/hooks/test_base.py +0 -0
  685. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/hooks/test_manager.py +0 -0
  686. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/hooks/test_registry.py +0 -0
  687. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/integration/test_agent_mcp_management.py +0 -0
  688. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/integration/test_mcp_management.py +0 -0
  689. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/__init__.py +0 -0
  690. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/conftest.py +0 -0
  691. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/mock_server.py +0 -0
  692. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/test_keepalive_concurrency.py +0 -0
  693. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/test_keepalive_config.py +0 -0
  694. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/test_keepalive_logging.py +0 -0
  695. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/test_keepalive_resilience.py +0 -0
  696. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/test_keepalive_unit.py +0 -0
  697. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/mcp/test_manager.py +0 -0
  698. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/scrape/test_playwright_disable.py +0 -0
  699. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/scrape/test_scrape.py +0 -0
  700. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/__init__.py +0 -0
  701. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/conftest.py +0 -0
  702. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/test_commands.py +0 -0
  703. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/test_config.py +0 -0
  704. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/test_io_proxy.py +0 -0
  705. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/test_service.py +0 -0
  706. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/subagents/test_sub_agent_coder.py +0 -0
  707. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/test_requests.py +0 -0
  708. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_extractions.py +0 -0
  709. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_registry.py +0 -0
  710. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/test_tool_arguments.py +0 -0
  711. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/tests/tools/validations.py +0 -0
  712. {cecli_dev-0.100.12rc5 → cecli_dev-1.0.0rc2}/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.100.12rc5
3
+ Version: 1.0.0rc2
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
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '0.100.12rc5'
22
- __version_tuple__ = version_tuple = (0, 100, 12, 'rc5')
21
+ __version__ = version = '1.0.0rc2'
22
+ __version_tuple__ = version_tuple = (1, 0, 0, 'rc2')
23
23
 
24
- __commit_id__ = commit_id = 'g7a6568913'
24
+ __commit_id__ = commit_id = 'g394025597'
@@ -98,7 +98,7 @@ class AgentCoder(Coder):
98
98
  self.skip_cli_confirmations = False
99
99
  self.agent_finished = False
100
100
  self.agent_config = self._get_agent_config()
101
- self.max_sub_agents = self.agent_config.get("max_sub_agents", 3)
101
+ self.max_sub_agents = self.agent_config.get("max_sub_agents", 30)
102
102
  self.sub_agent_paths = self.agent_config.get("subagent_paths", [])
103
103
  self._setup_agent()
104
104
 
@@ -167,6 +167,11 @@ class AgentCoder(Coder):
167
167
  config["hot_reload"] = nested.getter(config, "hot_reload", False)
168
168
  config["diff_colors"] = nested.getter(config, "diff_colors", True)
169
169
  config["allow_nested_delegation"] = nested.getter(config, "allow_nested_delegation", False)
170
+ config["allow_orchestration"] = nested.getter(config, "allow_orchestration", True)
171
+ config["max_sub_agents"] = nested.getter(config, "max_sub_agents", 30)
172
+
173
+ if config["max_sub_agents"] == -1:
174
+ config["max_sub_agents"] = 2 ^ 31 - 1
170
175
 
171
176
  config["tools_paths"] = nested.getter(config, ["tools_paths", "tool_paths"], [])
172
177
  config["tools_includelist"] = nested.getter(
@@ -184,6 +189,7 @@ class AgentCoder(Coder):
184
189
  config["servers_excludelist"] = nested.getter(
185
190
  config, ["servers_excludelist", "servers_blacklist"], []
186
191
  )
192
+
187
193
  config["include_context_blocks"] = set(
188
194
  nested.getter(
189
195
  config,
@@ -203,6 +209,10 @@ class AgentCoder(Coder):
203
209
  )
204
210
  config["exclude_context_blocks"] = set(nested.getter(config, "exclude_context_blocks", []))
205
211
 
212
+ if config["allow_orchestration"]:
213
+ config["include_context_blocks"].add("orchestration")
214
+ config["exclude_context_blocks"].discard("orchestration")
215
+
206
216
  self.large_file_token_threshold = config["large_file_token_threshold"]
207
217
  self.skip_cli_confirmations = config["skip_cli_confirmations"]
208
218
  self.hot_reload_enabled = config["hot_reload"]
@@ -292,6 +302,7 @@ class AgentCoder(Coder):
292
302
 
293
303
  async def _execute_mcp_tool(self, server, tool_name, params):
294
304
  """Helper to execute a single MCP tool call, created from legacy format."""
305
+ from cecli.tools.utils.responses import ToolResponse
295
306
 
296
307
  async def _exec_async():
297
308
  function_dict = {"name": tool_name, "arguments": json.dumps(params)}
@@ -331,9 +342,14 @@ class AgentCoder(Coder):
331
342
 
332
343
  result, interrupted = await interruptible(_exec_async(), self.interrupt_event)
333
344
 
345
+ response = ToolResponse(tool_name)
334
346
  if interrupted:
335
- return "Tool execution interrupted by user."
336
- return result
347
+ response.append_error("Tool execution interrupted by user.")
348
+ elif isinstance(result, str) and result.startswith("Error executing tool call"):
349
+ response.append_error(result)
350
+ else:
351
+ response.append_result(result)
352
+ return response
337
353
 
338
354
  def _calculate_context_block_tokens(self, force=False):
339
355
  """
@@ -364,6 +380,7 @@ class AgentCoder(Coder):
364
380
  "servers",
365
381
  "sub_agents",
366
382
  "loaded_skills",
383
+ "orchestration",
367
384
  ]
368
385
  for block_type in block_types:
369
386
  if block_type in self.allowed_context_blocks:
@@ -400,6 +417,8 @@ class AgentCoder(Coder):
400
417
  content = self.get_servers_context()
401
418
  elif block_name == "loaded_skills":
402
419
  content = self.get_skills_content()
420
+ elif block_name == "orchestration":
421
+ content = self.get_orchestration_context()
403
422
  elif block_name == "sub_agents" and (
404
423
  not self.parent_uuid or self.agent_config.get("allow_nested_delegation", False)
405
424
  ):
@@ -829,7 +848,7 @@ class AgentCoder(Coder):
829
848
  if lint_errors:
830
849
  lint_errors = lint_errors.replace(
831
850
  "# Fix any linting errors below, if possible.",
832
- "# Fix any linting errors below, if possible and then continue with your task.",
851
+ "# Fix the linting errors below, and then continue with your task.",
833
852
  1,
834
853
  )
835
854
  ConversationService.get_manager(self).add_message(
@@ -878,7 +897,7 @@ class AgentCoder(Coder):
878
897
  {
879
898
  "role": "tool",
880
899
  "tool_call_id": tool_call.id,
881
- "content": result,
900
+ "content": str(result),
882
901
  }
883
902
  )
884
903
  return tool_responses
@@ -1582,6 +1601,23 @@ Todo list does not exist. Please update it with the `UpdateTodoList` tool.</cont
1582
1601
  self.io.tool_error(f"Error generating servers context: {str(e)}")
1583
1602
  return None
1584
1603
 
1604
+ def get_orchestration_context(self):
1605
+ """
1606
+ Generate a context block for the Orchestrate tool if allowed.
1607
+
1608
+ Only returns content if ``allow_orchestration`` is enabled in the agent config.
1609
+ """
1610
+ if not self.use_enhanced_context:
1611
+ return None
1612
+
1613
+ try:
1614
+ from cecli.helpers.orchestration import build_orchestration_context_block
1615
+
1616
+ return build_orchestration_context_block(self.agent_config)
1617
+ except Exception as e:
1618
+ self.io.tool_error(f"Error generating orchestration context: {str(e)}")
1619
+ return None
1620
+
1585
1621
  def get_sub_agents_context(self):
1586
1622
  """
1587
1623
  Generate a context block for registered sub-agents.
@@ -1733,7 +1733,27 @@ class Coder(metaclass=UsageMeta):
1733
1733
  # Compacting is wasteful since /clear will clear everything
1734
1734
  # and /exit will exit the application
1735
1735
  stripped = user_message.strip()
1736
- if stripped not in ("/clear", "/reset", "/exit", "/quit"):
1736
+ is_command = self.commands.is_command(stripped)
1737
+ is_allowed_command = False
1738
+
1739
+ if is_command:
1740
+ res = self.commands.matching_commands(user_message)
1741
+ if res is not None:
1742
+ matching_commands, first_word, rest_inp = res
1743
+ if len(matching_commands) == 1:
1744
+ command = matching_commands[0]
1745
+ splits = (rest_inp or "").split()
1746
+ split_map = {
1747
+ "/agent": 1,
1748
+ "/architect": 1,
1749
+ "/ask": 1,
1750
+ "/code": 1,
1751
+ "/model": 2,
1752
+ }
1753
+ if command in split_map and len(splits) >= split_map.get(command, 0):
1754
+ is_allowed_command = True
1755
+
1756
+ if not is_command or is_allowed_command:
1737
1757
  self.compact_context_completed = False
1738
1758
  await self.compact_context_if_needed()
1739
1759
  self.compact_context_completed = True
@@ -1977,27 +1997,34 @@ class Coder(metaclass=UsageMeta):
1977
1997
  done_messages = manager.get_messages_dict(MessageTag.DONE)
1978
1998
  cur_messages = manager.get_messages_dict(MessageTag.CUR)
1979
1999
  diff_messages = manager.get_messages_dict(MessageTag.DIFFS)
2000
+ file_context_messages = manager.get_messages_dict(MessageTag.FILE_CONTEXTS)
1980
2001
  all_messages = manager.get_messages_dict()
1981
2002
 
1982
2003
  # Exclude first cur_message since that's the user's initial input
1983
2004
  done_tokens = self.summarizer.count_tokens(done_messages)
1984
2005
  cur_tokens = self.summarizer.count_tokens(cur_messages[1:] if len(cur_messages) > 1 else [])
1985
2006
  diff_tokens = self.summarizer.count_tokens(diff_messages)
2007
+ file_context_tokens = self.summarizer.count_tokens(file_context_messages)
1986
2008
  all_tokens = self.summarizer.count_tokens(all_messages)
1987
2009
 
1988
- combined_tokens = done_tokens + cur_tokens + diff_tokens
2010
+ message_tokens = done_tokens + cur_tokens
2011
+ file_tokens = diff_tokens + file_context_tokens
2012
+ combined_tokens = done_tokens + cur_tokens + diff_tokens + file_context_tokens
1989
2013
 
1990
2014
  self.context_compaction_current_ratio = all_tokens / self.context_compaction_max_tokens
1991
2015
 
1992
2016
  if force or (
1993
2017
  all_tokens >= self.context_compaction_max_tokens * 0.9
1994
2018
  and ConversationService.get_chunks(self).last_clear_count > 20
2019
+ and file_tokens / max(message_tokens, 1) > 2
1995
2020
  ):
1996
2021
  manager.clear_tag(MessageTag.LINT, ratio=0.33)
1997
2022
  manager.clear_tag(MessageTag.DIFFS, ratio=0.33)
1998
2023
  manager.clear_tag(MessageTag.FILE_CONTEXTS, ratio=0.33)
1999
2024
  ConversationService.get_files(self).clear_file_cache()
2000
2025
  ConversationService.get_chunks(self).flush_removals()
2026
+ ConversationService.get_chunks(self).reset_clear_count()
2027
+ ObservationService.get_instance(self).reset_index()
2001
2028
 
2002
2029
  if not force and combined_tokens < self.context_compaction_max_tokens:
2003
2030
  return
@@ -2031,9 +2058,9 @@ class Coder(metaclass=UsageMeta):
2031
2058
  manager.clear_tag(tag)
2032
2059
 
2033
2060
  if tag == MessageTag.DONE:
2034
- manager.add_message({"role": "user", "content": text}, tag=tag)
2035
- manager.add_message(
2036
- {
2061
+ manager.queue_message(message_dict={"role": "user", "content": text}, tag=tag)
2062
+ manager.queue_message(
2063
+ message_dict={
2037
2064
  "role": "assistant",
2038
2065
  "content": (
2039
2066
  "Ok, I will use this summary and the observations as context for"
@@ -2044,12 +2071,13 @@ class Coder(metaclass=UsageMeta):
2044
2071
  )
2045
2072
  else:
2046
2073
  if self.last_user_message:
2047
- manager.add_message(
2048
- {"role": "user", "content": self.last_user_message}, tag=tag
2074
+ manager.queue_message(
2075
+ message_dict={"role": "user", "content": self.last_user_message},
2076
+ tag=tag,
2049
2077
  )
2050
2078
 
2051
- manager.add_message(
2052
- {
2079
+ manager.queue_message(
2080
+ message_dict={
2053
2081
  "role": "assistant",
2054
2082
  "content": "Ok. I am awaiting your summary of our goals to proceed.",
2055
2083
  },
@@ -2057,8 +2085,8 @@ class Coder(metaclass=UsageMeta):
2057
2085
  force=True,
2058
2086
  )
2059
2087
 
2060
- manager.add_message(
2061
- {
2088
+ manager.queue_message(
2089
+ message_dict={
2062
2090
  "role": "user",
2063
2091
  "content": (
2064
2092
  "Here is a summary of our current goals and historical"
@@ -2068,8 +2096,8 @@ class Coder(metaclass=UsageMeta):
2068
2096
  tag=tag,
2069
2097
  )
2070
2098
 
2071
- manager.add_message(
2072
- {
2099
+ manager.queue_message(
2100
+ message_dict={
2073
2101
  "role": "assistant",
2074
2102
  "content": (
2075
2103
  "Ok, I will use this summary and proceed with our task. I will"
@@ -2102,6 +2130,9 @@ class Coder(metaclass=UsageMeta):
2102
2130
  manager.clear_tag(MessageTag.FILE_CONTEXTS)
2103
2131
  ConversationService.get_files(self).clear_file_cache()
2104
2132
  ConversationService.get_chunks(self).flush_removals()
2133
+ ConversationService.get_chunks(self).reset_clear_count()
2134
+ ObservationService.get_instance(self).reset_index()
2135
+ self.format_chat_chunks()
2105
2136
 
2106
2137
  except Exception as e:
2107
2138
  self.io.tool_warning(f"Context compaction failed: {e}")
@@ -4208,9 +4239,12 @@ class Coder(metaclass=UsageMeta):
4208
4239
  if tokens < warn_number_of_tokens:
4209
4240
  return
4210
4241
 
4211
- self.io.tool_warning("Warning: it's best to only add files that need changes to the chat.")
4212
- self.io.tool_warning(urls.edit_errors)
4213
- self.warning_given = True
4242
+ if self.context_compaction_current_ratio > 0.5:
4243
+ self.io.tool_warning(
4244
+ "Warning: it's best to only add files that need changes to the chat."
4245
+ )
4246
+ self.io.tool_warning(urls.edit_errors)
4247
+ self.warning_given = True
4214
4248
 
4215
4249
  async def prepare_to_edit(self, edits):
4216
4250
  res = []
@@ -5,6 +5,8 @@ This package contains individual command implementations that follow the
5
5
  BaseCommand pattern for modular, testable command execution.
6
6
  """
7
7
 
8
+ from cecli.signals import ReloadProgramSignal, SwitchCoderSignal
9
+
8
10
  from .add import AddCommand
9
11
  from .agent import AgentCommand
10
12
  from .agent_model import AgentModelCommand
@@ -20,7 +22,7 @@ from .context_blocks import ContextBlocksCommand
20
22
  from .context_management import ContextManagementCommand
21
23
  from .copy import CopyCommand
22
24
  from .copy_context import CopyContextCommand
23
- from .core import Commands, ReloadProgramSignal, SwitchCoderSignal
25
+ from .core import Commands
24
26
  from .diff import DiffCommand
25
27
  from .drop import DropCommand
26
28
  from .editor import EditCommand, EditorCommand
@@ -8,49 +8,7 @@ from cecli.commands.utils.registry import CommandRegistry
8
8
  from cecli.helpers import nested, plugin_manager
9
9
  from cecli.helpers.file_searcher import handle_core_files
10
10
  from cecli.helpers.threading import ThreadSafeEvent
11
- from cecli.repo import ANY_GIT_ERROR
12
-
13
-
14
- class SwitchCoderSignal(BaseException):
15
- """
16
- Signal to switch the current Coder instance to a new configuration.
17
-
18
- This is NOT an error - it's a control flow signal used to propagate
19
- coder switching requests up through the async call stack. It carries
20
- the kwargs needed to create a new Coder instance.
21
-
22
- Note: Inherits from BaseException (like KeyboardInterrupt and SystemExit)
23
- to avoid being caught by generic `except Exception` handlers, making the
24
- non-error nature of this signal explicit.
25
-
26
- Attributes:
27
- kwargs: Configuration dict passed to Coder.create() for the new instance
28
- placeholder: Optional placeholder text for the input prompt
29
- """
30
-
31
- def __init__(self, placeholder=None, **kwargs):
32
- self.kwargs = kwargs
33
- self.placeholder = placeholder
34
- super().__init__()
35
-
36
-
37
- class ReloadProgramSignal(BaseException):
38
- """
39
- Signal to reload the entire program configuration.
40
-
41
- This is NOT an error - it's a control flow signal used to trigger
42
- a full program reload, re-parsing config files and re-initializing
43
- all components. Useful for hot-reloading when configuration files
44
- change.
45
-
46
- Note: Inherits from BaseException (like KeyboardInterrupt and SystemExit)
47
- to avoid being caught by generic `except Exception` handlers.
48
- """
49
-
50
- def __init__(self, message="Reloading program configuration...", **kwargs):
51
- self.kwargs = kwargs
52
- self.message = message
53
- super().__init__(self.message)
11
+ from cecli.signals import SwitchCoderSignal
54
12
 
55
13
 
56
14
  class Commands:
@@ -215,6 +173,8 @@ class Commands:
215
173
  return sorted(commands)
216
174
 
217
175
  async def execute(self, cmd_name, args, coder=None, **kwargs):
176
+ from cecli.repo import ANY_GIT_ERROR
177
+
218
178
  active_coder = coder or self.coder
219
179
  command_class = CommandRegistry.get_command(cmd_name)
220
180
 
@@ -1,7 +1,7 @@
1
1
  from typing import List
2
2
 
3
- from cecli.commands.core import ReloadProgramSignal
4
3
  from cecli.commands.utils.base_command import BaseCommand
4
+ from cecli.signals import ReloadProgramSignal
5
5
 
6
6
 
7
7
  class HotReloadCommand(BaseCommand):
@@ -228,7 +228,7 @@ class AgentService:
228
228
  @property
229
229
  def max_sub_agents(self) -> int:
230
230
  """Return the max number of sub-agents allowed for this coder."""
231
- return getattr(self.coder, "max_sub_agents", 3)
231
+ return getattr(self.coder, "max_sub_agents", 30)
232
232
 
233
233
  # ------------------------------------------------------------------ #
234
234
  # Internal helpers
@@ -495,7 +495,7 @@ class AgentService:
495
495
  )
496
496
 
497
497
  new_coder = await Coder.create(**kwargs)
498
- new_coder.max_sub_agents = getattr(self.coder, "max_sub_agents", 3)
498
+ new_coder.max_sub_agents = getattr(self.coder, "max_sub_agents", 30)
499
499
  # IOProxy wrapping is handled by base_coder.py's Coder.__init__
500
500
 
501
501
  # Re-acquire the lock to register — we must re-check max agents since
@@ -116,9 +116,7 @@ class ConversationFiles:
116
116
  try:
117
117
  content = coder.io.read_text(abs_fname, silent=True)
118
118
  if coder.hashlines:
119
- content, json_str = hashline_formatted(
120
- content, file_name=abs_fname, partial=False, expanded=False
121
- )
119
+ content, json_str = hashline_formatted(content, file_name=abs_fname)
122
120
  self._file_json_contents[abs_fname] = json_str
123
121
  except Exception:
124
122
  content = "" # Empty content for unreadable files
@@ -236,9 +234,7 @@ class ConversationFiles:
236
234
  try:
237
235
  current_content = coder.io.read_text(abs_fname, silent=True)
238
236
  if coder.hashlines:
239
- current_content, _ = hashline_formatted(
240
- current_content, file_name=abs_fname, partial=False, expanded=False
241
- )
237
+ current_content, _ = hashline_formatted(current_content, file_name=abs_fname)
242
238
  except Exception:
243
239
  return None
244
240
 
@@ -607,12 +603,30 @@ class ConversationFiles:
607
603
  ):
608
604
  continue
609
605
 
610
- _, json_str = hashline_formatted(
611
- range_content,
606
+ # Hash the full content first so that adjacent-line hashes
607
+ # are computed with proper surrounding context from the complete
608
+ # file, then extract only the range's lines. This ensures content
609
+ # IDs are consistent with other tools (e.g., ReadFile) that hash
610
+ # the full file content.
611
+ full_prefixed, _ = hashline_formatted(
612
+ content,
612
613
  file_name=abs_fname,
613
- partial=True,
614
- expanded=False,
615
- start_line=start_line_adj,
614
+ total_lines=len(content_lines),
615
+ start_line=1,
616
+ )
617
+ prefixed_lines = full_prefixed.splitlines()
618
+ range_prefixed_lines = prefixed_lines[start_line_adj - 1 : end_line_adj]
619
+ range_prefixed_content = "\n".join(range_prefixed_lines)
620
+
621
+ json_str = json.dumps(
622
+ {
623
+ "file_name": abs_fname,
624
+ "start_line": start_line_adj,
625
+ "end_line": end_line_adj,
626
+ "total_lines": len(content_lines),
627
+ "prefixed_contents": range_prefixed_content,
628
+ },
629
+ ensure_ascii=False,
616
630
  )
617
631
  results.append(json.loads(json_str))
618
632
 
@@ -245,62 +245,7 @@ class ConversationChunks:
245
245
  if not coder:
246
246
  return
247
247
 
248
- # Check diff message ratio and clear if too many diffs
249
- diff_messages = ConversationService.get_manager(coder).get_messages_dict(MessageTag.DIFFS)
250
- read_only_messages = ConversationService.get_manager(coder).get_messages_dict(
251
- MessageTag.READONLY_FILES
252
- )
253
- chat_messages = ConversationService.get_manager(coder).get_messages_dict(
254
- MessageTag.CHAT_FILES
255
- )
256
- edit_messages = ConversationService.get_manager(coder).get_messages_dict(
257
- MessageTag.EDIT_FILES
258
- )
259
-
260
- # Calculate token counts for token-based ratio check
261
- diff_tokens = coder.main_model.token_count(diff_messages) if diff_messages else 0
262
-
263
- # Calculate tokens for readonly, chat, and edit tag messages
264
- other_tokens = 0
265
- if read_only_messages:
266
- other_tokens += coder.main_model.token_count(read_only_messages)
267
- if chat_messages:
268
- other_tokens += coder.main_model.token_count(chat_messages)
269
- if edit_messages:
270
- other_tokens += coder.main_model.token_count(edit_messages)
271
-
272
- # Calculate message counts for message-based ratio check
273
- diff_count = len(diff_messages)
274
- other_count = len(read_only_messages) + len(chat_messages) + len(edit_messages)
275
-
276
- # Clear diff messages and file caches if EITHER:
277
- # 1. Diff tokens > 33% of other message tokens (token-based check)
278
- # 2. Diff message count ratio > 5:1 (message count-based check for periodic refresh)
279
- should_clear = False
280
-
281
- # Token-based check
282
- if diff_tokens > 0 and other_tokens > 0 and diff_tokens / other_tokens > 0.5:
283
- should_clear = True
284
-
285
- # Message count-based check (for periodic refresh)
286
- if diff_count > 0 and other_count > 0 and diff_count / other_count > 20:
287
- should_clear = True
288
-
289
248
  self.last_clear_count += 1
290
-
291
- if (
292
- should_clear
293
- and coder.context_compaction_current_ratio > 0.8
294
- and self.last_clear_count >= 20
295
- and diff_tokens + other_tokens > coder.context_compaction_max_tokens * 0.5
296
- ):
297
- self.last_clear_count = 0
298
-
299
- # Clear all diff messages
300
- ConversationService.get_manager(coder).clear_tag(MessageTag.DIFFS, 0.33)
301
- # Clear ConversationFiles caches to force regeneration
302
- ConversationService.get_files(coder).clear_file_cache(clear_contexts=False)
303
-
304
249
  # Get all tracked files (both regular and image files)
305
250
  tracked_files = ConversationService.get_files(coder).get_all_tracked_files()
306
251
 
@@ -483,7 +428,7 @@ class ConversationChunks:
483
428
  repo_messages = ConversationService.get_manager(coder).get_messages_dict(MessageTag.REPO)
484
429
  if len(repo_messages) >= 20:
485
430
  # Clear all REPO tagged messages
486
- ConversationService.get_manager(coder).clear_tag(MessageTag.REPO)
431
+ ConversationService.get_manager(coder).clear_tag(MessageTag.REPO, ratio=0.33)
487
432
  # Clear the combined repomap dict to force fresh regeneration
488
433
  if (
489
434
  hasattr(coder, "repo_map")
@@ -864,6 +809,10 @@ class ConversationChunks:
864
809
  block = coder._generate_context_block("servers")
865
810
  if block:
866
811
  message_blocks["servers"] = block
812
+ if "orchestration" in coder.allowed_context_blocks:
813
+ block = coder._generate_context_block("orchestration")
814
+ if block:
815
+ message_blocks["orchestration"] = block
867
816
 
868
817
  # Add static blocks to conversation manager with stable hash keys
869
818
  for block_type, block_content in message_blocks.items():
@@ -1017,6 +966,9 @@ class ConversationChunks:
1017
966
  def flush_removals(self):
1018
967
  self._deferred_removals.clear()
1019
968
 
969
+ def reset_clear_count(self):
970
+ self.last_clear_count = 0
971
+
1020
972
  def _cancel_post_message_injections(self, modulus=10):
1021
973
  coder = self.get_coder()
1022
974
  if not coder:
@@ -214,17 +214,24 @@ class TreeContext:
214
214
  # reset
215
215
  output += "\033[0m\n"
216
216
 
217
- dots = not (0 in self.show_lines)
217
+ # dots = not (0 in self.show_lines)
218
+ in_gap = False
219
+ gap_start = -1
218
220
  for i, line in enumerate(self.lines):
219
221
  if i not in self.show_lines:
220
- if dots:
221
- if self.line_number:
222
- output += "...⋮...\n"
223
- else:
224
- output += "⋮\n"
225
- dots = False
222
+ if not in_gap:
223
+ in_gap = True
224
+ gap_start = i
226
225
  continue
227
226
 
227
+ if in_gap:
228
+ omitted = i - gap_start
229
+ if self.line_number:
230
+ output += f"...⋮... [{omitted} lines omitted (L{gap_start + 1}–L{i})]\n"
231
+ else:
232
+ output += f"⋮ [{omitted} lines omitted]\n"
233
+ in_gap = False
234
+
228
235
  if i in self.lines_of_interest and self.mark_lois:
229
236
  spacer = "█"
230
237
  if self.color:
@@ -237,7 +244,7 @@ class TreeContext:
237
244
  line_output = f"{i + 1: 3}" + line_output
238
245
  output += line_output + "\n"
239
246
 
240
- dots = True
247
+ # dots = True
241
248
 
242
249
  return output
243
250