twenty-crm
Pass
Audited by Gen Agent Trust Hub on Jun 18, 2026
Risk Level: SAFECREDENTIALS_UNSAFECOMMAND_EXECUTIONEXTERNAL_DOWNLOADS
Full Analysis
- [CREDENTIALS_UNSAFE]: The skill stores the Twenty CRM API bearer token in plaintext within the
~/.ocli/profiles.iniconfiguration file. While the script attempts to secure the file usingumask 077andchmod 600to restrict access to the current user, the secret remains unencrypted on the filesystem. - [CREDENTIALS_UNSAFE]: The non-interactive setup functionality allows the API token to be passed via the
--tokenflag (node scripts/twenty.mjs setup --token <key>). This practice can expose the sensitive token in shell history, process monitors, and system logs. - [COMMAND_EXECUTION]: The skill relies on the execution of multiple CLI tools, including
ocli,jq, andnode(for inline date conversions vianode -e). These commands are executed usingexecFileSyncwith argument arrays, which mitigates standard shell injection risks, but remains a significant capability surface. - [EXTERNAL_DOWNLOADS]: During the setup and refresh processes, the skill uses the Node.js
fetchAPI to download OpenAPI specifications directly from the user-provided CRM instance URL. This is a legitimate functional requirement for generating the CLI interface but involves interacting with external network resources.
Audit Metadata