kodit 0.1.15__tar.gz → 0.1.17__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.

Potentially problematic release.


This version of kodit might be problematic. Click here for more details.

Files changed (131) hide show
  1. kodit-0.1.17/.github/workflows/pull_request.yaml +35 -0
  2. {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/test.yaml +7 -8
  3. kodit-0.1.17/.python-version +1 -0
  4. {kodit-0.1.15 → kodit-0.1.17}/Dockerfile +4 -4
  5. kodit-0.1.17/PKG-INFO +152 -0
  6. kodit-0.1.17/README.md +101 -0
  7. {kodit-0.1.15 → kodit-0.1.17}/docs/_index.md +7 -1
  8. kodit-0.1.17/docs/demos/_index.md +13 -0
  9. kodit-0.1.17/docs/demos/knock-knock-auth/index.md +335 -0
  10. {kodit-0.1.15 → kodit-0.1.17}/pyproject.toml +2 -0
  11. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/_version.py +2 -2
  12. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/cli.py +105 -19
  13. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_factory.py +2 -2
  14. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/embedding_provider.py +9 -2
  15. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/openai_embedding_provider.py +19 -7
  16. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/vectorchord_vector_search_service.py +26 -15
  17. kodit-0.1.17/src/kodit/enrichment/__init__.py +1 -0
  18. kodit-0.1.17/src/kodit/enrichment/enrichment_factory.py +23 -0
  19. kodit-0.1.17/src/kodit/enrichment/enrichment_provider/__init__.py +1 -0
  20. kodit-0.1.17/src/kodit/enrichment/enrichment_provider/enrichment_provider.py +16 -0
  21. kodit-0.1.17/src/kodit/enrichment/enrichment_provider/local_enrichment_provider.py +63 -0
  22. kodit-0.1.17/src/kodit/enrichment/enrichment_provider/openai_enrichment_provider.py +77 -0
  23. kodit-0.1.17/src/kodit/enrichment/enrichment_service.py +33 -0
  24. kodit-0.1.17/src/kodit/indexing/fusion.py +67 -0
  25. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/indexing_repository.py +41 -23
  26. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/indexing_service.py +128 -8
  27. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/mcp.py +25 -16
  28. kodit-0.1.17/src/kodit/migrations/versions/c3f5137d30f5_index_all_the_things.py +44 -0
  29. kodit-0.1.17/src/kodit/snippets/languages/go.scm +26 -0
  30. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/source_models.py +4 -4
  31. kodit-0.1.17/tests/experiments/similarity_test.py +73 -0
  32. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/embedding_provider/openai_embedding_provider_test.py +87 -7
  33. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/vectorchord_vector_search_service_test.py +1 -0
  34. kodit-0.1.17/tests/kodit/enrichment/enrichment_provider/__init__.py +0 -0
  35. kodit-0.1.17/tests/kodit/enrichment/enrichment_provider/openai_enrichment_provider_test.py +203 -0
  36. kodit-0.1.17/tests/kodit/indexing/indexing_repository_test.py +96 -0
  37. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/indexing/indexing_service_test.py +15 -9
  38. kodit-0.1.17/tests/kodit/snippets/__init__.py +0 -0
  39. kodit-0.1.17/tests/kodit/snippets/golang.go +28 -0
  40. kodit-0.1.17/tests/kodit/snippets/knock-knock-server.py +89 -0
  41. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/method_extraction_test.py +56 -0
  42. {kodit-0.1.15 → kodit-0.1.17}/tests/smoke.sh +1 -1
  43. {kodit-0.1.15 → kodit-0.1.17}/uv.lock +2 -0
  44. kodit-0.1.15/.python-version +0 -1
  45. kodit-0.1.15/PKG-INFO +0 -89
  46. kodit-0.1.15/README.md +0 -40
  47. kodit-0.1.15/src/kodit/search/__init__.py +0 -1
  48. kodit-0.1.15/src/kodit/search/search_repository.py +0 -57
  49. kodit-0.1.15/src/kodit/search/search_service.py +0 -135
  50. kodit-0.1.15/tests/kodit/search/__init__.py +0 -1
  51. kodit-0.1.15/tests/kodit/search/search_repository_test.py +0 -57
  52. kodit-0.1.15/tests/kodit/search/search_service_test.py +0 -210
  53. {kodit-0.1.15 → kodit-0.1.17}/.cursor/rules/kodit.mdc +0 -0
  54. {kodit-0.1.15 → kodit-0.1.17}/.github/CODE_OF_CONDUCT.md +0 -0
  55. {kodit-0.1.15 → kodit-0.1.17}/.github/CONTRIBUTING.md +0 -0
  56. {kodit-0.1.15 → kodit-0.1.17}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  57. {kodit-0.1.15 → kodit-0.1.17}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  58. {kodit-0.1.15 → kodit-0.1.17}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  59. {kodit-0.1.15 → kodit-0.1.17}/.github/dependabot.yml +0 -0
  60. {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/docker.yaml +0 -0
  61. {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/docs.yaml +0 -0
  62. {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/pypi-test.yaml +0 -0
  63. {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/pypi.yaml +0 -0
  64. {kodit-0.1.15 → kodit-0.1.17}/.gitignore +0 -0
  65. {kodit-0.1.15 → kodit-0.1.17}/.vscode/launch.json +0 -0
  66. {kodit-0.1.15 → kodit-0.1.17}/.vscode/settings.json +0 -0
  67. {kodit-0.1.15 → kodit-0.1.17}/LICENSE +0 -0
  68. {kodit-0.1.15 → kodit-0.1.17}/alembic.ini +0 -0
  69. {kodit-0.1.15 → kodit-0.1.17}/docs/developer/index.md +0 -0
  70. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/.gitignore +0 -0
  71. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/__init__.py +0 -0
  72. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/app.py +0 -0
  73. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/__init__.py +0 -0
  74. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/keyword_search_factory.py +0 -0
  75. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/keyword_search_service.py +0 -0
  76. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/local_bm25.py +0 -0
  77. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/vectorchord_bm25.py +0 -0
  78. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/config.py +0 -0
  79. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/database.py +0 -0
  80. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/__init__.py +0 -0
  81. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_models.py +0 -0
  82. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/__init__.py +0 -0
  83. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/hash_embedding_provider.py +0 -0
  84. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/local_embedding_provider.py +0 -0
  85. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_repository.py +0 -0
  86. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/local_vector_search_service.py +0 -0
  87. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/vector_search_service.py +0 -0
  88. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/__init__.py +0 -0
  89. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/indexing_models.py +0 -0
  90. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/log.py +0 -0
  91. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/middleware.py +0 -0
  92. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/README +0 -0
  93. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/__init__.py +0 -0
  94. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/env.py +0 -0
  95. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/script.py.mako +0 -0
  96. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/versions/7c3bbc2ab32b_add_embeddings_table.py +0 -0
  97. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/versions/85155663351e_initial.py +0 -0
  98. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/versions/__init__.py +0 -0
  99. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/__init__.py +0 -0
  100. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/languages/__init__.py +0 -0
  101. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/languages/csharp.scm +0 -0
  102. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/languages/python.scm +0 -0
  103. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/method_snippets.py +0 -0
  104. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/snippets.py +0 -0
  105. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/__init__.py +0 -0
  106. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/source_repository.py +0 -0
  107. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/source_service.py +0 -0
  108. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/util/__init__.py +0 -0
  109. {kodit-0.1.15 → kodit-0.1.17}/src/kodit/util/spinner.py +0 -0
  110. {kodit-0.1.15 → kodit-0.1.17}/tests/__init__.py +0 -0
  111. {kodit-0.1.15 → kodit-0.1.17}/tests/conftest.py +0 -0
  112. {kodit-0.1.15 → kodit-0.1.17}/tests/experiments/cline-prompt-regression-tests/cline_prompt.txt +0 -0
  113. {kodit-0.1.15 → kodit-0.1.17}/tests/experiments/cline-prompt-regression-tests/cline_prompt_test.py +0 -0
  114. {kodit-0.1.15 → kodit-0.1.17}/tests/experiments/embedding.py +0 -0
  115. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/__init__.py +0 -0
  116. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/bm25/local_bm25_test.py +0 -0
  117. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/bm25/vectorchord_repository_test.py +0 -0
  118. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/cli_test.py +0 -0
  119. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/e2e.py +0 -0
  120. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/__init__.py +0 -0
  121. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/embedding_provider/local_embedding_provider_test.py +0 -0
  122. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/local_vector_search_service_test.py +0 -0
  123. {kodit-0.1.15/tests/kodit/snippets → kodit-0.1.17/tests/kodit/enrichment}/__init__.py +0 -0
  124. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/indexing/__init__.py +0 -0
  125. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/mcp_test.py +0 -0
  126. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/csharp.cs +0 -0
  127. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/detect_language_test.py +0 -0
  128. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/python.py +0 -0
  129. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/source/__init__.py +0 -0
  130. {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/source/source_service_test.py +0 -0
  131. {kodit-0.1.15 → kodit-0.1.17}/tests/performance/similarity.py +0 -0
@@ -0,0 +1,35 @@
1
+ # This workflow will install dependencies, create coverage tests and run Pytest Coverage Comment
2
+ # For more information see: https://github.com/MishaKav/pytest-coverage-comment/
3
+ name: pytest-coverage-comment
4
+ on:
5
+ pull_request:
6
+ branches:
7
+ - "*"
8
+
9
+ # https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs
10
+ # `contents` is for permission to the contents of the repository.
11
+ # `pull-requests` is for permission to pull request
12
+ permissions:
13
+ contents: write
14
+ checks: write
15
+ pull-requests: write
16
+
17
+ jobs:
18
+ coverage-comment:
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ - uses: actions/checkout@v4
22
+ - uses: actions/setup-python@v5
23
+ with:
24
+ python-version-file: ".python-version"
25
+ - uses: astral-sh/setup-uv@v5
26
+ - run: uv sync --locked --all-extras --dev
27
+
28
+ - name: Run tests
29
+ run: uv run pytest --junitxml=pytest.xml --cov-report=term-missing:skip-covered --cov=src tests/kodit | tee pytest-coverage.txt
30
+
31
+ - name: Pytest coverage comment
32
+ uses: MishaKav/pytest-coverage-comment@main
33
+ with:
34
+ pytest-coverage-path: ./pytest-coverage.txt
35
+ junitxml-path: ./pytest.xml
@@ -9,7 +9,6 @@ on:
9
9
  permissions:
10
10
  contents: read # Needed to check out code
11
11
  checks: write # Needed to report test results
12
- pull-requests: write # Needed to add comments/annotations to PRs
13
12
 
14
13
  jobs:
15
14
  test:
@@ -37,12 +36,6 @@ jobs:
37
36
  - name: Run tests
38
37
  run: uv run pytest -s --cov=src --cov-report=xml tests/kodit
39
38
 
40
- - name: Pytest coverage comment
41
- if: github.event_name == 'pull_request'
42
- uses: MishaKav/pytest-coverage-comment@v1.1.54
43
- with:
44
- pytest-xml-coverage-path: ./coverage.xml
45
-
46
39
  build-package:
47
40
  runs-on: ubuntu-latest
48
41
  timeout-minutes: 10
@@ -69,12 +62,18 @@ jobs:
69
62
  test-package:
70
63
  needs: build-package
71
64
  runs-on: ubuntu-latest
65
+ strategy:
66
+ matrix:
67
+ python-version:
68
+ - 3.12
69
+ - 3.13
72
70
  timeout-minutes: 10
73
71
  steps:
74
72
  - uses: actions/checkout@v4
75
73
  with:
76
74
  sparse-checkout: |
77
75
  tests/smoke.sh
76
+ uv.lock
78
77
  sparse-checkout-cone-mode: false
79
78
 
80
79
  - name: Download built package
@@ -86,7 +85,7 @@ jobs:
86
85
  - name: "Set up Python"
87
86
  uses: actions/setup-python@v5
88
87
  with:
89
- python-version: 3.12
88
+ python-version: ${{ matrix.python-version }}
90
89
 
91
90
  - name: Install uv
92
91
  uses: astral-sh/setup-uv@v5
@@ -0,0 +1 @@
1
+ 3.13
@@ -1,5 +1,5 @@
1
1
  # syntax=docker/dockerfile:1.9
2
- FROM python:3.12.10-slim-bookworm AS build
2
+ FROM python:3.13.3-slim-bookworm AS build
3
3
 
4
4
  # The following does not work in Podman unless you build in Docker
5
5
  # compatibility mode: <https://github.com/containers/podman/issues/8477>
@@ -23,12 +23,12 @@ COPY --from=ghcr.io/astral-sh/uv:0.7.2 /uv /usr/local/bin/uv
23
23
  # - Silence uv complaining about not being able to use hard links,
24
24
  # - tell uv to byte-compile packages for faster application startups,
25
25
  # - prevent uv from accidentally downloading isolated Python builds,
26
- # - pick a Python (use `/usr/bin/python3.12` on uv 0.5.0 and later),
26
+ # - pick a Python (use `/usr/bin/python3.13` on uv 0.5.0 and later),
27
27
  # - and finally declare `/app` as the target for `uv sync`.
28
28
  ENV UV_LINK_MODE=copy \
29
29
  UV_COMPILE_BYTECODE=1 \
30
30
  UV_PYTHON_DOWNLOADS=never \
31
- UV_PYTHON=python3.12 \
31
+ UV_PYTHON=python3.13 \
32
32
  UV_PROJECT_ENVIRONMENT=/app
33
33
 
34
34
  # Synchronize DEPENDENCIES without the application itself.
@@ -60,7 +60,7 @@ RUN --mount=type=cache,target=/root/.cache \
60
60
 
61
61
  ##########################################################################
62
62
 
63
- FROM python:3.12.10-slim-bookworm
63
+ FROM python:3.13.3-slim-bookworm
64
64
  SHELL ["sh", "-exc"]
65
65
 
66
66
  ENV PATH=/app/bin:$PATH
kodit-0.1.17/PKG-INFO ADDED
@@ -0,0 +1,152 @@
1
+ Metadata-Version: 2.4
2
+ Name: kodit
3
+ Version: 0.1.17
4
+ Summary: Code indexing for better AI code generation
5
+ Project-URL: Homepage, https://docs.helixml.tech/kodit/
6
+ Project-URL: Documentation, https://docs.helixml.tech/kodit/
7
+ Project-URL: Repository, https://github.com/helixml/kodit.git
8
+ Project-URL: Issues, https://github.com/helixml/kodit/issues
9
+ Project-URL: Changelog, https://github.com/helixml/kodit/releases
10
+ Author-email: "Helix.ML" <founders@helix.ml>
11
+ Maintainer-email: "Helix.ML" <founders@helix.ml>
12
+ License-Expression: Apache-2.0
13
+ License-File: LICENSE
14
+ Keywords: ai,indexing,mcp,rag
15
+ Classifier: Development Status :: 2 - Pre-Alpha
16
+ Classifier: Intended Audience :: Developers
17
+ Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Programming Language :: Python :: 3.13
19
+ Classifier: Topic :: Software Development :: Code Generators
20
+ Requires-Python: >=3.12
21
+ Requires-Dist: aiofiles>=24.1.0
22
+ Requires-Dist: aiosqlite>=0.20.0
23
+ Requires-Dist: alembic>=1.15.2
24
+ Requires-Dist: asgi-correlation-id>=4.3.4
25
+ Requires-Dist: asyncpg>=0.30.0
26
+ Requires-Dist: better-exceptions>=0.3.3
27
+ Requires-Dist: bm25s[core]>=0.2.12
28
+ Requires-Dist: click>=8.1.8
29
+ Requires-Dist: colorama>=0.4.6
30
+ Requires-Dist: dotenv>=0.9.9
31
+ Requires-Dist: fastapi[standard]>=0.115.12
32
+ Requires-Dist: fastmcp>=2.3.3
33
+ Requires-Dist: gitpython>=3.1.44
34
+ Requires-Dist: hf-xet>=1.1.2
35
+ Requires-Dist: httpx-retries>=0.3.2
36
+ Requires-Dist: httpx>=0.28.1
37
+ Requires-Dist: openai>=1.82.0
38
+ Requires-Dist: posthog>=4.0.1
39
+ Requires-Dist: pydantic-settings>=2.9.1
40
+ Requires-Dist: pytable-formatter>=0.1.1
41
+ Requires-Dist: sentence-transformers>=4.1.0
42
+ Requires-Dist: sqlalchemy[asyncio]>=2.0.40
43
+ Requires-Dist: structlog>=25.3.0
44
+ Requires-Dist: tdqm>=0.0.1
45
+ Requires-Dist: tiktoken>=0.9.0
46
+ Requires-Dist: transformers>=4.51.3
47
+ Requires-Dist: tree-sitter-language-pack>=0.7.3
48
+ Requires-Dist: tree-sitter>=0.24.0
49
+ Requires-Dist: uritools>=5.0.0
50
+ Description-Content-Type: text/markdown
51
+
52
+ <p align="center">
53
+ <a href="https://docs.helix.ml/kodit/"><img src="https://docs.helix.ml/images/helix-kodit-logo.png" alt="Helix Kodit Logo" width="300"></a>
54
+ </p>
55
+
56
+ <h1 align="center">
57
+ Kodit: A Code Indexing MCP Server
58
+ </h1>
59
+
60
+ <p align="center">
61
+ Kodit connects your AI coding assistant to external codebases to provide accurate and up-to-date snippets of code.
62
+ </p>
63
+
64
+ <div align="center">
65
+
66
+ [![Documentation](https://img.shields.io/badge/Documentation-6B46C1?style=for-the-badge&logo=readthedocs&logoColor=white)](https://docs.helix.ml/kodit/)
67
+ [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=for-the-badge)](./LICENSE)
68
+ [![Discussions](https://img.shields.io/badge/Discussions-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/helixml/kodit/discussions)
69
+
70
+ </div>
71
+
72
+ **Helix Kodit** is an **MCP server** that connects your AI coding assistant to external codebases. It can:
73
+
74
+ - Improve your AI-assisted code by providing canonical examples direct from the source
75
+ - Index local and public codebases
76
+ - Integrates with any AI coding assistant via MCP
77
+ - Search using keyword and semantic search
78
+ - Integrate with any OpenAI-compatible or custom API/model
79
+
80
+ If you're an engineer working with AI-powered coding assistants, Kodit helps by
81
+ providing relevant and up-to-date examples of your task so that LLMs make less mistakes
82
+ and produce fewer hallucinations.
83
+
84
+ ## ✨ Features
85
+
86
+ ### Codebase Indexing
87
+
88
+ Kodit connects to a variety of local and remote codebases to build an index of your
89
+ code. This index is used to build a snippet library, ready for ingestion into an LLM.
90
+
91
+ - Index local directories and public Git repositories
92
+ - Build comprehensive snippet libraries for LLM ingestion
93
+ - Support for multiple codebase types and languages
94
+ - Efficient indexing and search capabilities
95
+
96
+ ### MCP Server
97
+
98
+ Relevant snippets are exposed to an AI coding assistant via an MCP server. This allows
99
+ the assistant to request relevant snippets by providing keywords, code, and semantic
100
+ intent. Kodit has been tested to work well with:
101
+
102
+ - Seamless integration with popular AI coding assistants
103
+ - Tested and verified with:
104
+ - [Cursor](https://docs.helix.ml/kodit/#integration-with-cursor)
105
+ - [Cline](https://docs.helix.ml/kodit/#integration-with-cline)
106
+ - Please contribute more instructions! ... any other assistant is likely to work ...
107
+
108
+ ### Enterprise Ready
109
+
110
+ Out of the box, Kodit works with a local SQLite database and very small, local models.
111
+ But enterprises can scale out with performant databases and dedicated models. Everything
112
+ can even run securely, privately, with on-premise LLM platforms like
113
+ [Helix](https://helix.ml).
114
+
115
+ Supported databases:
116
+
117
+ - SQLite
118
+ - [Vectorchord](https://github.com/tensorchord/VectorChord)
119
+
120
+ Supported providers:
121
+
122
+ - Local (which uses tiny CPU-only open-source models)
123
+ - OpenAI
124
+ - Secure, private LLM enclave with [Helix](https://helix.ml).
125
+ - Any other OpenAI compatible API
126
+
127
+ ## 🚀 Quick Start
128
+
129
+ 1. [Install Kodit](https://docs.helix.ml/kodit/#installation)
130
+ 2. [Index codebases](https://docs.helix.ml/kodit/#quick-start)
131
+ 3. [Integrate with your coding assistant](https://docs.helix.ml/kodit/#integrating-kodit-with-coding-assistants)
132
+
133
+ ### Documentation
134
+
135
+ - [Installation Guide](https://docs.helix.ml/kodit/#installation)
136
+ - [Usage Guide](https://docs.helix.ml/kodit/#quick-start)
137
+ - [Connecting to Kodit](https://docs.helix.ml/kodit/#integrating-kodit-with-coding-assistants)
138
+ - [Configuration Options](https://docs.helix.ml/kodit/#configuring-kodit)
139
+ - [Contribution Guidelines](.github/CONTRIBUTING.md)
140
+
141
+ ## Roadmap
142
+
143
+ The roadmap is currently maintained as a [Github Project](https://github.com/orgs/helixml/projects/4).
144
+
145
+ ## 💬 Support
146
+
147
+ For commercial support, please contact [Helix.ML](founders@helix.ml). To ask a question,
148
+ please [open a discussion](https://github.com/helixml/kodit/discussions).
149
+
150
+ ## License
151
+
152
+ [Apache 2.0 © 2025 HelixML, Inc.](./LICENSE)
kodit-0.1.17/README.md ADDED
@@ -0,0 +1,101 @@
1
+ <p align="center">
2
+ <a href="https://docs.helix.ml/kodit/"><img src="https://docs.helix.ml/images/helix-kodit-logo.png" alt="Helix Kodit Logo" width="300"></a>
3
+ </p>
4
+
5
+ <h1 align="center">
6
+ Kodit: A Code Indexing MCP Server
7
+ </h1>
8
+
9
+ <p align="center">
10
+ Kodit connects your AI coding assistant to external codebases to provide accurate and up-to-date snippets of code.
11
+ </p>
12
+
13
+ <div align="center">
14
+
15
+ [![Documentation](https://img.shields.io/badge/Documentation-6B46C1?style=for-the-badge&logo=readthedocs&logoColor=white)](https://docs.helix.ml/kodit/)
16
+ [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=for-the-badge)](./LICENSE)
17
+ [![Discussions](https://img.shields.io/badge/Discussions-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/helixml/kodit/discussions)
18
+
19
+ </div>
20
+
21
+ **Helix Kodit** is an **MCP server** that connects your AI coding assistant to external codebases. It can:
22
+
23
+ - Improve your AI-assisted code by providing canonical examples direct from the source
24
+ - Index local and public codebases
25
+ - Integrates with any AI coding assistant via MCP
26
+ - Search using keyword and semantic search
27
+ - Integrate with any OpenAI-compatible or custom API/model
28
+
29
+ If you're an engineer working with AI-powered coding assistants, Kodit helps by
30
+ providing relevant and up-to-date examples of your task so that LLMs make less mistakes
31
+ and produce fewer hallucinations.
32
+
33
+ ## ✨ Features
34
+
35
+ ### Codebase Indexing
36
+
37
+ Kodit connects to a variety of local and remote codebases to build an index of your
38
+ code. This index is used to build a snippet library, ready for ingestion into an LLM.
39
+
40
+ - Index local directories and public Git repositories
41
+ - Build comprehensive snippet libraries for LLM ingestion
42
+ - Support for multiple codebase types and languages
43
+ - Efficient indexing and search capabilities
44
+
45
+ ### MCP Server
46
+
47
+ Relevant snippets are exposed to an AI coding assistant via an MCP server. This allows
48
+ the assistant to request relevant snippets by providing keywords, code, and semantic
49
+ intent. Kodit has been tested to work well with:
50
+
51
+ - Seamless integration with popular AI coding assistants
52
+ - Tested and verified with:
53
+ - [Cursor](https://docs.helix.ml/kodit/#integration-with-cursor)
54
+ - [Cline](https://docs.helix.ml/kodit/#integration-with-cline)
55
+ - Please contribute more instructions! ... any other assistant is likely to work ...
56
+
57
+ ### Enterprise Ready
58
+
59
+ Out of the box, Kodit works with a local SQLite database and very small, local models.
60
+ But enterprises can scale out with performant databases and dedicated models. Everything
61
+ can even run securely, privately, with on-premise LLM platforms like
62
+ [Helix](https://helix.ml).
63
+
64
+ Supported databases:
65
+
66
+ - SQLite
67
+ - [Vectorchord](https://github.com/tensorchord/VectorChord)
68
+
69
+ Supported providers:
70
+
71
+ - Local (which uses tiny CPU-only open-source models)
72
+ - OpenAI
73
+ - Secure, private LLM enclave with [Helix](https://helix.ml).
74
+ - Any other OpenAI compatible API
75
+
76
+ ## 🚀 Quick Start
77
+
78
+ 1. [Install Kodit](https://docs.helix.ml/kodit/#installation)
79
+ 2. [Index codebases](https://docs.helix.ml/kodit/#quick-start)
80
+ 3. [Integrate with your coding assistant](https://docs.helix.ml/kodit/#integrating-kodit-with-coding-assistants)
81
+
82
+ ### Documentation
83
+
84
+ - [Installation Guide](https://docs.helix.ml/kodit/#installation)
85
+ - [Usage Guide](https://docs.helix.ml/kodit/#quick-start)
86
+ - [Connecting to Kodit](https://docs.helix.ml/kodit/#integrating-kodit-with-coding-assistants)
87
+ - [Configuration Options](https://docs.helix.ml/kodit/#configuring-kodit)
88
+ - [Contribution Guidelines](.github/CONTRIBUTING.md)
89
+
90
+ ## Roadmap
91
+
92
+ The roadmap is currently maintained as a [Github Project](https://github.com/orgs/helixml/projects/4).
93
+
94
+ ## 💬 Support
95
+
96
+ For commercial support, please contact [Helix.ML](founders@helix.ml). To ask a question,
97
+ please [open a discussion](https://github.com/helixml/kodit/discussions).
98
+
99
+ ## License
100
+
101
+ [Apache 2.0 © 2025 HelixML, Inc.](./LICENSE)
@@ -169,7 +169,7 @@ recreate all indexes.
169
169
 
170
170
  ### Indexing
171
171
 
172
- #### Default Provider
172
+ #### Default Indexing Provider
173
173
 
174
174
  By default, Kodit will use small local models for semantic search and enrichment. If you
175
175
  are using Kodit in a professional capacity, it is likely that the local model latency is
@@ -247,6 +247,12 @@ DB_URL=postgresql+asyncpg://postgres:mysecretpassword@localhost:5432/kodit
247
247
  DEFAULT_SEARCH_PROVIDER=vectorchord
248
248
  ```
249
249
 
250
+ ### Enrichment
251
+
252
+ #### Default Enrichment Provider
253
+
254
+ The default enrichment provider is the same as [the default indexing provider](#default-indexing-provider).
255
+
250
256
  ## Managing Kodit
251
257
 
252
258
  There is limited management functionality at this time. To delete indexes you must
@@ -0,0 +1,13 @@
1
+ ---
2
+ title: Kodit Demos
3
+ linkTitle: Demos
4
+ weight: 4
5
+ tags:
6
+ - demo
7
+ ---
8
+
9
+ The following sections provide lots of examples and demos of using Kodit.
10
+
11
+ <!--more-->
12
+
13
+ {{< default-section-cards-list >}}