Patrick Erichsen
0fb07e5b99
feat: align skills.sh catalog presentation ( #3370 )
...
* feat: align skills.sh catalog presentation
* refactor: share skill detail shell with skills.sh
* test: seed skills.sh route fixtures locally
* refactor: share full skill detail page view
* feat: refine skills.sh detail presentation
* feat: refine skills.sh detail metadata
* fix: refine skills.sh detail spacing
2026-08-01 16:46:48 -07:00
Patrick Erichsen
f8901222a4
feat: validate plugins against stable OpenClaw ( #3321 )
...
* test: preserve generic plugin inspector remediation
* feat: show exact plugin validation reproduction command
* feat: reproduce plugin findings against exact target
* test: preserve static and compatibility findings
* feat: validate plugins against stable OpenClaw
* test: seed reproducible plugin findings
* chore: pin merged plugin inspector
* fix: preserve mixed validation targets
* fix: show every validation target
* fix: label findings with validation target
2026-07-30 14:36:26 -07:00
Patrick Erichsen
725eb2d31e
feat: make catalog discovery trending-first ( #3270 )
...
Defaults the homepage and skills catalog to canonical Trending with New, Featured, and Official feeds, eligible public counts, stable pagination, and local-auth runtime coverage.
2026-07-26 15:32:05 -05:00
Patrick Erichsen
65ea02f4ca
feat: add canonical mixed skill search ( #3264 )
...
* feat: add canonical mixed skill search
* test: add permanent Test search proof
2026-07-25 02:06:41 -05:00
Patrick Erichsen
8d8e99a65f
feat: make owner version deletion reversible ( #3199 )
2026-07-20 21:18:35 -07:00
Patrick Erichsen
b23d10d989
feat: gate public publishes without breaking old CLIs
...
Closes CLAW-526.\n\nSummary:\n- create pending skill versions and plugin releases that remain hidden until TruffleHog and ClawScan pass\n- preserve older CLI response compatibility while newer CLI output explains pending security checks\n- run prepublication worker promotion/blocking for skills and plugins\n- add local-auth coverage for clean skill/plugin publish and secret-positive skill rejection\n\nValidation on PR head d2482434:\n- local: bunx tsc -p packages/schema/tsconfig.json --noEmit\n- local: bunx tsc -p packages/clawhub/tsconfig.json --noEmit\n- local: bunx vitest run convex/lib/skillPublish.test.ts convex/publishAttempts.test.ts convex/skills.versions.public.test.ts convex/packages.public.test.ts packages/schema/src/schemas.test.ts scripts/security/run-prepublication-worker.test.ts scripts/security/prepublication-worker-workflow.test.ts\n- local: bun run ci:static\n- local: bun run ci:types-build && bun run ci:packages\n- GitHub: pr-gates, static, unit, packages, types-build, e2e-http, old-cli-publish, playwright-smoke, secret scanning, CodeQL, and Vercel preview passed\n\nKnown CI note:\n- unrelated local-auth shards continued to rotate failures under the already-diagnosed local Convex starvation issue; ignored per maintainer instruction.
2026-07-16 11:38:40 -07:00
Patrick Erichsen
3134a20492
feat: make Featured the default ClawHub catalog ( #3096 )
...
* feat: make home catalog featured-first
* fix: order plugins before skills on home
* feat: refine featured catalog landing page
* fix: seed featured catalog previews
* fix: reduce official creator shelf
2026-07-15 21:55:18 -07:00
vyctorbrzezowski
06843677fe
test: seed dashboard truncation fixtures
2026-07-11 12:53:01 -03:00
Patrick Erichsen
c9265c8bbd
feat: add sanitized test environment seeding
2026-07-09 14:50:42 -07:00
Patrick Erichsen
dfca6f5d9d
feat: add disposable Vercel and Convex PR previews ( #3017 )
...
Adds isolated Convex-backed Vercel PR previews with shared local/preview seeding, preview-safe routing, and production guards.
2026-07-08 20:54:09 -07:00
Patrick Erichsen
32aa2348ad
feat: add public github skill feed candidates
...
Add public-github skill feed candidates for source-backed public skills, preserve hosted public-clawhub candidates, and centralize shared security scan policy for feed/install/download boundaries.
2026-06-23 17:16:33 -07:00
Patrick Erichsen
898b3bebba
test: stabilize local-auth e2e flake paths
...
Stabilize local-auth e2e tests under CI/Testbox pressure by hardening publish scan enqueue recovery, bounded publish navigation, route/hydration helpers, and local-auth readiness probes.
2026-06-23 16:26:54 -07:00
Patrick Erichsen
dfde400fcf
fix(seed): populate public corpus plugin metadata
2026-06-23 13:14:30 -07:00
Jesse Merhi
379c1871f4
Add skill and plugin download activity graphs
...
Restore downloads as the public activity metric and add deferred 30-day download graphs for skills and plugins.
2026-06-22 11:59:30 +10:00
Patrick Erichsen
f381b01829
feat: surface plugin manifest icons ( #2747 )
2026-06-18 20:15:35 -07:00
Patrick Erichsen
11ad31aa4e
feat: scope skill slugs by owner ( #2299 )
...
* feat: scope skill slugs by owner
* test: cover owner-scoped skill slug publishes
* feat: scope skill slugs by owner
* fix: restore owner-scoped skill ci
* fix: keep package names separate from skill slugs
2026-06-17 15:31:40 -07:00
Patrick Erichsen
1e7de4a2a2
fix: remove retired capability metadata surfaces
...
Remove retired capabilities/capabilityTags/executesCode surfaces for skills and plugins, add guarded cleanup tooling for legacy rows, and sanitize pre-cleanup legacy seed/release payloads.
2026-06-16 17:03:44 -07:00
Patrick Erichsen
f366269519
feat: add owner version deletion
...
Add owner-only one-way deletion for individual skill versions and plugin releases, with CLI --version support, latest/only-version guards, and browser proof.
2026-06-15 17:52:28 -07:00
Patrick Erichsen
76638de7ad
feat: run full ClawScan for GitHub skills
...
Adds full ClawScan execution for GitHub-backed skills and updates the static audit ignore list for newly reported DOMPurify advisories.
2026-06-15 17:36:41 -07:00
Jesse Merhi
b2447d750a
Show unfiltered browse totals
2026-06-12 19:04:57 +10:00
Jesse Merhi and Patrick Erichsen
2c9aa36dcb
feat: remove the souls feature end to end
...
Removes the SOULS content type and the SoulHub/onlycrabs.ai dual-site mode:
six Convex tables, the /api/v1/souls HTTP API, /souls routes, soul OG
images, GitHub soul backups, seeds, the VITE_FEATURE_SOULS flag, and the
site-mode machinery. Surviving skills-only code paths are de-branched and
simplified (tag resolution, publish form, nav/footer, ban flow, search).
Product decisions: /souls URLs and /api/v1/souls return plain 404s (no
redirect or 410 tombstone); reserved slugs souls/soulhub/onlycrabs stay.
Deploy prerequisite: clear the six soul tables and four storage blobs in
the prod Convex dashboard first (see PR description runbook).
Co-authored-by: Patrick Erichsen <patrick.a.erichsen@gmail.com >
2026-06-11 10:45:58 -07:00
Patrick Erichsen
be70ae5e9f
Publish public Plugin Inspector findings ( #2525 )
...
* feat: gate plugin publishes with inspector warnings
* fix: harden plugin publish inspector gate
* feat: publish public plugin inspector findings
* fix: refine plugin inspector publish errors
* feat: add package validation command
* fix: refine plugin validation findings UI
* fix: scan only latest plugin releases nightly
* feat: add dry run for nightly plugin inspection
* test: fix plugin validation tab e2e matcher
2026-06-08 19:41:48 -07:00
Patrick Erichsen
8e1bad4ac1
feat: improve account appeal notifications ( #2520 )
...
* feat: improve account appeal notifications
Adds Resend-backed account-action emails for bans/restores, public-safe ban reason summaries, scanner-triggered appeal scan guidance, and inline banned-account sign-in appeal messaging.
Autoreview findings addressed:
- [P2] Wire restored-account email into unban flow
- [P2] Add the scan upload test to the CI selection
* feat: quarantine malicious artifact uploads
* fix: warn on repeated malicious rejections
* fix: route banned sign-ins to appeal page
* feat: add stored scan report downloads
* chore: bump clawhub cli to 0.20.0
* test: cover malicious skill ban journey
* test: align deletion cleanup expectations after merge
* fix: hide deleted account packages before cleanup
* fix: finalize appeals moderation flow
2026-06-06 16:55:23 -07:00
Patrick Erichsen
8f7c21ac02
test: cover account recreation after deletion ( #2540 )
2026-06-06 16:47:19 -07:00
Patrick Erichsen
999131e2e7
fix: purge auth-locked deleted accounts
...
* fix: purge auth-locked deleted accounts
* test: wait for account deletion resources
* fix: mark packages inactive during deletion purge
* test: expect package soft delete before purge
* test: ignore post-delete auth timeout noise
2026-06-06 16:07:19 -07:00
Patrick Erichsen
9ce5e702b5
feat: hard delete account-owned resources ( #2533 )
...
* feat: hard delete account-owned resources
* fix: expose account recovery purge dry-run candidates
2026-06-06 14:17:50 -07:00
Patrick Erichsen
d2525b179a
fix: stop copying publisher ids to skill embeddings ( #2532 )
2026-06-05 17:28:55 -07:00
Patrick Erichsen
94ded18dec
feat: add org deletion cascade
...
Closes #2516 .
2026-06-05 14:52:31 -07:00
Patrick Erichsen
fe4acc8e10
feat: surface github sync issues ( #2509 )
2026-06-04 19:15:39 -07:00
Patrick Erichsen
9cf9e12bdd
GitHub-backed skill source sync ( #2498 )
...
* feat: add github-backed skill seed schema
* feat: render github-backed skill manifests
* feat: add github-backed skill install resolver
* feat: add github-backed skill source sync
* fix: handle github resolver blocks
* fix: harden github source sync
* fix: expose github install blocks
* feat: support GitHub-backed skill sync
* fix: handle blocked github skill content
* fix: harden github sync rollout
* fix: bound github sync payloads
* feat: allow forcing pending github skill installs
* fix: remove official publisher seed rollout
* chore: format clawhub e2e test
2026-06-04 18:20:43 -07:00
Patrick Erichsen
ff48b2cc70
feat!: remove ClawScan note feature ( #2432 )
...
BREAKING CHANGE: ClawScan publisher notes are no longer accepted by publish APIs, CLI commands, schema packages, or UI flows.
2026-05-28 16:00:45 -05:00
Patrick Erichsen
cc16d7fbd9
fix: route static scan findings through clawscan ( #2398 )
...
* fix: route static scan findings through clawscan
* fix: preserve clawscan-only security verdicts after merge
2026-05-25 18:33:33 -07:00
Patrick Erichsen
b62d8ca813
feat: generate nvidia-style skill cards ( #2382 )
...
* feat: generate nvidia-style skill cards
* fix: harden skill card verification
* fix: use version-specific skill card evidence
* fix: close skill card verification gaps
* fix: refresh stale skill cards
* fix: protect skill card provenance fingerprints
* fix: close skill card review gaps
* fix: harden skill card trust boundaries
* fix: isolate skill card renderer
* fix: harden skill card workflows
2026-05-25 16:53:25 -07:00
Patrick Erichsen
39107900ea
fix: hide empty VirusTotal stats ( #2350 )
...
* fix: hide empty VirusTotal stats
* fix: avoid partial VirusTotal denominators
2026-05-20 19:58:27 -07:00
Patrick Erichsen
fd4d22d2c2
Seed local dev with public corpus ( #2226 )
...
* feat: seed local dev with public corpus
* fix: preserve local seed owner helpers after merge
2026-05-14 23:20:04 -07:00
Jason
7e1e2f0a4f
Fix local dev seeding, redirects, and package pinning ( #2169 )
...
* feat: seed local owner content for dev
* fix: redirect merged skill pages to canonical slug
* chore: pin package dependency versions
* fix: remove dashboard seed button
* docs: document local fixture seeding
* fix: make current-user seed fixtures internal
2026-05-13 16:41:31 -07:00
Patrick Erichsen
404a1359df
fix: clamp skill detail summaries ( #2156 )
2026-05-11 15:03:56 -07:00
c51cfe2459
Add publisher notes and unify ClawScan review pages ( #2111 )
...
* feat: store clawscan notes on artifact versions
* feat: include clawscan notes in evaluation
* feat: unify ClawScan report layout for plugins and skills
* feat: render clawscan notes in publish and security UI
* chore: document local moderation seed fixtures
* fix: remove appeal surfaces
* fix: remove owner-requested rescans
* feat: add publisher note rescan flow
* fix: resolve main rebase fallout
* fix: address review feedback - breadcrumbs, tab guard, merge target, test matcher
Agent-Logs-Url: https://github.com/openclaw/clawhub/sessions/7bfbe5cf-0b8e-44f9-bf0a-e6235f7f3f1d
Co-authored-by: BunsDev <68980965+BunsDev@users.noreply.github.com >
* fix: address pr ci fallout
* fix: resolve ci after main rebase
* fix: make package VT AI verdicts advisory
* fix: restore skill sidebar actions
* fix: resolve clawscan ui and ci checks
* fix: align security settings access and pending audits
* fix: restore skill version tabs
* fix: show publisher names in sidebars
* fix: align plugin install command styling
* fix: clarify virustotal audit copy
* fix: polish security summaries
* test: align security UI expectations
* docs: document clawscan note workflow
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: BunsDev <68980965+BunsDev@users.noreply.github.com >
2026-05-11 14:14:12 -07:00
Vyctor Huggo Przozwski
05122ea799
fix(dev): keep local seed resets deterministic
...
Clean stale seed lookup/badge rows during repeated local Convex dev seed resets, and delete package fixtures in an order that avoids the package-release trigger fallback query limit.\n\nTests:\n- bun run test -- convex/devSeed.rescanFixtures.test.ts\n- bun run format:check\n- bun run lint\n- bunx tsc --noEmit\n- bunx tsc -p packages/schema/tsconfig.json --noEmit\n- bunx tsc -p packages/clawhub/tsconfig.json --noEmit\n- git diff --check origin/main...HEAD\n\nCo-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com >
2026-05-09 06:42:27 -04:00
Jason
b6875e60f6
fix(skills): repair merge ownership and slug reservations
...
Fix publisher-owned skill merge authorization, bound historical slug redirects, protect reserved namespaces, and add expiring owner-unpublish slug reservations.
Maintainer follow-up: require current owner-hide provenance before honoring an unpublished slug reservation, clear stale reservation fields on non-owner hide paths, and add regressions for stale moderation-owned reservations.
Verification:
- bunx vitest run convex/skills.rateLimit.test.ts convex/skills.slugAvailability.test.ts convex/skills.undeleteGate.test.ts --reporter verbose
- bun run format:check
- bun run lint
- bunx tsc --noEmit
- bunx tsc -p packages/schema/tsconfig.json --noEmit
- bunx tsc -p packages/clawhub/tsconfig.json --noEmit
- bunx convex codegen
- bun run test
- bun run --cwd packages/clawhub test:src -- src/cli/commands/delete.test.ts --reporter verbose
- git diff --check
- GitHub CI: static, packages, types-build, unit, e2e-http, playwright-smoke, CodeQL, secret scanning all passed on 2d0564d1
Co-authored-by: fuller-stack-dev <263060202+fuller-stack-dev@users.noreply.github.com >
2026-05-09 04:55:32 -04:00
Vincent Koc
f1481c4d4e
Reapply "feat(security): merge clawscan ASI analysis"
...
This reverts commit fa9ab8d620 .
2026-04-30 00:35:47 -07:00
Vincent Koc
fa9ab8d620
Revert "feat(security): merge clawscan ASI analysis"
...
This reverts commit 79eddc0223 , reversing
changes made to 33334c5afa .
2026-04-29 23:49:30 -07:00
Patrick Erichsen
3ab5762dca
feat: ui updates
2026-04-29 21:02:50 -07:00
Patrick Erichsen
e2d187b3d5
feat: clawscan seed + frontend
2026-04-29 21:02:50 -07:00
Patrick Erichsen
a7d1701f5a
feat: add featured plugin curation
2026-04-28 22:18:35 -07:00
Patrick Erichsen
ef2846b2e4
feat: add owner rescan security surfaces
2026-04-28 00:39:44 -07:00
Patrick Erichsen
d3ed4434b9
feat: seed local rescan fixtures
2026-04-27 13:53:14 -07:00
Val Alexander
d2b2252770
Merge branch 'main' into staging
2026-04-13 09:48:02 -05:00
pqdong and momothemage
5826001795
feat: Add support for Chinese Japanese and Korean(CJK) skills search ( #1596 )
...
Merged via squash.
Prepared head SHA: ab58f01be7
Co-authored-by: pq-dong <40668796+pq-dong@users.noreply.github.com >
Co-authored-by: momothemage <35096042+momothemage@users.noreply.github.com >
Reviewed-by: @momothemage
2026-04-10 12:20:40 +08:00
Val Alexander
298cbdd6db
fix: denormalize user hover stats
2026-04-08 15:16:15 -05:00