cecli-dev 1.6.0rc4__tar.gz → 1.6.0rc5__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 (857) hide show
  1. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/PKG-INFO +1 -1
  2. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/_version.py +3 -3
  3. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/agent_coder.py +9 -2
  4. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/base_coder.py +7 -1
  5. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/coroutines.py +85 -36
  6. cecli_dev-1.6.0rc5/cecli/helpers/lock_detect.py +137 -0
  7. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/mcp/manager.py +34 -6
  8. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/models.py +2 -2
  9. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/repo.py +48 -13
  10. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/command.py +41 -1
  11. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/worker.py +177 -21
  12. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli_dev.egg-info/PKG-INFO +1 -1
  13. cecli_dev-1.6.0rc5/cecli_dev.egg-info/scm_version.json +8 -0
  14. cecli_dev-1.6.0rc4/cecli/helpers/lock_detect.py +0 -61
  15. cecli_dev-1.6.0rc4/cecli_dev.egg-info/scm_version.json +0 -8
  16. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.dockerignore +0 -0
  17. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.flake8 +0 -0
  18. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.gitattributes +0 -0
  19. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/ISSUE_TEMPLATE/issue.yml +0 -0
  20. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/check_pypi_version.yml +0 -0
  21. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/docker-build-test.yml +0 -0
  22. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/docker-release.yml +0 -0
  23. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/issues.yml +0 -0
  24. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/pages.yml +0 -0
  25. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/pre-commit.yml +0 -0
  26. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/release.yml +0 -0
  27. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/ubuntu-tests.yml +0 -0
  28. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/windows-tests.yml +0 -0
  29. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.github/workflows/windows_check_pypi_version.yml +0 -0
  30. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.gitignore +0 -0
  31. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/.pre-commit-config.yaml +0 -0
  32. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/CHANGELOG.md +0 -0
  33. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/CNAME +0 -0
  34. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/CONTRIBUTING.md +0 -0
  35. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/HISTORY.md +0 -0
  36. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/LICENSE.txt +0 -0
  37. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/MANIFEST.in +0 -0
  38. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/README.md +0 -0
  39. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/Dockerfile +0 -0
  40. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/README.md +0 -0
  41. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/__init__.py +0 -0
  42. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/benchmark.py +0 -0
  43. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/benchmark_classic.py +0 -0
  44. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/clone-exercism.sh +0 -0
  45. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/cpp-test.sh +0 -0
  46. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/docker.sh +0 -0
  47. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/docker_build.sh +0 -0
  48. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/install-docker-ubuntu.sh +0 -0
  49. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/npm-test.sh +0 -0
  50. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/over_time.py +0 -0
  51. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/plot.sh +0 -0
  52. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/plots.py +0 -0
  53. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/problem_stats.py +0 -0
  54. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/prompts.py +0 -0
  55. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/refactor_tools.py +0 -0
  56. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/rsync.sh +0 -0
  57. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/rungrid.py +0 -0
  58. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/swe-bench-lite.txt +0 -0
  59. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/swe-bench.txt +0 -0
  60. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/swe_bench.py +0 -0
  61. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/test_benchmark.py +0 -0
  62. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/variations.1.sh +0 -0
  63. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/variations.2.sh +0 -0
  64. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/variations.3.sh +0 -0
  65. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/benchmark/variations.4.sh +0 -0
  66. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/__init__.py +0 -0
  67. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/__main__.py +0 -0
  68. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/args.py +0 -0
  69. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/args_formatter.py +0 -0
  70. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/change_tracker.py +0 -0
  71. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/__init__.py +0 -0
  72. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/architect_coder.py +0 -0
  73. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/ask_coder.py +0 -0
  74. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/chat_chunks.py +0 -0
  75. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/context_coder.py +0 -0
  76. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/copypaste_coder.py +0 -0
  77. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/editblock_coder.py +0 -0
  78. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/editblock_fenced_coder.py +0 -0
  79. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/editblock_func_coder.py +0 -0
  80. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/editor_diff_fenced_coder.py +0 -0
  81. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/editor_editblock_coder.py +0 -0
  82. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/editor_whole_coder.py +0 -0
  83. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/hashline_coder.py +0 -0
  84. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/help_coder.py +0 -0
  85. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/patch_coder.py +0 -0
  86. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/search_replace.py +0 -0
  87. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/shell.py +0 -0
  88. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/single_wholefile_func_coder.py +0 -0
  89. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/sub_agent_coder.py +0 -0
  90. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/udiff_coder.py +0 -0
  91. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/udiff_simple.py +0 -0
  92. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/wholefile_coder.py +0 -0
  93. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/coders/wholefile_func_coder.py +0 -0
  94. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/__init__.py +0 -0
  95. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/add.py +0 -0
  96. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/agent.py +0 -0
  97. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/agent_model.py +0 -0
  98. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/agent_tree.py +0 -0
  99. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/architect.py +0 -0
  100. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/ask.py +0 -0
  101. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/auto_memory.py +0 -0
  102. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/chat_mode.py +0 -0
  103. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/clear.py +0 -0
  104. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/code.py +0 -0
  105. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/command_prefix.py +0 -0
  106. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/commit.py +0 -0
  107. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/compact.py +0 -0
  108. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/context.py +0 -0
  109. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/context_blocks.py +0 -0
  110. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/context_management.py +0 -0
  111. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/copy.py +0 -0
  112. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/copy_context.py +0 -0
  113. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/core.py +0 -0
  114. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/diff.py +0 -0
  115. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/drop.py +0 -0
  116. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/editor.py +0 -0
  117. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/editor_model.py +0 -0
  118. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/exclude_skill.py +0 -0
  119. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/exit.py +0 -0
  120. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/git.py +0 -0
  121. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/hashline.py +0 -0
  122. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/help.py +0 -0
  123. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/history_search.py +0 -0
  124. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/hooks.py +0 -0
  125. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/hot_reload.py +0 -0
  126. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/import_skill.py +0 -0
  127. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/include_skill.py +0 -0
  128. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/insert_queue.py +0 -0
  129. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/lint.py +0 -0
  130. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/list_mcp.py +0 -0
  131. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/list_queue.py +0 -0
  132. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/list_sessions.py +0 -0
  133. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/list_skills.py +0 -0
  134. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/load.py +0 -0
  135. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/load_hook.py +0 -0
  136. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/load_mcp.py +0 -0
  137. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/load_session.py +0 -0
  138. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/load_skill.py +0 -0
  139. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/ls.py +0 -0
  140. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/map.py +0 -0
  141. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/map_refresh.py +0 -0
  142. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/merge.py +0 -0
  143. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/model.py +0 -0
  144. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/models.py +0 -0
  145. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/multiline_mode.py +0 -0
  146. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/paste.py +0 -0
  147. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/queue.py +0 -0
  148. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/quit.py +0 -0
  149. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/read_only.py +0 -0
  150. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/read_only_stub.py +0 -0
  151. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/reap_agent.py +0 -0
  152. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/reasoning_effort.py +0 -0
  153. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/remove_hook.py +0 -0
  154. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/remove_mcp.py +0 -0
  155. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/remove_memory.py +0 -0
  156. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/remove_queue.py +0 -0
  157. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/remove_skill.py +0 -0
  158. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/report.py +0 -0
  159. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/reset.py +0 -0
  160. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/rules.py +0 -0
  161. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/run.py +0 -0
  162. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/save.py +0 -0
  163. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/save_session.py +0 -0
  164. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/search_memory.py +0 -0
  165. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/settings.py +0 -0
  166. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/spawn_agent.py +0 -0
  167. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/switch_agent.py +0 -0
  168. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/terminal_data/linux.keytab +0 -0
  169. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/terminal_setup.py +0 -0
  170. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/test.py +0 -0
  171. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/think_tokens.py +0 -0
  172. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/tokens.py +0 -0
  173. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/undo.py +0 -0
  174. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/utils/__init__.py +0 -0
  175. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/utils/base_command.py +0 -0
  176. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/utils/helpers.py +0 -0
  177. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/utils/registry.py +0 -0
  178. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/utils/save_load_manager.py +0 -0
  179. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/voice.py +0 -0
  180. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/weak_model.py +0 -0
  181. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/web.py +0 -0
  182. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/commands/workspace.py +0 -0
  183. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/decoding.py +0 -0
  184. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/deprecated_args.py +0 -0
  185. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/diffs.py +0 -0
  186. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/dump.py +0 -0
  187. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/editor.py +0 -0
  188. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/exceptions.py +0 -0
  189. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/format_settings.py +0 -0
  190. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/help.py +0 -0
  191. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/help_pats.py +0 -0
  192. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/__init__.py +0 -0
  193. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/agents/__init__.py +0 -0
  194. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/agents/config.py +0 -0
  195. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/agents/defaults/__init__.py +0 -0
  196. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/agents/defaults/memorizer.md +0 -0
  197. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/agents/defaults/worker.md +0 -0
  198. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/agents/service.py +0 -0
  199. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/background_commands.py +0 -0
  200. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/command_parser.py +0 -0
  201. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/command_queue.py +0 -0
  202. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/config_utils.py +0 -0
  203. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/__init__.py +0 -0
  204. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/base_message.py +0 -0
  205. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/files.py +0 -0
  206. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/integration.py +0 -0
  207. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/manager.py +0 -0
  208. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/service.py +0 -0
  209. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/tags.py +0 -0
  210. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/conversation/utils.py +0 -0
  211. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/copypaste.py +0 -0
  212. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/crypto.py +0 -0
  213. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/extensions/__init__.py +0 -0
  214. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/extensions/skills_importer.py +0 -0
  215. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/file_searcher.py +0 -0
  216. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/file_system/__init__.py +0 -0
  217. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/file_system/builders.py +0 -0
  218. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/file_system/ignore.py +0 -0
  219. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/file_system/ngram_index.py +0 -0
  220. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/file_system/service.py +0 -0
  221. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/file_system/trie_index.py +0 -0
  222. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/grep_ast/__init__.py +0 -0
  223. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/grep_ast/dump.py +0 -0
  224. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/grep_ast/grep_ast.py +0 -0
  225. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/grep_ast/main.py +0 -0
  226. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/grep_ast/parsers.py +0 -0
  227. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/grep_ast/tsl.py +0 -0
  228. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/hashline.py +0 -0
  229. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/hashpos/__init__.py +0 -0
  230. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/hashpos/hashpos.py +0 -0
  231. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/hashpos/hashpos.v1.bak +0 -0
  232. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/hashpos/transformations.py +0 -0
  233. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/io_proxy.py +0 -0
  234. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/leak_detect.py +0 -0
  235. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/__init__.py +0 -0
  236. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/aws_sigv4.py +0 -0
  237. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/config.py +0 -0
  238. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/domains/__init__.py +0 -0
  239. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/domains/bedrock.py +0 -0
  240. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/domains/chat.py +0 -0
  241. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/domains/gemini.py +0 -0
  242. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/domains/messages.py +0 -0
  243. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/domains/responses.py +0 -0
  244. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/formatters/__init__.py +0 -0
  245. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/formatters/reasoning.py +0 -0
  246. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/formatters/thinking.py +0 -0
  247. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/identifiers.py +0 -0
  248. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/litellm_compat.py +0 -0
  249. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/pipeline.py +0 -0
  250. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/__init__.py +0 -0
  251. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/anthropic.py +0 -0
  252. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/azure.py +0 -0
  253. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/base.py +0 -0
  254. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/bedrock.py +0 -0
  255. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/bedrock_mantle.py +0 -0
  256. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/deepseek.py +0 -0
  257. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/gemini.py +0 -0
  258. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/github_copilot.py +0 -0
  259. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/meta.py +0 -0
  260. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/mistral.py +0 -0
  261. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/openai.py +0 -0
  262. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/providers/openrouter.py +0 -0
  263. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/runtime.py +0 -0
  264. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/types.py +0 -0
  265. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/llms/utils.py +0 -0
  266. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/loop_detect.py +0 -0
  267. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/memory/__init__.py +0 -0
  268. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/memory/db.py +0 -0
  269. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/memory/utils.py +0 -0
  270. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/memory_control.py +0 -0
  271. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/__init__.py +0 -0
  272. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/agent.py +0 -0
  273. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/api.py +0 -0
  274. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/formatters/__init__.py +0 -0
  275. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/formatters/reasoning.py +0 -0
  276. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/formatters/thinking.py +0 -0
  277. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/identifiers.py +0 -0
  278. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/llm.py +0 -0
  279. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/pipeline.py +0 -0
  280. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/registry.py +0 -0
  281. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_config/utils.py +0 -0
  282. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/model_providers.py +0 -0
  283. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/nested.py +0 -0
  284. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/observations/__init__.py +0 -0
  285. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/observations/service.py +0 -0
  286. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/onboarding/__init__.py +0 -0
  287. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/onboarding/app.py +0 -0
  288. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/onboarding/providers.py +0 -0
  289. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/__init__.py +0 -0
  290. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/agent_proxy.py +0 -0
  291. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/environment.py +0 -0
  292. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/region_resolver.py +0 -0
  293. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/safe_methods.py +0 -0
  294. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/security.py +0 -0
  295. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/service.py +0 -0
  296. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/orchestration/tool_proxy.py +0 -0
  297. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/plugin_manager.py +0 -0
  298. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/profiler.py +0 -0
  299. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/queues.py +0 -0
  300. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/requests.py +0 -0
  301. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/responses.py +0 -0
  302. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/server/__init__.py +0 -0
  303. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/server/acp/__init__.py +0 -0
  304. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/server/acp/bridge.py +0 -0
  305. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/server/acp/models.py +0 -0
  306. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/server/acp/protocol.py +0 -0
  307. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/server/signals.py +0 -0
  308. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/server/ws_server.py +0 -0
  309. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/similarity.py +0 -0
  310. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/skills.py +0 -0
  311. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/threading.py +0 -0
  312. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/workspaces/__init__.py +0 -0
  313. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/workspaces/config.py +0 -0
  314. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/workspaces/paths.py +0 -0
  315. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/workspaces/subagents.py +0 -0
  316. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/helpers/workspaces/workspace.py +0 -0
  317. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/history.py +0 -0
  318. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/__init__.py +0 -0
  319. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/base.py +0 -0
  320. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/helpers.py +0 -0
  321. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/integration.py +0 -0
  322. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/manager.py +0 -0
  323. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/registry.py +0 -0
  324. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/service.py +0 -0
  325. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/hooks/types.py +0 -0
  326. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/http.py +0 -0
  327. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/interruptible_input.py +0 -0
  328. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/io.py +0 -0
  329. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/linter.py +0 -0
  330. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/llm.py +0 -0
  331. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/main.py +0 -0
  332. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/mcp/__init__.py +0 -0
  333. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/mcp/oauth.py +0 -0
  334. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/mcp/server.py +0 -0
  335. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/mcp/utils.py +0 -0
  336. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/mdstream.py +0 -0
  337. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/onboarding.py +0 -0
  338. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/__init__.py +0 -0
  339. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/agent.yml +0 -0
  340. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/architect.yml +0 -0
  341. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/ask.yml +0 -0
  342. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/base.yml +0 -0
  343. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/context.yml +0 -0
  344. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/copypaste.yml +0 -0
  345. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/editblock.yml +0 -0
  346. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/editblock_fenced.yml +0 -0
  347. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/editblock_func.yml +0 -0
  348. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/editor_diff_fenced.yml +0 -0
  349. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/editor_editblock.yml +0 -0
  350. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/editor_whole.yml +0 -0
  351. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/hashline.yml +0 -0
  352. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/help.yml +0 -0
  353. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/patch.yml +0 -0
  354. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/single_wholefile_func.yml +0 -0
  355. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/subagent.yml +0 -0
  356. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/udiff.yml +0 -0
  357. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/udiff_simple.yml +0 -0
  358. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/utils/__init__.py +0 -0
  359. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/utils/registry.py +0 -0
  360. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/utils/system.py +0 -0
  361. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/wholefile.yml +0 -0
  362. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/prompts/wholefile_func.yml +0 -0
  363. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/README.md +0 -0
  364. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
  365. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/bash-tags.scm +0 -0
  366. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/c-tags.scm +0 -0
  367. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
  368. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/clojure-tags.scm +0 -0
  369. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
  370. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
  371. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
  372. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/d-tags.scm +0 -0
  373. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
  374. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
  375. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
  376. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
  377. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
  378. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/go-tags.scm +0 -0
  379. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/java-tags.scm +0 -0
  380. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
  381. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
  382. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/matlab-tags.scm +0 -0
  383. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/ocaml-tags.scm +0 -0
  384. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +0 -0
  385. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
  386. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
  387. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/python-tags.scm +0 -0
  388. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/r-tags.scm +0 -0
  389. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
  390. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
  391. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
  392. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
  393. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
  394. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
  395. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/README.md +0 -0
  396. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/bash-tags.scm +0 -0
  397. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/c-tags.scm +0 -0
  398. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
  399. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/cpp-tags.scm +0 -0
  400. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/dart-tags.scm +0 -0
  401. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/elisp-tags.scm +0 -0
  402. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/elixir-tags.scm +0 -0
  403. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/elm-tags.scm +0 -0
  404. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/fortran-tags.scm +0 -0
  405. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/go-tags.scm +0 -0
  406. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/haskell-tags.scm +0 -0
  407. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/hcl-tags.scm +0 -0
  408. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/java-tags.scm +0 -0
  409. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/javascript-tags.scm +0 -0
  410. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/julia-tags.scm +0 -0
  411. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
  412. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/matlab-tags.scm +0 -0
  413. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
  414. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/ocaml_interface-tags.scm +0 -0
  415. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/php-tags.scm +0 -0
  416. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/python-tags.scm +0 -0
  417. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/ql-tags.scm +0 -0
  418. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/ruby-tags.scm +0 -0
  419. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/rust-tags.scm +0 -0
  420. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/scala-tags.scm +0 -0
  421. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/typescript-tags.scm +0 -0
  422. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/queries/tree-sitter-languages/zig-tags.scm +0 -0
  423. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/reasoning_tags.py +0 -0
  424. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/repomap.py +0 -0
  425. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/report.py +0 -0
  426. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/resources/__init__.py +0 -0
  427. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/resources/model-metadata.ext.json +0 -0
  428. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/resources/model-metadata.json +0 -0
  429. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/resources/model-settings-condensed.yml +0 -0
  430. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/resources/model-settings.yml +0 -0
  431. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/resources/providers.json +0 -0
  432. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/run_cmd.py +0 -0
  433. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/scrape.py +0 -0
  434. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/sendchat.py +0 -0
  435. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/sessions.py +0 -0
  436. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/signals.py +0 -0
  437. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/special.py +0 -0
  438. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tests/test_queue_commands.py +0 -0
  439. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/__init__.py +0 -0
  440. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/_yield.py +0 -0
  441. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/broadcast.py +0 -0
  442. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/delegate.py +0 -0
  443. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/edit_file.py +0 -0
  444. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/explore_code.py +0 -0
  445. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/git_branch.py +0 -0
  446. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/git_diff.py +0 -0
  447. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/git_log.py +0 -0
  448. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/git_remote.py +0 -0
  449. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/git_show.py +0 -0
  450. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/git_status.py +0 -0
  451. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/grep.py +0 -0
  452. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/ls.py +0 -0
  453. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/orchestrate.py +0 -0
  454. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/read_file.py +0 -0
  455. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/replace_facts.py +0 -0
  456. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/resource_manager.py +0 -0
  457. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/search_facts.py +0 -0
  458. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/thinking.py +0 -0
  459. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/undo_change.py +0 -0
  460. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/update_todo_list.py +0 -0
  461. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/utils/__init__.py +0 -0
  462. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/utils/base_tool.py +0 -0
  463. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/utils/helpers.py +0 -0
  464. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/utils/output.py +0 -0
  465. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/utils/registry.py +0 -0
  466. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/utils/responses.py +0 -0
  467. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/validations/__init__.py +0 -0
  468. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tools/validations/validations.py +0 -0
  469. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/__init__.py +0 -0
  470. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/app.py +0 -0
  471. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/io.py +0 -0
  472. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/styles.tcss +0 -0
  473. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/__init__.py +0 -0
  474. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/completion_bar.py +0 -0
  475. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/file_list.py +0 -0
  476. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/footer.py +0 -0
  477. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/input_area.py +0 -0
  478. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/input_container.py +0 -0
  479. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/key_hints.py +0 -0
  480. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/output.py +0 -0
  481. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/output_alt.bak +0 -0
  482. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/selectable_log.py +0 -0
  483. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/status_bar.py +0 -0
  484. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/tui/widgets/subagent_pills.py +0 -0
  485. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/urls.py +0 -0
  486. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/utils.py +0 -0
  487. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/versioncheck.py +0 -0
  488. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/voice.py +0 -0
  489. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/waiting.py +0 -0
  490. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/watch.py +0 -0
  491. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/watch_prompts.py +0 -0
  492. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/blame.md +0 -0
  493. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/get-started.md +0 -0
  494. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/help-tip.md +0 -0
  495. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/help.md +0 -0
  496. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/install.md +0 -0
  497. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/keys.md +0 -0
  498. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/model-warnings.md +0 -0
  499. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/multi-line.md +0 -0
  500. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/python-m-aider.md +0 -0
  501. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/recording.css +0 -0
  502. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/recording.md +0 -0
  503. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_includes/works-best.md +0 -0
  504. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_features.scss +0 -0
  505. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_footer.scss +0 -0
  506. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_hero.scss +0 -0
  507. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_info.scss +0 -0
  508. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_layout.scss +0 -0
  509. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_reset.scss +0 -0
  510. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_testimonials.scss +0 -0
  511. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_typography.scss +0 -0
  512. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/_variables.scss +0 -0
  513. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/custom/custom.scss +0 -0
  514. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/_sass/global-overrides.scss +0 -0
  515. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docmd.config.json +0 -0
  516. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/cecli-temp-logo-favicon.svg +0 -0
  517. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/adv-model-settings.md +0 -0
  518. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/agent-mode.md +0 -0
  519. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/api-keys.md +0 -0
  520. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/api.md +0 -0
  521. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/conf.md +0 -0
  522. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/custom-commands.md +0 -0
  523. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/custom-system-prompts.md +0 -0
  524. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/dotenv.md +0 -0
  525. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/editor.md +0 -0
  526. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/hooks.md +0 -0
  527. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/mcp.md +0 -0
  528. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/model-aliases.md +0 -0
  529. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/model-configuration.md +0 -0
  530. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/model-providers.md +0 -0
  531. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/options.md +0 -0
  532. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/persistent-memory.md +0 -0
  533. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/reasoning.md +0 -0
  534. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/retries.md +0 -0
  535. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/security.md +0 -0
  536. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/skills.md +0 -0
  537. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/subagents.md +0 -0
  538. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/tui.md +0 -0
  539. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config/workspaces.md +0 -0
  540. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/config.md +0 -0
  541. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/git.md +0 -0
  542. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/index.md +0 -0
  543. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/install/docker.md +0 -0
  544. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/install.md +0 -0
  545. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/languages.md +0 -0
  546. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/legal/contributor-agreement.md +0 -0
  547. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/legal/privacy.md +0 -0
  548. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/anthropic.md +0 -0
  549. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/azure.md +0 -0
  550. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/bedrock.md +0 -0
  551. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/cohere.md +0 -0
  552. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/deepseek.md +0 -0
  553. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/gemini.md +0 -0
  554. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/github.md +0 -0
  555. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/groq.md +0 -0
  556. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/lm-studio.md +0 -0
  557. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/ollama.md +0 -0
  558. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/openai-compat.md +0 -0
  559. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/openai.md +0 -0
  560. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/opencode-go.md +0 -0
  561. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/openrouter.md +0 -0
  562. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/other.md +0 -0
  563. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/vertex.md +0 -0
  564. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/warnings.md +0 -0
  565. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms/xai.md +0 -0
  566. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/llms.md +0 -0
  567. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/more/analytics.md +0 -0
  568. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/more/edit-formats.md +0 -0
  569. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/more/infinite-output.md +0 -0
  570. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/more-info.md +0 -0
  571. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/repomap.md +0 -0
  572. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/scripting.md +0 -0
  573. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting/cecli-not-found.md +0 -0
  574. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting/edit-errors.md +0 -0
  575. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting/imports.md +0 -0
  576. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting/models-and-keys.md +0 -0
  577. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting/support.md +0 -0
  578. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting/token-limits.md +0 -0
  579. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting/warnings.md +0 -0
  580. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/troubleshooting.md +0 -0
  581. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/commands.md +0 -0
  582. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/conventions.md +0 -0
  583. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/copypaste.md +0 -0
  584. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/images-urls.md +0 -0
  585. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/lint-test.md +0 -0
  586. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/modes.md +0 -0
  587. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/not-code.md +0 -0
  588. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/notifications.md +0 -0
  589. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/optional.md +0 -0
  590. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/sessions.md +0 -0
  591. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/tips.md +0 -0
  592. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/voice.md +0 -0
  593. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage/watch.md +0 -0
  594. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/docs/usage.md +0 -0
  595. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/package-lock.json +0 -0
  596. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/package.json +0 -0
  597. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli/website/share/index.md +0 -0
  598. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli_dev.egg-info/SOURCES.txt +0 -0
  599. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli_dev.egg-info/dependency_links.txt +0 -0
  600. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli_dev.egg-info/entry_points.txt +0 -0
  601. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli_dev.egg-info/requires.txt +0 -0
  602. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli_dev.egg-info/scm_file_list.json +0 -0
  603. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/cecli_dev.egg-info/top_level.txt +0 -0
  604. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/docker/Dockerfile +0 -0
  605. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/docker/Dockerfile.local.nvidia.cuda.ubuntu +0 -0
  606. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/pyproject.toml +0 -0
  607. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/pytest.ini +0 -0
  608. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/common-constraints.txt +0 -0
  609. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/requirements-dev.in +0 -0
  610. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/requirements-dev.txt +0 -0
  611. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/requirements-help.in +0 -0
  612. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/requirements-help.txt +0 -0
  613. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/requirements-playwright.in +0 -0
  614. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/requirements-playwright.txt +0 -0
  615. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/requirements.in +0 -0
  616. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements/tree-sitter.in +0 -0
  617. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/requirements.txt +0 -0
  618. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/30k-image.py +0 -0
  619. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/__init__.py +0 -0
  620. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/blame.py +0 -0
  621. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/clean_metadata.py +0 -0
  622. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/compare-message-history.py +0 -0
  623. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/condense_model_settings.py +0 -0
  624. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/cost_analyzer.py +0 -0
  625. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/cost_calculator.py +0 -0
  626. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/dl_icons.py +0 -0
  627. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/docmd_build.sh +0 -0
  628. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/filter-chat-mode.js +0 -0
  629. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/generate_providers.py +0 -0
  630. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/get_contributor_list.js +0 -0
  631. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/get_hashline.py +0 -0
  632. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/history_prompts.py +0 -0
  633. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/homepage.py +0 -0
  634. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/issues.py +0 -0
  635. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/logo_svg.py +0 -0
  636. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/optimize_tokens.sh +0 -0
  637. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/pip-compile.sh +0 -0
  638. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/recording_audio.py +0 -0
  639. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/redact-cast.py +0 -0
  640. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/rename_to_cecli.py +0 -0
  641. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/tmux_record.sh +0 -0
  642. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/tsl_pack_langs.py +0 -0
  643. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/update-blame.sh +0 -0
  644. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/update-docs.sh +0 -0
  645. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/update-history.py +0 -0
  646. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/versionbump.py +0 -0
  647. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/scripts/yank-old-versions.py +0 -0
  648. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/setup.cfg +0 -0
  649. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/shim.pyproject.toml +0 -0
  650. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/__init__.py +0 -0
  651. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/__init__.py +0 -0
  652. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/conftest.py +0 -0
  653. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_agent_config_merge.py +0 -0
  654. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_aws_credentials.py +0 -0
  655. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_background_commands.py +0 -0
  656. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_coder.py +0 -0
  657. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_commands.py +0 -0
  658. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_custom_commands.py +0 -0
  659. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_deprecated.py +0 -0
  660. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_editblock.py +0 -0
  661. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_editor.py +0 -0
  662. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_exceptions.py +0 -0
  663. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_file_system_service.py +0 -0
  664. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_find_or_blocks.py +0 -0
  665. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_hashline.py +0 -0
  666. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_hashline_closure.py +0 -0
  667. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_history.py +0 -0
  668. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_io.py +0 -0
  669. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_linter.py +0 -0
  670. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_main.py +0 -0
  671. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_model_info_manager.py +0 -0
  672. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_model_provider_manager.py +0 -0
  673. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_models.py +0 -0
  674. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_onboarding.py +0 -0
  675. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_plugin_manager.py +0 -0
  676. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_prompts.py +0 -0
  677. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_reasoning.py +0 -0
  678. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_repo.py +0 -0
  679. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_repomap.py +0 -0
  680. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_run_cmd.py +0 -0
  681. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_sanity_check_repo.py +0 -0
  682. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_scripting.py +0 -0
  683. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_select_selector.py +0 -0
  684. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_sendchat.py +0 -0
  685. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_session_args.py +0 -0
  686. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_session_crypto.py +0 -0
  687. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_sessions.py +0 -0
  688. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_sessions_manager.py +0 -0
  689. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_skills.py +0 -0
  690. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_special.py +0 -0
  691. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_spinner.py +0 -0
  692. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_ssl_verification.py +0 -0
  693. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_udiff.py +0 -0
  694. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_urls.py +0 -0
  695. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_voice.py +0 -0
  696. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_watch.py +0 -0
  697. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/basic/test_wholefile.py +0 -0
  698. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/coders/test_coder_switching.py +0 -0
  699. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/coders/test_copypaste_coder.py +0 -0
  700. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/coders/test_rate_limit.py +0 -0
  701. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/coders/test_tool_call_consolidation.py +0 -0
  702. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/commands/test_auto_memory.py +0 -0
  703. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/commands/test_compaction.py +0 -0
  704. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/commands/test_remove_memory.py +0 -0
  705. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/commands/test_search_memory.py +0 -0
  706. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/commands/test_switch_agent.py +0 -0
  707. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/commands/test_voice.py +0 -0
  708. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/commands/test_workspace.py +0 -0
  709. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/conftest.py +0 -0
  710. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/conversations/test_background_command_injection.py +0 -0
  711. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/conversations/test_conversation_integration.py +0 -0
  712. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/conversations/test_conversation_system.py +0 -0
  713. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/chat-history-search-replace-gold.txt +0 -0
  714. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/chat-history.md +0 -0
  715. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/arduino/test.ino +0 -0
  716. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/bash/test.sh +0 -0
  717. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/c/test.c +0 -0
  718. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/chatito/test.chatito +0 -0
  719. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/clojure/test.clj +0 -0
  720. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/commonlisp/test.lisp +0 -0
  721. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/cpp/test.cpp +0 -0
  722. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/csharp/test.cs +0 -0
  723. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/d/test.d +0 -0
  724. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/dart/test.dart +0 -0
  725. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/elisp/test.el +0 -0
  726. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/elixir/test.ex +0 -0
  727. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/elm/test.elm +0 -0
  728. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/gleam/test.gleam +0 -0
  729. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/go/test.go +0 -0
  730. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/haskell/test.hs +0 -0
  731. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/hcl/test.tf +0 -0
  732. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/java/test.java +0 -0
  733. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/javascript/test.js +0 -0
  734. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/kotlin/test.kt +0 -0
  735. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/lua/test.lua +0 -0
  736. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/matlab/test.m +0 -0
  737. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/ocaml/test.ml +0 -0
  738. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/ocaml_interface/test.mli +0 -0
  739. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/php/test.php +0 -0
  740. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/pony/test.pony +0 -0
  741. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/properties/test.properties +0 -0
  742. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/python/test.py +0 -0
  743. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/ql/test.ql +0 -0
  744. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/r/test.r +0 -0
  745. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/racket/test.rkt +0 -0
  746. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/ruby/test.rb +0 -0
  747. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/rust/test.rs +0 -0
  748. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/scala/test.scala +0 -0
  749. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/solidity/test.sol +0 -0
  750. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/swift/test.swift +0 -0
  751. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/tsx/test.tsx +0 -0
  752. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/typescript/test.ts +0 -0
  753. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/udev/test.rules +0 -0
  754. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/languages/zig/test.zig +0 -0
  755. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/sample-code-base/sample.js +0 -0
  756. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/sample-code-base/sample.py +0 -0
  757. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/sample-code-base-repo-map.txt +0 -0
  758. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/watch.js +0 -0
  759. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/watch.lisp +0 -0
  760. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/watch.py +0 -0
  761. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/fixtures/watch_question.js +0 -0
  762. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/help/test_help.py +0 -0
  763. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/observations/test_observation_service.py +0 -0
  764. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/server/acp/__init__.py +0 -0
  765. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/server/acp/test_bridge.py +0 -0
  766. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/server/acp/test_dispatch.py +0 -0
  767. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/server/acp/test_models.py +0 -0
  768. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/server/acp/test_protocol.py +0 -0
  769. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_api_base.py +0 -0
  770. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_aws_sigv4.py +0 -0
  771. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_cache_control.py +0 -0
  772. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_gemini_auth.py +0 -0
  773. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_github_copilot_auth.py +0 -0
  774. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_hyperscalers.py +0 -0
  775. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_messages_stream.py +0 -0
  776. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_messages_wire.py +0 -0
  777. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_mistral_adapter.py +0 -0
  778. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_mistral_provider.py +0 -0
  779. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_providers_json.py +0 -0
  780. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_reasoning_config.py +0 -0
  781. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_reasoning_extract.py +0 -0
  782. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_reasoning_summaries.py +0 -0
  783. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_llms_vision.py +0 -0
  784. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_loop_detect.py +0 -0
  785. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_memory_control.py +0 -0
  786. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_model_config.py +0 -0
  787. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_onboarding.py +0 -0
  788. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_orchestration.py +0 -0
  789. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/test_skills_importer.py +0 -0
  790. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/workspaces/conftest.py +0 -0
  791. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/workspaces/test_config.py +0 -0
  792. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/workspaces/test_paths.py +0 -0
  793. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/workspaces/test_subagents.py +0 -0
  794. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/helpers/workspaces/test_workspace_manager.py +0 -0
  795. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/hooks/__init__.py +0 -0
  796. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/hooks/test_base.py +0 -0
  797. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/hooks/test_manager.py +0 -0
  798. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/hooks/test_registry.py +0 -0
  799. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/integration/test_agent_mcp_management.py +0 -0
  800. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/integration/test_config_loading.py +0 -0
  801. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/integration/test_mcp_management.py +0 -0
  802. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/__init__.py +0 -0
  803. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/conftest.py +0 -0
  804. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/mock_server.py +0 -0
  805. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_keepalive_concurrency.py +0 -0
  806. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_keepalive_config.py +0 -0
  807. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_keepalive_integration.py +0 -0
  808. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_keepalive_logging.py +0 -0
  809. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_keepalive_resilience.py +0 -0
  810. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_keepalive_unit.py +0 -0
  811. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_manager.py +0 -0
  812. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_manager_retry.py +0 -0
  813. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_server_name_normalization.py +0 -0
  814. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/mcp/test_server_sdk_compat.py +0 -0
  815. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/scrape/test_playwright_disable.py +0 -0
  816. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/scrape/test_scrape.py +0 -0
  817. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/__init__.py +0 -0
  818. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/conftest.py +0 -0
  819. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/test_commands.py +0 -0
  820. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/test_config.py +0 -0
  821. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/test_delegate.py +0 -0
  822. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/test_finished.py +0 -0
  823. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/test_io_proxy.py +0 -0
  824. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/test_service.py +0 -0
  825. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/subagents/test_sub_agent_coder.py +0 -0
  826. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/test_requests.py +0 -0
  827. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_command_format_output.py +0 -0
  828. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_command_timeout_paging.py +0 -0
  829. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_edit_file_format_output.py +0 -0
  830. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_extractions.py +0 -0
  831. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_get_lines.py +0 -0
  832. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_git_branch.py +0 -0
  833. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_git_diff.py +0 -0
  834. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_grep.py +0 -0
  835. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_insert_block.py +0 -0
  836. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_read_range_execute.py +0 -0
  837. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_registry.py +0 -0
  838. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_remove_mcp_tool.py +0 -0
  839. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_resource_manager_paging.py +0 -0
  840. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_tool_arguments.py +0 -0
  841. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/test_tools_load_mcp_tool.py +0 -0
  842. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tools/validations.py +0 -0
  843. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tui/test_app.py +0 -0
  844. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/tui/test_completion_bar.py +0 -0
  845. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/conftest.py +0 -0
  846. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_deep_merge.py +0 -0
  847. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_edge_cases.py +0 -0
  848. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_load_mcp.py +0 -0
  849. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_performance.py +0 -0
  850. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_queues.py +0 -0
  851. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_remove_mcp.py +0 -0
  852. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_retry_backoff.py +0 -0
  853. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_shallow_merge.py +0 -0
  854. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_signals.py +0 -0
  855. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_unit_load_mcp_tool.py +0 -0
  856. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_unit_remove_mcp_tool.py +0 -0
  857. {cecli_dev-1.6.0rc4 → cecli_dev-1.6.0rc5}/tests/unit/test_ws_server.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cecli-dev
