Back to skill

Security audit

Roam HQ

Security checks for vulnerabilities and agentic risk

Overview

This is a small Roam API helper that clearly discloses transcript access, messaging, and its required API token, with no hidden code or persistence.

Install this only if you want Codex to use your Roam API token to read meeting transcripts, summaries, group lists, chat history, and post messages. Use a least-privileged Roam token if available, and review any drafted chat message before allowing it to be sent.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Credential Access

High
Category
Privilege Escalation
Content
## Auth

`ROAM_API_KEY` env var (Personal Access Token from Roam Settings → Developer).

All requests: `Authorization: Bearer $ROAM_API_KEY`
Confidence
70% confidence
Finding
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Vague Triggers

Medium
Confidence
93% confidence
Finding
The activation text is broad enough to trigger on generic requests about meetings, transcripts, call notes, or sending messages, which can cause the skill to be invoked without clear user intent for this specific integration. Because the skill can access sensitive meeting data and perform outbound messaging actions, overbroad routing increases the chance of unintended data access or side effects.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The description does not warn users that the skill can read meeting transcripts and send messages through the API, which are privacy-sensitive and action-taking capabilities. Without that notice, users may invoke the skill without understanding that it can expose confidential meeting content or post messages on their behalf.

Static analysis

No suspicious patterns detected.