tool-compass 2.0.2__tar.gz → 2.0.3__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 (42) hide show
  1. {tool_compass-2.0.2 → tool_compass-2.0.3}/.dockerignore +56 -56
  2. {tool_compass-2.0.2 → tool_compass-2.0.3}/.env.example +62 -62
  3. {tool_compass-2.0.2 → tool_compass-2.0.3}/.github/ISSUE_TEMPLATE/bug_report.yml +46 -46
  4. {tool_compass-2.0.2 → tool_compass-2.0.3}/.github/ISSUE_TEMPLATE/feature_request.yml +29 -29
  5. {tool_compass-2.0.2 → tool_compass-2.0.3}/.github/dependabot.yml +20 -20
  6. tool_compass-2.0.3/.github/workflows/docker.yml +46 -0
  7. {tool_compass-2.0.2 → tool_compass-2.0.3}/.github/workflows/publish.yml +36 -36
  8. {tool_compass-2.0.2 → tool_compass-2.0.3}/.github/workflows/test.yml +143 -110
  9. {tool_compass-2.0.2 → tool_compass-2.0.3}/.gitignore +98 -98
  10. {tool_compass-2.0.2 → tool_compass-2.0.3}/AUDIT_REPORT.md +245 -245
  11. {tool_compass-2.0.2 → tool_compass-2.0.3}/CHANGELOG.md +171 -126
  12. {tool_compass-2.0.2 → tool_compass-2.0.3}/CODE_OF_CONDUCT.md +26 -26
  13. {tool_compass-2.0.2 → tool_compass-2.0.3}/CONTRIBUTING.md +311 -311
  14. {tool_compass-2.0.2 → tool_compass-2.0.3}/Dockerfile +83 -82
  15. {tool_compass-2.0.2 → tool_compass-2.0.3}/LICENSE +21 -21
  16. {tool_compass-2.0.2 → tool_compass-2.0.3}/PKG-INFO +22 -15
  17. {tool_compass-2.0.2 → tool_compass-2.0.3}/README.md +277 -270
  18. {tool_compass-2.0.2 → tool_compass-2.0.3}/SECURITY.md +100 -100
  19. tool_compass-2.0.3/_version.py +40 -0
  20. {tool_compass-2.0.2 → tool_compass-2.0.3}/analytics.py +714 -713
  21. tool_compass-2.0.2/backend_client.py → tool_compass-2.0.3/backend_client_mcp.py +434 -428
  22. {tool_compass-2.0.2 → tool_compass-2.0.3}/backend_client_simple.py +600 -595
  23. {tool_compass-2.0.2 → tool_compass-2.0.3}/chain_indexer.py +476 -476
  24. {tool_compass-2.0.2 → tool_compass-2.0.3}/compass_config.example.json +58 -58
  25. {tool_compass-2.0.2 → tool_compass-2.0.3}/config.py +358 -358
  26. {tool_compass-2.0.2 → tool_compass-2.0.3}/docker-compose.yml +99 -99
  27. {tool_compass-2.0.2 → tool_compass-2.0.3}/docs/assets/social-preview.svg +41 -36
  28. tool_compass-2.0.3/docs/assets/tool-compass-logo-dark-bg.jpg +0 -0
  29. {tool_compass-2.0.2 → tool_compass-2.0.3}/embedder.py +230 -226
  30. {tool_compass-2.0.2 → tool_compass-2.0.3}/gateway.py +1234 -1225
  31. {tool_compass-2.0.2 → tool_compass-2.0.3}/indexer.py +564 -564
  32. {tool_compass-2.0.2 → tool_compass-2.0.3}/llms.txt +102 -102
  33. {tool_compass-2.0.2 → tool_compass-2.0.3}/pyproject.toml +128 -128
  34. {tool_compass-2.0.2 → tool_compass-2.0.3}/pytest.ini +31 -31
  35. {tool_compass-2.0.2 → tool_compass-2.0.3}/requirements-dev.txt +24 -24
  36. {tool_compass-2.0.2 → tool_compass-2.0.3}/requirements.txt +15 -15
  37. tool_compass-2.0.3/scripts/check-org-urls.sh +44 -0
  38. {tool_compass-2.0.2 → tool_compass-2.0.3}/setup.py +77 -77
  39. {tool_compass-2.0.2 → tool_compass-2.0.3}/sync_manager.py +425 -428
  40. {tool_compass-2.0.2 → tool_compass-2.0.3}/tool_manifest.py +817 -817
  41. {tool_compass-2.0.2 → tool_compass-2.0.3}/ui.py +1198 -1179
  42. {tool_compass-2.0.2 → tool_compass-2.0.3}/docs/assets/social-preview.png +0 -0
