CLI Quickwit
Nous fournissons aussi une CLI nommée qwctl pour interagir avec Quickwit. Vous pouvez l'utiliser pour ingérer ou rechercher des documents, et aussi comme serveur MCP pour vos agents IA.
Installation
Choisissez le mode d'installation adapté à votre système d'exploitation, puis suivez les instructions.
Homebrew
Première installation :
brew tap qwctl/qwctl https://gitlab.cwcloud.tech/oss/quickwit/homebrew-qwctl.git
brew install qwctl
Mise à jour :
brew update
brew upgrade qwctl
Curl
Linux
Linux x86 (64 bits)
version="1.0.3"
curl -L "https://gitlab.cwcloud.tech/oss/quickwit/qwctl/-/releases/v${version}/downloads/qwctl_${version}_linux_amd64.tar.gz" -o "qwctl_cli.tar.gz"
mkdir qwctl_cli && tar -xf qwctl_cli.tar.gz -C qwctl_cli
sudo ./qwctl_cli/install.sh
Vérifiez que la version est disponible dans les releases, car seules les 5 dernières builds sont conservées.
Linux arm (64 bits)
version="1.0.3"
curl -L "https://gitlab.cwcloud.tech/oss/quickwit/qwctl/-/releases/v${version}/downloads/qwctl_${version}_linux_arm64.tar.gz" -o "qwctl_cli.tar.gz"
mkdir qwctl_cli && tar -xf qwctl_cli.tar.gz -C qwctl_cli
sudo ./qwctl_cli/install.sh
Vérifiez que la version est disponible dans les releases, car seules les 5 dernières builds sont conservées.
Pour macOS
macOS x86/arm (64 bits)
version="1.0.3"
curl -L "https://gitlab.cwcloud.tech/oss/quickwit/qwctl/-/releases/v${version}/downloads/qwctl_${version}_darwin_all.tar.gz" -o "qwctl_cli.tar.gz"
mkdir qwctl_cli && tar -xf qwctl_cli.tar.gz -C qwctl_cli
sudo ./qwctl_cli/install.sh
Vérifiez que la version est disponible dans les releases, car seules les 5 dernières builds sont conservées.
Pour Windows
Windows x86 (64 bits)
version="1.0.3"
curl -L "https://gitlab.cwcloud.tech/oss/quickwit/qwctl/-/releases/v${version}/downloads/qwctl_${version}_windows_amd64.zip" -o "qwctl_cli.zip"
unzip qwctl_cli.zip
cd qwctl_cli
qwctl.exe
Vérifiez que la version est disponible dans les releases, car seules les 5 dernières builds sont conservées.
Windows arm (64 bits)
version="1.0.3"
curl -L "https://gitlab.cwcloud.tech/oss/quickwit/qwctl/-/releases/v${version}/downloads/qwctl_${version}_windows_arm64.zip" -o "qwctl_cli.zip"
unzip qwctl_cli.zip
cd qwctl_cli
qwctl.exe
Installation de quickwit avec la CLI
qwctl bootstrap
Flags disponibles :
-rou--release: Nom de release pour le déploiement (par défaut :qwctl)-nou--namespace: Namespace utilisé pour le déploiement (par défaut :qwctl)-kou--keep-dir: Conserver le répertoire helm local-dou--recreate-ns: Recréer le namespace-oou--openshift: Utiliser la CLI OpenShift au lieu de kubectl-pou--value: Valeurs pour surcharger la configuration (peut être répété)--kind-cluster: Spécifier le cluster kind à utiliser (il sera recréé même s'il existe déjà)
Exemple :
qwctl bootstrap -r my-release -n production --value key=value --value values-override.yaml
Configuration
qwctl configure
qwctl configure set format pretty
qwctl configure set endpoint https://quickwit.changeit.org
qwctl configure set basic_auth_username <your user>
qwctl configure set basic_auth_password <your password>
qwctl configure set authorization_header_name Authorization
qwctl configure set authorization_header_value "Basic <your base64 encoded credentials>"
Remarque : il est aussi possible d'utiliser des variables d'environnement QWCTL_{VAR_NAME} au lieu de ce fichier de configuration. Par exemple, pour le format de sortie, vous pouvez définir la variable QWCTL_FORMAT à json ou pretty.
Lister les index
qwctl list
qwctl list -p "otel-*" # liste les index dont le nom commence par "otel-"
Rechercher des logs
qwctl search
qwctl search -i "otel-logs-v0_7" -q "*"
qwctl search -i "my-index" -q "foo:bar" --format json --jq ".foo" --max 100
Ingérer des documents
qwctl ingest -i "my-index" -b '{"foo": "bar", "time": "2024-01-01T00:00:00Z"}'
qwctl ingest -i "my-index" -f "data.json"
IA MCP et agents
Créer un serveur MCP
qwctl ai mcp
qwctl ai mcp -l 127.0.0.1 -p 8080 -e /mcp
Créer un agent appelant le serveur MCP
qwctl ai agent -p "List the indexes"
qwctl ai agent -p "Search *" -s "http://127.0.0.1:8080/mcp" --provider anthropic
Remarque : les fournisseurs disponibles sont anthropic, openai, deepseek ou openrouter. Pour le moment, vous pouvez configurer vos clés comme ceci :
qwctl configure set openai_api_key "your_key"
qwctl configure set anthropic_api_key "your_key"
qwctl configure set openrouter_api_key "your_key"
qwctl configure set deepseek_api_key "your_key"
qwctl configure set gemini_api_key "your_key"
qwctl configure set mistral_api_key "your_key"
Vous pouvez aussi utiliser des variables d'environnement :
export QWCTL_OPENAI_API_KEY="your_key"
export QWCTL_ANTHROPIC_API_KEY="your_key"
export QWCTL_OPENROUTER_API_KEY="your_key"
export QWCTL_DEEPSEEK_API_KEY="your_key"
export QWCTL_GEMINI_API_KEY="your_key"
export QWCTL_MISTRAL_API_KEY="your_key"
Remarque : vous pouvez aussi utiliser le mode interactif pour créer votre agent avec le flag -i ou --interactive :
qwctl ai agent -i
Créer un agent web
Vous pouvez aussi utiliser un mode serveur web pour interroger votre agent via des requêtes HTTP POST au lieu de la CLI :
qwctl ai web-agent -a 0.0.0.0 -p 8081
Le chemin / peut être configuré comme un adaptateur IA externe, et le chemin /gitlab comme un webhook GitLab si vous définissez les configurations suivantes :
qwctl configure set gitlab_base_url "https://gitlab.cwcloud.tech"
qwctl configure set gitlab_token "your_gitlab_token"
qwctl configure set gitlab_webhook_secret "your webhook secret"
Ou avec les variables d'environnement suivantes :
export QWCTL_GITLAB_BASE_URL="https://gitlab.cwcloud.tech"
export QWCTL_GITLAB_TOKEN="your_gitlab_token"
export QWCTL_GITLAB_WEBHOOK_SECRET="your webhook secret"
Lister tous les outils MCP disponibles
qwctl ai agent -p "list_mcp_dynamic_tools"
Remarque : un serveur MCP qwctl doit être en cours d'exécution pour que cette commande fonctionne.
