CLI
CLI-pakket:clawhub, bin: clawhub.
Installeer het globaal met npm of pnpm:
Globale flags
--workdir <dir>: werkdirectory (standaard: cwd; valt terug op de Clawdbot-werkruimte als die is geconfigureerd)--dir <dir>: installatiedirectory onder workdir (standaard:skills)--site <url>: basis-URL voor browserlogin (standaard:https://clawhub.ai)--registry <url>: API-basis-URL (standaard: gedetecteerd, andershttps://clawhub.ai)--no-input: prompts uitschakelen
CLAWHUB_SITE(legacyCLAWDHUB_SITE)CLAWHUB_REGISTRY(legacyCLAWDHUB_REGISTRY)CLAWHUB_WORKDIR(legacyCLAWDHUB_WORKDIR)
HTTP-proxy
De CLI respecteert standaard HTTP-proxy-omgevingsvariabelen voor systemen achter bedrijfsproxy’s of beperkte netwerken:HTTPS_PROXY/https_proxyHTTP_PROXY/http_proxyNO_PROXY/no_proxy
HTTPS_PROXY wordt gebruikt voor HTTPS-verzoeken, HTTP_PROXY
voor gewone HTTP. NO_PROXY / no_proxy wordt gerespecteerd om de proxy te omzeilen voor
specifieke hosts of domeinen.
Dit is vereist op systemen waar directe uitgaande verbindingen zijn geblokkeerd
(bijv. Docker-containers, Hetzner VPS met alleen proxy-internet, bedrijfsfirewalls).
Voorbeeld:
Configuratiebestand
Slaat je API-token + gecachete registry-URL op.- macOS:
~/Library/Application Support/clawhub/config.json - Linux/XDG:
$XDG_CONFIG_HOME/clawhub/config.jsonof~/.config/clawhub/config.json - Windows:
%APPDATA%\\clawhub\\config.json - Legacy fallback: als
clawhub/config.jsonnog niet bestaat maarclawdhub/config.jsonwel, hergebruikt de CLI het legacy pad - override:
CLAWHUB_CONFIG_PATH(legacyCLAWDHUB_CONFIG_PATH)
Commando’s
login / auth login
- Standaard: opent de browser naar
<site>/cli/authen voltooit via een loopback-callback. - Headless:
clawhub login --token clh_... - Remote/headless interactief:
clawhub login --deviceprint een code en wacht terwijl je deze autoriseert op<site>/cli/device.
whoami
- Verifieert het opgeslagen token via
/api/v1/whoami.
token
- Print het opgeslagen API-token naar stdout.
- Handig om een lokaal logintoken door te sturen naar CI-secretconfiguratiecommando’s.
star <skill> / unstar <skill>
- Voegt een skill toe aan of verwijdert deze uit je highlights.
- Roept
POST /api/v1/stars/<slug>enDELETE /api/v1/stars/<slug>aan. --yesslaat bevestiging over.
search <query...>
- Roept
/api/v1/search?q=...aan. - Uitvoer bevat de skill-slug, owner-handle, weergavenaam en relevantiescore.
- Zoeken geeft de voorkeur aan exacte slug-/naamtokenmatches boven downloadpopulariteit. Een zelfstandig slug-token zoals
mapmatcht sterker metpersonal-mapdan met de substring binnenamap. - Populariteit is een kleine rankingprior, geen garantie op toppositie.
- Als een skill zou moeten verschijnen maar dat niet doet, voer dan
clawhub inspect @owner/sluguit terwijl je bent ingelogd om owner-zichtbare moderatiediagnostiek te controleren voordat je metadata hernoemt.
explore
- Toont nieuwste skills via
/api/v1/skills?limit=...&sort=createdAt(gesorteerd opcreatedAtaflopend). - Flags:
--limit <n>(1-200, standaard: 25)--sort newest|updated|rating|downloads|trending(standaard: newest). Legacy install-sortaliases blijven werken voor compatibiliteit.--json(machineleesbare uitvoer)
- Uitvoer:
<slug> v<version> <age> <summary>(samenvatting afgekapt tot 50 tekens).
inspect @owner/slug
- Haalt skillmetadata en versiebestanden op zonder te installeren.
--version <version>: inspecteer een specifieke versie (standaard: laatste).--tag <tag>: inspecteer een getagde versie (bijv.latest).--versions: toon versiegeschiedenis (eerste pagina).--limit <n>: maximaal aantal te tonen versies (1-200).--files: toon bestanden voor de geselecteerde versie.--file <path>: haal ruwe bestandsinhoud op (alleen tekstbestanden; limiet 200 KB).--json: machineleesbare uitvoer.
install @owner/slug
- Bepaalt de laatste versie voor de genoemde owner en skill.
- Downloadt zip via
/api/v1/download. - Pakt uit naar
<workdir>/<dir>/<slug>. - Weigert vastgezette skills te overschrijven; voer eerst
clawhub unpin <skill>uit. - Schrijft:
<workdir>/.clawhub/lock.json(legacy.clawdhub)<skill>/.clawhub/origin.json(legacy.clawdhub)
uninstall <skill>
- Verwijdert
<workdir>/<dir>/<slug>en verwijdert de lockfile-entry. - Verstuurt best-effort telemetrie terwijl je bent ingelogd, zodat huidige installatietellingen kunnen worden gedeactiveerd.
- Interactief: vraagt om bevestiging.
- Niet-interactief (
--no-input): vereist--yes.
list
- Leest
<workdir>/.clawhub/lock.json(legacy.clawdhub). - Toont
pinnednaast skills die zijn bevroren metclawhub pin, inclusief de optionele reden.
pin <skill>
- Markeert een geïnstalleerde skill als vastgezet in de lockfile.
--reason <text>registreert waarom de skill is bevroren.- Vastgezette skills worden overgeslagen door
update --allen geweigerd door directeupdate <skill>. - Vastgezette skills weigeren ook
install --force, zodat de lokale bytes niet per ongeluk kunnen worden vervangen.
unpin <skill>
- Verwijdert de lockfile-pin van een geïnstalleerde skill zodat toekomstige updates deze kunnen wijzigen.
update [@owner/slug] / update --all
- Berekent de fingerprint uit lokale bestanden.
- Als de fingerprint overeenkomt met een bekende versie: geen prompt.
- Als de fingerprint niet overeenkomt:
- weigert standaard
- overschrijft met
--force(of prompt, indien interactief)
- Vastgezette skills worden nooit bijgewerkt door
--force. update <skill>faalt snel voor vastgezette skills en zegt dat je eerstclawhub unpin <skill>moet uitvoeren.update --allslaat vastgezette slugs over en print een samenvatting van wat bevroren bleef.
skill publish <path>
- Vergelijkt de lokale bundelfingerprint met ClawHub en sluit succesvol af wanneer de inhoud al is gepubliceerd.
- Nieuwe skills gebruiken standaard
1.0.0; gewijzigde skills gebruiken standaard de volgende patchversie. --version <version>selecteert expliciet een versie en publiceert zelfs wanneer de inhoud overeenkomt met een bestaande versie.--dry-runlost de publicatie op zonder te uploaden;--jsonprint een machineleesbaar resultaat.--owner <handle>publiceert onder een org-/user-publisherhandle wanneer de actor publishertoegang heeft.--migrate-ownerverplaatst een bestaande skill naar--ownerterwijl een nieuwe versie wordt gepubliceerd. Vereist admin-/ownertoegang bij beide publishers.- Owner- en reviewgedrag wordt uitgelegd in
docs/publishing.md. - Een skill publiceren betekent dat deze onder
MIT-0wordt uitgebracht op ClawHub. - Gepubliceerde skills zijn vrij te gebruiken, te wijzigen en opnieuw te distribueren zonder naamsvermelding.
- ClawHub ondersteunt geen betaalde skills of prijzen per skill.
- Legacy alias:
publish <path>.
GitHub Actions
ClawHub’s herbruikbareskill-publish.yml
workflow roept skill publish aan voor één skill_path, of voor elke directe skillmap
onder root (standaard: skills). Het slaat ongewijzigde skills over en gebruikt hetzelfde
automatische patchversiegedrag.
Stel dry_run: true in om zonder token een preview te bekijken. Echte publicaties vereisen de
clawhub_token secret.
sync
- Scant de huidige workdir, de geconfigureerde skills-directory en eventuele
--root <dir>-mappen op lokale skillmappen dieSKILL.mdofskill.mdbevatten. - Vergelijkt elke lokale skillfingerprint met ClawHub en publiceert alleen nieuwe of gewijzigde skills.
- Nieuwe skills worden gepubliceerd als
1.0.0; gewijzigde skills publiceren standaard de volgende patchversie. Gebruik--bump minor|majorvoor updatebatches die met een grotere semver-stap moeten opschuiven. --dry-runtoont het publicatieplan zonder te uploaden;--jsonprint een machineleesbaar plan.--allpubliceert elke nieuwe of gewijzigde skill zonder prompt. Zonder--alllaten interactieve terminals je de te publiceren skills selecteren.--owner <handle>publiceert onder een org-/user-publisherhandle wanneer de actor publishertoegang heeft.syncis alleen eenrichtingspublicatie. Het installeert, werkt bij, downloadt of rapporteert geen installatie-/downloadtelemetrie.
scan --slug <slug>
- Vereist
clawhub login. - Voert ClawHub ClawScan uit via
POST /api/v1/skills/-/scanen pollt daarna totdat de scan terminaal is. - Scans zijn asynchroon en kunnen tijd kosten om te voltooien. Terwijl ze in de wachtrij staan, toont de terminalspinner de huidige geprioriteerde scanpositie en hoeveel scans ervoor staan.
- Gepubliceerde scans vereisen ownership of publisherbeheertoegang. Moderators/admins kunnen dezelfde backend gebruiken via
clawhub-admin. --updateis alleen geldig met--slug; het schrijft succesvolle gepubliceerde scanresultaten terug naar de geselecteerde versie.--output <file.zip>downloadt het volledige rapportarchief metmanifest.json,clawscan.json,skillspector.json,static-analysis.json,virustotal.jsonenREADME.md.--jsonprint de volledige pollrespons voor automatisering.- Lokale padscans worden niet meer ondersteund. Upload een nieuwe versie en gebruik daarna
scan downloadom de opgeslagen scanresultaten voor die ingediende versie op te halen.
scan download <name>
- Vereist
clawhub login. - Downloadt de opgeslagen scanrapport-ZIP voor een ingediende skill- of pluginversie, inclusief versies die door ClawHub-beveiligingscontroles zijn geblokkeerd of verborgen.
- Skilldownloads gebruiken de skill-slug en gebruiken standaard
--kind skill. - Plugindownloads gebruiken de pakketnaam en vereisen
--kind plugin. --versionis vereist zodat auteurs de exacte ingediende versie inspecteren die ClawHub heeft geblokkeerd.--output <file.zip>kiest het doelpad.
GitHub Actions
ClawHub levert een officiële herbruikbare workflow op/.github/workflows/skill-publish.yml
voor skillrepo’s en catalogusrepo’s.
Typische catalogusconfiguratie:
rootgebruikt standaardskillsvoor catalogusrepo’s.- Geef
skill_path: skills/review-helperdoor om één skillmap te verwerken. ownerkomt overeen met de CLI-flag--owner; laat deze weg om als de geauthenticeerde gebruiker te publiceren.- V1-skillpublicatie gebruikt
clawhub_token; GitHub OIDC trusted publishing is voorlopig alleen voor pakketten.
delete <skill>
- Zonder
--version: markeer een skill als zacht verwijderd (eigenaar, moderator of admin). - Roept
DELETE /api/v1/skills/{slug}aan. - Door de eigenaar gestarte zachte verwijderingen reserveren de slug 30 dagen; de opdracht drukt de vervaltijd af.
--version <version>verwijdert permanent één eigen niet-nieuwste versie via een bij fouten gesloten, versiespecifieke route. Verwijderde versies kunnen niet worden hersteld of opnieuw gepubliceerd. Publiceer een vervanging voordat je de huidige nieuwste versie verwijdert. Platformmedewerkers omzeilen eigendom niet voor deze versie-only flow.--reason <text>registreert een moderatienotitie bij een zachte verwijdering van de hele skill en in het auditlog.--note <text>is een alias voor--reason.--yesslaat bevestiging over.
undelete <skill>
- Herstel een verborgen skill (eigenaar, moderator of admin).
- Er is geen versieherstel; permanent verwijderde versies kunnen niet worden hersteld.
- Roept
POST /api/v1/skills/{slug}/undeleteaan. --reason <text>registreert een moderatienotitie bij de skill en in het auditlog.--note <text>is een alias voor--reason.--yesslaat bevestiging over.
hide <skill>
- Verberg een skill (eigenaar, moderator of admin).
- Alias voor
delete.
unhide <skill>
- Maak een skill weer zichtbaar (eigenaar, moderator of admin).
- Alias voor
undelete.
skill rename <skill> <new-name>
- Hernoem een eigen skill en behoud de vorige slug als omleidingsalias.
- Roept
POST /api/v1/skills/{slug}/renameaan. --yesslaat bevestiging over.
skill merge <source> <target>
- Voeg één eigen skill samen met een andere eigen skill.
- De bronslug wordt niet meer publiek vermeld en wordt een omleidingsalias naar het doel.
- Roept
POST /api/v1/skills/{sourceSlug}/mergeaan. --yesslaat bevestiging over.
transfer
- Workflow voor eigendomsoverdracht.
- Overdrachten naar gebruikershandles maken een openstaand verzoek aan dat de ontvanger accepteert.
- Overdrachten naar org-/publisherhandles worden alleen direct toegepast wanneer de actor admin-toegang heeft tot zowel de huidige eigenaar als de doelpublisher.
- Subopdrachten:
transfer request <skill> <handle> [--message "..."] [--yes]transfer list [--outgoing]transfer accept <skill> [--yes]transfer reject <skill> [--yes]transfer cancel <skill> [--yes]
- Endpoints:
POST /api/v1/skills/{slug}/transferPOST /api/v1/skills/{slug}/transfer/acceptPOST /api/v1/skills/{slug}/transfer/rejectPOST /api/v1/skills/{slug}/transfer/cancelGET /api/v1/transfers/incomingGET /api/v1/transfers/outgoing
package explore [query...]
- Bladert door of zoekt in de uniforme pakketcatalogus via
GET /api/v1/packagesenGET /api/v1/packages/search. - Gebruik dit voor plugins en andere vermeldingen uit pakketfamilies;
searchop topniveau blijft het zoekoppervlak voor skills. - Vlaggen:
--family skill|code-plugin|bundle-plugin--official--executes-code--target <target>,--os <os>,--arch <arch>,--libc <libc>--requires-browser,--requires-desktop,--requires-native-deps--requires-external-service,--external-service <name>--binary <name>,--os-permission <name>--artifact-kind legacy-zip|npm-pack--npm-mirror--limit <n>(1-100, standaard: 25)--json
package inspect <name>
- Haalt pakketmetadata op zonder te installeren.
- Gebruik dit voor pluginmetadata, compatibiliteit, verificatie, bron en versie-/bestandsinspectie.
--version <version>: inspecteer een specifieke versie (standaard: nieuwste).--tag <tag>: inspecteer een getagde versie (bijv.latest).--versions: vermeld versiegeschiedenis (eerste pagina).--limit <n>: maximaal aantal te vermelden versies (1-100).--files: vermeld bestanden voor de geselecteerde versie.--file <path>: haal ruwe bestandsinhoud op (alleen tekstbestanden; limiet van 200 KB).--json: machineleesbare uitvoer.
package download <name>
- Lost een pakketversie op via
GET /api/v1/packages/{name}/versions/{version}/artifact. - Downloadt het artefact vanaf de
downloadUrlvan de resolver. - Verifieert ClawHub SHA-256 voor alle artefacten.
- Voor ClawPack npm-pack-artefacten verifieert dit ook npm
sha512-integriteit, npm shasum en de naam/versie inpackage.jsonvan de tarball. - Legacy ZIP-versies worden gedownload via de legacy ZIP-route.
- Vlaggen:
--version <version>: download een specifieke versie.--tag <tag>: download een getagde versie (standaard:latest).-o, --output <path>: uitvoerbestand of -map.--force: overschrijf een bestaand uitvoerbestand.--json: machineleesbare uitvoer.
package verify <file>
- Berekent ClawHub SHA-256, npm
sha512-integriteit en npm shasum voor een lokaal artefact. - Met
--packagewordt verwachte metadata uit ClawHub opgelost en wordt het lokale bestand vergeleken met de gepubliceerde artefactmetadata. - Met directe digestvlaggen wordt geverifieerd zonder netwerkopzoeking.
- Vlaggen:
--package <name>: pakketnaam om verwachte artefactmetadata op te lossen.--version <version>of--tag <tag>: verwachte pakketversie.--sha256 <hex>: verwachte ClawHub SHA-256.--npm-integrity <sri>: verwachte npm-integriteit.--npm-shasum <sha1>: verwachte npm shasum.--json: machineleesbare uitvoer.
package validate <source>
- Voert de gebundelde Plugin Inspector van de ClawHub CLI uit op een lokale pluginpakketmap.
- Standaard wordt offline/statische validatie uitgevoerd, zonder een lokale OpenClaw-checkout te lokaliseren of importeren.
- Harde compatibiliteitsfouten eindigen met een niet-nulstatus. Bevindingen met alleen waarschuwingen worden afgedrukt maar eindigen met nul.
- Vlaggen:
--out <dir>: schrijf Plugin Inspector-rapporten naar deze map.--openclaw <path>: inspecteer tegen een expliciete lokale OpenClaw-checkout.--runtime: schakel runtime-vastlegging in; importeert plugincode.--allow-execute: sta runtime-vastlegging toe in een geïsoleerde werkruimte.--no-mock-sdk: schakel de gemockte OpenClaw SDK uit tijdens runtime-vastlegging.--json: machineleesbare uitvoer.
package delete <name>
- Zonder
--version: markeert een pakket en alle releases als zacht verwijderd. --version <version>verwijdert permanent één eigen niet-nieuwste release via een bij fouten gesloten, versiespecifieke route. Verwijderde versies kunnen niet worden hersteld of opnieuw gepubliceerd. Publiceer een vervanging voordat je de huidige nieuwste versie verwijdert. Deze versie-only flow vereist de pakketeigenaar of een admin van een org-publisher; platformmedewerkers omzeilen pakketeigendom niet.- Zachte verwijdering van het hele pakket vereist de pakketeigenaar, een eigenaar/admin van een org-publisher, platformmoderator of platformadmin.
- Vlaggen:
--version <version>: verwijder permanent één niet-nieuwste versie.--yes: sla bevestiging over.--json: machineleesbare uitvoer.
package undelete <name>
- Herstelt een zacht verwijderd pakket en releases.
- Er is geen versieherstel; permanent verwijderde versies kunnen niet worden hersteld.
- Vereist de pakketeigenaar, een eigenaar/admin van een org-publisher, platformmoderator of platformadmin.
- Roept
POST /api/v1/packages/{name}/undeleteaan. - Vlaggen:
--yes: sla bevestiging over.--json: machineleesbare uitvoer.
package transfer <name>
- Draagt een pakket over aan een andere publisher.
- Vereist admin-toegang tot zowel de huidige pakketeigenaar als de doelpublisher, tenzij uitgevoerd door een platformadmin.
- Scoped pakketnamen moeten worden overgedragen aan de overeenkomende scope-eigenaar.
- Roept
POST /api/v1/packages/{name}/transferaan. - Vlaggen:
--to <owner>: handle van de doelpublisher.--reason <text>: optionele auditreden.--json: machineleesbare uitvoer.
package report
- Geauthenticeerde opdracht om een pakket aan moderators te melden.
- Roept
POST /api/v1/packages/{name}/reportaan. - Meldingen zijn op pakketniveau, optioneel gekoppeld aan een versie, en worden zichtbaar voor moderators voor beoordeling.
- Meldingen verbergen pakketten niet automatisch en blokkeren downloads niet op zichzelf.
- Vlaggen:
--version <version>: optionele pakketversie om aan de melding te koppelen.--reason <text>: vereiste meldingsreden.--json: machineleesbare uitvoer.
package moderation-status
- Eigenaaropdracht om de moderatiezichtbaarheid van een pakket te controleren.
- Roept
GET /api/v1/packages/{name}/moderationaan. - Toont de huidige scansstatus van het pakket, het aantal open meldingen, de handmatige moderatiestatus van de nieuwste release, de downloadblokkeringsstatus en moderatieredenen.
- Vlaggen:
--json: machineleesbare uitvoer.
package readiness <name>
- Controleert of een pakket klaar is voor toekomstig gebruik door OpenClaw.
- Roept
GET /api/v1/packages/{name}/readinessaan. - Rapporteert blokkers voor officiële status, ClawPack-beschikbaarheid, artefactdigest, bronherkomst, OpenClaw-compatibiliteit, hostdoelen, omgevingsmetadata en scansstatus.
- Vlaggen:
--json: machineleesbare uitvoer.
package migration-status <name>
- Toont operatorgerichte migratiestatus voor een pakket dat een gebundelde OpenClaw-plugin kan vervangen.
- Roept hetzelfde berekende readiness-endpoint aan als
package readiness, maar drukt migratiegerichte status, nieuwste versie, officiële-pakketstatus, controles en blokkers af. - Vlaggen:
--json: machineleesbare uitvoer.
publisher create <handle>
- Maakt een org-publisher aan die eigendom is van de geauthenticeerde gebruiker.
- De handle wordt genormaliseerd naar kleine letters en kan met of zonder
@worden doorgegeven. - Nieuw aangemaakte org-publishers zijn standaard niet vertrouwd/officieel.
- Mislukt als de handle al wordt gebruikt door een bestaande publisher, gebruiker of gereserveerde route.
package publish <source>
- Publiceert een codeplugin of bundelplugin via
POST /api/v1/packages. <source>accepteert:- Lokaal mappad:
./my-plugin - Lokale ClawPack npm-pack-tarball:
./my-plugin-1.2.3.tgz - GitHub-repo:
owner/repoofowner/repo@ref - GitHub-URL:
https://github.com/owner/repo
- Lokaal mappad:
- Metadata wordt automatisch gedetecteerd uit
package.json,openclaw.plugin.jsonen echte OpenClaw-bundelmarkeringen zoals.codex-plugin/plugin.json,.claude-plugin/plugin.jsonen.cursor-plugin/plugin.json. .tgz-bronnen worden behandeld als ClawPack. De CLI uploadt de exacte npm-pack- bytes en gebruikt de uitgepaktepackage/-inhoud alleen voor validatie en het vooraf invullen van metadata.- Codepluginmappen worden vóór upload verpakt in een ClawPack npm-tarball zodat OpenClaw-installaties het exacte artifact kunnen verifiëren. Bundelpluginmappen blijven het publicatiepad met uitgepakte bestanden gebruiken.
- Voor GitHub-bronnen wordt bronattributie automatisch ingevuld vanuit de repo, opgeloste commit, ref en subpad.
- Voor lokale mappen wordt bronattributie automatisch gedetecteerd uit lokale git wanneer de origin-remote naar GitHub wijst.
- Externe codeplugins moeten
openclaw.compat.pluginApienopenclaw.build.openclawVersionexpliciet declareren.package.json.versionop topniveau wordt niet gebruikt als fallback voor publicatievalidatie. --dry-runtoont een voorbeeld van de opgeloste publicatiepayload zonder te uploaden.--jsongeeft machineleesbare uitvoer voor CI.--owner <handle>publiceert onder een gebruikers- of organisatiepublisher-handle wanneer de actor publishertoegang heeft.- Scoped pakketnamen moeten overeenkomen met de geselecteerde eigenaar. Zie
docs/publishing.md. - Bestaande flags (
--family,--name,--version,--source-repo,--source-commit,--source-ref,--source-path) blijven werken als overschrijvingen. - Privé-GitHub-repo’s vereisen
GITHUB_TOKEN.
Aanbevolen lokale flow
Gebruik eerst--dry-run zodat je de opgeloste pakketmetadata en
bronattributie kunt bevestigen voordat je een live release maakt:
Lokale mapflow
Voor codeplugins bouwt en uploadt publiceren vanuit een map een ClawPack-artifact uit de pakketmap:Minimale package.json voor --family code-plugin
Externe codeplugins hebben een kleine hoeveelheid OpenClaw-metadata nodig in
package.json. Dit minimale manifest is genoeg voor een succesvolle publicatie:
openclaw.compat.pluginApiopenclaw.build.openclawVersion
package.json.versionis de releaseversie van je pakket, maar wordt niet gebruikt als fallback voor OpenClaw-compatibiliteits-/buildvalidatie.openclaw.hostTargetsenopenclaw.environmentzijn optionele metadata. ClawHub kan ze tonen wanneer ze aanwezig zijn, maar ze zijn niet vereist voor publicatie.openclaw.compat.minGatewayVersionenopenclaw.build.pluginSdkVersionzijn optionele extra’s als je meer gedetailleerde compatibiliteitsmetadata wilt publiceren.- Als je een oudere
clawhubCLI-release gebruikt, upgrade dan vóór publicatie zodat de lokale preflightcontroles vóór upload worden uitgevoerd. - Als validatie een herstelcode rapporteert, zie Pluginvalidatiefixes.
GitHub Actions
ClawHub levert ook een officiële herbruikbare workflow op/.github/workflows/package-publish.yml
voor pluginrepo’s.
Typische caller-configuratie:
- De herbruikbare workflow stelt
sourcestandaard in op de caller-repo. - Geef voor monorepo’s
source_pathmee zodat de workflow de plugin- pakketmap publiceert, bijvoorbeeldsource_path: extensions/codex. - Pin de herbruikbare workflow op een stabiele tag of volledige commit-SHA. Voer releasepublicatie niet uit vanaf
@main. pull_requestmoetdry_run: truegebruiken zodat CI niet-vervuilend blijft.- Echte publicaties moeten beperkt blijven tot vertrouwde events zoals
workflow_dispatchof tag-pushes. - Vertrouwd publiceren zonder secret werkt alleen op
workflow_dispatch; tag-pushes hebben nog steedsclawhub_tokennodig. - Houd
clawhub_tokenbeschikbaar voor eerste publicatie, niet-vertrouwde pakketten of break-glass-publicaties. - De workflow uploadt het JSON-resultaat als artifact en stelt het beschikbaar als workflow-uitvoer.
package trusted-publisher get <name>
- Toont de GitHub Actions-configuratie voor trusted publisher voor een pakket.
- Gebruik dit na het instellen van de configuratie om de repository, workflowbestandsnaam en optionele omgevingpin te bevestigen.
- Flags:
--json: machineleesbare uitvoer.
package trusted-publisher set <name>
- Koppelt of vervangt GitHub Actions-configuratie voor trusted publisher voor een bestaand pakket.
- Het pakket moet eerst worden aangemaakt via normale handmatige of token-geauthenticeerde
clawhub package publish. - Nadat de configuratie is ingesteld, kunnen toekomstige ondersteunde GitHub Actions-publicaties OIDC/trusted publishing gebruiken zonder langlevende ClawHub-token.
--repository <repo>moetowner/repozijn.--workflow-filename <file>moet overeenkomen met de workflowbestandsnaam in.github/workflows/.--environment <name>is optioneel. Wanneer geconfigureerd moet de GitHub Actions- omgeving in de OIDC-claim exact overeenkomen.- ClawHub verifieert de geconfigureerde GitHub-repository wanneer deze opdracht wordt uitgevoerd. Publieke repositories kunnen worden geverifieerd via publieke GitHub-metadata. Privé- repositories vereisen dat ClawHub GitHub-toegang tot die repository heeft, bijvoorbeeld via een toekomstige ClawHub GitHub App-installatie of een andere geautoriseerde GitHub-integratie.
- Flags:
--repository <repo>: GitHub-repository, bijvoorbeeldopenclaw/example-plugin.--workflow-filename <file>: workflowbestandsnaam, bijvoorbeeldpackage-publish.yml.--environment <name>: optionele exact-overeenkomende GitHub Actions-omgeving.--json: machineleesbare uitvoer.
package trusted-publisher delete <name>
- Verwijdert trusted publisher-configuratie uit een pakket.
- Gebruik dit als rollback als de workflow, repository of omgevingpin moet worden uitgeschakeld of opnieuw aangemaakt.
- Toekomstige echte publicaties moeten normale geauthenticeerde publicatie gebruiken totdat de configuratie opnieuw is ingesteld.
- Flags:
--json: machineleesbare uitvoer.
Installatietelemetrie
- Verzonden na
clawhub install <slug>wanneer je bent ingelogd, tenzijCLAWHUB_DISABLE_TELEMETRY=1is ingesteld. - Rapportage is best-effort. Installatieopdrachten mislukken niet als telemetrie niet beschikbaar is.
- Details:
docs/telemetry.md.