@@ -1,56 +1,56 @@
1
- # Git
2
- .git
3
- .gitignore
4
-
5
- # Docker
6
- Dockerfile
7
- docker-compose.yml
8
- .dockerignore
9
-
10
- # Python
11
- __pycache__
12
- *.py[cod]
13
- *$py.class
14
- *.so
15
- .Python
16
- venv/
17
- .venv/
18
- ENV/
19
- env/
20
- .eggs/
21
- *.egg-info/
22
- *.egg
23
-
24
- # IDE
25
- .vscode/
26
- .idea/
27
- *.swp
28
- *.swo
29
-
30
- # Testing
31
- .pytest_cache/
32
- .coverage
33
- htmlcov/
34
- .tox/
35
-
36
- # Build artifacts
37
- dist/
38
- build/
39
- *.manifest
40
- *.spec
41
-
42
- # OS files
43
- .DS_Store
44
- Thumbs.db
45
-
46
- # Local development files
47
- *.local.json
48
- .env.local
49
-
50
- # Gradio cache
51
- flagged/
52
-
53
- # Keep db directory structure but not contents
54
- db/*.db
55
- db/*.hnsw
56
- !db/.gitkeep
1
+ # Git
2
+ .git
3
+ .gitignore
4
+
5
+ # Docker
6
+ Dockerfile
7
+ docker-compose.yml
8
+ .dockerignore
9
+
10
+ # Python
11
+ __pycache__
12
+ *.py[cod]
13
+ *$py.class
14
+ *.so
15
+ .Python
16
+ venv/
17
+ .venv/
18
+ ENV/
19
+ env/
20
+ .eggs/
21
+ *.egg-info/
22
+ *.egg
23
+
24
+ # IDE
25
+ .vscode/
26
+ .idea/
27
+ *.swp
28
+ *.swo
29
+
30
+ # Testing
31
+ .pytest_cache/
32
+ .coverage
33
+ htmlcov/
34
+ .tox/
35
+
36
+ # Build artifacts
37
+ dist/
38
+ build/
39
+ *.manifest
40
+ *.spec
41
+
42
+ # OS files
43
+ .DS_Store
44
+ Thumbs.db
45
+
46
+ # Local development files
47
+ *.local.json
48
+ .env.local
49
+
50
+ # Gradio cache
51
+ flagged/
52
+
53
+ # Keep db directory structure but not contents
54
+ db/*.db
55
+ db/*.hnsw
56
+ !db/.gitkeep
@@ -1,62 +1,62 @@
1
- # Tool Compass Environment Configuration
2
- # Copy this file to .env and customize as needed
3
-
4
- # =============================================================================
5
- # Core Configuration
6
- # =============================================================================
7
-
8
- # Project root directory (auto-detected if not set)
9
- # TOOL_COMPASS_BASE_PATH=/path/to/mcp-tool-shop
10
-
11
- # Python executable (auto-detected from venv if not set)
12
- # TOOL_COMPASS_PYTHON=/path/to/python
13
-
14
- # Configuration file path (default: ./compass_config.json)
15
- # TOOL_COMPASS_CONFIG=/path/to/compass_config.json
16
-
17
- # =============================================================================
18
- # External Services
19
- # =============================================================================
20
-
21
- # Ollama server URL for embeddings
22
- OLLAMA_URL=http://localhost:11434
23
-
24
- # ComfyUI server URL (for AI image generation backend)
25
- COMFYUI_URL=http://localhost:8188
26
-
27
- # =============================================================================
28
- # Logging
29
- # =============================================================================
30
-
31
- # Log level: DEBUG, INFO, WARNING, ERROR, CRITICAL
32
- LOG_LEVEL=INFO
33
-
34
- # =============================================================================
35
- # Gradio UI Settings
36
- # =============================================================================
37
-
38
- # Server bind address (0.0.0.0 for Docker, 127.0.0.1 for local)
39
- GRADIO_SERVER_NAME=127.0.0.1
40
-
41
- # Server port
42
- GRADIO_SERVER_PORT=7860
43
-
44
- # Enable public sharing link (set to "true" for Gradio share URL)
45
- # GRADIO_SHARE=false
46
-
47
- # =============================================================================
48
- # Docker-Specific
49
- # =============================================================================
50
-
51
- # When running in Docker, use host.docker.internal to reach host services
52
- # OLLAMA_URL=http://host.docker.internal:11434
53
-
54
- # =============================================================================
55
- # Analytics (optional)
56
- # =============================================================================
57
-
58
- # Disable analytics tracking
59
- # TOOL_COMPASS_ANALYTICS_DISABLED=true
60
-
61
- # Hot cache size (number of frequently used tools to pre-load)
62
- # TOOL_COMPASS_HOT_CACHE_SIZE=10
1
+ # Tool Compass Environment Configuration
2
+ # Copy this file to .env and customize as needed
3
+
4
+ # =============================================================================
5
+ # Core Configuration
6
+ # =============================================================================
7
+
8
+ # Project root directory (auto-detected if not set)
9
+ # TOOL_COMPASS_BASE_PATH=/path/to/mcp-tool-shop
10
+
11
+ # Python executable (auto-detected from venv if not set)
12
+ # TOOL_COMPASS_PYTHON=/path/to/python
13
+
14
+ # Configuration file path (default: ./compass_config.json)
15
+ # TOOL_COMPASS_CONFIG=/path/to/compass_config.json
16
+
17
+ # =============================================================================
18
+ # External Services
19
+ # =============================================================================
20
+
21
+ # Ollama server URL for embeddings
22
+ OLLAMA_URL=http://localhost:11434
23
+
24
+ # ComfyUI server URL (for AI image generation backend)
25
+ COMFYUI_URL=http://localhost:8188
26
+
27
+ # =============================================================================
28
+ # Logging
29
+ # =============================================================================
30
+
31
+ # Log level: DEBUG, INFO, WARNING, ERROR, CRITICAL
32
+ LOG_LEVEL=INFO
33
+
34
+ # =============================================================================
35
+ # Gradio UI Settings
36
+ # =============================================================================
37
+
38
+ # Server bind address (0.0.0.0 for Docker, 127.0.0.1 for local)
39
+ GRADIO_SERVER_NAME=127.0.0.1
40
+
41
+ # Server port
42
+ GRADIO_SERVER_PORT=7860
43
+
44
+ # Enable public sharing link (set to "true" for Gradio share URL)
45
+ # GRADIO_SHARE=false
46
+
47
+ # =============================================================================
48
+ # Docker-Specific
49
+ # =============================================================================
50
+
51
+ # When running in Docker, use host.docker.internal to reach host services
52
+ # OLLAMA_URL=http://host.docker.internal:11434
53
+
54
+ # =============================================================================
55
+ # Analytics (optional)
56
+ # =============================================================================
57
+
58
+ # Disable analytics tracking
59
+ # TOOL_COMPASS_ANALYTICS_DISABLED=true
60
+
61
+ # Hot cache size (number of frequently used tools to pre-load)
62
+ # TOOL_COMPASS_HOT_CACHE_SIZE=10
@@ -1,46 +1,46 @@
1
- name: Bug Report
2
- description: Report a bug or issue
3
- title: "[Bug]: "
4
- labels: ["bug"]
5
- body:
6
- - type: textarea
7
- id: description
8
- attributes:
9
- label: Description
10
- description: Clear description of the bug
11
- validations:
12
- required: true
13
- - type: textarea
14
- id: reproduce
15
- attributes:
16
- label: Steps to Reproduce
17
- description: How to reproduce the issue
18
- placeholder: |
19
- 1. Run command...
20
- 2. See error...
21
- validations:
22
- required: true
23
- - type: textarea
24
- id: expected
25
- attributes:
26
- label: Expected Behavior
27
- description: What you expected to happen
28
- validations:
29
- required: true
30
- - type: dropdown
31
- id: os
32
- attributes:
33
- label: Operating System
34
- options:
35
- - Windows
36
- - Linux
37
- - macOS
38
- validations:
39
- required: true
40
- - type: input
41
- id: python
42
- attributes:
43
- label: Python Version
44
- placeholder: "3.11"
45
- validations:
46
- required: true
1
+ name: Bug Report
2
+ description: Report a bug or issue
3
+ title: "[Bug]: "
4
+ labels: ["bug"]
5
+ body:
6
+ - type: textarea
7
+ id: description
8
+ attributes:
9
+ label: Description
10
+ description: Clear description of the bug
11
+ validations:
12
+ required: true
13
+ - type: textarea
14
+ id: reproduce
15
+ attributes:
16
+ label: Steps to Reproduce
17
+ description: How to reproduce the issue
18
+ placeholder: |
19
+ 1. Run command...
20
+ 2. See error...
21
+ validations:
22
+ required: true
23
+ - type: textarea
24
+ id: expected
25
+ attributes:
26
+ label: Expected Behavior
27
+ description: What you expected to happen
28
+ validations:
29
+ required: true
30
+ - type: dropdown
31
+ id: os
32
+ attributes:
33
+ label: Operating System
34
+ options:
35
+ - Windows
36
+ - Linux
37
+ - macOS
38
+ validations:
39
+ required: true
40
+ - type: input
41
+ id: python
42
+ attributes:
43
+ label: Python Version
44
+ placeholder: "3.11"
45
+ validations:
46
+ required: true
@@ -1,29 +1,29 @@
1
- name: Feature Request
2
- description: Suggest a new feature
3
- title: "[Feature]: "
4
- labels: ["enhancement"]
5
- body:
6
- - type: textarea
7
- id: problem
8
- attributes:
9
- label: Problem
10
- description: What problem does this solve?
11
- validations:
12
- required: true
13
- - type: textarea
14
- id: solution
15
- attributes:
16
- label: Proposed Solution
17
- description: How would you like this to work?
18
- validations:
19
- required: true
20
- - type: textarea
21
- id: alternatives
22
- attributes:
23
- label: Alternatives Considered
24
- description: Other solutions you've considered
25
- - type: textarea
26
- id: context
27
- attributes:
28
- label: Additional Context
29
- description: Any other information
1
+ name: Feature Request
2
+ description: Suggest a new feature
3
+ title: "[Feature]: "
4
+ labels: ["enhancement"]
5
+ body:
6
+ - type: textarea
7
+ id: problem
8
+ attributes:
9
+ label: Problem
10
+ description: What problem does this solve?
11
+ validations:
12
+ required: true
13
+ - type: textarea
14
+ id: solution
15
+ attributes:
16
+ label: Proposed Solution
17
+ description: How would you like this to work?
18
+ validations:
19
+ required: true
20
+ - type: textarea
21
+ id: alternatives
22
+ attributes:
23
+ label: Alternatives Considered
24
+ description: Other solutions you've considered
25
+ - type: textarea
26
+ id: context
27
+ attributes:
28
+ label: Additional Context
29
+ description: Any other information
@@ -1,20 +1,20 @@
1
- version: 2
2
- updates:
3
- - package-ecosystem: "pip"
4
- directory: "/"
5
- schedule:
6
- interval: "weekly"
7
- open-pull-requests-limit: 5
8
- labels:
9
- - "dependencies"
10
- commit-message:
11
- prefix: "deps"
12
-
13
- - package-ecosystem: "github-actions"
14
- directory: "/"
15
- schedule:
16
- interval: "weekly"
17
- labels:
18
- - "ci"
19
- commit-message:
20
- prefix: "ci"
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "pip"
4
+ directory: "/"
5
+ schedule:
6
+ interval: "weekly"
7
+ open-pull-requests-limit: 5
8
+ labels:
9
+ - "dependencies"
10
+ commit-message:
11
+ prefix: "deps"
12
+
13
+ - package-ecosystem: "github-actions"
14
+ directory: "/"
15
+ schedule:
16
+ interval: "weekly"
17
+ labels:
18
+ - "ci"
19
+ commit-message:
20
+ prefix: "ci"
@@ -0,0 +1,46 @@
1
+ name: Publish to GHCR
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+ workflow_dispatch:
7
+
8
+ env:
9
+ REGISTRY: ghcr.io
10
+ IMAGE_NAME: ${{ github.repository }}
11
+
12
+ jobs:
13
+ build-and-push:
14
+ runs-on: ubuntu-latest
15
+ permissions:
16
+ contents: read
17
+ packages: write
18
+
19
+ steps:
20
+ - uses: actions/checkout@v6
21
+
22
+ - name: Log in to GHCR
23
+ uses: docker/login-action@v3
24
+ with:
25
+ registry: ${{ env.REGISTRY }}
26
+ username: ${{ github.actor }}
27
+ password: ${{ secrets.GITHUB_TOKEN }}
28
+
29
+ - name: Extract metadata
30
+ id: meta
31
+ uses: docker/metadata-action@v5
32
+ with:
33
+ images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
34
+ tags: |
35
+ type=semver,pattern={{version}}
36
+ type=semver,pattern={{major}}.{{minor}}
37
+ type=sha
38
+ type=raw,value=latest,enable={{is_default_branch}}
39
+
40
+ - name: Build and push
41
+ uses: docker/build-push-action@v6
42
+ with:
43
+ context: .
44
+ push: true
45
+ tags: ${{ steps.meta.outputs.tags }}
46
+ labels: ${{ steps.meta.outputs.labels }}
@@ -1,36 +1,36 @@
1
- # Tool Compass PyPI Publishing
2
- # Triggered when a release is created
3
-
4
- name: Publish to PyPI
5
-
6
- on:
7
- release:
8
- types: [published]
9
-
10
- jobs:
11
- publish:
12
- name: Build and Publish
13
- runs-on: ubuntu-latest
14
-
15
- steps:
16
- - name: Checkout repository
17
- uses: actions/checkout@v6
18
-
19
- - name: Set up Python
20
- uses: actions/setup-python@v6
21
- with:
22
- python-version: '3.11'
23
-
24
- - name: Install build tools
25
- run: |
26
- python -m pip install --upgrade pip
27
- pip install build twine
28
-
29
- - name: Build package
30
- run: python -m build
31
-
32
- - name: Publish to PyPI
33
- env:
34
- TWINE_USERNAME: __token__
35
- TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
36
- run: twine upload dist/*
1
+ # Tool Compass PyPI Publishing
2
+ # Triggered when a release is created
3
+
4
+ name: Publish to PyPI
5
+
6
+ on:
7
+ release:
8
+ types: [published]
9
+
10
+ jobs:
11
+ publish:
12
+ name: Build and Publish
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ - name: Checkout repository
17
+ uses: actions/checkout@v6
18
+
19
+ - name: Set up Python
20
+ uses: actions/setup-python@v6
21
+ with:
22
+ python-version: '3.11'
23
+
24
+ - name: Install build tools
25
+ run: |
26
+ python -m pip install --upgrade pip
27
+ pip install build twine
28
+
29
+ - name: Build package
30
+ run: python -m build
31
+
32
+ - name: Publish to PyPI
33
+ env:
34
+ TWINE_USERNAME: __token__
35
+ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
36
+ run: twine upload dist/*