# The easiest way to share a small internal tool with five coworkers

> Build it in a reachpad workspace, expose the port, and send the five of them one link. They sign in, they see the tool, and when you change it they see the change. No repository setup, no CI, no host account, no domain.

Part of the reachpad guides: https://reachpad.dev/guides. Rendered page: https://reachpad.dev/guides/share-internal-tool. Last checked 2026-08-23.

## The short version

Deploying software for five people is the absurd case. Every step of a real deploy pipeline exists to serve a scale those five will never reach, and every step is a place the tool can get stuck. The tool that lives in a spreadsheet forever lives there because the spreadsheet had no deploy step.

A reachpad workspace gives the tool the same property. It runs where it was written, the link is the workspace, and the five coworkers open it with a reachpad sign-in. When one of them asks for a column, you or the agent add the column and the link shows it.

## Step by step

```bash
reachpad create lookup
reachpad attach <workspace-id>
claude   # or codex, or opencode
# describe the tool; the agent writes and starts it on port 3000
reachpad ports expose 3000 <workspace-id>
```

Send the link `expose` prints. Each coworker needs a reachpad account, which takes as long as any sign-in. The link stays the same across your sessions, and `reachpad ports revoke 3000 <workspace-id>` takes it down when the tool is retired.

If a coworker should be able to change the tool too, [share the workspace](https://reachpad.dev/docs/sharing) with them as a collaborator. They get the terminal and the agent, in your session, and you can revoke it.

## A prompt that works

```bash
Build a web app that lets someone paste a customer email and see
their plan, signup date and last three invoices from the CSV at
./customers.csv. Keep it to one page. Start it on port 3000.
```

Small, one page, one input, one data file. The tools that get used are the ones that took a minute to describe.

## Where the data lives

For a lookup tool the data is usually a file the agent was given. It sits on the workspace disk and survives a pause. If the tool needs a live source, add the credential as a [secret](https://reachpad.dev/docs/secrets) rather than pasting it into the prompt. A collaborator you share with can read any secret written into the workspace, so share as viewer unless they need the keyboard.

## When reachpad is the wrong answer

- The five people are customers, not coworkers, and must not create an account with a third party. Deploy the tool behind your own sign-in, or put it on a [Cloudflare Tunnel](https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/) with an Access policy tied to your identity provider.
- The tool handles data that must not leave a network you control. reachpad workspaces run on the reachpad fleet.
- The tool has become the product. Once fifty people rely on it, it deserves a deployment; [reachpad vs Vercel](https://reachpad.dev/compare/vercel) is where that trade is laid out.

## Related

- [How to share a localhost app securely](https://reachpad.dev/guides/share-localhost-app)
- [How to host a full-stack app built by an AI coding agent](https://reachpad.dev/guides/host-ai-built-app)
- [reachpad vs GitHub Codespaces](https://reachpad.dev/compare/github-codespaces)

166 hours 40 minutes of agent work is shared across up to 10 workspaces, with no card required.
