cecli-dev 0.97.3__tar.gz → 0.97.5__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 (614) hide show
  1. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/PKG-INFO +4 -4
  2. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/README.md +3 -3
  3. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/benchmark.py +35 -2
  4. cecli_dev-0.97.5/benchmark/variations.1.sh +203 -0
  5. cecli_dev-0.97.5/benchmark/variations.2.sh +203 -0
  6. cecli_dev-0.97.3/benchmark/primary_variations.sh → cecli_dev-0.97.5/benchmark/variations.3.sh +9 -7
  7. cecli_dev-0.97.5/benchmark/variations.4.sh +203 -0
  8. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/__init__.py +1 -1
  9. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/_version.py +3 -3
  10. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/args.py +6 -0
  11. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/agent_coder.py +97 -77
  12. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/architect_coder.py +4 -6
  13. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/base_coder.py +28 -101
  14. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/hashline_coder.py +16 -4
  15. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/agent_model.py +3 -3
  16. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/editor_model.py +3 -3
  17. cecli_dev-0.97.5/cecli/commands/map_refresh.py +90 -0
  18. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/model.py +3 -3
  19. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/tokens.py +1 -0
  20. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/utils/base_command.py +3 -5
  21. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/weak_model.py +3 -3
  22. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/conversation/files.py +3 -1
  23. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/conversation/integration.py +4 -1
  24. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/conversation/manager.py +31 -30
  25. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/hashline.py +564 -543
  26. cecli_dev-0.97.5/cecli/helpers/hashpos/__init__.py +3 -0
  27. cecli_dev-0.97.5/cecli/helpers/hashpos/hashpos.py +189 -0
  28. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/requests.py +14 -6
  29. cecli_dev-0.97.5/cecli/helpers/responses.py +132 -0
  30. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/main.py +33 -2
  31. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/models.py +2 -0
  32. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/agent.yml +12 -10
  33. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/hashline.yml +33 -28
  34. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/repomap.py +44 -6
  35. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/resources/model-metadata.json +19626 -21320
  36. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/scrape.py +1 -1
  37. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/command.py +6 -0
  38. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/context_manager.py +9 -1
  39. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/delete_text.py +7 -5
  40. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/grep.py +22 -5
  41. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/indent_text.py +6 -4
  42. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/insert_text.py +6 -4
  43. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/replace_text.py +5 -4
  44. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/show_numbered_context.py +2 -0
  45. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/app.py +44 -0
  46. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/input_area.py +15 -11
  47. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/tui.md +1 -0
  48. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting/imports.md +1 -5
  49. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli_dev.egg-info/PKG-INFO +4 -4
  50. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli_dev.egg-info/SOURCES.txt +6 -4
  51. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/filter-chat-mode.js +35 -5
  52. cecli_dev-0.97.5/scripts/get_hashline.py +58 -0
  53. cecli_dev-0.97.5/tests/basic/test_hashline.py +197 -0
  54. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_models.py +11 -1
  55. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/tools/test_insert_block.py +27 -27
  56. cecli_dev-0.97.3/cecli/commands/map_refresh.py +0 -46
  57. cecli_dev-0.97.3/cecli/helpers/responses.py +0 -21
  58. cecli_dev-0.97.3/cecli/website/docs/install/codespaces.md +0 -39
  59. cecli_dev-0.97.3/cecli/website/docs/install/replit.md +0 -8
  60. cecli_dev-0.97.3/cecli/website/docs/usage/tutorials.md +0 -30
  61. cecli_dev-0.97.3/scripts/get_hashline.py +0 -31
  62. cecli_dev-0.97.3/tests/basic/test_hashline.py +0 -1000
  63. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.dockerignore +0 -0
  64. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.flake8 +0 -0
  65. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.gitattributes +0 -0
  66. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/ISSUE_TEMPLATE/issue.yml +0 -0
  67. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/check_pypi_version.yml +0 -0
  68. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/docker-build-test.yml +0 -0
  69. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/docker-release.yml +0 -0
  70. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/issues.yml +0 -0
  71. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/pages.yml +0 -0
  72. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/pre-commit.yml +0 -0
  73. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/release.yml +0 -0
  74. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/ubuntu-tests.yml +0 -0
  75. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/windows-tests.yml +0 -0
  76. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.github/workflows/windows_check_pypi_version.yml +0 -0
  77. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.gitignore +0 -0
  78. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/.pre-commit-config.yaml +0 -0
  79. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/CHANGELOG.md +0 -0
  80. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/CNAME +0 -0
  81. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/CONTRIBUTING.md +0 -0
  82. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/HISTORY.md +0 -0
  83. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/LICENSE.txt +0 -0
  84. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/MANIFEST.in +0 -0
  85. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/Dockerfile +0 -0
  86. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/README.md +0 -0
  87. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/__init__.py +0 -0
  88. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/benchmark_classic.py +0 -0
  89. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/clone-exercism.sh +0 -0
  90. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/cpp-test.sh +0 -0
  91. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/docker.sh +0 -0
  92. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/docker_build.sh +0 -0
  93. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/install-docker-ubuntu.sh +0 -0
  94. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/npm-test.sh +0 -0
  95. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/over_time.py +0 -0
  96. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/plot.sh +0 -0
  97. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/plots.py +0 -0
  98. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/problem_stats.py +0 -0
  99. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/prompts.py +0 -0
  100. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/refactor_tools.py +0 -0
  101. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/rsync.sh +0 -0
  102. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/rungrid.py +0 -0
  103. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/swe-bench-lite.txt +0 -0
  104. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/swe-bench.txt +0 -0
  105. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/swe_bench.py +0 -0
  106. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/benchmark/test_benchmark.py +0 -0
  107. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/__main__.py +0 -0
  108. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/args_formatter.py +0 -0
  109. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/change_tracker.py +0 -0
  110. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/__init__.py +0 -0
  111. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/ask_coder.py +0 -0
  112. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/chat_chunks.py +0 -0
  113. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/context_coder.py +0 -0
  114. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/copypaste_coder.py +0 -0
  115. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/editblock_coder.py +0 -0
  116. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/editblock_fenced_coder.py +0 -0
  117. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/editblock_func_coder.py +0 -0
  118. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/editor_diff_fenced_coder.py +0 -0
  119. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/editor_editblock_coder.py +0 -0
  120. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/editor_whole_coder.py +0 -0
  121. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/help_coder.py +0 -0
  122. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/patch_coder.py +0 -0
  123. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/search_replace.py +0 -0
  124. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/shell.py +0 -0
  125. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/single_wholefile_func_coder.py +0 -0
  126. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/udiff_coder.py +0 -0
  127. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/udiff_simple.py +0 -0
  128. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/wholefile_coder.py +0 -0
  129. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/coders/wholefile_func_coder.py +0 -0
  130. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/__init__.py +0 -0
  131. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/add.py +0 -0
  132. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/agent.py +0 -0
  133. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/architect.py +0 -0
  134. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/ask.py +0 -0
  135. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/chat_mode.py +0 -0
  136. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/clear.py +0 -0
  137. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/code.py +0 -0
  138. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/command_prefix.py +0 -0
  139. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/commit.py +0 -0
  140. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/compact.py +0 -0
  141. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/context.py +0 -0
  142. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/context_blocks.py +0 -0
  143. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/context_management.py +0 -0
  144. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/copy.py +0 -0
  145. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/copy_context.py +0 -0
  146. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/core.py +0 -0
  147. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/diff.py +0 -0
  148. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/drop.py +0 -0
  149. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/editor.py +0 -0
  150. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/exit.py +0 -0
  151. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/git.py +0 -0
  152. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/hashline.py +0 -0
  153. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/help.py +0 -0
  154. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/history_search.py +0 -0
  155. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/hooks.py +0 -0
  156. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/lint.py +0 -0
  157. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/list_sessions.py +0 -0
  158. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/load.py +0 -0
  159. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/load_hook.py +0 -0
  160. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/load_mcp.py +0 -0
  161. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/load_session.py +0 -0
  162. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/load_skill.py +0 -0
  163. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/ls.py +0 -0
  164. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/map.py +0 -0
  165. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/models.py +0 -0
  166. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/multiline_mode.py +0 -0
  167. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/paste.py +0 -0
  168. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/quit.py +0 -0
  169. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/read_only.py +0 -0
  170. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/read_only_stub.py +0 -0
  171. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/reasoning_effort.py +0 -0
  172. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/remove_hook.py +0 -0
  173. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/remove_mcp.py +0 -0
  174. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/remove_skill.py +0 -0
  175. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/report.py +0 -0
  176. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/reset.py +0 -0
  177. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/run.py +0 -0
  178. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/save.py +0 -0
  179. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/save_session.py +0 -0
  180. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/settings.py +0 -0
  181. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/terminal_data/linux.keytab +0 -0
  182. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/terminal_setup.py +0 -0
  183. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/test.py +0 -0
  184. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/think_tokens.py +0 -0
  185. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/undo.py +0 -0
  186. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/utils/__init__.py +0 -0
  187. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/utils/helpers.py +0 -0
  188. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/utils/registry.py +0 -0
  189. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/utils/save_load_manager.py +0 -0
  190. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/voice.py +0 -0
  191. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/commands/web.py +0 -0
  192. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/deprecated_args.py +0 -0
  193. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/diffs.py +0 -0
  194. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/dump.py +0 -0
  195. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/editor.py +0 -0
  196. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/exceptions.py +0 -0
  197. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/format_settings.py +0 -0
  198. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/help.py +0 -0
  199. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/help_pats.py +0 -0
  200. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/__init__.py +0 -0
  201. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/background_commands.py +0 -0
  202. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/command_parser.py +0 -0
  203. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/conversation/__init__.py +0 -0
  204. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/conversation/base_message.py +0 -0
  205. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/conversation/tags.py +0 -0
  206. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/conversation/utils.py +0 -0
  207. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/copypaste.py +0 -0
  208. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/coroutines.py +0 -0
  209. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/file_searcher.py +0 -0
  210. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/model_providers.py +0 -0
  211. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/nested.py +0 -0
  212. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/plugin_manager.py +0 -0
  213. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/profiler.py +0 -0
  214. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/similarity.py +0 -0
  215. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/helpers/skills.py +0 -0
  216. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/history.py +0 -0
  217. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/hooks/__init__.py +0 -0
  218. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/hooks/base.py +0 -0
  219. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/hooks/integration.py +0 -0
  220. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/hooks/manager.py +0 -0
  221. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/hooks/registry.py +0 -0
  222. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/hooks/types.py +0 -0
  223. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/interruptible_input.py +0 -0
  224. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/io.py +0 -0
  225. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/linter.py +0 -0
  226. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/llm.py +0 -0
  227. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/mcp/__init__.py +0 -0
  228. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/mcp/manager.py +0 -0
  229. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/mcp/oauth.py +0 -0
  230. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/mcp/server.py +0 -0
  231. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/mcp/utils.py +0 -0
  232. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/mdstream.py +0 -0
  233. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/onboarding.py +0 -0
  234. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/__init__.py +0 -0
  235. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/architect.yml +0 -0
  236. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/ask.yml +0 -0
  237. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/base.yml +0 -0
  238. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/context.yml +0 -0
  239. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/copypaste.yml +0 -0
  240. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/editblock.yml +0 -0
  241. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/editblock_fenced.yml +0 -0
  242. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/editblock_func.yml +0 -0
  243. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/editor_diff_fenced.yml +0 -0
  244. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/editor_editblock.yml +0 -0
  245. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/editor_whole.yml +0 -0
  246. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/help.yml +0 -0
  247. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/patch.yml +0 -0
  248. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/single_wholefile_func.yml +0 -0
  249. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/udiff.yml +0 -0
  250. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/udiff_simple.yml +0 -0
  251. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/utils/__init__.py +0 -0
  252. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/utils/registry.py +0 -0
  253. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/utils/system.py +0 -0
  254. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/wholefile.yml +0 -0
  255. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/prompts/wholefile_func.yml +0 -0
  256. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/README.md +0 -0
  257. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
  258. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/c-tags.scm +0 -0
  259. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
  260. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/clojure-tags.scm +0 -0
  261. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
  262. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
  263. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
  264. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/d-tags.scm +0 -0
  265. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
  266. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
  267. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
  268. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
  269. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
  270. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/go-tags.scm +0 -0
  271. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/java-tags.scm +0 -0
  272. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
  273. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
  274. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/matlab-tags.scm +0 -0
  275. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/ocaml-tags.scm +0 -0
  276. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +0 -0
  277. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
  278. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
  279. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/python-tags.scm +0 -0
  280. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/r-tags.scm +0 -0
  281. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
  282. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
  283. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
  284. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
  285. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
  286. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
  287. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/README.md +0 -0
  288. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/c-tags.scm +0 -0
  289. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
  290. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/cpp-tags.scm +0 -0
  291. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/dart-tags.scm +0 -0
  292. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/elisp-tags.scm +0 -0
  293. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/elixir-tags.scm +0 -0
  294. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/elm-tags.scm +0 -0
  295. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/fortran-tags.scm +0 -0
  296. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/go-tags.scm +0 -0
  297. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/haskell-tags.scm +0 -0
  298. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/hcl-tags.scm +0 -0
  299. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/java-tags.scm +0 -0
  300. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/javascript-tags.scm +0 -0
  301. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/julia-tags.scm +0 -0
  302. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
  303. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/matlab-tags.scm +0 -0
  304. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
  305. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/ocaml_interface-tags.scm +0 -0
  306. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/php-tags.scm +0 -0
  307. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/python-tags.scm +0 -0
  308. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/ql-tags.scm +0 -0
  309. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/ruby-tags.scm +0 -0
  310. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/rust-tags.scm +0 -0
  311. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/scala-tags.scm +0 -0
  312. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/typescript-tags.scm +0 -0
  313. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/queries/tree-sitter-languages/zig-tags.scm +0 -0
  314. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/reasoning_tags.py +0 -0
  315. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/repo.py +0 -0
  316. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/report.py +0 -0
  317. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/resources/__init__.py +0 -0
  318. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/resources/model-settings.yml +0 -0
  319. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/resources/providers.json +0 -0
  320. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/run_cmd.py +0 -0
  321. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/sendchat.py +0 -0
  322. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/sessions.py +0 -0
  323. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/special.py +0 -0
  324. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/__init__.py +0 -0
  325. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/command_interactive.py +0 -0
  326. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/finished.py +0 -0
  327. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/git_branch.py +0 -0
  328. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/git_diff.py +0 -0
  329. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/git_log.py +0 -0
  330. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/git_remote.py +0 -0
  331. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/git_show.py +0 -0
  332. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/git_status.py +0 -0
  333. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/list_changes.py +0 -0
  334. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/load_skill.py +0 -0
  335. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/ls.py +0 -0
  336. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/remove_skill.py +0 -0
  337. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/thinking.py +0 -0
  338. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/undo_change.py +0 -0
  339. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/update_todo_list.py +0 -0
  340. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/utils/base_tool.py +0 -0
  341. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/utils/helpers.py +0 -0
  342. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/utils/output.py +0 -0
  343. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/utils/registry.py +0 -0
  344. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/view_files_matching.py +0 -0
  345. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tools/view_files_with_symbol.py +0 -0
  346. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/__init__.py +0 -0
  347. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/io.py +0 -0
  348. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/styles.tcss +0 -0
  349. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/__init__.py +0 -0
  350. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/completion_bar.py +0 -0
  351. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/file_list.py +0 -0
  352. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/footer.py +0 -0
  353. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/input_container.py +0 -0
  354. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/key_hints.py +0 -0
  355. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/output.py +0 -0
  356. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/widgets/status_bar.py +0 -0
  357. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/tui/worker.py +0 -0
  358. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/urls.py +0 -0
  359. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/utils.py +0 -0
  360. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/versioncheck.py +0 -0
  361. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/voice.py +0 -0
  362. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/waiting.py +0 -0
  363. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/watch.py +0 -0
  364. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/watch_prompts.py +0 -0
  365. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/Gemfile +0 -0
  366. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/blame.md +0 -0
  367. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/get-started.md +0 -0
  368. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/help-tip.md +0 -0
  369. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/help.md +0 -0
  370. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/install.md +0 -0
  371. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/keys.md +0 -0
  372. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/model-warnings.md +0 -0
  373. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/multi-line.md +0 -0
  374. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/python-m-aider.md +0 -0
  375. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/recording.css +0 -0
  376. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/recording.md +0 -0
  377. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_includes/works-best.md +0 -0
  378. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_features.scss +0 -0
  379. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_footer.scss +0 -0
  380. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_hero.scss +0 -0
  381. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_info.scss +0 -0
  382. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_layout.scss +0 -0
  383. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_reset.scss +0 -0
  384. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_testimonials.scss +0 -0
  385. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_typography.scss +0 -0
  386. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/_variables.scss +0 -0
  387. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/custom/custom.scss +0 -0
  388. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/_sass/global-overrides.scss +0 -0
  389. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/adv-model-settings.md +0 -0
  390. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/agent-mode.md +0 -0
  391. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/aider_conf.md +0 -0
  392. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/api-keys.md +0 -0
  393. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/custom-commands.md +0 -0
  394. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/custom-system-prompts.md +0 -0
  395. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/dotenv.md +0 -0
  396. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/editor.md +0 -0
  397. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/hooks.md +0 -0
  398. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/mcp.md +0 -0
  399. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/model-aliases.md +0 -0
  400. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/options.md +0 -0
  401. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/reasoning.md +0 -0
  402. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/security.md +0 -0
  403. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config/skills.md +0 -0
  404. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/config.md +0 -0
  405. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/faq.md +0 -0
  406. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/git.md +0 -0
  407. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/index.md +0 -0
  408. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/install/docker.md +0 -0
  409. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/install/optional.md +0 -0
  410. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/install.md +0 -0
  411. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/languages.md +0 -0
  412. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/legal/contributor-agreement.md +0 -0
  413. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/legal/privacy.md +0 -0
  414. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/anthropic.md +0 -0
  415. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/azure.md +0 -0
  416. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/bedrock.md +0 -0
  417. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/cohere.md +0 -0
  418. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/deepseek.md +0 -0
  419. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/gemini.md +0 -0
  420. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/github.md +0 -0
  421. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/groq.md +0 -0
  422. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/lm-studio.md +0 -0
  423. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/ollama.md +0 -0
  424. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/openai-compat.md +0 -0
  425. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/openai.md +0 -0
  426. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/openrouter.md +0 -0
  427. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/other.md +0 -0
  428. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/vertex.md +0 -0
  429. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/warnings.md +0 -0
  430. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms/xai.md +0 -0
  431. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/llms.md +0 -0
  432. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/more/analytics.md +0 -0
  433. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/more/edit-formats.md +0 -0
  434. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/more/infinite-output.md +0 -0
  435. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/more-info.md +0 -0
  436. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/recordings/auto-accept-architect.md +0 -0
  437. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/recordings/dont-drop-original-read-files.md +0 -0
  438. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/recordings/index.md +0 -0
  439. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/recordings/model-accepts-settings.md +0 -0
  440. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/recordings/tree-sitter-language-pack.md +0 -0
  441. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/repomap.md +0 -0
  442. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/scripting.md +0 -0
  443. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/sessions.md +0 -0
  444. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting/cecli-not-found.md +0 -0
  445. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting/edit-errors.md +0 -0
  446. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting/models-and-keys.md +0 -0
  447. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting/support.md +0 -0
  448. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting/token-limits.md +0 -0
  449. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting/warnings.md +0 -0
  450. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/troubleshooting.md +0 -0
  451. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/browser.md +0 -0
  452. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/caching.md +0 -0
  453. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/commands.md +0 -0
  454. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/conventions.md +0 -0
  455. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/copypaste.md +0 -0
  456. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/images-urls.md +0 -0
  457. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/lint-test.md +0 -0
  458. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/modes.md +0 -0
  459. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/not-code.md +0 -0
  460. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/notifications.md +0 -0
  461. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/tips.md +0 -0
  462. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/voice.md +0 -0
  463. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage/watch.md +0 -0
  464. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/docs/usage.md +0 -0
  465. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli/website/share/index.md +0 -0
  466. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli_dev.egg-info/dependency_links.txt +0 -0
  467. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli_dev.egg-info/entry_points.txt +0 -0
  468. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli_dev.egg-info/requires.txt +0 -0
  469. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/cecli_dev.egg-info/top_level.txt +0 -0
  470. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/docker/Dockerfile +0 -0
  471. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/docker/Dockerfile.local.nvidia.cuda.ubuntu +0 -0
  472. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/pyproject.toml +0 -0
  473. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/pytest.ini +0 -0
  474. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/common-constraints.txt +0 -0
  475. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/requirements-dev.in +0 -0
  476. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/requirements-dev.txt +0 -0
  477. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/requirements-help.in +0 -0
  478. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/requirements-help.txt +0 -0
  479. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/requirements-playwright.in +0 -0
  480. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/requirements-playwright.txt +0 -0
  481. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/requirements.in +0 -0
  482. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements/tree-sitter.in +0 -0
  483. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/requirements.txt +0 -0
  484. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/30k-image.py +0 -0
  485. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/Dockerfile.jekyll +0 -0
  486. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/__init__.py +0 -0
  487. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/blame.py +0 -0
  488. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/clean_metadata.py +0 -0
  489. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/cost_analyzer.py +0 -0
  490. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/dl_icons.py +0 -0
  491. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/generate_providers.py +0 -0
  492. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/get_contributor_list.js +0 -0
  493. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/history_prompts.py +0 -0
  494. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/homepage.py +0 -0
  495. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/issues.py +0 -0
  496. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/jekyll_build.sh +0 -0
  497. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/jekyll_run.sh +0 -0
  498. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/logo_svg.py +0 -0
  499. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/pip-compile.sh +0 -0
  500. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/recording_audio.py +0 -0
  501. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/redact-cast.py +0 -0
  502. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/rename_to_cecli.py +0 -0
  503. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/tmux_record.sh +0 -0
  504. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/tsl_pack_langs.py +0 -0
  505. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/update-blame.sh +0 -0
  506. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/update-docs.sh +0 -0
  507. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/update-history.py +0 -0
  508. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/versionbump.py +0 -0
  509. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/scripts/yank-old-versions.py +0 -0
  510. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/setup.cfg +0 -0
  511. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/shim.pyproject.toml +0 -0
  512. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/__init__.py +0 -0
  513. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/__init__.py +0 -0
  514. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_aws_credentials.py +0 -0
  515. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_background_commands.py +0 -0
  516. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_coder.py +0 -0
  517. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_commands.py +0 -0
  518. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_custom_commands.py +0 -0
  519. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_deprecated.py +0 -0
  520. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_editblock.py +0 -0
  521. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_editor.py +0 -0
  522. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_exceptions.py +0 -0
  523. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_find_or_blocks.py +0 -0
  524. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_history.py +0 -0
  525. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_io.py +0 -0
  526. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_linter.py +0 -0
  527. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_main.py +0 -0
  528. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_model_info_manager.py +0 -0
  529. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_model_provider_manager.py +0 -0
  530. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_onboarding.py +0 -0
  531. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_plugin_manager.py +0 -0
  532. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_prompts.py +0 -0
  533. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_reasoning.py +0 -0
  534. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_repo.py +0 -0
  535. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_repomap.py +0 -0
  536. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_run_cmd.py +0 -0
  537. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_sanity_check_repo.py +0 -0
  538. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_scripting.py +0 -0
  539. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_sendchat.py +0 -0
  540. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_sessions.py +0 -0
  541. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_skills.py +0 -0
  542. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_special.py +0 -0
  543. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_ssl_verification.py +0 -0
  544. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_udiff.py +0 -0
  545. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_urls.py +0 -0
  546. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_voice.py +0 -0
  547. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_watch.py +0 -0
  548. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/basic/test_wholefile.py +0 -0
  549. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/coders/test_copypaste_coder.py +0 -0
  550. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/conftest.py +0 -0
  551. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/chat-history-search-replace-gold.txt +0 -0
  552. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/chat-history.md +0 -0
  553. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/arduino/test.ino +0 -0
  554. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/c/test.c +0 -0
  555. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/chatito/test.chatito +0 -0
  556. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/clojure/test.clj +0 -0
  557. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/commonlisp/test.lisp +0 -0
  558. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/cpp/test.cpp +0 -0
  559. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/csharp/test.cs +0 -0
  560. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/d/test.d +0 -0
  561. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/dart/test.dart +0 -0
  562. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/elisp/test.el +0 -0
  563. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/elixir/test.ex +0 -0
  564. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/elm/test.elm +0 -0
  565. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/gleam/test.gleam +0 -0
  566. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/go/test.go +0 -0
  567. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/haskell/test.hs +0 -0
  568. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/hcl/test.tf +0 -0
  569. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/java/test.java +0 -0
  570. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/javascript/test.js +0 -0
  571. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/kotlin/test.kt +0 -0
  572. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/lua/test.lua +0 -0
  573. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/matlab/test.m +0 -0
  574. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/ocaml/test.ml +0 -0
  575. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/ocaml_interface/test.mli +0 -0
  576. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/php/test.php +0 -0
  577. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/pony/test.pony +0 -0
  578. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/properties/test.properties +0 -0
  579. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/python/test.py +0 -0
  580. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/ql/test.ql +0 -0
  581. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/r/test.r +0 -0
  582. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/racket/test.rkt +0 -0
  583. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/ruby/test.rb +0 -0
  584. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/rust/test.rs +0 -0
  585. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/scala/test.scala +0 -0
  586. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/solidity/test.sol +0 -0
  587. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/swift/test.swift +0 -0
  588. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/tsx/test.tsx +0 -0
  589. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/typescript/test.ts +0 -0
  590. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/udev/test.rules +0 -0
  591. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/languages/zig/test.zig +0 -0
  592. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/sample-code-base/sample.js +0 -0
  593. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/sample-code-base/sample.py +0 -0
  594. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/sample-code-base-repo-map.txt +0 -0
  595. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/watch.js +0 -0
  596. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/watch.lisp +0 -0
  597. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/watch.py +0 -0
  598. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/fixtures/watch_question.js +0 -0
  599. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/help/test_help.py +0 -0
  600. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/hooks/__init__.py +0 -0
  601. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/hooks/test_base.py +0 -0
  602. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/hooks/test_manager.py +0 -0
  603. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/hooks/test_registry.py +0 -0
  604. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/mcp/__init__.py +0 -0
  605. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/mcp/test_manager.py +0 -0
  606. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/scrape/test_playwright_disable.py +0 -0
  607. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/scrape/test_scrape.py +0 -0
  608. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/test_conversation_integration.py +0 -0
  609. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/test_conversation_system.py +0 -0
  610. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/tools/test_git_branch.py +0 -0
  611. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/tools/test_git_diff.py +0 -0
  612. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/tools/test_grep.py +0 -0
  613. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/tools/test_registry.py +0 -0
  614. {cecli_dev-0.97.3 → cecli_dev-0.97.5}/tests/tools/test_show_numbered_context.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cecli-dev
