LrshuAI Text To Speech

ReviewAudited by ClawScan on May 10, 2026.

Overview

The skill does perform text-to-speech-style API calls, but it also explicitly tells the agent to bypass the normal runner and includes a broader generic model/file-upload client than the TTS description suggests.

Review this skill carefully before installing. It needs a TEAM_API_KEY and sends prompts, and optionally files if used, to a remote API endpoint. The strongest issue is that it tells the agent not to use the normal OpenClaw runner and includes broader generic model/file-upload behavior than the text-to-speech description clearly explains.

Findings (5)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

The agent may run the included code through a less controlled path than users expect for OpenClaw skills.

Why it was flagged

The skill explicitly instructs the agent to avoid the standard OpenClaw runner and execute the script directly with Python, which may bypass normal invocation boundaries or controls.

Skill content
你**绝对不能**使用 `openclaw run`。你**必须**直接通过系统自带的 `python` 命令来运行 `script/invoke_model.py`。
Recommendation

Use the standard skill runner unless there is a clearly documented reason for direct execution, and require user confirmation before direct shell/Python execution.

What this means

The skill could be used to call broader AI services or upload media files, which is more authority than a user may expect from a text-to-speech tool.

Why it was flagged

The script supports arbitrary model IDs and image/video inputs, including non-TTS examples, while the skill is described as a text-to-speech skill.

Skill content
parser.add_argument('--model', type=str, required=True, help='The model ID to use (e.g., qwen3_5-plus, sora-2, etc.)') ... parser.add_argument('--image' ...); parser.add_argument('--video' ...)
Recommendation

Restrict accepted models and inputs to the documented TTS use case, or clearly disclose the broader generic model and file-upload capabilities.

What this means

Your TEAM_API_KEY will be sent to the configured API endpoint, defaulting to dlazy.com.

Why it was flagged

The script uses the required API key as a bearer token for a remote API. This is expected for an API-backed TTS skill, but users should know which service receives the credential.

Skill content
api_key = os.getenv('TEAM_API_KEY') ... base_url = os.getenv('TEAM_BASE_URL', 'https://dlazy.com/api/ai/tool') ... "Authorization": f"Bearer {api_key}"
Recommendation

Only install if you trust the service endpoint and understand what account or billing authority the TEAM_API_KEY grants.

What this means

A stuck remote job could leave the command running until interrupted.

Why it was flagged

The script polls the remote service without a timeout after task submission. This is common for generation APIs, but it can run longer than expected if the service never returns a terminal status.

Skill content
while True:
            time.sleep(3) # 每3秒查询一次
            poll_resp = requests.get(poll_endpoint, headers=headers)
Recommendation

Add a maximum polling time or retry limit, and tell users how to cancel long-running requests.

What this means

The skill may fail or rely on whatever Python packages are already present in the local environment.

Why it was flagged

The script depends on the Python `requests` package, but the provided install metadata only declares the `python` binary and no install spec.

Skill content
import requests
Recommendation

Declare Python package dependencies and pin expected versions if the skill requires third-party libraries.