Feishu Interactive Cards
Analysis
The skill’s Feishu card purpose is coherent, but it reads local Feishu/Gateway credentials and forwards callback data while the registry metadata declares no credentials or config requirements.
Findings (6)
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.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
When replying to Feishu and there is ANY uncertainty: send an interactive card instead of plain text.
The skill broadly instructs the agent to prefer this tool in uncertain Feishu replies, which is aligned with the card-interaction purpose but changes response behavior.
await exec({ command: `node E:\\openclaw\\workspace\\skills\\feishu-interactive-cards\\scripts\\send-card.js confirmation "Confirm delete file test.txt?" --chat-id ${chatId}` });The recommended agent workflow uses shell execution with dynamic arguments; this is central to the skill but requires careful quoting and validation.
"repository": { "url": "https://github.com/yourusername/feishu-interactive-cards.git" }, ... "requires": { "bins": ["node"], "channels": ["feishu"] }The package metadata shows Node/Feishu requirements and a placeholder repository, while the registry lists no install spec or required binaries.
Start Callback Server (Long-Polling Mode) ... Auto-reconnects ... Sends callbacks to OpenClaw Gateway automatically
The skill runs a long-polling callback server that reconnects and forwards events; this is disclosed and core to the feature, but it is long-running behavior.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
const configPath = path.join(os.homedir(), '.openclaw', 'openclaw.json'); ... appSecret: feishuConfig.appSecret ... token: process.env.OPENCLAW_GATEWAY_TOKEN || config.gateway?.token || ''
The code reads local Feishu app credentials and an OpenClaw Gateway bearer token, while the registry metadata lists no primary credential, env vars, or required config paths.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
回调服务器会自动将所有飞书卡片交互发送到 OpenClaw Gateway ... data.raw_data: 完整的原始回调数据
The docs disclose that all Feishu card interactions, including full raw callback data, are forwarded to the OpenClaw Gateway.
