mirror of
https://github.com/hanzoai/market.git
synced 2026-10-30 14:39:25 +00:00
- Repo transferred hanzobot/hub → hanzoai/market (matches owned hanzo.market domain) - npm package: bothub → @hanzoai/market, packages/bothub → packages/market - bothub-schema → @hanzoai/market-schema - CLI binary: bothub → market - Brand: Bot Hub → Hanzo Market across ~95 user-facing surfaces (README, docs, k8s, Dockerfile, public/manifest.json, OG image, CLI banner, site config, theme) - Brand-neutral white-label: src/brand/ owns BrandConfig + BrandTheme + loader, public/brands/<id>.json presets for hanzo, zoo, lux, pars, liquidity, generic - BRAND_ID env at build picks default; ConfigMap-mounted brand.json overrides at runtime - Legacy paths retained for compat: ~/.bothub, .bothubignore, /.well-known/bothub.json, bothub-theme localStorage key, LEGACY_HOSTS for hub.hanzo.bot/clawhub.ai - Fixed broken sed-replace artifacts in packages/market/src/cli/botConfig.test.ts - Drops Clawd/OpenClaw dead brand surface, keeps Clawdis* schema types and clawd skill directory paths (backward compat for installed bot products)
1.9 KiB
1.9 KiB
summary, read_when
| summary | read_when | ||
|---|---|---|---|
| Local setup + CLI smoke: login, search, install, publish, sync. |
|
Quickstart
0) Prereqs
- Bun
- Hanzo IAM client (for login)
- OpenAI key (for embeddings/search)
1) Local dev (web + API)
bun install
cp .env.local.example .env.local
# terminal A: web app
bun run dev
# terminal B: API server
cd api && npm install && npm run dev
2) Auth setup (Hanzo IAM OIDC)
Fill in .env.local:
IAM_URL(defaulthttps://hanzo.id)IAM_CLIENT_IDIAM_CLIENT_SECRETVITE_API_URL=/apiVITE_SITE_URL=http://localhost:3000SITE_URL=http://localhost:3000OPENAI_API_KEYDATABASE_URL
3) CLI: login + basic commands
From this repo:
bun market --help
bun market login
bun market whoami
bun market search gif --limit 5
Install a skill into ./skills/<slug> (if Hanzo Bot is configured, installs into that workspace instead):
bun market install <slug>
bun market list
bun market uninstall <slug> --yes
You can also install into any folder:
bun market install <slug> --workdir /tmp/market-demo --dir skills
Update:
bun market update --all
4) Publish a skill
Create a folder containing SKILL.md (required) plus any supporting text files:
mkdir -p /tmp/market-skill-demo && cd /tmp/market-skill-demo
cat > SKILL.md <<'EOF'
---
name: Demo Skill
description: Demo skill for local testing
---
# Demo Skill
Hello.
EOF
Publish:
bun market publish . \
--slug market-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 aren’t “synced” yet.
bun market sync
Dry run + non-interactive:
bun market sync --all --dry-run --no-input