code-context-engine 0.4.13__tar.gz → 0.4.14__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.
- {code_context_engine-0.4.13/src/code_context_engine.egg-info → code_context_engine-0.4.14}/PKG-INFO +1 -1
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/pyproject.toml +1 -1
- {code_context_engine-0.4.13 → code_context_engine-0.4.14/src/code_context_engine.egg-info}/PKG-INFO +1 -1
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/integration/mcp_server.py +32 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/LICENSE +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/README.md +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/setup.cfg +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/code_context_engine.egg-info/SOURCES.txt +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/code_context_engine.egg-info/dependency_links.txt +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/code_context_engine.egg-info/entry_points.txt +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/code_context_engine.egg-info/requires.txt +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/code_context_engine.egg-info/top_level.txt +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/cli.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/cli_style.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/compressor.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/ollama_client.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/output_rules.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/prompts.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/quality.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/config.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/dashboard/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/dashboard/_page.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/dashboard/server.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/editors.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/event_bus.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/chunker.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/embedder.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/embedding_cache.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/git_hooks.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/git_indexer.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/ignorefile.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/manifest.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/pipeline.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/secrets.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/watcher.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/integration/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/integration/bootstrap.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/integration/git_context.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/integration/session_capture.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/compressor.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/db.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/extractive.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/grammar.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/hook_installer.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/hook_server.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/hooks.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/migrate.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/models.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/pricing.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/project_commands.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/retrieval/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/retrieval/confidence.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/retrieval/query_parser.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/retrieval/retriever.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/serve_http.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/services.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/__init__.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/backend.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/fts_store.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/graph_store.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/local_backend.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/remote_backend.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/vector_store.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/utils.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_init_probe.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_mcp_config.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_savings.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_savings_buckets.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_savings_e2e.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_serve.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_sessions_export.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_sessions_status.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_smoke.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_cli_uninstall.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_config.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_e2e.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_editors_opencode.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_event_bus.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_models.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_project_commands.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_real_life.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_services.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_token_efficiency.py +0 -0
- {code_context_engine-0.4.13 → code_context_engine-0.4.14}/tests/test_token_packing.py +0 -0
{code_context_engine-0.4.13/src/code_context_engine.egg-info → code_context_engine-0.4.14}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-context-engine
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.14
|
|
4
4
|
Summary: Index your codebase. AI searches instead of re-reading files. 94% token savings, benchmarked on FastAPI. Works with Claude Code, Cursor, VS Code, Gemini CLI, Codex, and OpenCode.
|
|
5
5
|
Author-email: Fazle Elahee <felahee@gmail.com>, Raj <rajkumar.sakti@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "code-context-engine"
|
|
3
|
-
version = "0.4.
|
|
3
|
+
version = "0.4.14"
|
|
4
4
|
description = "Index your codebase. AI searches instead of re-reading files. 94% token savings, benchmarked on FastAPI. Works with Claude Code, Cursor, VS Code, Gemini CLI, Codex, and OpenCode."
|
|
5
5
|
readme = {file = "README.md", content-type = "text/markdown"}
|
|
6
6
|
license = "MIT"
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14/src/code_context_engine.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-context-engine
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.14
|
|
4
4
|
Summary: Index your codebase. AI searches instead of re-reading files. 94% token savings, benchmarked on FastAPI. Works with Claude Code, Cursor, VS Code, Gemini CLI, Codex, and OpenCode.
|
|
5
5
|
Author-email: Fazle Elahee <felahee@gmail.com>, Raj <rajkumar.sakti@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -61,6 +61,34 @@ def _count_tokens(text: str) -> int:
|
|
|
61
61
|
return max(1, len(text) // _CHARS_PER_TOKEN)
|
|
62
62
|
|
|
63
63
|
|
|
64
|
+
# Files created by CCE itself — not user code. Filtering these from search
|
|
65
|
+
# results prevents config files from dominating results on small projects
|
|
66
|
+
# and inflating served_tokens (which causes negative savings).
|
|
67
|
+
_CCE_CONFIG_PREFIXES = (
|
|
68
|
+
".claude/",
|
|
69
|
+
".mcp.json",
|
|
70
|
+
".cursor/",
|
|
71
|
+
".cursorrules",
|
|
72
|
+
".vscode/mcp.json",
|
|
73
|
+
".gemini/",
|
|
74
|
+
"GEMINI.md",
|
|
75
|
+
".codex/",
|
|
76
|
+
"opencode.json",
|
|
77
|
+
"opencode.jsonc",
|
|
78
|
+
)
|
|
79
|
+
|
|
80
|
+
_CCE_CONFIG_FILES = {
|
|
81
|
+
"CLAUDE.md",
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def _is_cce_config(file_path: str) -> bool:
|
|
86
|
+
"""True if the chunk comes from a CCE-managed or editor config file."""
|
|
87
|
+
if file_path in _CCE_CONFIG_FILES:
|
|
88
|
+
return True
|
|
89
|
+
return any(file_path.startswith(p) for p in _CCE_CONFIG_PREFIXES)
|
|
90
|
+
|
|
91
|
+
|
|
64
92
|
def _cosine_sim(a, b) -> float:
|
|
65
93
|
"""Cosine similarity between two equal-length numeric sequences. Returns 0
|
|
66
94
|
on degenerate input (zero norm) instead of NaN.
|
|
@@ -906,6 +934,10 @@ class ContextEngineMCP:
|
|
|
906
934
|
)
|
|
907
935
|
all_chunks = await self._compressor.compress(all_chunks, self._config.compression_level)
|
|
908
936
|
|
|
937
|
+
# Filter out CCE config/editor files — they inflate token counts on
|
|
938
|
+
# small projects and aren't what users are searching for.
|
|
939
|
+
all_chunks = [c for c in all_chunks if not _is_cce_config(c.file_path)]
|
|
940
|
+
|
|
909
941
|
inline_chunks, overflow_chunks = _split_inline_overflow(all_chunks, max_tokens)
|
|
910
942
|
|
|
911
943
|
# Accounting
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/prompts.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/compression/quality.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/dashboard/__init__.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/dashboard/_page.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/dashboard/server.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/__init__.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/chunker.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/embedder.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/git_hooks.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/git_indexer.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/ignorefile.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/manifest.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/pipeline.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/secrets.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/indexer/watcher.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/integration/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/__init__.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/compressor.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/extractive.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/grammar.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/hook_server.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/hooks.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/memory/migrate.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/project_commands.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/retrieval/__init__.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/retrieval/confidence.py
RENAMED
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/retrieval/retriever.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/__init__.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/backend.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/fts_store.py
RENAMED
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/graph_store.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_context_engine-0.4.13 → code_context_engine-0.4.14}/src/context_engine/storage/vector_store.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|