Commit graph

65 commits

Author SHA1 Message Date
dongmucat
d5abeb6ca9 feat(cli): add npm publish workflow and update package scope
- Add publish script with env validation, git checks, and build/test/pack preflights
- Add comprehensive test suite for publish workflow (302 lines)
- Update cli/package.json with @astron-team scope and full npm metadata
- Add README.md with user-focused documentation and registry info
- Add .env.example template for publish configuration
- Add Apache 2.0 LICENSE
- Add Makefile targets for build/test/lint/typecheck/publish workflows
- All publish targets include .env.local validation
- Update installation instructions across all documentation to use @astron-team/skillhub
2026-05-06 16:34:59 +08:00
dongmucat
351dddc912 feat(cli): add SkillHub CLI v1 with full command suite
Implement complete CLI tool for SkillHub with 12 commands, 7 backend API endpoints, and comprehensive documentation.

CLI Commands:
- help, version: Basic information
- login, logout, whoami: Authentication management
- search: Discover published skills
- install: Install skills to agent directories (14 Tier 1 agents supported)
- list, remove, doctor: Local skill management
- publish: Publish skill packages
- update: Self-update mechanism

Backend API:
- Add /api/cli/v1 endpoints for auth, search, resolve, download, delete, publish
- Implement CliAuthController and CliSkillController
- Add security policies for CLI routes
- Full test coverage (19 backend tests)

CLI Implementation:
- TypeScript with strict mode, Bun runtime
- Pure JS zip handling (fflate) for cross-platform compatibility
- 15 agent profiles (14 Tier 1 + generic fallback)
- Secure token storage (0600 permissions)
- Path safety validation for remove operations
- Comprehensive error handling (404/403/network distinction)
- 41 unit and integration tests

Documentation:
- CLI user guide (Chinese and English)
- README updates with quick start
- GitHub Actions workflow for cross-platform CI

