# spin open

**Spinbox is experimental: APIs change and data may be lost.** What is built and what proves it is on [Status](https://spin-stack.github.io/website/reference/status.md); what Spinbox does not do is on [Limitations](https://spin-stack.github.io/website/overview/limitations.md).

> spin open: Open a repository, branch, commit or pull request from its URL.

<!-- Generated by tools/refgen from spin:cmd/cli. Edit the source, not this file. -->

```
Open what a forge's URL names in a workspace of the project that has the repository, and
connect to it: the repository at the project's ref, a branch (/tree/<branch>), a commit
(/commit/<sha>) or a pull request (/pull/<n>), checked out as pr-<n>. The project is found by
its repository across your teams; with the repository in more than one team, --team says which.
A repository no project of yours has is one to make a project of first ('spin project create').

The workspace is the project's shape, and its first access is signed here with a key of your
keyring, with the settings approved - the repository is one of them. It ends in 'spin ssh'
unless --no-connect.

Examples:
  spin open https://github.com/spin-stack/qboot
  spin open https://github.com/spin-stack/qboot/pull/7
  spin open https://github.com/spin-stack/qboot/tree/release/2 --team /engineering

Usage:
  spin open <url> [flags]

Flags:
  -h, --help               help for open
      --name string        Workspace name (auto-generated if empty)
      --no-connect         Create the workspace and print it, without connecting
      --team string        The team whose project to open, by id, path or me, when more than one has the repository
      --timeout duration   How long --wait waits; by default, until the control plane gives up on it
      --wait               Return once the workspace is running, with --no-connect

Global Flags:
      --config string    config file (default is $HOME/.spin/config.yaml)
  -o, --output string    text for a person, or json: one document of what the API answered, and no prose (default "text")
      --profile string   named profile to use; SPIN_PROFILE names it when this flag does not (default "default")
```
