Develop includes TypeScript tools for local script execution and maintenance, delivered with the panel source and internal build. They use a separate command tree from the remote npm CLI and must run on the actual panel host or inside its container. They require Node.js 22.12 or newer, Bash and the interpreters required by your tasks.
From the Qinglong source directory:
These examples assume the panel is installed at /ql and contains the built cli/dist directory:
A mounted data directory alone is not a complete runtime. These commands cannot be executed through the npm CLI on a workstation.
The original Shell commands remain the default. On panels with the entrypoint loader, set this variable in the panel's startup environment:
The absolute path must contain the complete internal dist directory, not the @whyour/qinglong-cli npm package. After restarting, the loader creates private ql/task/crontab wrappers in the runtime user's ~/bin and prioritizes them for panel child processes. Independent terminals can explicitly invoke ~/bin/ql. For Docker, configure the variable in the container environment and recreate the container. Invalid paths fail without silent fallback.
Unset the variable and restart to restore Shell entrypoints. Build the internal tools before selecting them.
Here, ql means the selected internal entrypoint; you can also use node /ql/cli/dist/ql.js.
| Purpose | Command |
|---|---|
| Execute a script | ql task exec [options] [script] |
| Synchronize a repository | ql repo <url> [include] [exclude] [dependencies] [branch] [extensions] [proxy] [autoAdd] [autoDelete] |
| Download a single file | ql raw <url> [proxy] [autoAdd] [autoDelete] |
| Start | ql start |
| Repair configuration | ql repair-config |
| Check and repair the environment | ql check |
| Update | ql update [--mirror github|gitee] [--download-only] |
| Reload | ql reload [--target services|system|data] |
| Remove old logs | ql rmlog <days> |
| Run extension script / Bot | ql extra / ql bot |
| Reset login errors / two-factor authentication | ql resetlet / ql resettfa |
| Reset password / username | ql resetpwd -- <value> / ql resetname -- <value> |
check installs dependencies, repairs configuration and reloads services. reload restarts services by default; system/data applies staged files. start --no-startup skips OS startup registration, while start --reload skips dependency installation, optional hooks and startup registration.
Place maintenance options --root, --data-dir and --json before --. Password positionals are visible in process arguments; use a trusted terminal. repo/raw uses QL_DIR/QL_DATA_DIR and does not accept --root/--json. Repository filters use POSIX extended regular expressions through grep -E.
now skips random delay; conc and desi support account selection. Configuration and hooks remain Bash. With --json, script output goes to stderr and the final result goes to stdout, preserving the script exit code.
Compatibility forms include ql task <script>, task <script> and ql local <command>. Use explicit task exec for scripts named like API actions. With QL_DIR configured, bare ql task or task lists JavaScript scripts. update false means --download-only; reload system/data/services maps to --target.
Sources and full reference: internal tools, local Skill.