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.
- kodit-0.1.17/.github/workflows/pull_request.yaml +35 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/test.yaml +7 -8
- kodit-0.1.17/.python-version +1 -0
- {kodit-0.1.15 → kodit-0.1.17}/Dockerfile +4 -4
- kodit-0.1.17/PKG-INFO +152 -0
- kodit-0.1.17/README.md +101 -0
- {kodit-0.1.15 → kodit-0.1.17}/docs/_index.md +7 -1
- kodit-0.1.17/docs/demos/_index.md +13 -0
- kodit-0.1.17/docs/demos/knock-knock-auth/index.md +335 -0
- {kodit-0.1.15 → kodit-0.1.17}/pyproject.toml +2 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/_version.py +2 -2
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/cli.py +105 -19
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_factory.py +2 -2
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/embedding_provider.py +9 -2
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/openai_embedding_provider.py +19 -7
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/vectorchord_vector_search_service.py +26 -15
- kodit-0.1.17/src/kodit/enrichment/__init__.py +1 -0
- kodit-0.1.17/src/kodit/enrichment/enrichment_factory.py +23 -0
- kodit-0.1.17/src/kodit/enrichment/enrichment_provider/__init__.py +1 -0
- kodit-0.1.17/src/kodit/enrichment/enrichment_provider/enrichment_provider.py +16 -0
- kodit-0.1.17/src/kodit/enrichment/enrichment_provider/local_enrichment_provider.py +63 -0
- kodit-0.1.17/src/kodit/enrichment/enrichment_provider/openai_enrichment_provider.py +77 -0
- kodit-0.1.17/src/kodit/enrichment/enrichment_service.py +33 -0
- kodit-0.1.17/src/kodit/indexing/fusion.py +67 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/indexing_repository.py +41 -23
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/indexing_service.py +128 -8
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/mcp.py +25 -16
- kodit-0.1.17/src/kodit/migrations/versions/c3f5137d30f5_index_all_the_things.py +44 -0
- kodit-0.1.17/src/kodit/snippets/languages/go.scm +26 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/source_models.py +4 -4
- kodit-0.1.17/tests/experiments/similarity_test.py +73 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/embedding_provider/openai_embedding_provider_test.py +87 -7
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/vectorchord_vector_search_service_test.py +1 -0
- kodit-0.1.17/tests/kodit/enrichment/enrichment_provider/__init__.py +0 -0
- kodit-0.1.17/tests/kodit/enrichment/enrichment_provider/openai_enrichment_provider_test.py +203 -0
- kodit-0.1.17/tests/kodit/indexing/indexing_repository_test.py +96 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/indexing/indexing_service_test.py +15 -9
- kodit-0.1.17/tests/kodit/snippets/__init__.py +0 -0
- kodit-0.1.17/tests/kodit/snippets/golang.go +28 -0
- kodit-0.1.17/tests/kodit/snippets/knock-knock-server.py +89 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/method_extraction_test.py +56 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/smoke.sh +1 -1
- {kodit-0.1.15 → kodit-0.1.17}/uv.lock +2 -0
- kodit-0.1.15/.python-version +0 -1
- kodit-0.1.15/PKG-INFO +0 -89
- kodit-0.1.15/README.md +0 -40
- kodit-0.1.15/src/kodit/search/__init__.py +0 -1
- kodit-0.1.15/src/kodit/search/search_repository.py +0 -57
- kodit-0.1.15/src/kodit/search/search_service.py +0 -135
- kodit-0.1.15/tests/kodit/search/__init__.py +0 -1
- kodit-0.1.15/tests/kodit/search/search_repository_test.py +0 -57
- kodit-0.1.15/tests/kodit/search/search_service_test.py +0 -210
- {kodit-0.1.15 → kodit-0.1.17}/.cursor/rules/kodit.mdc +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/CODE_OF_CONDUCT.md +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/CONTRIBUTING.md +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/dependabot.yml +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/docker.yaml +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/docs.yaml +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/pypi-test.yaml +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.github/workflows/pypi.yaml +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.gitignore +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.vscode/launch.json +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/.vscode/settings.json +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/LICENSE +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/alembic.ini +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/docs/developer/index.md +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/.gitignore +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/app.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/keyword_search_factory.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/keyword_search_service.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/local_bm25.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/bm25/vectorchord_bm25.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/config.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/database.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_models.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/hash_embedding_provider.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_provider/local_embedding_provider.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/embedding_repository.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/local_vector_search_service.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/embedding/vector_search_service.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/indexing/indexing_models.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/log.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/middleware.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/README +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/env.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/script.py.mako +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/versions/7c3bbc2ab32b_add_embeddings_table.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/versions/85155663351e_initial.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/migrations/versions/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/languages/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/languages/csharp.scm +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/languages/python.scm +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/method_snippets.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/snippets/snippets.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/source_repository.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/source/source_service.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/util/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/src/kodit/util/spinner.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/conftest.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/experiments/cline-prompt-regression-tests/cline_prompt.txt +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/experiments/cline-prompt-regression-tests/cline_prompt_test.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/experiments/embedding.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/bm25/local_bm25_test.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/bm25/vectorchord_repository_test.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/cli_test.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/e2e.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/embedding_provider/local_embedding_provider_test.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/embedding/local_vector_search_service_test.py +0 -0
- {kodit-0.1.15/tests/kodit/snippets → kodit-0.1.17/tests/kodit/enrichment}/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/indexing/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/mcp_test.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/csharp.cs +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/detect_language_test.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/snippets/python.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/source/__init__.py +0 -0
- {kodit-0.1.15 → kodit-0.1.17}/tests/kodit/source/source_service_test.py +0 -0
- {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:
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
+
[](https://docs.helix.ml/kodit/)
|
|
67
|
+
[](./LICENSE)
|
|
68
|
+
[](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
|
+
[](https://docs.helix.ml/kodit/)
|
|
16
|
+
[](./LICENSE)
|
|
17
|
+
[](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
|