NetSuite's own AI writes a page for every script, custom record and workflow you own — and we serve them on a secure, private site. A copy of every page lands in your File Cabinet, so the documentation is always yours.
NetSuite's AI writes. We sync, compile and serve. You get a URL.
Inside your account, NetSuite's own AI drafts a page for every script and custom record.
Read-only, authenticated sync on a cadence we tune for you.
Render pages, resolve inline references, build the graph, wire backlinks.
On our secure infra, gated by email-code sign-in, always current.
A live graph of your account, a plain-English summary on every page, and backlinks that stay in sync with the code. Each of these runs automatically the moment your site goes live.
Every script, record, workflow and saved search becomes a node. Follow one custom field from the UI, into the user event script, out to the scheduled job — in two clicks, not two hours.
Every page opens with what the script actually does — its purpose, inputs, side effects and failure modes — written by NetSuite's AI from the real code and deployment context.
function afterSubmit(ctx) { // 248 lines of define/require // record mutations, GL postings return gl.postDeposit(…); }
Every custom field shows where it's read, written and searched. Cross-references between pages render as live embeds — so you never lose the thread.
Ask anything about any script, record or workflow. Answers come from your documentation, routed through NetSuite's internal AI — so no outside model ever touches your data.
lib_gl_posting.postDeposit() with the deposit's customer, amount and posting period. The AR aging refresh is fanned out by ar_aging_refresh.js on a scheduled cadence.
Not a sample. Not the “important ones.” Every one. Below: what the index looks like in an example account.
/** * @NApiVersion 2.1 * @NScriptType UserEventScript * @description Posts GL impact on customer deposit * and fans out to AR aging refresh. */ define(['N/record', 'N/search', './lib_gl_posting'], function(record, search, gl) { function afterSubmit(ctx) { if (ctx.type === ctx.UserEventType.CREATE) { var dep = ctx.newRecord; var amt = dep.getValue('payment'); gl.postDeposit({ customer: dep.getValue('customer'), amount: amt, period: dep.getValue('postingperiod') }); } } return { afterSubmit: afterSubmit }; });
Fires after a Customer Deposit is created and posts the corresponding GL impact via lib_gl_posting. CSDocs detected this script owns the "deposit → GL" side-effect that three other scripts assume but don't implement.
CSDocs is built for shops where compliance isn't optional. Here's what that means in practice.
No OpenAI, Anthropic, or third-party model ever sees your source or your docs. Generation stays inside your NetSuite account.
Your documentation travels from NetSuite to our servers over a private, encrypted connection — and stays encrypted once it's stored.
Access is tied to your company email and managed inside NetSuite. Signing in takes a one-time code sent to your inbox — no extra accounts, no shared passwords.
CSDocs isn't seeking SOC 2 certification itself. Instead, it gives you clean, AI-generated documentation you can reference when preparing for your own SOC 2, ISO or internal-controls reviews — making the audit story easier to tell.
CSDocs is opening a waitlist ahead of our Fall 2026 release. Installation takes an afternoon — after that your team never touches it again.
For the one-time install in your account.
Total hands-on time on your side.