3
- Version: 1.6.0rc4
3
+ Version: 1.6.0rc5
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 = '1.6.0rc4'
22
- __version_tuple__ = version_tuple = (1, 6, 0, 'rc4')
21
+ __version__ = version = '1.6.0rc5'
22
+ __version_tuple__ = version_tuple = (1, 6, 0, 'rc5')
23
23
 
24
- __commit_id__ = commit_id = 'gf40f954f0'
24
+ __commit_id__ = commit_id = 'gca072134c'
@@ -939,7 +939,11 @@ class AgentCoder(Coder):
939
939
  lint_coro = self.lint_edited(edited, show_output=False)
940
940
  lint_errors, interrupted = await interruptible(lint_coro, self.interrupt_event)
941
941
  if interrupted:
942
- raise KeyboardInterrupt("Interrupted during linting")
942
+ # Abort the turn with CancelledError, which the linear run loop
943
+ # handles by re-prompting for input. KeyboardInterrupt is a
944
+ # BaseException that would escape the worker's event loop and
945
+ # leave it unable to accept further prompts.
946
+ raise asyncio.CancelledError("Interrupted during linting")
943
947
 
944
948
  has_errors = False
945
949
 
@@ -1078,7 +1082,10 @@ class AgentCoder(Coder):
1078
1082
  sleep_coro = asyncio.sleep(command_timeout / 2)
