Skip to content

feat(cli,domain): support non-global namespace skill download#491

Closed
XiaoSeS wants to merge 1 commit into
mainfrom
feat/non-global-namespace-download
Closed

feat(cli,domain): support non-global namespace skill download#491
XiaoSeS wants to merge 1 commit into
mainfrom
feat/non-global-namespace-download

Conversation

@XiaoSeS

@XiaoSeS XiaoSeS commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

Changes

  • CLI: Parse namespace from skill name using -- separator (e.g., astroclaw--api-gateway)
  • Backend: Allow anonymous download for any PUBLIC skill regardless of namespace

Why

Users had to use --namespace flag for non-global skills, and anonymous download was artificially restricted to global namespace only despite skills being marked PUBLIC.

Usage

# Install from non-global namespace
skillhub install astroclaw--api-gateway

# Anonymous download a PUBLIC team-namespace skill
curl /api/skills/team-ai/demo-skill/versions/1.0.0/download

--namespace flag still takes precedence when explicitly specified.

Implementation

CLI changes

  • New cli/src/shared/skill-name-parser.ts utility
  • install and remove commands updated to parse skill name argument
  • 10 unit tests covering edge cases

Backend changes

  • SkillDownloadService.isAnonymousDownloadAllowed: drop namespace type check, require only PUBLIC visibility
  • Removed unused NamespaceType import
  • Test updated to expect success for team-namespace public skill

Testing

✅ skillhub-domain compiles cleanly
✅ skill-name-parser test suite: 10/10 passed

Origin

Synced from SAAS commit 26c67e3

Fixes #490

Parse namespace from skill name using -- separator (e.g.,
astroclaw--api-gateway) so users don't need --namespace flag.
Allow anonymous download for any PUBLIC skill regardless of namespace.

CLI changes:
- Add cli/src/shared/skill-name-parser.ts utility
- Update install and remove commands to parse skill name argument
- 10 unit tests covering edge cases

Domain changes:
- SkillDownloadService.isAnonymousDownloadAllowed: drop namespace
  type check, only require PUBLIC visibility
- Update test to expect success for team-namespace public skill

Synced from SAAS commit 26c67e31b1221249cf9b73321d1b726d8ba6e6df
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


PR Review Helper seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@XiaoSeS XiaoSeS closed this Jun 5, 2026
@XiaoSeS XiaoSeS deleted the feat/non-global-namespace-download branch June 5, 2026 06:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(cli,domain): support non-global namespace skill download

2 participants