feat(cli): 添加 --rule 选项支持模板自动发现

重构 ccw cli 模板系统:

- 新增 template-discovery.ts 模块,支持扁平化模板自动发现
- 添加 --rule <template> 选项,自动加载 protocol 和 template
- 模板目录从嵌套结构 (prompts/category/file.txt) 迁移到扁平结构 (prompts/category-function.txt)
- 更新所有 agent/command 文件,使用 $PROTO $TMPL 环境变量替代 $(cat ...) 模式
- 支持模糊匹配:--rule 02-review-architecture 可匹配 analysis-review-architecture.txt

其他更新:
- Dashboard: 添加 Claude Manager 和 Issue Manager 页面
- Codex-lens: 增强 chain_search 和 clustering 模块

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
catlog22
2026-01-17 19:20:24 +08:00
parent 1fae35c05d
commit f14418603a
137 changed files with 13125 additions and 301 deletions

View File

@@ -52,5 +52,10 @@ Requires-Dist: transformers>=4.36; extra == "splade-gpu"
Requires-Dist: optimum[onnxruntime-gpu]>=1.16; extra == "splade-gpu"
Provides-Extra: encoding
Requires-Dist: chardet>=5.0; extra == "encoding"
Provides-Extra: clustering
Requires-Dist: hdbscan>=0.8.1; extra == "clustering"
Requires-Dist: scikit-learn>=1.3.0; extra == "clustering"
Provides-Extra: full
Requires-Dist: tiktoken>=0.5.0; extra == "full"
Provides-Extra: lsp
Requires-Dist: pygls>=1.3.0; extra == "lsp"

View File

@@ -2,6 +2,7 @@ pyproject.toml
src/codex_lens.egg-info/PKG-INFO
src/codex_lens.egg-info/SOURCES.txt
src/codex_lens.egg-info/dependency_links.txt
src/codex_lens.egg-info/entry_points.txt
src/codex_lens.egg-info/requires.txt
src/codex_lens.egg-info/top_level.txt
src/codexlens/__init__.py
@@ -18,6 +19,14 @@ src/codexlens/cli/output.py
src/codexlens/indexing/__init__.py
src/codexlens/indexing/embedding.py
src/codexlens/indexing/symbol_extractor.py
src/codexlens/lsp/__init__.py
src/codexlens/lsp/handlers.py
src/codexlens/lsp/providers.py
src/codexlens/lsp/server.py
src/codexlens/mcp/__init__.py
src/codexlens/mcp/hooks.py
src/codexlens/mcp/provider.py
src/codexlens/mcp/schema.py
src/codexlens/parsers/__init__.py
src/codexlens/parsers/encoding.py
src/codexlens/parsers/factory.py
@@ -31,6 +40,13 @@ src/codexlens/search/graph_expander.py
src/codexlens/search/hybrid_search.py
src/codexlens/search/query_parser.py
src/codexlens/search/ranking.py
src/codexlens/search/clustering/__init__.py
src/codexlens/search/clustering/base.py
src/codexlens/search/clustering/dbscan_strategy.py
src/codexlens/search/clustering/factory.py
src/codexlens/search/clustering/frequency_strategy.py
src/codexlens/search/clustering/hdbscan_strategy.py
src/codexlens/search/clustering/noop_strategy.py
src/codexlens/semantic/__init__.py
src/codexlens/semantic/ann_index.py
src/codexlens/semantic/base.py
@@ -84,6 +100,7 @@ tests/test_api_reranker.py
tests/test_chain_search.py
tests/test_cli_hybrid_search.py
tests/test_cli_output.py
tests/test_clustering_strategies.py
tests/test_code_extractor.py
tests/test_config.py
tests/test_dual_fts.py
@@ -122,6 +139,7 @@ tests/test_search_performance.py
tests/test_semantic.py
tests/test_semantic_search.py
tests/test_sqlite_store.py
tests/test_staged_cascade.py
tests/test_storage.py
tests/test_storage_concurrency.py
tests/test_symbol_extractor.py

View File

@@ -0,0 +1,2 @@
[console_scripts]
codexlens-lsp = codexlens.lsp:main

View File

@@ -8,12 +8,19 @@ tree-sitter-typescript>=0.23
pathspec>=0.11
watchdog>=3.0
[clustering]
hdbscan>=0.8.1
scikit-learn>=1.3.0
[encoding]
chardet>=5.0
[full]
tiktoken>=0.5.0
[lsp]
pygls>=1.3.0
[reranker]
optimum>=1.16
onnxruntime>=1.15