1079
1083
  _res, interrupted = await interruptible(sleep_coro, self.interrupt_event)
1080
1084
  if interrupted:
1081
- raise KeyboardInterrupt("Interrupted while waiting for background commands")
1085
+ # Use CancelledError (not KeyboardInterrupt) so the interrupt
1086
+ # stays inside the worker loop and re-prompts, matching the
1087
+ # lint interrupt path above.
1088
+ raise asyncio.CancelledError("Interrupted while waiting for background commands")
1082
1089
  return True
1083
1090
 
1084
1091
  # Check for recently finished commands that need reflection
@@ -1999,7 +1999,13 @@ class Coder(metaclass=UsageMeta):
1999
1999
  if self.commands.is_run_command(inp):
2000
2000
  self.commands.cmd_running_event.clear() # Command is running
2001
2001
 
2002
- return await self.commands.run(inp, coder=self, **run_kwargs)
2002
+ try:
2003
+ return await self.commands.run(inp, coder=self, **run_kwargs)
2004
+ finally:
2005
+ # Dispatch can return early (unknown/ambiguous command) or
2006
+ # raise without ever running a command; the gate must still be
2007
+ # reopened or the input/output loops park forever.
2008
+ self.commands.cmd_running_event.set()
2003
2009
 
2004
2010
  await self.check_for_file_mentions(inp)
