copilot-swe-agent[bot]
e28cce1636
Update documentation with subprocess protection details
...
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-17 15:17:28 +00:00
copilot-swe-agent[bot]
38d1f67301
Fix subprocess bypass by wrapping child_process and subprocess modules
...
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-17 15:16:27 +00:00
copilot-swe-agent[bot]
68d06acf6c
Add implementation summary document
...
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-17 12:43:14 +00:00
copilot-swe-agent[bot]
34b06b06f0
Add comprehensive sandbox testing documentation
...
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-17 12:42:25 +00:00
copilot-swe-agent[bot]
7abba4c77b
Clean up test files and update gitignore
...
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-17 12:41:09 +00:00
copilot-swe-agent[bot]
b14b77deee
Add security documentation for filesystem sandbox
...
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-17 12:36:36 +00:00
copilot-swe-agent[bot]
5267cd03e0
Implement filesystem sandbox for Node.js and Python scripts
...
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-17 12:35:03 +00:00
copilot-swe-agent[bot]
3c2d782ec8
Initial plan
2025-11-17 12:25:40 +00:00
whyour
0e5de4a824
更新启动日志
2025-11-16 21:31:52 +08:00
whyour
af96bd98ac
修复系统提示
2025-11-16 21:26:14 +08:00
Copilot
08ef509e27
Optimize log file writes using stream pooling ( #2835 )
...
* Initial plan
* Implement LogStreamManager for optimized log writing
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Fix error handler in LogStreamManager to avoid race conditions
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-16 21:11:10 +08:00
Copilot
fbeb4f4a6c
Fix PM2 startup failures on ARM routers with Node.js incompatibility ( #2828 )
...
* Initial plan
* Add fallback mechanism for PM2 startup failures on incompatible hardware
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-16 20:29:32 +08:00
Copilot
eb09a417a1
Fix DNS resolution failures in Alpine containers by setting ndots:0 ( #2827 )
...
* Initial plan
* Fix DNS resolution issue in Alpine containers by adding ndots:0 option
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-16 20:28:12 +08:00
Copilot
e84ddb6cfc
Fix environment variable copy reliability by validating clipboard operation ( #2833 )
...
* Initial plan
* Fix env variable copy issue by using onCopy callback
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-16 18:23:45 +08:00
whyour
d01ec3b310
修复 parse cron
2025-11-15 19:09:07 +08:00
whyour
45fac29804
移除用户判断
2025-11-15 17:02:00 +08:00
whyour
72d4c8bfd4
修复 homedir 权限
2025-11-15 02:27:27 +08:00
Copilot
8f23c61fee
Add non-root Docker user support with automatic command setup ( #2830 )
...
* Initial plan
* Add non-root user guide and improve error messages
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add PM2_HOME configuration to fix non-root user permission errors
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Fix PM2 socket error by using /tmp for PM2_HOME instead of mounted volume
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Document symlink permission limitation for non-root users
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Clarify that scheduled tasks auto-adapt to use full paths when symlinks unavailable
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add error handling for symlink creation to prevent worker crashes
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add practical solutions for non-root users to use ql and task commands
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Modify linkCommand to create symlinks in ~/bin for non-root users
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* 修复链接 task 命令
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
Co-authored-by: whyour <imwhyour@gmail.com >
2025-11-15 01:46:24 +08:00
whyour
e41eed81ae
移除说明文档
2025-11-14 23:23:01 +08:00
Copilot
58f5fe763f
Add cron task management to QLAPI ( #2826 )
...
* Initial plan
* Add cron management capabilities to QLAPI
- Added GetCrons, GetCronById, EnableCrons, DisableCrons, RunCrons to proto
- Implemented gRPC handlers for new cron operations
- Updated client.js to expose new methods to scripts
- Updated sample to demonstrate new API usage
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add documentation for QLAPI cron management features
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Specify pnpm version 8.3.1 in package.json
Add packageManager field to enforce pnpm@8.3.1 as requested
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Revert pnpm-lock.yaml to original state
The lockfile was inadvertently updated during dependency installation
for proto generation. Reverting to maintain consistency with pnpm@8.3.1.
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Regenerate proto files with correct tool versions
Regenerated using protoc v3.17.3 and protoc-gen-ts_proto v2.6.1
to match the original project configuration.
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-14 23:20:56 +08:00
Copilot
214241797d
Fix QlPort and QlGrpcPort environment variables ignored in host network mode and pm2 reload ( #2825 )
...
* Initial plan
* Fix host mode port configuration by using QlPort environment variable
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Fix GRPC_PORT conflict in host network mode
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Ensure BACK_PORT and GRPC_PORT survive pm2 reload with --update-env
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Move env.sh sourcing after fix_config to preserve more environment variables
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Refactor: Extract export_ql_envs function and move env.sh sourcing earlier
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Extract load_ql_envs function and reorder initialization in docker-entrypoint.sh and update.sh
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-14 22:56:39 +08:00
whyour
aedd48c9c4
修改错误日志
2025-11-14 22:23:30 +08:00
Copilot
90ddf0fb57
Fix race condition preventing scheduled tasks from executing in clustered mode ( #2819 )
...
* Initial plan
* Fix race condition causing scheduled tasks not to run
Added synchronization to ensure gRPC worker is ready before HTTP worker starts. This prevents the race condition where autosave_crontab() tries to register cron jobs before the gRPC server is ready to accept them.
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add timeout protection for gRPC worker initialization
Added 30-second timeout to prevent system hang if gRPC worker fails to start. This provides better error handling and prevents indefinite waiting.
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Refactor worker ready logic and improve restart handling
- Extracted waitForWorkerReady() method for better code reusability
- Improved worker restart logic to wait for gRPC worker readiness
- This addresses code review feedback for better maintainability
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Improve logging accuracy for worker restarts
- Fixed log messages to accurately reflect worker state
- Added proper logging after gRPC worker is confirmed ready
- Improved HTTP worker restart logging with PID
- Addresses code review feedback for better clarity
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Revert unnecessary pnpm-lock.yaml changes
The pnpm-lock.yaml was unintentionally updated when installing dependencies for testing. No package dependencies were actually changed - only existing code was modified in back/app.ts. Reverting to original state.
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Re-register cron jobs when gRPC worker restarts
When the gRPC worker restarts, the scheduled tasks need to be re-added to the new gRPC server instance. This fix:
1. Tracks the HTTP worker reference in the master process
2. Sends a 'reregister-crons' message to the HTTP worker after gRPC restarts
3. HTTP worker calls autosave_crontab() to re-register all cron jobs with the new gRPC server
This ensures scheduled tasks continue to work after a gRPC worker restart.
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-12 00:59:22 +08:00
whyour
c9fc9b4b45
定时任务支持订阅筛选
2025-11-11 01:24:28 +08:00
whyour
8fdc69421c
修改定时任务支持的排序顺序
2025-11-11 01:02:36 +08:00
whyour
1deb264913
升级 cron-parser
2025-11-11 00:37:03 +08:00
Copilot
1f2fd8ac02
Fix URIError from malformed cookies causing white screen on load ( #2811 )
...
* Initial plan
* Fix decodeURIComponent error in cookie parsing by adding try-catch
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add type annotation and logging to catch block per code review
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Fix TypeScript errors in deps.ts - remove unused path parameter
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Revert pnpm-lock.yaml to avoid unnecessary lockfile version upgrade
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-09 21:53:06 +08:00
whyour
06aa07329f
修复日志目录逻辑
2025-11-09 21:42:45 +08:00
Copilot
4cb9f57479
环境变量支持置顶 ( #2822 )
...
* Initial plan
* Add pin to top feature for environment variables
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Format code with prettier
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add database migration for isPinned column in Envs table
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Use snake_case naming (is_pinned) for database column
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
Co-authored-by: whyour <imwhyour@gmail.com >
2025-11-09 19:43:33 +08:00
Copilot
c369514741
定时任务支持自定义日志文件或者 /dev/null ( #2823 )
...
* Initial plan
* Add log_name field to enable custom log folder naming
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add database migration for log_name column
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Add security validation to prevent path traversal attacks
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Apply prettier formatting to modified files
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Support absolute paths like /dev/null for log redirection
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
* Restrict absolute paths to log directory except /dev/null
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com >
2025-11-09 19:32:40 +08:00
whyour
0e28e1b6c4
修复 pm2 日志目录
2025-11-09 17:52:38 +08:00
whyour
73f8f3c5fa
增加 agent
...
Create a new agent configuration file for QL agent.
2025-11-08 00:05:56 +08:00
whyour
494ccb3c08
更新 workflow
2025-11-03 00:09:36 +08:00
whyour
399728b433
修复 jwt 认证
2025-11-02 22:28:58 +08:00
whyour
52a1de5063
更新 demo 地址
2025-11-02 21:54:19 +08:00
whyour
18f27a9a69
移除 nginx
2025-11-02 19:29:59 +08:00
whyour
07951964a1
修复模块注入
2025-10-26 22:32:03 +08:00
涛之雨
a1f888af59
Add validation to dependencies GET endpoint and update service logic ( #2778 )
...
* Add validation to dependencies GET endpoint and update service logic
* fix https://github.com/whyour/qinglong/pull/2778/files/6063bc3a67fb329de9b90f7c93524b862bd9eb93#r2266494581
* remove default condition type
* fix query mistakes
2025-10-11 23:23:13 +08:00
涛之雨
f7472b6e74
Add input validation to script API routes ( #2777 )
...
* Add input validation to script API routes
* 优化脚本 API 路由的错误处理逻辑
* Fix optional path compatibility checks
* remove file
2025-10-11 23:20:26 +08:00
whyour
a7baeba755
修复 task 命令可能软链失败
2025-10-11 23:15:54 +08:00
涛之雨
e4f733320d
Enable debug backend ( #2776 )
2025-08-19 11:13:33 +08:00
whyour
55c92dc320
发布版本 v2.19.2
v2.19.2
2025-07-12 20:29:49 +08:00
whyour
50769c43dd
修复 command-run 接口日志绑定
2025-07-12 20:29:44 +08:00
whyour
0587644a6b
command-run 增加返回 QL-Task-Log 日志路径
2025-06-28 01:05:05 +08:00
whyour
87b934aafe
QLAPI.systemNotify 支持自定义通知类型和参数
2025-06-24 02:00:51 +08:00
whyour
7a92e7c6ab
修复取消安装依赖
2025-06-22 21:47:39 +08:00
whyour
1d8403c0ec
修复环境变量过大解析
2025-06-22 21:10:55 +08:00
whyour
ef9e38f167
备份数据支持选择模块,支持清除依赖缓存
2025-06-22 14:25:19 +08:00
whyour
c9bd053fbd
修改服务启动方式
2025-06-11 00:42:29 +08:00
憶夣
57939391b9
ntfy 增加可选的认证与用户动作 ( #2741 )
...
* feat:ntfy增加可选的认证
* feat:ntfy增加可选的用户动作
* fix:ntfy动作包含中文报错
2025-06-07 00:26:27 +08:00