# How to Deploy an Internal App with Cursor: Auth, Secrets and Review

Cursor can now host the tools its agents build, but a useful internal app still needs deliberate access rules and checks beyond a successful preview.

By Paras Madan | 2026-11-07


To deploy an internal app with Cursor, start a cloud agent, explicitly request an app, preview the result and choose Publish. Cursor handles hosting, authentication and a Postgres database when needed. Before sharing the live link, decide who should have access and test what those people can actually do.

Cursor [introduced live app deployment on November 5](https://cursor.com/changelog/build-live-apps). It is available on paid plans with cloud agents enabled, using new or existing repositories on Cursor Origin and GitHub. The release covers running applications, not simply sharing a screenshot or a read-only report from an agent conversation.

That is a useful reduction in setup work. It also means a dashboard that once remained an experiment can become a tool colleagues depend on, sometimes before anyone has decided who owns it.

## Start with one bounded internal workflow

For a first app, choose something whose correct behavior you can explain without a long specification. Consider a hypothetical workshop-registration tool: employees submit their names, choose a session and see whether they have a place. Organizers need attendance totals, while ordinary participants should see only their own registration.

A useful starting prompt would be: “Build an internal workshop-registration app. Use sample data first. Participants can create and view their own registration. Organizers can manage session capacity and see attendance. Explain how you will enforce those permissions before connecting real data.”

This is an example brief, not a tested deployment. Its value is that it defines separate users and permissions before the interface exists. A prompt that only asks for a polished registration dashboard leaves the most important decisions unresolved.

## Use a cloud agent and inspect the preview

The [Apps documentation](https://cursor.com/docs/cloud-agent/apps) says this deployment feature is unavailable to local agents. Once the cloud agent prepares the app, a tray offers preview and publication. You select the URL during publication; Cursor reports issues if its checks prevent deployment.

Use the preview to check the ordinary flow and its failures. For the registration example, try a full session, a duplicate submission and a request with a missing field. Ask for tests covering those cases, then inspect whether the tests actually ran and what they checked.

**A working preview proves only the behavior you exercised.** It says little about another user's access, a failed database operation or two people taking the last available place at the same time. Those cases belong in the review before colleagues start relying on the tool.

## Keep app secrets out of the conversation

Cursor's Apps flow requests integration credentials through its secret controls; the documentation says the agent does not see their values. Team secrets are usually created by an administrator in the Apps dashboard, with personal secrets available where permitted.

For a registration app, a production database credential with broad write access would be an unnecessarily risky starting point. Prefer a separate development dataset and a narrowly scoped credential. Do not paste passwords into the prompt to make setup faster, and do not ask the agent to embed them in source files.

There is also a build-time boundary to consider. Cursor's [Cloud Agent security guide](https://cursor.com/docs/cloud-agent/security) describes agents executing commands autonomously and the risk of malicious instructions in content they read. Review the repositories, tools and network access the agent needs before introducing sensitive data, rather than relying entirely on the final publish check.

## Choose sharing scope before sending the link

Private and team apps require Cursor sign-in. Sharing can be limited to invited people or groups, widened to the team, or made public where allowed. Public access is disabled by default for Teams and Enterprise, though an administrator can enable it. Individual plans can also publish publicly.

Start with a small review group. Test with an invited account and a separate account that should have no access. Then test the application's own roles: a participant must not gain organizer powers by changing a URL or submitting a different record identifier.

Authentication at the entrance and authorization inside the application answer different questions. Cursor sign-in can establish who opened the app, while the app still needs to decide which records and actions that person may access. A shared team dashboard can leak information even when every visitor is a legitimate employee.

## Treat publish checks as one layer of review

Cursor runs automated security checks before publication, including checks for exposed secrets, and requires an explicit publish action. Administrators can inspect team apps, add review rules and unpublish an app. Those controls are useful, but passing a review should not become a blanket claim that the application is production-safe.

Before a wider rollout, name an owner, document how to stop the app and verify how important data can be recovered. Check expected usage costs and hosting constraints rather than assuming that inclusion on a paid plan means unlimited operation. The launch announcement does not establish an application-specific service guarantee.

For the workshop tool, success means the right people can register, capacity stays accurate and organizers know what to do when something breaks. A live URL is the beginning of that responsibility. Making deployment easier should leave more attention for those checks, rather than remove them from the workflow.

I'm Paras. I work at the intersection of AI, engineering and distribution.

I help technical founders turn developer-tool capabilities into practical guides and clear product stories that earn trust.

[Book a 30-minute call](https://cal.com/paras-madan/30min).