2005
2011
  inp = await self.check_for_urls(inp)
@@ -9,16 +9,10 @@ logger = logging.getLogger(__name__)
9
9
  # Strong reference pool to protect fire-and-forget tasks from garbage collection
10
10
  background_tasks: set = set()
11
11
 
12
-
13
- def _handle_result(task: asyncio.Task) -> None:
14
- """Callback to clean up references and capture exceptions safely."""
15
- background_tasks.discard(task)
16
- try:
17
- task.result()
18
- except asyncio.CancelledError:
19
- pass
20
- except Exception as e:
21
- logger.error(f"Background task failed: {e}", exc_info=True)
12
+ # Grace period granted to a cancelled task to unwind. Transports that defer or
13
+ # swallow cancellation (AnyIO cancel scopes, shielded streams) would otherwise
14
+ # block the interrupting coroutine forever.
15
+ INTERRUPT_UNWIND_GRACE_SECONDS = 5.0
22
16
 
23
17
 
24
18
  def fire_and_forget(coro) -> asyncio.Task:
@@ -35,6 +29,7 @@ async def interruptible_async_generator(async_generator, interrupt_event):
35
29
  """
36
30
  gen = async_generator.__aiter__()
37
31
  interrupt_task = asyncio.create_task(interrupt_event.wait())
32
+ next_task = None
38
33
 
39
34
  try:
40
35
  while True:
@@ -44,11 +39,7 @@ async def interruptible_async_generator(async_generator, interrupt_event):
44
39
  )
45
40
 
46
41
  if interrupt_task in done:
47
- next_task.cancel()
48
- try:
49
- await next_task
50
- except asyncio.CancelledError:
51
- pass
42
+ await cancel_and_abandon([next_task])
52
43
  break
53
44
 
54
45
  if next_task in done:
@@ -57,11 +48,9 @@ async def interruptible_async_generator(async_generator, interrupt_event):
57
48
  except StopAsyncIteration:
58
49
  break
59
50
  finally:
60
- interrupt_task.cancel()
61
- try:
62
- await interrupt_task
63
- except asyncio.CancelledError:
64
- pass
51
+ # Cancel whichever task is still pending if the generator is closed early
52
+ # (e.g. GeneratorExit at the wait or yield), not just the interrupt waiter.
53
+ await cancel_and_abandon([task for task in (next_task, interrupt_task) if task is not None])
65
54
 
66
55
 
67
56
  def is_active(task):
@@ -83,6 +72,10 @@ async def interruptible(coroutine, interrupt_event):
83
72
  A tuple of (result, interrupted).
84
73
  - If not interrupted: (coroutine_result, False)
85
74
  - If interrupted: (None, True)
75
+
76
+ A task that ignores cancellation is abandoned once the grace period
77
+ elapses (see cancel_and_abandon) so a wedged transport cannot block the
78
+ caller forever.
86
79
  """
