Commit graph

680 commits

Author SHA1 Message Date
翟二远
fad439adb6 feat : 调整前端工程设置8000端口 2026-04-07 19:22:25 +08:00
翟二远
8e4599c5cb feat : 调整前端工程设置8080端口 2026-04-07 19:17:47 +08:00
翟二远
36582b1c16 feat : 设置默认启动参数 2026-04-07 19:00:04 +08:00
翟二远
239381287c feat : 设置默认启动参数 2026-04-07 18:52:28 +08:00
翟二远
705fde5897 feat : 调整web服务基础镜像源 2026-04-07 18:39:08 +08:00
翟二远
64fc2c3a9e feat : 调整web服务基础镜像源 2026-04-07 18:07:29 +08:00
翟二远
dddb89fd43 feat : 设置maven aliyun 加速 2026-04-07 16:54:50 +08:00
翟二远
f5ece8985e feat : 修改镜像基础 2026-04-07 16:47:19 +08:00
翟二远
49e6cba19e feat : 修改镜像基础 2026-04-07 16:14:40 +08:00
翟二远
4bdfe8c2ef feat : 修改镜像基础 2026-04-07 15:59:32 +08:00
翟二远
3e8f3a76e4 feat : 修改镜像基础 2026-04-07 15:59:05 +08:00
翟二远
80bab755be feat : 新增server服务dev环境配置 2026-04-07 15:52:55 +08:00
翟二远
81f81c8ad1 feat : 新增server服务dev环境配置 2026-04-07 15:22:52 +08:00
翟二远
958beb5863 feat : 调整skillhub-scanner 服务启动 root_path路径问题 2026-04-07 14:18:59 +08:00
翟二远
29093a452d feat : 调整skillhub-scanner 服务启动 root_path路径问题 2026-04-07 14:07:33 +08:00
翟二远
048b137ee8 fix: 使用固定镜像地址替代变量,添加变量配置指南 2026-04-03 23:38:03 +08:00
翟二远
ced9ccc946 feat: 在项目根目录添加 K8s 部署清单,修复云效部署路径问题 2026-04-03 23:33:05 +08:00
翟二远
690e355235 feat : 移除清华镜像源 2026-04-03 23:28:08 +08:00
翟二远
7050d92a9e feat : 更新后的云效流水线配置(使用 docker build 而不是 buildx 2026-04-03 23:14:29 +08:00
翟二远
9fdb14a049 feat : 创建 Kubernetes 部署清单文件 2026-04-03 22:54:02 +08:00
翟二远
3cc783b708 feat: Dockerfile 已经完全适配 Alibaba Cloud Linux 3 2026-04-03 22:48:48 +08:00
翟二远
3c4d7cefbe feat : 魔改一下 2026-04-03 22:39:12 +08:00
翟二远
42c9f687fd feat : 从 Alpine 系统命令改为 Debian/Ubuntu 系统命令 2026-04-03 22:33:39 +08:00
翟二远
3df9d37834 feat : 会退本地环境加速配置,使用社区原始构建 2026-04-03 22:30:33 +08:00
翟二远
46e8eef2b8 feat : 取消使用阿里云 Alpine 镜像源加速 apk 下载 2026-04-03 22:28:25 +08:00
翟二远
3637d0f418 feat : 进一步增加超时:可以把 --timeout 120 改为 --timeout 300(5分钟) 2026-04-03 22:26:40 +08:00
翟二远
3251c150e7 feat : 会退构建镜像源 2026-04-03 22:22:33 +08:00
翟二远
6fbb665792 feat : 基础镜像(使用阿里云公共镜像仓库) 2026-04-03 22:19:43 +08:00
翟二远
2be53dd9dc feat : 使用阿里云企业镜像加速地址 2026-04-03 22:17:40 +08:00
翟二远
162f7ab94e feat : 调整流水线构建设置阿里云镜像源地址 2026-04-03 22:12:21 +08:00
翟二远
b6bb680fe8 feat : 测试自动构建 2026-04-03 16:44:30 +08:00
翟二远
86c0266cc4 feat : 新增盛虹sso登陆设计文档 2026-04-03 16:15:39 +08:00
zhaieryuan
fa981f455c Merge branch 'pr/20260402-bug-fix' into feature/20260402-sh-dev
* pr/20260402-bug-fix:
  feat : 1-新增登陆页面 rember me 功能,2-修复一个登陆过程中,事务实效的案例,原仓库代码,不会回滚事务
  fix : 修复swagger 接口文档权限未配置问题
2026-04-03 09:31:26 +08:00
zhaieryuan
1a644081a3 feat : 1-新增登陆页面 rember me 功能,2-修复一个登陆过程中,事务实效的案例,原仓库代码,不会回滚事务 2026-04-03 09:26:00 +08:00
zhaieryuan
d977a92eec Merge branch 'main' into feature/20260402-sh-dev
* main:
  docs: add Kubernetes deployment guide with overlays structure (#219)
  docs: simplify runtime script usage (#217)
  fix: add --public-url parameter for docker deployment (#216)
  chore: update .gitignore to include .codex directory (#211)
  organize .gitignore (#206)
  docs: add VitePress bilingual documentation site (#208)
2026-04-03 07:54:23 +08:00
zhaieryuan
1635ac3d52 Merge branch 'main' into pr/20260402-bug-fix
* main:
  docs: add Kubernetes deployment guide with overlays structure (#219)
  docs: simplify runtime script usage (#217)
  fix: add --public-url parameter for docker deployment (#216)
  chore: update .gitignore to include .codex directory (#211)
  organize .gitignore (#206)
  docs: add VitePress bilingual documentation site (#208)
2026-04-03 07:54:02 +08:00
XiaoSeS
c0f790079d
docs: add Kubernetes deployment guide with overlays structure (#219)
* 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.

* docs: add Kubernetes deployment guide with overlays structure

- Restructure k8s configs with base/overlays pattern for flexibility
- Add overlays/with-infra for full deployment (PostgreSQL + Redis)
- Add overlays/external for external database scenarios
- Add comprehensive ConfigMap with bootstrap admin settings
- Fix health check path to /actuator/health (auth issue)
- Add SKILLHUB_API_UPSTREAM env for frontend
- Set SESSION_COOKIE_SECURE=false for HTTP environments
- Add Chinese and English documentation in docs/skillhub/

* docs: update k8s README with complete config reference
2026-04-02 21:01:28 +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
dongmucat
cbc1ef25f7
chore: update .gitignore to include .codex directory (#211) 2026-04-02 15:04:37 +08:00
yun-zhi-ztl
dce445a1e8
organize .gitignore (#206)
* organize .gitignore

* stop ignoring CODE_OF_CONDUCT.md

---------

Co-authored-by: yun-zhi-ztl <yunzhi@yunzhideMac-mini.local>
2026-04-02 13:51:23 +08:00
XiaoSeS
1233354087
docs: add VitePress bilingual documentation site (#208)
* 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
2026-04-02 13:43:55 +08:00
zhaieryuan
b0040f323f feat : 提交镜像源地址 2026-04-02 12:23:59 +08:00
zhaieryuan
f3206f2ded fix : 修复swagger 接口文档权限未配置问题 2026-04-02 10:35:09 +08:00
zhaieryuan
9d1869fe19 feat : 添加本地服务启动镜像加速 2026-04-02 10:32:34 +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
dongmucat
50a6c4b7fe test(e2e,ci): migrate web e2e to real API and add PR e2e workflow (#198)
* chore(workflow): align local hooks and e2e guidance

* test(e2e): expand reusable api mock helpers

* test(skill): stabilize share button e2e assertions

* chore(test): add e2e make target and tune playwright workers

* test(web): expand e2e coverage and smoke suite

* test(e2e): migrate to real API flows and add request-based data builder

* ci(e2e): add PR workflow for real-service frontend e2e

* ci(e2e): install playwright chromium in PR workflow

* test(e2e): relax timeout and force single worker in CI

* test(e2e): stabilize not-found assertions and harden CI session bootstrap

* chore(agents): align tester role with web/e2e workflow
2026-04-01 14:41:23 +08:00
eryuan
5d7bee2c58 Pr/fix sse timeout global exception handler (#178)
* feat : 调整本地开发环境

* feat : 调整sse 超时 GlobalExceptionHandler 拦截异常

See :
rg.springframework.web.context.request.async.AsyncRequestTimeoutException: null
	at org.springframework.web.context.request.async.TimeoutDeferredResultProcessingInterceptor.handleTimeout(TimeoutDeferredResultProcessingInterceptor.java:42) ~[spring-web-6.1.4.jar:6.1.4]
	at org.springframework.web.context.request.async.DeferredResultInterceptorChain.triggerAfterTimeout(DeferredResultInterceptorChain.java:81) ~[spring-web-6.1.4.jar:6.1.4]
	at org.springframework.web.context.request.async.WebAsyncManager.lambda$startDeferredResultProcessing$5(WebAsyncManager.java:430) ~[spring-web-6.1.4.jar:6.1.4]
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) ~[na:na]
	at org.springframework.web.context.request.async.StandardServletAsyncWebRequest.onTimeout(StandardServletAsyncWebRequest.java:149) ~[spring-web-6.1.4.jar:6.1.4]
	at org.apache.catalina.core.AsyncListenerWrapper.fireOnTimeout(AsyncListenerWrapper.java:44) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.catalina.core.AsyncContextImpl.timeout(AsyncContextImpl.java:136) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.catalina.connector.CoyoteAdapter.asyncDispatch(CoyoteAdapter.java:135) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.coyote.AbstractProcessor.dispatch(AbstractProcessor.java:243) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:57) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
	at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]

* Revert "feat : 调整sse 超时 GlobalExceptionHandler 拦截异常"

This reverts commit 6f0cea85b5daac47025767efe1bd90565b5da469.

* Revert "feat : 调整本地开发环境"

This reverts commit 0695a3d7c823491ce5c83aabe3660ba9997f28c5.

* feat : 调整sse 超时 GlobalExceptionHandler 拦截异常

See :
rg.springframework.web.context.request.async.AsyncRequestTimeoutException: null
    at org.springframework.web.context.request.async.TimeoutDeferredResultProcessingInterceptor.handleTimeout(TimeoutDeferredResultProcessingInterceptor.java:42) ~[spring-web-6.1.4.jar:6.1.4]
    at org.springframework.web.context.request.async.DeferredResultInterceptorChain.triggerAfterTimeout(DeferredResultInterceptorChain.java:81) ~[spring-web-6.1.4.jar:6.1.4]
    at org.springframework.web.context.request.async.WebAsyncManager.lambda$startDeferredResultProcessing$5(WebAsyncManager.java:430) ~[spring-web-6.1.4.jar:6.1.4]
    at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) ~[na:na]
    at org.springframework.web.context.request.async.StandardServletAsyncWebRequest.onTimeout(StandardServletAsyncWebRequest.java:149) ~[spring-web-6.1.4.jar:6.1.4]
    at org.apache.catalina.core.AsyncListenerWrapper.fireOnTimeout(AsyncListenerWrapper.java:44) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.catalina.core.AsyncContextImpl.timeout(AsyncContextImpl.java:136) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.catalina.connector.CoyoteAdapter.asyncDispatch(CoyoteAdapter.java:135) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.coyote.AbstractProcessor.dispatch(AbstractProcessor.java:243) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:57) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
    at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]

* fix(app): stabilize async timeout handling

---------

Co-authored-by: zhaieryuan <zhaieryuan@enn.cn>
Co-authored-by: wowo-zZ <zhenggui5228@126.com>
2026-03-31 11:20:42 +08:00
XiaoSeS
5842a02288 feat: support Unicode characters in skill slugs (#196)
* fix: increase nginx upload limit and filter Chrome DevTools logs

- Add client_max_body_size 100M to nginx config to allow large skill package uploads
- Silently handle Chrome DevTools .well-known requests to reduce log noise

Fixes #193

* feat(domain): add Unicode slug support with emoji validation

- Update SLUG_PATTERN to support Unicode letters (\p{L}), numbers (\p{N}), and symbols (\p{So})
- Add UPPERCASE_PATTERN to maintain lowercase-only validation
- Modify slugify() to preserve Unicode characters instead of replacing with hyphens
- Add 8 new test cases covering Chinese, Japanese, Korean, emoji, and mixed Unicode slugs
- Maintain backward compatibility with existing ASCII slug validation
- All 16 tests passing

Implements Phase 1 of unicode-slug-support-v1.0-prd.md

* feat(web): add URL encoding for Unicode slugs and improve monospace font support

- Encode skill slugs in all navigation URLs using encodeURIComponent
- Encode slugs in API client methods for proper HTTP request handling
- Update share button to generate properly encoded URLs
- Extend monospace font stack with system fonts for better Unicode support
- All frontend tests pass (506 tests)

Related to Unicode slug support PRD phase 2 and 3

* feat(web): regenerate API types for Unicode slug support

- Update OpenAPI schema types after backend slug validator changes
- Reflects new Unicode-aware slug pattern validation

* remove
2026-03-31 10:17:34 +08:00