feishu-user

AdvisoryAudited by Static analysis on Apr 30, 2026.

Overview

No suspicious patterns detected.

Findings (0)

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

Anyone who can read that local config file may be able to reuse the saved Feishu token until it expires or is revoked.

Why it was flagged

The helper stores Feishu access and refresh tokens in a local config file, creating persistent account access material for the skill.

Skill content
CONFIG_FILE = os.path.expanduser("~/.config/claw-feishu-user/config.json") ... self.config["access_token"] = token ... self.config["refresh_token"] = refresh_token ... self._save_config()
Recommendation

Use least-privilege Feishu app scopes, protect the config file, revoke tokens when no longer needed, and avoid using this on shared or untrusted machines.

What this means

If invoked on the wrong document or block token, the agent could change or remove Feishu document content.

Why it was flagged

The client can update and delete Feishu document blocks through authenticated API calls.

Skill content
resp = requests.put(url, json=payload, headers=self.headers) ... resp = requests.delete(url, headers=self.headers)
Recommendation

Give the agent only the specific document and block tokens needed, and require user confirmation before update or delete operations.

What this means

The Feishu token may allow document modification and document-search access within the user's authorized Feishu account.

Why it was flagged

The OAuth setup asks for document operation and search-related scopes. These are relevant to Feishu document access, but users should notice the breadth of the grant.

Skill content
Enable these permissions: - `docx:document` - `drive:drive.search:readonly` - `search:docs:read`
Recommendation

Grant only the scopes you actually need, and review whether the search scopes are necessary for your workflow.

What this means

A future or compromised package version could affect the runtime environment if installed without verification.

Why it was flagged

The setup instructions install an unpinned third-party Python package. `requests` is a common dependency and is purpose-aligned, but version pinning is not provided.

Skill content
pip install requests
Recommendation

Install dependencies from trusted package indexes, preferably in a virtual environment, and pin or verify dependency versions for sensitive use.