87
80
  if interrupt_event is None:
88
81
  interrupt_event = ThreadSafeEvent()
@@ -90,25 +83,26 @@ async def interruptible(coroutine, interrupt_event):
90
83
  main_task = asyncio.create_task(coroutine)
91
84
  interrupt_task = asyncio.create_task(interrupt_event.wait())
92
85
 
93
- done, pending = await asyncio.wait(
94
- {main_task, interrupt_task},
95
- return_when=asyncio.FIRST_COMPLETED,
96
- )
86
+ try:
87
+ done, pending = await asyncio.wait(
88
+ {main_task, interrupt_task},
89
+ return_when=asyncio.FIRST_COMPLETED,
90
+ )
97
91
 
98
- for task in pending:
99
- task.cancel()
100
- try:
101
- await task
102
- except asyncio.CancelledError:
103
- pass # Expected
92
+ await cancel_and_abandon(pending)
104
93
 
105
- if interrupt_task in done:
106
- return None, True
94
+ if interrupt_task in done:
95
+ return None, True
107
96
 
108
- try:
109
- return main_task.result(), False
110
- except asyncio.CancelledError:
111
- return None, True
97
+ try:
98
+ return main_task.result(), False
99
+ except asyncio.CancelledError:
100
+ return None, True
101
+ finally:
102
+ # When the caller is cancelled while waiting, neither branch above
103
+ # runs, so cancel any remaining tasks here instead of orphaning the
104
+ # inner coroutine (which would keep running detached).
105
+ await cancel_and_abandon([main_task, interrupt_task])
112
106
 
