Files
clawhub/docs/quickstart.md
T
652beef9c1 feat: add uninstall command for skills (#241)
* feat: add uninstall command for skills

Implements `clawhub uninstall <slug>` to properly remove installed skills.

Changes:
- Added cmdUninstall function in skills.ts
- Validates skill is installed before removal
- Removes skill directory and lockfile entry
- Supports --yes flag to skip confirmation prompt
- Added comprehensive test coverage

Closes #221

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: require --yes in non-interactive mode and update lockfile before rm

Address review feedback:
- Fail with "Pass --yes (no input)" when running non-interactively
  without --yes flag, matching delete/star/unstar/moderation commands
- Update lockfile before removing directory to avoid inconsistent state
  if rm succeeds but writeLockfile fails

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: harden skill uninstall flow (#241) (thanks @superlowburn)

* docs: document uninstall CLI command (#241) (thanks @superlowburn)

* test: fix cmdUninstall mock typing (#241) (thanks @superlowburn)

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-02-15 16:03:06 +01:00

2.1 KiB
Raw Blame History

summary, read_when
summary read_when
Local setup + CLI smoke: login, search, install, publish, sync.
First run / local dev setup
Verifying end-to-end flows

Quickstart

0) Prereqs

  • Bun
  • Convex CLI (bunx convex ...)
  • GitHub OAuth App (for login)
  • OpenAI key (for embeddings/search)

1) Local dev (web + Convex)

bun install
cp .env.local.example .env.local

# terminal A
bun run dev

# terminal B
bunx convex dev

2) Auth setup (GitHub OAuth + Convex Auth keys)

Fill in .env.local:

  • AUTH_GITHUB_ID
  • AUTH_GITHUB_SECRET
  • VITE_CONVEX_URL
  • VITE_CONVEX_SITE_URL
  • CONVEX_SITE_URL (same as VITE_CONVEX_SITE_URL)
  • OPENAI_API_KEY

Generate Convex Auth keys for your deployment:

bunx auth --deployment-name <deployment> --web-server-url http://localhost:3000

Then paste the printed JWT_PRIVATE_KEY + JWKS into .env.local (and ensure the deployment got them too).

3) CLI: login + basic commands

From this repo:

bun clawhub --help
bun clawhub login
bun clawhub whoami
bun clawhub search gif --limit 5

Install a skill into ./skills/<slug> (if Clawdbot is configured, installs into that workspace instead):

bun clawhub install <slug>
bun clawhub list
bun clawhub uninstall <slug> --yes

You can also install into any folder:

bun clawhub install <slug> --workdir /tmp/clawhub-demo --dir skills

Update:

bun clawhub update --all

4) Publish a skill

Create a folder containing SKILL.md (required) plus any supporting text files:

mkdir -p /tmp/clawhub-skill-demo && cd /tmp/clawhub-skill-demo
cat > SKILL.md <<'EOF'
---
name: Demo Skill
description: Demo skill for local testing
---

# Demo Skill

Hello.
EOF

Publish:

bun clawhub publish . \
  --slug clawhub-demo-$(date +%s) \
  --name "Demo $(date +%s)" \
  --version 1.0.0 \
  --tags latest \
  --changelog "Initial release"

5) Sync local skills (auto-publish new/changed)

sync scans for local skill folders and publishes the ones that arent “synced” yet.

bun clawhub sync

Dry run + non-interactive:

bun clawhub sync --all --dry-run --no-input