Quality:
- lint: 0 errors
- typecheck: pass
- test: 41/41 pass
- build: 0.30 MB (target=node for npm/npx compatibility)
2026-04-29 15:37:04 +08:00
dongmucat
5c8b33684f docs: add discord server link to READMEs 2026-04-14 14:44:12 +08:00
dongmucat
930bfac8f4
Merge pull request #301 from iflytek/fix/runtime-aliyun-readme-dash
fix(docs): correct aliyun runtime command
2026-04-14 10:36:03 +08:00
dongmucat
c9b0231393 fix(docs): correct aliyun runtime command 2026-04-14 10:26:10 +08:00
dongmucat
1184e00a00
fix(compat): support namespace-aware clawhub publish (#291) 2026-04-13 20:26:42 +08:00
XiaoSeS
532d0450aa
feat(skill): add UPLOADED status for PRIVATE skill lifecycle (#290)
* feat(skill): add UPLOADED status for PRIVATE skill lifecycle

## Summary
- Add UPLOADED status for PRIVATE skills after security scan passes
- PRIVATE skill owners can test before confirming publish or submitting for review
- Rerelease now follows visibility rules (PRIVATE→UPLOADED, PUBLIC→PENDING_REVIEW)
- Auto-withdraw changes status to UPLOADED (not DRAFT) to keep versions visible

## Changes
- SkillVersionStatus: Add UPLOADED enum value
- SkillPublishService: PRIVATE skills go to UPLOADED after scan
- SecurityScanService: Visibility-based status transition after scan
- SkillGovernanceService: Withdraw→UPLOADED, delete allows UPLOADED
- SkillQueryService: Include UPLOADED in version list filters
- SkillReviewSubmitService: New service for submit-review and confirm-publish
- SkillLifecycleController: Add submit-review and confirm-publish endpoints
- Frontend: Add buttons, dialogs, and hooks for new operations

## Workflow
- PRIVATE: Publish → SCANNING → UPLOADED → confirm-publish → PUBLISHED
- PUBLIC: Publish → SCANNING → PENDING_REVIEW → PUBLISHED

* feat(review): add backward compatibility for DRAFT status

Support both DRAFT (legacy) and UPLOADED (new flow) status in:
- SkillReviewSubmitService.submitForReview
- SkillReviewSubmitService.confirmPublish
- ReviewService.submitReview (both overloads)

This ensures existing data with DRAFT status continues to work
with the new visibility-based workflow introduced in OSS-02.
2026-04-13 11:39:45 +08:00
FenjuFu
d9e2e39cc0
docs: add demo gif to README (#244)
* docs: add demo gif to README

* Update skillhub-demo image

* docs: replace local gif with remote url and remove gif file
2026-04-07 19:04:28 +08:00
XiaoSeS
f2b4525967
docs: add Maven mirror config and troubleshooting guide for China developers (#233)
- Add Aliyun mirror config in server/.mvn/settings.xml
- Update maven-wrapper.properties to use Aliyun mirror for Maven distribution
- Add detailed error messages in Makefile when backend startup fails
- Add troubleshooting section in quickstart.md for China developers
- Add FAQ entry for local development startup issues
- Update README with link to local development guide
2026-04-07 09:50:07 +08:00
XiaoSeS
37c25c3f91
docs: simplify runtime script usage (#217)
* docs: simplify runtime script usage

Unify to use runtime.sh for all deployment commands, removing the
distinction between "official images" and "Aliyun mirror". The --aliyun
parameter is preserved for users in China to specify the mirror.

Changes:
- Remove runtime-github.sh references, use runtime.sh uniformly
- Default command uses GHCR images
- Add --aliyun parameter for China users
- Update README.md, README_zh.md, and docs/skillhub/ quickstart files

* docs: consolidate documentation links with clear descriptions

Merge the two documentation links into a single "Documentation" section
with clear descriptions of each:
- User Guide: skill publishing, search, CLI usage
- Developer Docs: architecture, API reference, deployment

This makes it easier for users to find the right documentation.

* docs: consolidate documentation links with clear descriptions

Merge the two documentation links into a single "Documentation" section
with clear descriptions of each:
- User Guide: skill publishing, search, CLI usage
- Developer Docs: architecture, API reference, deployment

This makes it easier for users to find the right documentation.

* fix: include --home parameter in shutdown command

When starting with a custom --home directory, the generated shutdown
command now includes the same --home parameter to ensure it can find
the correct compose files.
2026-04-02 20:59:49 +08:00
XiaoSeS
612b69c2f9
fix: add --public-url parameter for docker deployment (#216)
* docs: add VitePress bilingual documentation site

- Add VitePress-based documentation with Chinese (root) and English (/en/) locales
- Include 6 feature guides: skill-publish, skill-discovery, namespace, review, scanner, social
- Add quickstart, introduction, and FAQ pages
- Include AI-generated diagrams and screenshots
- Add GitHub Pages deployment workflow
- Add Makefile targets: docs-dev, docs-build, docs-preview

* docs: rename docs/claude to docs/skillhub

- Rename documentation directory from docs/claude to docs/skillhub
- Update Makefile paths for docs-dev, docs-build, docs-preview
- Update GitHub workflow paths for deploy-docs.yml

* fix: add enablement parameter to auto-enable GitHub Pages

* Revert "fix: add enablement parameter to auto-enable GitHub Pages"

This reverts commit 11096b1a9b.

* docs: add documentation link to README

Add link to GitHub Pages documentation (https://iflytek.github.io/skillhub/)
under Quick Start section in both English and Chinese README files.

* fix: add --public-url parameter for docker deployment

- Add --public-url parameter to runtime.sh for configuring public access URL
- Create skill.md.template for dynamic URL substitution at container startup
- Update getBaseUrl() to fallback to window.location.host when appBaseUrl is localhost
- Update landing-quick-start.tsx to dynamically generate agent command URL
- Add commandTemplate to i18n files for URL placeholder support
- Update README.md and README_zh.md with deployment parameter documentation

Fixes: Docker deployment shows localhost in install commands and skill.md
2026-04-02 17:52:42 +08:00
wowo-zZ
e5fb133653 docs: update README formatting 2026-04-01 21:49:30 +08:00
Seasoning
3e4a4bc463 docs: Improve the user manual for regular users (#197)
* docs: Improve the user manual for regular users

* docs: Align the document title and fix formatting issues in the example
2026-04-01 15:12:51 +08:00
wowo
34de5bb53e feat(upload): allow xsd, xsl, dtd file types in skill packages (#185)
* feat(upload): allow xsd, xsl, dtd file types in skill packages

Add XML schema-related file extensions (.xsd, .xsl, .dtd) to the
upload allowlist and text content validation. Users uploading skills
with XML Schema files (e.g., Anthropic's docx skill) were getting
rejected because .xsd was not in the allowed extensions list.

Closes #165

* feat(upload): expand office file allowlist

* test(app): verify publish extension env override

* docs(readme): document upload allowlist override
2026-03-30 18:13:37 +08:00
XiaoSeS
0a8c02c647 fix: enable bootstrap admin by default for zero-config quickstart (#175) 2026-03-27 19:00:24 +08:00
FenjuFu
ac34b3da6b Correct links and formatting in README.md
Fixed links and formatting for AstronClaw and Loomy sections.

Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
2026-03-24 20:11:37 +08:00
FenjuFu
91a511d0a7 Fix link formatting for AstronClaw section
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
2026-03-24 20:11:37 +08:00
FenjuFu
4e71b8b9f8 Fix AstronClaw link in README.md
Updated the AstronClaw link to point to the correct URL.

Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
2026-03-24 20:11:37 +08:00
FenjuFu
2d5d9a443c docs: update AstronClaw and Loomy integration descriptions 2026-03-24 20:11:37 +08:00
XiaoSeS
b9b8ca22f1 fix(auth): enable local bootstrap admin by default (#141)
* feat(profile): add field policy config and GET response

Add per-field edit policy configuration (editable, requiresReview) to
application.yml and expose it in the GET /api/v1/user/profile response
via a new fieldPolicies map, enabling the frontend to dynamically render
fields based on backend-driven policies.

* feat(profile): implement mixed submission in PATCH

Split profile update changes by per-field policy: fields without
requiresReview apply immediately, fields with requiresReview enter
the pending queue. Return PARTIALLY_APPLIED status with appliedFields
and pendingFields maps when both paths trigger in a single request.

* feat(web): rewrite profile page with dynamic fields

Render profile fields dynamically from backend fieldPolicies, with
whole-page read/edit mode toggle. Handle APPLIED, PENDING_REVIEW, and
PARTIALLY_APPLIED responses. Add i18n keys for review hints and
partial-apply toasts in both en and zh.

* merge: resolve deepwiki.yml conflict with package-lock.json fix

* api schema

* fix(profile): align moderation defaults and tests

* ci(deepwiki): run crawler on release publish

* fix(auth): enable local bootstrap admin by default
2026-03-20 16:10:20 +08:00
wowo-zZ
1032eaefea Update README runtime script URL 2026-03-20 11:15:17 +08:00
vsxd
857afc5935 chore(runtime): default release runtime to latest 2026-03-19 20:36:45 +08:00
vsxd
f86f04a2d3 docs: align clawhub env vars with public docs 2026-03-19 17:39:38 +08:00
vsxd
2047b72cc4 docs: rename CLAWHUB_REGISTRY env var in docs 2026-03-19 17:17:39 +08:00
Xudong Sun
2daddab217 fix: user profile test isolation and app module docs (#94) 2026-03-19 10:44:13 +08:00
何时
d5abcfcf29 Update README.md (#85)
Signed-off-by: 何时 <93520596+likes1234-bro@users.noreply.github.com>
2026-03-18 17:24:54 +08:00
wowo
8708cab18c Merge pull request #72 from iflytek/fix/global-public-download-anon
Allow anonymous downloads for global public skills
2026-03-17 20:34:30 +08:00
wowo-zZ
69e29aeadf docs: add OpenClaw integration guide and update download auth rules
- Add comprehensive OpenClaw/ClawHub CLI integration guides (CN/EN)
- Document anonymous download support for global PUBLIC skills
- Clarify authentication requirements by namespace type
- Update README with ClawHub CLI usage examples
2026-03-17 20:32:39 +08:00
FenjuFu
9dad71b2c0 Add badges for documentation, license, build, and Docker (#71)
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
2026-03-17 20:26:40 +08:00
wowo-zZ
a560bbcea3 docs: add Chinese README and language switcher
- Add README_zh.md with full Chinese translation
- Add English | 中文 language switcher to README.md
2026-03-17 19:19:59 +08:00
vsxd
5168e866da fix: make bootstrap admin opt-in and stabilize promotion errors 2026-03-16 16:03:46 +08:00
yun-zhi-ztl
0b85bf1e89 feat: bootstrap default super admin across profiles 2026-03-16 16:03:46 +08:00
FenjuFu
8c44b20027 docs: add Support section to README (#2)
* Initial plan

* docs: add Support section to README with community links

Co-authored-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>

---------

Co-authored-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
2026-03-16 13:57:38 +08:00
binfan5
1596398467 docs(readme): clarify runtime quick start paths 2026-03-15 19:54:49 +08:00
何时
b71d504c52 Change runtime script URL to Aliyun mirror
Update the URL for the runtime script in README.

Signed-off-by: 何时 <93520596+likes1234-bro@users.noreply.github.com>
2026-03-15 15:35:35 +08:00
binfan5
bc4b0dcad1 feat(ops): add aliyun runtime shortcut 2026-03-15 14:30:14 +08:00
binfan5
f5c029fbe8 feat(ops): add optional runtime registry mirroring 2026-03-15 14:30:04 +08:00
wowo-zZ
175b6c44c9 docs: add dev-workflow guide covering local dev, staging, and PR creation 2026-03-14 13:31:47 +08:00
FenjuFu
d5a5b44605 docs: add Usage with Agent Platforms section to README (#1)
* Initial plan

* docs: add Usage with Agent Platforms section to README

Co-authored-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>

* Fix heading format for AstronClaw section

Updated the heading for AstronClaw in the README.

Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>

---------

Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
Co-authored-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
2026-03-13 20:44:24 +08:00
wowo-zZ
557c4effab docs: hide stars and forks badges 2026-03-13 19:15:36 +08:00
wowo-zZ
84a95d039f docs: improve README with logo, badges, and Zread documentation link 2026-03-13 19:13:44 +08:00
vsxd
7a0d40736c Add release config validation workflow 2026-03-13 17:00:47 +08:00
vsxd
9ae9b93ca7 Refine production compose runtime config 2026-03-13 17:00:47 +08:00
wowo-zZ
3268a243f5 update readme 2026-03-13 15:20:29 +08:00
wowo-zZ
cbc903a686 update readme 2026-03-13 15:20:29 +08:00
vsxd
84dd08503d merge: bring feature/project-init into main for beta3
# Conflicts:
#	scripts/smoke-test.sh
2026-03-13 11:45:56 +08:00
vsxd
f7df348a5a Add OpenAPI drift validation and docs updates 2026-03-13 11:06:55 +08:00
vsxd
2c8c7fd272 merge: bring feature/project-init into main
# Conflicts:
#	README.md
2026-03-13 10:38:30 +08:00
vsxd
0ca38e73ba merge: bring phase4 worktree implementation into feature/project-init
# Conflicts:
#	server/skillhub-app/src/main/java/com/iflytek/skillhub/controller/cli/CliPublishController.java
#	server/skillhub-app/src/main/java/com/iflytek/skillhub/controller/portal/SkillPublishController.java
#	server/skillhub-storage/src/main/java/com/iflytek/skillhub/storage/LocalFileStorageService.java
#	web/src/app/router.tsx
2026-03-13 10:35:42 +08:00
vsxd
2b7968c71c docs(repo): add contribution and community templates 2026-03-13 10:34:12 +08:00