113
107
 
114
108
  def task_is_cancelling() -> bool:
@@ -133,3 +127,58 @@ def task_is_cancelling() -> bool:
133
127
 
134
128
  # Python 3.10 fallback: best-effort only (see docstring).
135
129
  return bool(getattr(task, "_must_cancel", False))
130
+
131
+
132
+ def drain_task_results(tasks):
133
+ """Consume exceptions from finished tasks so they aren't reported as unretrieved."""
134
+ for task in tasks:
135
+ if task.cancelled():
136
+ continue
137
+
138
+ try:
139
+ exc = task.exception()
140
+ except (asyncio.CancelledError, asyncio.InvalidStateError):
141
+ continue
142
+
143
+ if exc is not None:
144
+ logger.warning(f"Task raised while unwinding after interrupt: {exc}")
145
+
146
+
147
+ async def cancel_and_abandon(tasks, grace=INTERRUPT_UNWIND_GRACE_SECONDS):
148
+ """Cancel tasks and wait up to ``grace`` seconds for them to unwind.
149
+
150
+ Cancellation is cooperative, and some transports (AnyIO cancel scopes,
151
+ shielded streams) defer or swallow it. Waiting on them unconditionally
152
+ would block the caller forever, so anything still running after the grace
153
+ period is abandoned: it keeps a strong reference so it can finish on its
154
+ own without tripping the "Task was destroyed but it is pending" warning.
155
+ """
156
+ pending_tasks = [task for task in tasks if not task.done()]
157
+
158
+ if not pending_tasks:
159
+ return
160
+
161
+ for task in pending_tasks:
162
+ task.cancel()
163
+
164
+ done, still_running = await asyncio.wait(set(pending_tasks), timeout=grace)
165
+ drain_task_results(done)
166
+
167
+ for task in still_running:
168
+ logger.warning(
169
+ f"Task ignored cancellation after {grace}s; abandoning it. It may still be"
170
+ " running and could touch shared state later."
171
+ )
172
+ background_tasks.add(task)
173
+ task.add_done_callback(_handle_result)
174
+
175
+
176
+ def _handle_result(task: asyncio.Task) -> None:
177
+ """Callback to clean up references and capture exceptions safely."""
178
+ background_tasks.discard(task)
179
+ try:
180
+ task.result()
181
+ except asyncio.CancelledError:
182
+ pass
183
+ except Exception as e:
184
+ logger.error(f"Background task failed: {e}", exc_info=True)
@@ -0,0 +1,137 @@
1
+ import asyncio
2
+ import logging
3
+ import os
4
+ import sys
5
+ import threading
6
+ import time
7
+ import traceback
8
+
9
+ from cecli.decoding import safe_open
10
+
11
+ # Set up logging to catch asyncio framework logs
12
+ logging.basicConfig(level=logging.INFO)
13
+ logging.getLogger("asyncio").setLevel(logging.DEBUG)
14
+
15
+
16
+ # Registered event loops whose asyncio tasks are included in each dump.
17
+ # Task state is only read from the owning loop (see _dump_async_state), since
18
+ # thread stacks alone cannot show coroutine/task state.
19
+ _async_loops: dict = {}
20
+ _async_state_providers: dict = {}
21
+
22
+
23
+ def dump_stacks_to_file(filename=".cecli/logs/threads.log", interval=5, max_prints=10):
24
+ """Periodically writes stack traces to a file, resetting it after max_prints."""
25
+ print_count = 0
26
+
27
+ log_dir = os.path.dirname(filename)
28
+ if log_dir:
29
+ os.makedirs(log_dir, exist_ok=True)
30
+
31
+ while True:
32
+ time.sleep(interval)
33
+ try:
34
+ # Determine mode: "w" to overwrite/clear on the 11th print, "a" to append
35
+ mode = "w" if print_count >= max_prints else "a"
36
+
37
+ with safe_open(filename, mode) as f:
38
+ if mode == "w":
39
+ f.write(f"--- Log reset automatically after {max_prints} prints ---\n")
40
+ print_count = 0 # Reset the counter
41
+
42
+ timestamp = time.strftime("%Y-%m-%d %H:%M:%S")
43
+ f.write(
44
+ f"\n=================== STACK TRACE DUMP ({timestamp}) ===================\n"
45
+ )
46
+
47
+ for thread_id, frame in sys._current_frames().items():
48
+ thread_obj = threading._active.get(thread_id)
49
+ thread_name = thread_obj.name if thread_obj else "Unknown Thread"
50
+
51
+ f.write(f"\nThread Name: {thread_name} (ID: {thread_id})\n")
52
+ f.write("-" * 40 + "\n")
53
+ traceback.print_stack(frame, file=f)
54
+
55
+ f.write("=" * 70 + "\n")
56
+
57
+ for name in list(_async_loops.keys()):
58
+ _schedule_async_dump(name, filename)
59
+
60
+ print_count += 1 # Increment after a successful write
61
+
62
+ except Exception as e:
63
+ print(f"Error writing stack dump to file: {e}", file=sys.stderr)
64
+
65
+
66
+ def register_async_loop(name, loop) -> None:
67
+ """Register an event loop to include asyncio task dumps for."""
68
+ _async_loops[name] = loop
69
+
70
+
71
+ def register_async_state_provider(name, provider) -> None:
72
+ """Register a callable returning extra state text for a loop's dump."""
73
+ _async_state_providers[name] = provider
74
+
75
+
76
+ def _format_async_tasks(loop, name) -> str:
77
+ """Return a readable dump of every task on ``loop`` (loop thread only)."""
78
+ lines = [f"\n------------------- ASYNCIO TASKS ({name}) -------------------\n"]
79
+
80
+ try:
81
+ tasks = asyncio.all_tasks(loop)
82
+ except Exception as e:
83
+ return f"<unable to read asyncio tasks: {e}>\n"
84
+
85
+ for task in tasks:
86
+ lines.append(f"\n[{task.get_name()}] done={task.done()} cancelled={task.cancelled()}\n")
87
+ lines.append(f" {task.get_coro()!r}\n")
88
+
89
+ for frame in task.get_stack(limit=10):
90
+ lines.append("".join(traceback.format_stack(frame, limit=1)))
91
+
92
+ return "".join(lines)
93
+
94
+
95
+ def _dump_async_state(name, filename) -> None:
96
+ """Append asyncio task/state info for one loop. Runs on the loop thread."""
97
+ loop = _async_loops.get(name)
98
+ if loop is None or loop.is_closed():
99
+ return
100
+
101
+ parts = []
102
+ provider = _async_state_providers.get(name)
103
+
104
+ if provider is not None:
105
+ try:
106
+ parts.append(provider())
107
+ except Exception as e:
108
+ parts.append(f"<state provider error: {e}>\n")
109
+
110
+ parts.append(_format_async_tasks(loop, name))
111
+
112
+ try:
113
+ with safe_open(filename, "a") as f:
114
+ f.write("".join(parts))
115
+ except Exception:
116
+ pass
117
+
118
+
119
+ def _schedule_async_dump(name, filename) -> None:
120
+ """Schedule an async-state dump onto a registered loop, if it is running."""
121
+ loop = _async_loops.get(name)
122
+ if loop is None or loop.is_closed() or not loop.is_running():
123
+ return
124
+
125
+ try:
126
+ loop.call_soon_threadsafe(_dump_async_state, name, filename)
127
+ except RuntimeError:
128
+ pass
129
+
130
+
131
+ # Start the monitor in a background daemon thread
132
+ monitor_thread = threading.Thread(
133
+ target=dump_stacks_to_file,
134
+ args=(".cecli/logs/threads.log", 5, 10), # Clears every 10 prints
135
+ daemon=True,
136
+ )
137
+ monitor_thread.start()
@@ -8,6 +8,9 @@ from cecli.tools.utils.registry import ToolRegistry
8
8
  # backstop, covering time the transport spends outside the SDK's read timeout.
