line-cli
Pass
Audited by Gen Agent Trust Hub on Oct 17, 2026
Risk Level: SAFEEXTERNAL_DOWNLOADSCOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTIONPERSISTENCE
Full Analysis
- [EXTERNAL_DOWNLOADS]: The skill downloads the
linecommand-line utility and installer scripts from GitHub (github.com/kongesque/line-cli). To protect against supply chain attacks,scripts/setup.pycontains hardcoded, pinned SHA-256 hashes used to verify the integrity of the installer scripts before they are executed. It also fetches emoji images from a well-known LINE CDN (stickershop.line-scdn.net). - [COMMAND_EXECUTION]: The skill makes extensive use of
subprocessto manage the lifecycle of the LINE CLI and system terminal emulators. This includes performing setup tasks, monitoring for new messages, and launching interactive terminal windows (via PowerShell, AppleScript, or shell emulators) for the user to perform login. These executions are scoped to the primary purpose of the skill and follow established security practices like avoidingsudoand isolating credentials. - [INDIRECT_PROMPT_INJECTION]: As the skill ingests untrusted content from LINE chats, it is exposed to potential indirect prompt injection. The developer has implemented several mitigations:
- Ingestion points: Untrusted data is retrieved through
sync.py,watch.py, and direct message queries. - Boundary markers: Messages are rendered into markdown format (
messages.md) using clear sender/time headers and blockquote delimiters for gaps. - Capability inventory: The skill allows for sending messages, reactions, and unsends, but
SKILL.mdandreferences/safety.mdstrictly mandate explicit human confirmation for every write action. - Sanitization: The rendering engine in
scripts/linecore/render.pyescapes markdown characters (like[and]) in chat content to prevent the injection of malicious links or formatting. - [PERSISTENCE]: In
references/watch.md, the skill provide instructions for the user to manually set up background sync or monitoring processes using system tools like Task Scheduler (schtasks). It correctly instructs the agent not to attempt these configurations automatically, ensuring user control over persistent background tasks.
Audit Metadata