3
- Version: 0.97.3
3
+ Version: 0.97.5
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
@@ -84,12 +84,12 @@ Dynamic: license-file
84
84
 
85
85
  ## Why `cecli`?
86
86
 
87
- `cecli` (probably pronounced like "Cecily", aka `aider-ce`) is a community-driven fork of the [Aider](https://cecli.dev/) AI pair programming tool.
88
- Aider is a fantastic piece of software with a wonderful community but it has been painfully slow in receiving updates in the quickly evolving AI tooling space.
87
+ `cecli` (probably pronounced like "Cecily") is yet another cli agent crafted for extensibility and customization. Originally a fork of the [Aider](https://cecli.dev/) AI pair programming tool, we aim to make agentic coding as maximally effective as it can be based on the growing capabilities of large language models.
89
88
 
90
- We aim to foster an open, collaborative ecosystem where new features, experiments, and improvements can be developed and shared rapidly. We believe in genuine FOSS principles and actively welcome contributors of all skill levels.
89
+ We aim to foster an open, collaborative ecosystem where new features, experiments, and improvements can be developed and shared rapidly. We believe in the principles of FOSS and actively welcome contributors of all skill levels.
91
90
 
92
91
  If you are looking for bleeding-edge features or want to get your hands dirty with the internals of an AI coding agent, here's your sign.
92
+
93
93
  LLMs are a part of our lives from here on out so join us in learning about and crafting the future.
94
94
 
95
95
  ### Links
@@ -1,11 +1,11 @@
1
1
  ## Why `cecli`?
2
2
 
3
- `cecli` (probably pronounced like "Cecily", aka `aider-ce`) is a community-driven fork of the [Aider](https://cecli.dev/) AI pair programming tool.
4
- Aider is a fantastic piece of software with a wonderful community but it has been painfully slow in receiving updates in the quickly evolving AI tooling space.
3
+ `cecli` (probably pronounced like "Cecily") is yet another cli agent crafted for extensibility and customization. Originally a fork of the [Aider](https://cecli.dev/) AI pair programming tool, we aim to make agentic coding as maximally effective as it can be based on the growing capabilities of large language models.
5
4
 
6
- We aim to foster an open, collaborative ecosystem where new features, experiments, and improvements can be developed and shared rapidly. We believe in genuine FOSS principles and actively welcome contributors of all skill levels.
5
+ We aim to foster an open, collaborative ecosystem where new features, experiments, and improvements can be developed and shared rapidly. We believe in the principles of FOSS and actively welcome contributors of all skill levels.
7
6
 
8
7
  If you are looking for bleeding-edge features or want to get your hands dirty with the internals of an AI coding agent, here's your sign.
8
+
9
9
  LLMs are a part of our lives from here on out so join us in learning about and crafting the future.
10
10
 
11
11
  ### Links
@@ -515,7 +515,8 @@ def load_results(results_dir, stats_languages=None):
515
515
  results["test_cases_total"] = total_cases
516
516
  if passed_cases is not None:
517
517
  results["test_cases_passed"] = passed_cases
518
-
518
+ if passed_cases is not None and total_cases is not None:
519
+ results["test_cases_pass_ratio"] = passed_cases / total_cases
519
520
  # Update the JSON file immediately to keep data fresh
520
521
  fname.write_text(json.dumps(results, indent=4))
521
522
  logger.debug(f"Updated {fname} with test case counts")
@@ -583,7 +584,8 @@ def summarize_results(results_dir, verbose, stats_languages=None):
583
584
  res.completion_tokens = 0
584
585
  res.test_cases_total = 0
585
586
  res.test_cases_passed = 0
586
-
587
+ res.test_cases_pass_ratio_sum = 0.0
588
+ res.test_cases_pass_ratio_count = 0
587
589
  res.reasoning_effort = None
588
590
  res.thinking_tokens = None
589
591
  res.map_tokens = None
@@ -621,6 +623,8 @@ def summarize_results(results_dir, verbose, stats_languages=None):
621
623
  lang_stats.completion_tokens = 0
622
624
  lang_stats.test_cases_total = 0
623
625
  lang_stats.test_cases_passed = 0
626
+ lang_stats.test_cases_pass_ratio_sum = 0.0
627
+ lang_stats.test_cases_pass_ratio_count = 0
624
628
  lang_to_stats[lang] = lang_stats
625
629
  lang_to_passed_tests[lang] = [0] * tries
626
630
 
@@ -682,6 +686,11 @@ def summarize_results(results_dir, verbose, stats_languages=None):
682
686
  if passed_cases is not None:
683
687
  add("test_cases_passed", passed_cases, res, lang_stats)
684
688
 
689
+ pass_ratio = results.get("test_cases_pass_ratio")
690
+ if pass_ratio is not None:
691
+ add("test_cases_pass_ratio_sum", pass_ratio, res, lang_stats)
692
+ add("test_cases_pass_ratio_count", 1, res, lang_stats)
693
+
685
694
  res.reasoning_effort = results.get("reasoning_effort")
686
695
  res.thinking_tokens = results.get("thinking_tokens")
687
696
  res.map_tokens = results.get("map_tokens")
@@ -764,6 +773,12 @@ def summarize_results(results_dir, verbose, stats_languages=None):
764
773
  res.test_cases_percentage = 100 * res.test_cases_passed / res.test_cases_total
765
774
  print(f" test_cases_percentage: {res.test_cases_percentage:.1f}")
766
775
 
776
+ if res.test_cases_pass_ratio_count > 0:
777
+ res.test_cases_pass_ratio_avg = (
778
+ 100 * res.test_cases_pass_ratio_sum / res.test_cases_pass_ratio_count
779
+ )
780
+ print(f" test_cases_pass_ratio_avg: {res.test_cases_pass_ratio_avg:.1f}")
781
+
767
782
  if variants["model"]:
768
783
  a_model = set(variants["model"]).pop()
769
784
  command = f"cecli --model {a_model}"
@@ -801,6 +816,18 @@ def summarize_results(results_dir, verbose, stats_languages=None):
801
816
  pass_rate = 100 * num_passed / float(lang_stats.completed_tests)
802
817
  setattr(lang_stats, f"pass_rate_{i + 1}", pass_rate)
803
818
 
819
+ if lang_stats.test_cases_pass_ratio_count > 0:
820
+ lang_stats.test_cases_pass_ratio_avg = (
821
+ 100
822
+ * lang_stats.test_cases_pass_ratio_sum
823
+ / lang_stats.test_cases_pass_ratio_count
824
+ )
825
+ else:
826
+ lang_stats.test_cases_pass_ratio_avg = 0.0
827
+
828
+ del lang_stats.test_cases_pass_ratio_sum
829
+ del lang_stats.test_cases_pass_ratio_count
830
+
804
831
  # Then format attributes into ready-to-print strings
805
832
  for attr in lang_stats.__dict__:
806
833
  val = getattr(lang_stats, attr)
@@ -870,6 +897,11 @@ def summarize_results(results_dir, verbose, stats_languages=None):
870
897
  console.rule()
871
898
 
872
899
  # print(json.dumps(vars(res), indent=4, sort_keys=True))
900
+ if hasattr(res, "test_cases_pass_ratio_sum"):
901
+ del res.test_cases_pass_ratio_sum
902
+ if hasattr(res, "test_cases_pass_ratio_count"):
903
+ del res.test_cases_pass_ratio_count
904
+
873
905
  return res
874
906
 
875
907
 
@@ -1156,6 +1188,7 @@ async def run_test_real(
1156
1188
  verbose=verbose,
1157
1189
  yes_always_commands=True,
1158
1190
  max_reflections=0,
1191
+ file_diffs=False,
1159
1192
  ),
1160
1193
  map_mul_no_files=4,
1161
1194
  mcp_manager=None,
@@ -0,0 +1,203 @@
1
+ #!/bin/bash
2
+ # Benchmark runner script for testing multiple OpenRouter models
3
+ # Usage: ./run_benchmark_variations.sh [OPTIONS]
4
+
5
+ set -e # Exit on error
6
+
7
+ # Default values
8
+ BASE_NAME="cecli-little-guys-h6"
9
+ EDIT_FORMAT="hashline"
10
+ MAP_TOKENS="512"
11
+ THREADS="1"
12
+ LANGUAGES="javascript,python,rust,go,java"
13
+ HASH_RE="^.[15ef]"
14
+ NUM_TESTS="72"
15
+ EXERCISES_DIR="polyglot-benchmark"
16
+ OUTPUT_DIR="tmp.benchmarks"
17
+ SLEEP_BETWEEN=30 # Seconds to sleep between runs
18
+
19
+ # List of models to test
20
+ # RERUN
21
+ # "openrouter/minimax/minimax-m2.1"
22
+ # "openrouter/qwen/qwen3-vl-235b-a22b-thinking"
23
+ MODELS=(
24
+ # "openrouter/qwen/qwen3.5-35b-a3b"
25
+ # "openrouter/xiaomi/mimo-v2-flash"
26
+ # "openrouter/moonshotai/kimi-k2.5"
27
+ # "openrouter/minimax/minimax-m2.5"
28
+ "openrouter/anthropic/claude-haiku-4.5"
29
+ "openrouter/openai/gpt-oss-120b"
30
+ "openrouter/openai/gpt-5-mini"
31
+ "openrouter/google/gemini-3-flash-preview"
32
+ "openrouter/deepseek/deepseek-v3.2-exp"
33
+ )
34
+
35
+ # Parse command line arguments
36
+ while [[ $# -gt 0 ]]; do
37
+ case $1 in
38
+ --base-name)
39
+ BASE_NAME="$2"
40
+ shift 2
41
+ ;;
42
+ --edit-format)
43
+ EDIT_FORMAT="$2"
44
+ shift 2
45
+ ;;
46
+ --map-tokens)
47
+ MAP_TOKENS="$2"
48
+ shift 2
49
+ ;;
50
+ --threads)
51
+ THREADS="$2"
52
+ shift 2
53
+ ;;
54
+ --hash-re)
55
+ HASH_RE="$2"
56
+ shift 2
57
+ ;;
58
+ --num-tests)
59
+ NUM_TESTS="$2"
60
+ shift 2
61
+ ;;
62
+ --exercises-dir)
63
+ EXERCISES_DIR="$2"
64
+ shift 2
65
+ ;;
66
+ --output-dir)
67
+ OUTPUT_DIR="$2"
68
+ shift 2
69
+ ;;
70
+ --sleep)
71
+ SLEEP_BETWEEN="$2"
72
+ shift 2
73
+ ;;
74
+ --help)
75
+ echo "Usage: $0 [OPTIONS]"
76
+ echo ""
77
+ echo "Options:"
78
+ echo " --base-name NAME Base name for benchmark runs (default: $BASE_NAME)"
79
+ echo " --edit-format FORMAT Edit format to use (default: $EDIT_FORMAT)"
80
+ echo " --map-tokens TOKENS Map tokens (default: $MAP_TOKENS)"
81
+ echo " --threads N Number of threads (default: $THREADS)"
82
+ echo " --hash-re REGEX Hash regex filter (default: $HASH_RE)"
83
+ echo " --num-tests N Number of tests to run (default: $NUM_TESTS)"
84
+ echo " --exercises-dir DIR Exercises directory (default: $EXERCISES_DIR)"
85
+ echo " --output-dir DIR Output directory (default: $OUTPUT_DIR)"
86
+ echo " --sleep SECONDS Sleep between runs in seconds (default: $SLEEP_BETWEEN)"
87
+ echo " --help Show this help message"
88
+ echo ""
89
+ echo "Example:"
90
+ echo " $0 --threads 2 --num-tests 5"
91
+ exit 0
92
+ ;;
93
+ *)
94
+ echo "Unknown option: $1"
95
+ echo "Use --help for usage information"
96
+ exit 1
97
+ ;;
98
+ esac
99
+ done
100
+
101
+ # Function to run a single benchmark
102
+ run_benchmark() {
103
+ local model="$1"
104
+ local run_name="$2"
105
+
106
+ echo "========================================================================"
107
+ echo "Starting benchmark: $run_name"
108
+ echo "Model: $model"
109
+ echo "Time: $(date)"
110
+ echo "========================================================================"
111
+
112
+ # Create the benchmark command
113
+ ./benchmark/benchmark.py "$run_name" \
114
+ --new \
115
+ --model "$model" \
116
+ --edit-format "$EDIT_FORMAT" \
117
+ --map-tokens "$MAP_TOKENS" \
118
+ --threads "$THREADS" \
119
+ --hash-re "$HASH_RE" \
120
+ --num-tests "$NUM_TESTS" \
121
+ --languages "$LANGUAGES" \
122
+ --tries 2 \
123
+ --exercises-dir "$EXERCISES_DIR"
124
+
125
+ echo "Benchmark completed: $run_name"
126
+ echo "Results directory: $OUTPUT_DIR/$(ls -t $OUTPUT_DIR | grep "$run_name" | head -1)"
127
+ echo ""
128
+ }
129
+
130
+ # Function to generate statistics for all completed runs
131
+ generate_stats() {
132
+ echo "========================================================================"
133
+ echo "Generating statistics for all completed runs"
134
+ echo "========================================================================"
135
+
136
+ for dir in "$OUTPUT_DIR"/*; do
137
+ if [ -d "$dir" ] && [ -f "$dir/.cecli.results.json" ]; then
138
+ echo "Processing: $(basename "$dir")"
139
+ ./benchmark/benchmark.py --stats "$dir" || true
140
+ echo ""
141
+ fi
142
+ done
143
+ }
144
+
145
+ # Main execution
146
+ main() {
147
+ echo "========================================================================"
148
+ echo "OpenRouter Model Benchmark Runner"
149
+ echo "========================================================================"
150
+ echo "Configuration:"
151
+ echo " Base name: $BASE_NAME"
152
+ echo " Edit format: $EDIT_FORMAT"
153
+ echo " Map tokens: $MAP_TOKENS"
154
+ echo " Threads: $THREADS"
155
+ echo " Hash regex: $HASH_RE"
156
+ echo " Num tests: $NUM_TESTS"
157
+ echo " Exercises dir: $EXERCISES_DIR"
158
+ echo " Output dir: $OUTPUT_DIR"
159
+ echo " Sleep between: ${SLEEP_BETWEEN}s"
160
+ echo " Models to test: ${#MODELS[@]}"
161
+ echo ""
162
+
163
+ # Create output directory if it doesn't exist
164
+ mkdir -p "$OUTPUT_DIR"
165
+
166
+ # Run benchmarks for each model
167
+ for model in "${MODELS[@]}"; do
168
+ # Create a run name by replacing slashes with hyphens
169
+ local model_slug=$(echo "$model" | sed 's|/|-|g')
170
+ local run_name="${BASE_NAME}-${model_slug}"
171
+
172
+ run_benchmark "$model" "$run_name"
173
+
174
+ # Sleep between runs to avoid rate limiting
175
+ if [ "$SLEEP_BETWEEN" -gt 0 ]; then
176
+ echo "Sleeping for ${SLEEP_BETWEEN} seconds before next run..."
177
+ sleep "$SLEEP_BETWEEN"
178
+ echo ""
179
+ fi
180
+ done
181
+
182
+ # Generate statistics
183
+ generate_stats
184
+
185
+ echo "========================================================================"
186
+ echo "All benchmarks completed!"
187
+ echo "========================================================================"
188
+ echo ""
189
+ echo "Summary of results directories:"
190
+ ls -la "$OUTPUT_DIR" | grep "$BASE_NAME"
191
+ echo ""
192
+ echo "To view statistics for a specific run:"
193
+ echo " ./benchmark/benchmark.py --stats $OUTPUT_DIR/<run-directory>"
194
+ echo ""
195
+ echo "To compare all results:"
196
+ echo " for dir in $OUTPUT_DIR/*$BASE_NAME*; do"
197
+ echo " echo \"=== \$(basename \$dir) ===\""
198
+ echo " ./benchmark/benchmark.py --stats \"\$dir\" 2>/dev/null | grep -E '(pass_rate|total_cost|completed_tests)' || true"
199
+ echo " done"
200
+ }
201
+
202
+ # Run main function
203
+ main
@@ -0,0 +1,203 @@
1
+ #!/bin/bash
2
+ # Benchmark runner script for testing multiple OpenRouter models
3
+ # Usage: ./run_benchmark_variations.sh [OPTIONS]
4
+
5
+ set -e # Exit on error
6
+
7
+ # Default values
8
+ BASE_NAME="cecli-little-guys-h6"
9
+ EDIT_FORMAT="hashline"
10
+ MAP_TOKENS="512"
11
+ THREADS="1"
12
+ LANGUAGES="javascript,python,rust,go,java"
13
+ HASH_RE="^.[15ef]"
14
+ NUM_TESTS="72"
15
+ EXERCISES_DIR="polyglot-benchmark"
16
+ OUTPUT_DIR="tmp.benchmarks"
17
+ SLEEP_BETWEEN=30 # Seconds to sleep between runs
18
+
19
+ # List of models to test
20
+ # RERUN
21
+ # "openrouter/minimax/minimax-m2.1"
22
+ # "openrouter/qwen/qwen3-vl-235b-a22b-thinking"
23
+ MODELS=(
24
+ "openrouter/qwen/qwen3.5-35b-a3b"
25
+ "openrouter/xiaomi/mimo-v2-flash"
26
+ "openrouter/moonshotai/kimi-k2.5"
27
+ "openrouter/minimax/minimax-m2.5"
28
+ # "openrouter/anthropic/claude-haiku-4.5"
29
+ # "openrouter/openai/gpt-oss-120b"
30
+ # "openrouter/openai/gpt-5-mini"
31
+ # "openrouter/google/gemini-3-flash-preview"
32
+ # "openrouter/deepseek/deepseek-v3.2-exp"
33
+ )
34
+
35
+ # Parse command line arguments
36
+ while [[ $# -gt 0 ]]; do
37
+ case $1 in
38
+ --base-name)
39
+ BASE_NAME="$2"
40
+ shift 2
41
+ ;;
42
+ --edit-format)
43
+ EDIT_FORMAT="$2"
44
+ shift 2
45
+ ;;
46
+ --map-tokens)
47
+ MAP_TOKENS="$2"
48
+ shift 2
49
+ ;;
50
+ --threads)
51
+ THREADS="$2"
52
+ shift 2
53
+ ;;
54
+ --hash-re)
55
+ HASH_RE="$2"
56
+ shift 2
57
+ ;;
58
+ --num-tests)
59
+ NUM_TESTS="$2"
60
+ shift 2
61
+ ;;
62
+ --exercises-dir)
63
+ EXERCISES_DIR="$2"
64
+ shift 2
65
+ ;;
66
+ --output-dir)
67
+ OUTPUT_DIR="$2"
68
+ shift 2
69
+ ;;
70
+ --sleep)
71
+ SLEEP_BETWEEN="$2"
72
+ shift 2
73
+ ;;
74
+ --help)
75
+ echo "Usage: $0 [OPTIONS]"
76
+ echo ""
77
+ echo "Options:"
78
+ echo " --base-name NAME Base name for benchmark runs (default: $BASE_NAME)"
79
+ echo " --edit-format FORMAT Edit format to use (default: $EDIT_FORMAT)"
80
+ echo " --map-tokens TOKENS Map tokens (default: $MAP_TOKENS)"
81
+ echo " --threads N Number of threads (default: $THREADS)"
82
+ echo " --hash-re REGEX Hash regex filter (default: $HASH_RE)"
83
+ echo " --num-tests N Number of tests to run (default: $NUM_TESTS)"
84
+ echo " --exercises-dir DIR Exercises directory (default: $EXERCISES_DIR)"
85
+ echo " --output-dir DIR Output directory (default: $OUTPUT_DIR)"
86
+ echo " --sleep SECONDS Sleep between runs in seconds (default: $SLEEP_BETWEEN)"
87
+ echo " --help Show this help message"
88
+ echo ""
89
+ echo "Example:"
90
+ echo " $0 --threads 2 --num-tests 5"
91
+ exit 0
92
+ ;;
93
+ *)
94
+ echo "Unknown option: $1"
95
+ echo "Use --help for usage information"
96
+ exit 1
97
+ ;;
98
+ esac
99
+ done
100
+
101
+ # Function to run a single benchmark
102
+ run_benchmark() {
103
+ local model="$1"
104
+ local run_name="$2"
105
+
106
+ echo "========================================================================"
107
+ echo "Starting benchmark: $run_name"
108
+ echo "Model: $model"
109
+ echo "Time: $(date)"
110
+ echo "========================================================================"
111
+
112
+ # Create the benchmark command
113
+ ./benchmark/benchmark.py "$run_name" \
114
+ --new \
115
+ --model "$model" \
116
+ --edit-format "$EDIT_FORMAT" \
117
+ --map-tokens "$MAP_TOKENS" \
118
+ --threads "$THREADS" \
119
+ --hash-re "$HASH_RE" \
120
+ --num-tests "$NUM_TESTS" \
121
+ --languages "$LANGUAGES" \
122
+ --tries 2 \
123
+ --exercises-dir "$EXERCISES_DIR"
124
+
125
+ echo "Benchmark completed: $run_name"
126
+ echo "Results directory: $OUTPUT_DIR/$(ls -t $OUTPUT_DIR | grep "$run_name" | head -1)"
127
+ echo ""
128
+ }
129
+
130
+ # Function to generate statistics for all completed runs
131
+ generate_stats() {
132
+ echo "========================================================================"
133
+ echo "Generating statistics for all completed runs"
134
+ echo "========================================================================"
135
+
136
+ for dir in "$OUTPUT_DIR"/*; do
137
+ if [ -d "$dir" ] && [ -f "$dir/.cecli.results.json" ]; then
138
+ echo "Processing: $(basename "$dir")"
139
+ ./benchmark/benchmark.py --stats "$dir" || true
140
+ echo ""
141
+ fi
142
+ done
143
+ }
144
+
145
+ # Main execution
146
+ main() {
147
+ echo "========================================================================"
148
+ echo "OpenRouter Model Benchmark Runner"
149
+ echo "========================================================================"
150
+ echo "Configuration:"
151
+ echo " Base name: $BASE_NAME"
152
+ echo " Edit format: $EDIT_FORMAT"
153
+ echo " Map tokens: $MAP_TOKENS"
154
+ echo " Threads: $THREADS"
155
+ echo " Hash regex: $HASH_RE"
156
+ echo " Num tests: $NUM_TESTS"
157
+ echo " Exercises dir: $EXERCISES_DIR"
158
+ echo " Output dir: $OUTPUT_DIR"
159
+ echo " Sleep between: ${SLEEP_BETWEEN}s"
160
+ echo " Models to test: ${#MODELS[@]}"
161
+ echo ""
162
+
163
+ # Create output directory if it doesn't exist
164
+ mkdir -p "$OUTPUT_DIR"
165
+
166
+ # Run benchmarks for each model
167
+ for model in "${MODELS[@]}"; do
168
+ # Create a run name by replacing slashes with hyphens
169
+ local model_slug=$(echo "$model" | sed 's|/|-|g')
170
+ local run_name="${BASE_NAME}-${model_slug}"
171
+
172
+ run_benchmark "$model" "$run_name"
173
+
174
+ # Sleep between runs to avoid rate limiting
175
+ if [ "$SLEEP_BETWEEN" -gt 0 ]; then
176
+ echo "Sleeping for ${SLEEP_BETWEEN} seconds before next run..."
177
+ sleep "$SLEEP_BETWEEN"
178
+ echo ""
179
+ fi
180
+ done
181
+
182
+ # Generate statistics
183
+ generate_stats
184
+
185
+ echo "========================================================================"
186
+ echo "All benchmarks completed!"
187
+ echo "========================================================================"
188
+ echo ""
189
+ echo "Summary of results directories:"
190
+ ls -la "$OUTPUT_DIR" | grep "$BASE_NAME"
191
+ echo ""
192
+ echo "To view statistics for a specific run:"
193
+ echo " ./benchmark/benchmark.py --stats $OUTPUT_DIR/<run-directory>"
194
+ echo ""
195
+ echo "To compare all results:"
196
+ echo " for dir in $OUTPUT_DIR/*$BASE_NAME*; do"
197
+ echo " echo \"=== \$(basename \$dir) ===\""
198
+ echo " ./benchmark/benchmark.py --stats \"\$dir\" 2>/dev/null | grep -E '(pass_rate|total_cost|completed_tests)' || true"
199
+ echo " done"
200
+ }
201
+
202
+ # Run main function
203
+ main
@@ -5,7 +5,7 @@
5
5
  set -e # Exit on error
6
6
 
7
7
  # Default values
8
- BASE_NAME="cecli-base-d-big-3"
8
+ BASE_NAME="cecli-little-guys-d6"
9
9
  EDIT_FORMAT="diff"
10
10
  MAP_TOKENS="512"
11
11
  THREADS="1"
@@ -21,14 +21,15 @@ SLEEP_BETWEEN=30 # Seconds to sleep between runs
21
21
  # "openrouter/minimax/minimax-m2.1"
22
22
  # "openrouter/qwen/qwen3-vl-235b-a22b-thinking"
23
23
  MODELS=(
24
- # "openrouter/deepseek/deepseek-v3.2-exp"
25
- "openrouter/moonshotai/kimi-k2.5"
24
+ # "openrouter/qwen/qwen3.5-35b-a3b"
25
+ # "openrouter/xiaomi/mimo-v2-flash"
26
+ # "openrouter/moonshotai/kimi-k2.5"
27
+ # "openrouter/minimax/minimax-m2.5"
28
+ "openrouter/anthropic/claude-haiku-4.5"
26
29
  "openrouter/openai/gpt-oss-120b"
27
- "openrouter/openai/gpt-5.2"
30
+ "openrouter/openai/gpt-5-mini"
28
31
  "openrouter/google/gemini-3-flash-preview"
29
- "openrouter/google/gemini-3-pro-preview"
30
- "openrouter/anthropic/claude-haiku-4.5"
31
- "openrouter/anthropic/claude-sonnet-4.5"
32
+ "openrouter/deepseek/deepseek-v3.2-exp"
32
33
  )
33
34
 
34
35
  # Parse command line arguments
@@ -118,6 +119,7 @@ run_benchmark() {
118
119
  --hash-re "$HASH_RE" \
119
120
  --num-tests "$NUM_TESTS" \
120
121
  --languages "$LANGUAGES" \
122
+ --tries 2 \
121
123
  --exercises-dir "$EXERCISES_DIR"
122
124
 
123
125
  echo "Benchmark completed: $run_name"