Compare commits

...
Author SHA1 Message Date
Patrick Erichsen 1a94744484 Update $name.tsx 2026-04-28 17:37:02 -07:00
Patrick Erichsen 9a5cfeee85 Update SkillHeader.tsx 2026-04-28 17:29:14 -07:00
Patrick Erichsen e69b7d4501 fix: add skill upload button to header 2026-04-28 17:25:30 -07:00
Patrick Erichsen ecf09b868a Merge pull request #1872 from openclaw/pe/clawhub-cli-0.12.1
chore(release): prepare clawhub cli 0.12.1
2026-04-28 16:53:37 -07:00
Patrick Erichsen 4d16472f5b chore(release): prepare clawhub cli 0.12.0 2026-04-28 16:52:53 -07:00
3 changed files with 12 additions and 4 deletions
+1 -1
View File
@@ -94,7 +94,7 @@
},
"packages/clawhub": {
"name": "clawhub",
"version": "0.11.0",
"version": "0.12.0",
"bin": {
"clawdhub": "bin/clawdhub.js",
"clawhub": "bin/clawdhub.js",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "clawhub",
"version": "0.11.0",
"version": "0.12.0",
"description": "ClawHub CLI \\u2014 install, update, search, and publish skills plus OpenClaw packages.",
"homepage": "https://clawhub.ai",
"bugs": {
+10 -2
View File
@@ -1,7 +1,7 @@
import { Link } from "@tanstack/react-router";
import type { ClawdisSkillMetadata } from "clawhub-schema";
import { PLATFORM_SKILL_LICENSE } from "clawhub-schema/licenseConstants";
import { Calendar, Download, History, Package, Scale, Settings, Star } from "lucide-react";
import { Calendar, Download, History, Package, Scale, Settings, Star, Upload } from "lucide-react";
import type { ReactNode } from "react";
import type { Doc, Id } from "../../convex/_generated/dataModel";
import { getSkillBadges } from "../lib/badges";
@@ -171,7 +171,7 @@ export function SkillHeader({
<span className="plugin-version-badge">v{latestVersion.version}</span>
) : null}
{nixPlugin ? <Badge variant="accent">Plugin bundle (nix)</Badge> : null}
{isStaff || settingsHref ? (
{canManage || isStaff || settingsHref ? (
<div className="skill-title-actions">
{isStaff ? (
<Button asChild variant="outline" size="sm">
@@ -180,6 +180,14 @@ export function SkillHeader({
</Link>
</Button>
) : null}
{canManage ? (
<Button asChild variant="outline" size="sm" className="skill-settings-link">
<Link to="/publish-skill" search={{ updateSlug: skill.slug }}>
<Upload size={14} aria-hidden="true" />
New Version
</Link>
</Button>
) : null}
{settingsHref ? (
<Button asChild variant="outline" size="sm" className="skill-settings-link">
<a href={settingsHref}>