WebCull
Documentation CLI et agents
CLI et agents

CLI WebCull

Installez, autorisez et utilisez la CLI WebCull pour trouver, créer et mettre à jour des favoris.

Référence des commandes CLI WebCull

La CLI WebCull est un outil en ligne de commande pour trouver, créer et mettre à jour des favoris depuis un terminal ou un flux d'automatisation. Les commandes renvoient du JSON par défaut et sont conçues pour travailler avec de grands comptes de favoris grâce aux limites, à la pagination, à la sélection de champs et aux budgets de sortie.

webcull <command> [options]
Commande
webcull
Package
@webcull/cli
Chemin de configuration
~/.config/webcull/config.json, ou le chemin défini par WEBCULL_CONFIG.
URL de l'API
Par défaut, https://api.webcull.com. Remplacez avec WEBCULL_API_URL.

Autorisez la CLI avant d'exécuter des commandes de compte

webcull login
webcull auth login
webcull whoami
webcull limits

webcull login lance un flux d'autorisation de courte durée dans le navigateur. Le terminal affiche un code d'association, le navigateur affiche le même code, et l'approbation crée un jeton CLI pour les commandes de lecture et d'écriture de favoris.

N'approuvez qu'une connexion que vous avez lancée. Comparez le code du terminal avec celui du navigateur avant d'approuver.

login
Lance l'autorisation du navigateur et stocke le jeton CLI après approbation.
auth login
Alias de login.
whoami
Affiche le compte autorisé au format JSON.
limits
Affiche les limites d'utilisation CLI actuelles et la capacité de requêtes restante.

Commencer large, puis récupérer des enregistrements de favoris précis

webcull bookmarks count [--path <path>]
webcull bookmarks tree [--path <path>] [--max-depth <n>] [--per-parent-limit <n>]
webcull bookmarks search --query <query> [--sort <sort>]
webcull bookmarks get --ids <ids>
bookmarks count
Compte les enfants sous un chemin de favoris. Le chemin par défaut est /.
bookmarks tree
Renvoie une arborescence bornée depuis un chemin. Les valeurs par défaut incluent --limit 50, --max-depth 2 et --max-chars 12000.
bookmarks search
Recherche les métadonnées des favoris. La limite de résultats par défaut est 25 et le tri par défaut est modified_desc.
bookmarks get
Récupère des favoris précis par ID. Indiquez un ID, des ID séparés par des virgules ou --ids.

Préférez count ou un tree peu profond avant de récupérer de plus grands ensembles de résultats. Utilisez get après avoir identifié les ID de favoris nécessaires.

Limiter la taille de charge utile et choisir les champs de sortie

webcull bookmarks tree --path / --max-depth 1 --limit 25 --max-chars 8000 --fields id,type,title,modified
webcull bookmarks get --ids 123,456 --fields id,title,url,notes --max-metadata-chars 1500 --format json
webcull bookmarks search --query 'github api' --limit 20 --format jsonl
--limit <n>
Nombre maximal de résultats renvoyés par les commandes qui listent des favoris.
--page <n>
Numéro de page pour les commandes qui prennent en charge les résultats paginés. Les pages commencent à 1.
--max-chars <n>
Budget maximal de taille de réponse.
--max-metadata-chars <n>
Texte de métadonnées maximal inclus pour chaque favori.
--fields <list>
Champs de sortie séparés par des virgules, comme id,title,url,parent_id,modified.
--format json|jsonl
Affiche du JSON mis en forme par défaut. jsonl affiche un élément par ligne lorsque la réponse contient une liste d'éléments.

Créer et mettre à jour des favoris

webcull bookmarks create --url <url> [--title <title>] [--notes <text>] [--tags <tags>] [--parent-id <id>] [--parent-path <path>] [--dry-run]
webcull bookmarks create --type folder --title <title> [--parent-id <id>] [--dry-run]
webcull bookmarks update <id> [--url <url>] [--title <title>] [--notes <text>] [--tags <tags>] [--parent-id <id>] [--parent-path <path>] [--dry-run]
--url <url>
Crée ou met à jour une URL de favori. Requis lors de la création d'un favori.
--type folder
Crée un dossier. La création de dossier nécessite --title et n'accepte pas --url.
--title <title>
Définit le titre du favori ou du dossier.
--notes <text>
Définit les notes du favori.
--tags <tags>
Définit des tags séparés par des virgules. Les espaces autour de chaque tag sont supprimés.
--parent-id <id>
Place le favori ou le dossier sous un parent par ID.
--parent-path <path>
Place le favori ou le dossier sous un parent par chemin. Ne pas combiner avec --parent-id.
--dry-run
Valide l'authentification, la portée, les limites, la propriété, le placement et l'état E2EE sans enregistrer le changement.

Les commandes d'écriture préservent les champs qui ne sont pas inclus dans la commande. Elles ne prennent pas en charge les écritures groupées, écritures récursives, création automatique de dossiers, conversion favori-vers-dossier, conversion dossier-vers-favori, téléversement d'icône ou flux d'activation, désactivation ou changement de clé E2EE.

Les phrases secrètes E2EE restent dans des invites de terminal masquées

Pour les comptes E2EE, la CLI demande la phrase secrète E2EE uniquement via une saisie interactive masquée dans le terminal. Elle n'accepte jamais les phrases secrètes E2EE dans les arguments, variables d'environnement, fichiers de configuration, tubes stdin, journaux ou exemples.

Les champs chiffrés des favoris sont chiffrés localement avant les écritures et déchiffrés localement pour les lectures prises en charge. Le serveur reçoit des valeurs chiffrées et ne reçoit jamais les phrases secrètes, les clés dérivées, les hachages de phrases secrètes ni les champs de favoris déchiffrés pour la validation E2EE.

Les écritures CLI sont bloquées pendant la conversion E2EE. Terminez la conversion E2EE dans l'app avant de mettre à jour des favoris qui doivent encore être convertis.

Les jetons CLI sont séparés des sessions de navigateur

La CLI stocke son jeton dans ~/.config/webcull/config.json par défaut avec le mode de fichier 0600. Définissez WEBCULL_CONFIG pour utiliser un chemin différent.

Le jeton est séparé des sessions de navigateur et d'extension. Les jetons CLI de favoris actuels incluent bookmarks:read et bookmarks:write.

Utiliser les limites comme guide de cadence

WebCull limite les requêtes CLI pour protéger les comptes et garder le service réactif. Les commandes de lecture et d'écriture ont des limites différentes.

Jeton de lecture
60 requêtes par minute, 600 par heure et 3000 par jour.
Utilisateur ou IP de lecture
Les limites utilisateur et IP fournissent une protection supplémentaire de compte et de réseau.
Jeton d'écriture
10 requêtes par minute, 100 par heure et 500 par jour.
Utilisateur ou IP d'écriture
Les demandes d'écriture ont une cadence de compte et de réseau plus stricte que les demandes de lecture.
Consultation des limites
7 requêtes par minute. Utilisez webcull limits avec parcimonie.

En cas de réponse limitée, attendez au moins 60 secondes avant de réessayer. Resserrez la demande suivante si possible. Les écritures en simulation utilisent la limite d'écriture car elles exercent le chemin d'écriture et les vérifications de propriété.