How it works
From your laptop to your team in one command
TeamOnly hosts internal tools built with AI, behind your company’s Google or Microsoft login. Here is the whole trip, start to finish. It takes about as long as reading it.
npx teamonly initAdded the TeamOnly skill and SDK npx teamonly deployLive at https://expenses.acme.teamonly.appOnly @acme.com accounts can sign inAdd TeamOnly to your project
Open a terminal in your project folder and run
npx teamonly init.It adds a short set of instructions that teach your AI the right app shape, so it doesn’t reach for tools we don’t support, like a separate database service or a login library. It also adds a small library your app uses to find out who is signed in and to save data.
npx teamonly initAdded .claude/skills/teamonly (for Claude Code)Added .cursor/rules/teamonly.mdc (for Cursor)Added the TeamOnly SDKNothing else in your project changed.Ask Claude Code or Cursor for the tool you want
Describe it the way you would to a coworker.
Build an expense approval tool. People upload a receipt with an amount and a reason. Their manager approves or rejects it. Finance can see everything approved this month and download it as a spreadsheet.
Try it on your laptop, ask for changes, and keep going until it does what you need.
In an AI coding tool, someone types: Build me an expense approval tool for my team. The app's screen takes shape: a list of expenses, each with an Approve button. Then one command, npx teamonly deploy, and the tool is live at expenses.acme.teamonly.app.
A plain-English request becomes an app on your laptop. Deploy
Run
npx teamonly deploy. The first time, it asks you to sign in to TeamOnly.Your app is packed up and put online. On the first deploy it also gets its own database and a place for files. If your app needs an API key or a password, add it with
npx teamonly secrets set, never in the code.npx teamonly secrets set QUICKBOOKS_KEYSaved. Your app reads it as a secret, not from code.npx teamonly deployPacking your app...Setting up database and file storage...Live at https://expenses.acme.teamonly.appSend the link
Paste it wherever your team talks: Slack, Teams, email, a sticky note.
The link works for anyone with your company email and no one else. If it gets forwarded outside the company, the person at the other end sees a sign-in screen they cannot get past.
expenses.acme.teamonly.app
Your coworker signs in with their work account
They click “Sign in with Google” or “Sign in with Microsoft” and use the account they already have.
No new password, no invite to another tool. Your app is told who they are, by name and email, so it can show “approved by Sam” without you writing any login code.

Change it and deploy again
Someone asks for a new column. Ask your AI, run deploy, done.
The address stays the same and the data stays where it was. If something breaks,
npx teamonly logsshows you what happened.Add a cost center column to the expense listnpx teamonly deployUpdated https://expenses.acme.teamonly.appSame link, same data.
What happens behind the door
You don’t need to know any of this to use TeamOnly. It is here because “is this safe?” is a fair question.
Login is checked before your app runs
Every visit goes through our sign-in first. Your app’s code only runs for people who already passed, so a bug in your app cannot let a stranger in.
Each app gets its own database
Your expense tool and your inventory tool do not share data, files or secrets. One app cannot read another’s.
Nothing is public
Apps are never listed or indexed by search engines. There is no public option to switch on by mistake.
The technical version, for whoever asks: how apps are kept private and separate.
What does init add to my project?
Two things. A short instruction file your AI tool reads (a skill for Claude Code, rules for Cursor) that explains the kind of app TeamOnly runs, and a small library your app uses to get the signed-in person, the database, files and secrets. Nothing else in your project changes.
What kind of app can I deploy?
A web app with a React front end and a small API behind it, all in JavaScript or TypeScript. That is what the instructions teach your AI to write, and it covers forms, lists, dashboards, approvals and uploads. Python, PHP and other stacks are not supported yet.
Can I update the app after it is live?
Yes. Ask your AI for the change and run npx teamonly deploy again. The link stays the same and the data stays put.
Where are my logs?
Run npx teamonly logs to see what your app is doing right now, including errors. Recent logs will also show in the dashboard.
Early access
Get on the list.
We are new and not open yet. Leave your work email and you will be one of the first teams to deploy.
Want to tell us what you are building? Use the longer waitlist form. Questions go to hello@teamonly.dev, and a person answers.