9
9
  CONNECT_BACKSTOP_GRACE_SECONDS = 5
10
10
 
11
+ # Servers whose failures are expected in normal operation and should not warn.
12
+ QUIET_SERVER_NAMES = {"unnamed-server", "local"}
13
+
11
14
 
12
15
  class McpServerManager:
13
16
  """
@@ -387,14 +390,39 @@ class McpServerManager:
387
390
 
388
391
  return (server, success, True)
389
392
 
390
- results = await asyncio.gather(*(_connect(server) for server in self._servers))
393
+ # return_exceptions=True keeps one bad server from aborting the batch and
394
+ # discarding every other server's result. A CancelledError that a
395
+ # transport raises for an ordinary connection failure lands in the
396
+ # results as a value; a genuine cancellation of this task still
397
+ # propagates through the gather itself, so it is not swallowed here.
398
+ outcomes = await asyncio.gather(
399
+ *(_connect(server) for server in self._servers), return_exceptions=True
400
+ )
401
+
402
+ results = []
403
+ for server, outcome in zip(self._servers, outcomes):
404
+ if isinstance(outcome, BaseException):
405
+ if isinstance(outcome, asyncio.CancelledError) and task_is_cancelling():
406
+ # A genuine cancellation of this task must not be downgraded
407
+ # to a failed server; let it propagate to the caller.
408
+ raise outcome
409
+
410
+ # CancelledError discards its arguments, so fall back to the
411
+ # type name rather than reporting an empty cause.
412
+ cause = str(outcome) or type(outcome).__name__
413
+
414
+ if server.name.lower() not in QUIET_SERVER_NAMES:
415
+ self._log_warning(f"MCP server {server.name} failed to initialize: {cause}")
416
+
417
+ # Reported here with its cause already, so flag it as
418
+ # not-attempted to keep the generic warning below from
419
+ # repeating the same failure.
420
+ results.append((server, False, False))
421
+ else:
422
+ results.append(outcome)
391
423
 
392
424
  for server, did_connect, attempted in results:
393
- if (
394
- attempted
395
- and not did_connect
396
- and server.name.lower() not in ["unnamed-server", "local"]
397
- ):
425
+ if attempted and not did_connect and server.name.lower() not in QUIET_SERVER_NAMES:
398
426
  self._log_warning(
399
427
  f"MCP tool initialization failed after multiple retries: {server.name}"
400
428
  )
@@ -1487,7 +1487,7 @@ class Model(ModelSettings):
1487
1487
  completion_coro = litellm.acompletion(**kwargs)
1488
1488
  res, interrupted = await coroutines.interruptible(completion_coro, interrupt_event)
1489
1489
  if interrupted:
1490
- raise KeyboardInterrupt("Interrupted during acompletion")
1490
+ raise asyncio.CancelledError("Interrupted during acompletion")
1491
1491
 
1492
1492
  return hash_object, res
1493
1493
  except litellm.ContextWindowExceededError as err:
@@ -1532,7 +1532,7 @@ class Model(ModelSettings):
1532
1532
  asyncio.sleep(retry_delay), interrupt_event
1533
1533
  )
1534
1534
  if interrupted:
1535
- raise KeyboardInterrupt("Interrupted during retry sleep")
1535
+ raise asyncio.CancelledError("Interrupted during retry sleep")
1536
1536
  else:
1537
1537
  await asyncio.sleep(retry_delay)
1538
1538
  continue
@@ -42,6 +42,11 @@ ANY_GIT_ERROR = tuple(ANY_GIT_ERROR)
42
42
 
43
43
  git.Git.USE_SHELL = False
44
44
 
45
+ # A malformed git tree can make ``next(iterator)`` raise IndexError without
46
+ # advancing. Cap the retries so traversal cannot spin forever while holding
47
+ # ``_git_lock``, which would wedge every other git operation.
48
+ MAX_TREE_INDEX_ERRORS = 3
49
+
45
50
 
46
51
  @contextlib.contextmanager
47
52
  def set_git_env(var_name, value, original_value):
@@ -559,23 +564,28 @@ class GitRepo:
559
564
  else:
560
565
  try:
561
566
  iterator = commit.tree.traverse()
562
- blob = None # Initialize blob
567
+ index_errors = 0
563
568
  while True:
564
569
  try:
565
570
  blob = next(iterator)
571
+ except StopIteration:
572
+ break
573
+ except IndexError:
574
+ # next() cannot advance past the entry that
575
+ # raised, so retrying would spin forever while
576
+ # holding _git_lock. Give up after a few tries.
577
+ index_errors += 1
578
+ if index_errors > MAX_TREE_INDEX_ERRORS:
579
+ self.io.tool_warning(
580
+ "GitRepo: Index error encountered while reading git tree"
581
+ " object. Skipping remaining entries."
582
+ )
583
+ break
584
+ continue
585
+ else:
566
586
  if blob.type == "blob": # blob is a file
567
587
  # Use sys.intern() to deduplicate path strings in memory
568
588
  files.add(sys.intern(blob.path))
569
- except IndexError:
570
- # Handle potential index error during tree traversal
571
- # without relying on potentially unassigned 'blob'
572
- self.io.tool_warning(
573
- "GitRepo: Index error encountered while reading git tree object."
574
- " Skipping."
575
- )
576
- continue
577
- except StopIteration:
578
- break
579
589
  except ANY_GIT_ERROR as err:
580
590
  self.git_repo_error = err
581
591
  self.io.tool_error(f"Unable to list files in git repo: {err}")
@@ -964,7 +974,9 @@ class GitRepoProxy:
964
974
  def __init__(self, target):
965
975
  self._target = target
966
976
  self._executor = concurrent.futures.ThreadPoolExecutor(
967
- max_workers=1, thread_name_prefix="git-repo"
977
+ max_workers=1,
978
+ thread_name_prefix="git-repo",
979
+ initializer=_mark_git_executor_thread,
968
980
  )
969
981
 
970
982
  _instances: dict[str, "GitRepoProxy"] = {}
@@ -1048,8 +1060,21 @@ class GitRepoProxy:
1048
1060
 
1049
1061
  def __del__(self):
1050
1062
  try:
1051
- if hasattr(self, "_target") and self._target is not None:
1063
+ if not (hasattr(self, "_target") and self._target is not None):
1064
+ return
1065
+
1066
+ # Finalization can run on the executor thread itself (e.g. when
1067
+ # garbage collection happens inside a git call). Submitting would
1068
+ # make the single worker wait on itself, so tear down inline there.
1069
+ if getattr(_git_executor_thread, "active", False):
1070
+ self._target.__del__()
1071
+ return
1072
+
1073
+ try:
1052
1074
  self._executor.submit(self._target.__del__).result(timeout=5)
1075
+ except RuntimeError:
1076
+ # Executor already shut down: no worker will pick this up.
1077
+ self._target.__del__()
1053
1078
  except Exception:
1054
1079
  pass
1055
1080
 
@@ -1129,3 +1154,13 @@ class GitRepoProxy:
1129
1154
  super().__setattr__(name, value)
1130
1155
  else:
1131
1156
  setattr(self._target, name, value)
1157
+
1158
+
1159
+ # Marks worker threads created by a ``GitRepoProxy`` executor. Re-entrant work
1160
+ # (e.g. a finalizer running during garbage collection on the executor thread)
1161
+ # must run inline: resubmitting to the single-worker pool would deadlock.
1162
+ _git_executor_thread = threading.local()
1163
+
1164
+
1165
+ def _mark_git_executor_thread():
1166
+ _git_executor_thread.active = True
@@ -527,11 +527,26 @@ class Tool(BaseTool):
527
527
  f"Output captured so far:\n{output_content}\n"
528
528
  )
529
529
  return response
530
+ except asyncio.CancelledError:
531
+ # The turn was cancelled (e.g. worker.interrupt) before the process
532
+ # finished. Terminate and unregister it so the child, its
533
+ # reader/writer threads, and the wait_task thread don't outlive the
534
+ # interrupted turn.
535
+ success, _, _ = BackgroundCommandManager.stop_background_command(command_key)
536
+ if not success:
537
+ cls._terminate_process(process)
538
+
539
+ raise
530
540
  finally:
531
541
  interrupt_task.cancel()
532
542
  timeout_task.cancel()
533
543
 
534
- if wait_task.done() and not wait_task.cancelled():
544
+ if not wait_task.done() and process.returncode is not None:
545
+ # The process was terminated (interrupt/cancel) but wait_task
546
+ # is still pending; cancel the await. The blocked executor
547
+ # thread is freed once the process exits.
548
+ wait_task.cancel()
549
+ elif wait_task.done() and not wait_task.cancelled():
535
550
  # Retrieve any exception to avoid "task exception was never
536
551
  # retrieved" warnings. On timeout the process continues in the
537
552
  # background, so wait_task may legitimately still be pending.
@@ -844,3 +859,28 @@ class Tool(BaseTool):
844
859
 
845
860
  # Output footer
846
861
  tool_footer(coder=coder, tool_response=tool_response, params=params)
862
+
863
+ @classmethod
864
+ def _terminate_process(cls, process):
865
+ """Terminate a foreground command process, killing it if it lingers.
866
+
867
+ Best-effort and never raises, so an interrupt handler can call it while
868
+ unwinding without masking the original exception.
869
+ """
870
+ import subprocess
871
+
872
+ try:
873
+ try:
874
+ process.terminate()
875
+ except ProcessLookupError:
876
+ return
877
+
878
+ try:
879
+ process.wait(timeout=1)
880
+ except subprocess.TimeoutExpired:
881
+ try:
882
+ process.kill()
883
+ except ProcessLookupError:
884
+ pass
885
+ except Exception:
886
+ pass