Documentation

Guides for protecting production JavaScript

Reference guides for release workflows, command-line usage, cross-file protections, and the desktop app.

Inside The Docs

Practical guides, not placeholder pages.

How-to guides Start with release sequencing and command-line usage, then move into feature-specific references.
Advanced protection Browse cross-file controls like Replace Globals and Protect Members when a build spans multiple scripts.

JSO AI quick start

Start with your own OpenAI or Claude key. JSO AI uses that key for live guidance, while provider billing stays in your provider account. If you only want to preview the experience, use the browser previews first; no key is required for those.

1. Save your AI provider key

Open AI key settings, choose OpenAI or Claude, paste the provider key, and use Save and test. The key is encrypted before storage and is never shown again after save.

  • OpenAI or Claude bills your provider account. JSO does not become the AI provider when you use BYO keys.
  • JSO still tracks usage. The usage page shows guided checks, review capacity, and AI key health for your account.
  • Keep the key healthy. Test stored key every 30 days, and rotate or review provider access every 90 days or after team, provider, or billing-owner changes.
  • You can remove the key later. Removing it returns the account to preview or managed-plan behavior.

2. Check your AI status

Open AI usage. The page shows whether a provider key is configured, whether the stored-key test is current, whether a managed plan is active, and how much AI usage is available for the month.

If managed AI checkout is disabled for the account, use BYO key setup. Contact support only when the account needs a manually activated managed AI plan. The order page should not be treated as a required step.

3. Try the previews

The preview pages are useful before touching a production project. They show the answer shape and the kind of guidance JSO AI gives.

4. Use AI during protection work

Most users should start in the dashboard or with the CLI, not by writing direct HTTP calls.

  • Choosing settings: use the preset assistant to get a safer starting point for the online tool, desktop app, or API workflow.
  • Before a release: run compatibility checks on important code paths and public entry points.
  • After a problem: paste the runtime error into the explainer and review the suggested setting change.

5. Optional: add the CLI precheck

Release teams can add AI compatibility review before protection runs. This catches risky patterns before obfuscation quota is spent.

jso-protector --config jso.config.json --ai-precheck --ai-precheck-fail-on error

Use --ai-precheck-fail-on warning for stricter release gates, or never when you want advisory output only.

6. Optional: call the API directly

Use direct API calls when AI guidance needs to be part of internal tools or CI. Your normal JavaScript Obfuscator API key identifies the account; the saved provider key pays OpenAI or Claude for live model calls.

curl -fsS -X POST https://www.javascriptobfuscator.com/v1/ai/preset-suggest.ashx \
  -H "Content-Type: application/json" \
  -d "{
    \"APIKey\": \"$JSO_API_KEY\",
    \"APIPwd\": \"$JSO_API_PASSWORD\",
    \"description\": \"React SaaS frontend, balanced performance, lock to example.com\"
  }"

For full request and response details, use the JSO AI API reference. For language examples, use AI client examples.

Limits and billing

JSO AI uses capped monthly limits. When a limit is reached, the request pauses and the dashboard points to the next setup or upgrade path. BYO-key calls still count against JSO AI usage limits, but AI provider charges stay with your OpenAI or Claude account.

Managed JSO AI plans are separate from the core obfuscation plans and appear on the pricing page. Managed checkout is available only when billing is enabled for the account.

Next step: save and test your provider key in AI key settings, then confirm AI key health on AI usage.