Now in early access

An AI co-worker,
inside NetSuite.

Chartstone Studio is a single Suitelet that runs an AI agent inside your NetSuite account. SuiteQL, native financial reports, record CRUD, custom fields, deployments, saved searches — driven by chat, executed under your own role and permissions. No install, no bridge, no developer toolchain.

You Show me the top 10 customers by invoice total this year.
Studio → writing SuiteQL · joining transaction + customer · ordering by amount · returning 10 rows ✓
You Add a custom field "Renewal Risk" to the customer record. List type: Low/Medium/High.
Studio → provisioning custom list · creating field · applying to customer record · awaiting confirmation ⏳

One Suitelet. Open the URL, start asking questions, get real answers from the live account.

Why two products

Same mission, two different surfaces.

Pick the one that matches where you work.

Chartstone

For tools reaching in from outside

For developers and integrators who want their tools — Claude Code, Cursor, custom scripts, AI agents — to reach into NetSuite from their own machine.

chartstone.io

Chartstone Studio

For people working inside

For anyone who works inside NetSuite — admins, analysts, developers — and wants an AI co-worker there with them. No install, no bridge, no developer toolchain.

chartstone.studio

Architecture

Embedded, not bolted on.

The agent runs as a Suitelet on the customer's own account. Every call executes under the active user's role, permissions, and audit trail — exactly as if they did it themselves. Nothing leaves the account. No middleware, no proxy, no second system to keep in sync.

A real agent, not a chatbot

Plans, calls a tool, observes the result, plans the next step — the same loop that powers Claude Code and Cursor, tuned for NetSuite. Multi-step work happens in one conversation.

One-file install

A single Suitelet script, deployed once. No build step, no package manager, no infrastructure. Five minutes from upload to running.

Two LLMs out of the box

Bring your own Anthropic API key for the full Claude tool-use loop, or use NetSuite's bundled Cohere via N/llm for zero per-token cost.

Real reports, not approximations

When you ask for an Income Statement, you get the Income Statement — driven through NetSuite's actual report runner, with real subtotals, eliminations, and formulas.

Stateless on the server

The Suitelet executes one tool per request and returns JSON. The conversation lives in the browser. The API key is never persisted server-side.

Permission-aware by construction

The agent is bound by the same permission system that governs every NetSuite user. It can only see what your role can see, and only do what your role can do.

Capabilities

Every layer of NetSuite, conversational.

From raw SuiteQL up to financial reports, from custom field creation down to record-by-record CRUD.

Query and reporting

Run SuiteQL with auto-pagination. Inspect every standard report's filter shape, then run it for any period or slice. Export saved searches. Sum, group, pivot — answer board-grade questions without leaving the chat.

Record CRUD

Create, load, update, and delete any record type — customers, items, transactions, custom records. Bulk variants for batches of up to a hundred. The kind of work that normally needs a one-off SuiteScript, available conversationally.

Customizations

Provision custom lists, custom record types, and custom fields end-to-end. Inspect, update, or extend existing customizations. Configure roles and permissions. Sensitive operations confirm before applying.

Scripting and deployment

Evaluate ad-hoc SuiteScript inside an authenticated NetSuite page. List script deployments, toggle them, fetch execution logs. Trigger workflows. Useful for one-off data fixes, debugging, and unblocking integrations.

Communication and CRM

Send email under the active user with attachments. Create tasks, events, and phone-call records. Search customers and items. Connect activity back to specific records.

Files and downloads

Drag-drop or paste files directly into the composer. CSVs, JSON, code, screenshots — anything readable becomes part of the conversation. Generated exports come back as downloadable artifacts; the bytes never round-trip through the LLM.

Built for real NetSuite work

What sets Studio apart.

A handful of design choices distinguish Chartstone Studio from generic chat-over-NetSuite tools.

Skills — bundled NS knowledge

Curated reference documents on SuiteQL essentials, record types, and roles & permissions. Before writing a non-trivial query or touching unfamiliar territory, the agent loads the relevant skill and follows it. NS-specific quirks override training-data guesses.

Projects — your own context docs

Define a project with conventions, account quirks, and identifiers — "we use subsidiary 2 for US," "our SOs have a custom column called custcol_x" — and the agent reads it on every turn. Stops asking. Starts using.

TOON — token-efficient by design

Tabular results encode as TOON, a compact CSV-like format that uses a fraction of the tokens of repeated JSON keys. Long results truncate intelligently with head + tail framing. Conversations near the context cap auto-compact older turns.

Artifacts — clean downloads

The agent can hand the user a downloadable file without writing to the file cabinet. Useful for one-off exports, generated reports, and analysis output that shouldn't leave clutter. The bytes never round-trip through the LLM.

How it works

Four steps. No server, no bridge, no credentials anywhere outside NetSuite.

01

Install the bundle

Search for Chartstone Studio in SuiteBundler and install. The Suitelet, script record, and deployment land in your account — no file upload, no developer toolchain.

02

Set your subscription ID

On the script deployment, paste the subscription ID we issued at signup. Then add the roles that should have access on the Audience subtab.

03

Open the URL

The chat UI loads in your browser. The agent is already running, signed in as you, with your permissions.

04

Go!

"Show me the top 10 customers by invoice total this year." "Run the A/R Aging Summary for last quarter." The agent plans, calls the right tools, returns answers.

In practice

Built for everyone who works inside NetSuite.

Four scenarios across the people who use Studio every day.

Ask
"Which sales orders shipped this month but haven't been invoiced yet?"
Studio delivers
The agent writes SuiteQL joining transaction and item-fulfillment status, returns the open-but-shipped list with totals — no saved search to design, no report to build.
Ask
"Add a custom field 'Renewal Risk' to the customer record, list type with values Low/Medium/High."
Studio delivers
The agent provisions the custom list, creates the field, applies it to the customer record, and confirms the change before saving. The audit trail shows it under your name.
Ask
"Run the Income Statement for Q1, then export it as CSV."
Studio delivers
The agent calls the native report runner with the right period, returns the result, and offers a downloadable artifact. Real subtotals, real eliminations, no SuiteQL approximation.
Ask
"What's broken in this user event script?" (paste error screenshot)
Studio delivers
The agent reads the screenshot, looks up the deployment, fetches recent execution logs, identifies the failing line, and proposes a fix.

Get Chartstone Studio

Chartstone Studio is in early release (private beta). We're onboarding a small number of customers right now and refining the product based on what they actually do with it.