Fix guide · high · asana_token
Asana API key in your client bundle
What this rule means
A string matching 1/{16-digits}:{32-hex} or 2/{16-digits}:{32-hex} was found in your deployed JavaScript.
Why it matters
Read/write access to your Asana workspace — tasks, projects, team data. Automated scrapers harvest these keys from public bundles within hours; assume the key is compromised the moment it shipped.
How to fix it
- Revoke the key immediately at https://app.asana.com/0/my-apps.
- Move the new key to server-only env vars. Never use a name with the
NEXT_PUBLIC_,VITE_, orPUBLIC_prefix. - Pattern your calls as client → your API → Asana. Never client → Asana directly.
- Set a spend or rate limit in the Asana console as a safety net.
- Add a CI gate to fail any future deploy that includes the key pattern:
vibecheck https://your-deploy.com --exit-on critical.
Did vibecheck flag this on your app?
If you reached this page from a vibecheck inspection report, the redacted match in your scan output is the exact string we found in your bundle. After applying the fix above, run the inspection again — the finding should clear.
Run another inspection