Swirl queries data source APIs and presents unified results without extracting or indexing anything
1.3K
This repository is for internal SWIRL use only. It is the source for SWIRL Enterprise, which is commercially licensed — a valid license is required to run it. Do not share access, code, or built images outside SWIRL. For licensing, contact [email protected].
Product documentation lives at docs.swirlaiconnect.com — it is the source of truth for installation, configuration, and usage. This README covers only what internal developers need to work in this repo.
| Installation Guide | Docker-first deployment, requirements, licensing |
| Quick Start | First search in minutes |
| User Guide | Search, workspaces, Topic Dashboard |
| AI Search Guide | AI Providers, relevancy, RAG configuration |
| AI Search Assistant Guide | Chat with RAG over federated results |
| Semantic Cache Guide | Caching, version clustering, canonical answers, pinning |
| MCP Server Guide | Connecting Claude, Copilot, and other agents |
| Admin Guide | Business Console, analytics, branding |
| Microsoft 365 Guide | App registration and M365 sources |
| Keycloak Guide | OIDC login and brokered M365 access |
| Troubleshooting | Common issues and fixes |
| Developer Guide | APIs and extension points |
| Release Notes | What shipped in each release |
git clone -b develop https://github.com/swirlai/swirl-search-internal swirl-enterprise
cd swirl-enterprise
./install.sh
python swirl.py config_db # schema, migrations, initial admin user
python swirl.py load_data # branding, authenticators, SearchProviders, AI Providers
python manage.py collectstatic
./install-ui.sh -p
python swirl.py start
config_db creates the default admin user (admin / password); pass -username, -password, -email for a custom superuser..env as SWIRL_LICENSE=<license-json> — SWIRL Enterprise will not operate without it..env.dist documents the available configuration variables.docker-compose.qa.yml runs the full stack — SWIRL, PostgreSQL, Redis, Qdrant, SeaweedFS, Tika, Ollama (models baked in), and the MCP sidecar:
docker compose -f docker-compose.qa.yml up -d
develop via PR. develop merges to main only as part of a release.swirl-galaxy-ui repo and installed into static/galaxy/ via ./install-ui.sh.DevUtils/ holds development, test, and packaging helpers. Validate Python changes with python -m compileall and ./DevUtils/lint_flake8.sh; run ./DevUtils/pre-checkin-tests.sh before check-in.SWIRL ships a built-in MCP server (swirl_mcp) exposing federated search, source discovery, document reading, and RAG answers with citations to Claude and other MCP hosts:
python manage.py drf_create_token <username>
SWIRL_MCP_TOKEN=<api-key> python -m swirl_mcp # stdio
SWIRL_MCP_TOKEN=<api-key> python -m swirl_mcp --transport http # streamable HTTP on :8675/mcp
Tool reference and host configuration: swirl_mcp/README.md and the MCP Server Guide.
Email [email protected] or open a ticket at the SWIRL Help Desk.
Content type
Image
Digest
sha256:3e4116828…
Size
150.2 MB
Last updated
about 1 year ago
docker pull swirlai/swirl-search-preview:topic-text-matcher