Skip to main content

Spawn multi-repo worktree workspaces for feature development

Project description

Spawnpoint

Spawn multi-repo worktree workspaces for feature development.

Working on a feature that spans multiple repos? Spawnpoint creates a dedicated folder with git worktrees from each repo on the same branch, installs dependencies, and copies over config files — so you can start coding (or start a Claude session) immediately.

Install

pipx install spawnpoint

Or with pip:

pip install spawnpoint

Quick Start

spawnpoint create     # select repos, name a branch, spawn worktrees
spawnpoint cleanup    # select and remove worktree workspaces

On first run, Spawnpoint will ask you to configure your scan directories and workspace location.

How It Works

  1. Select repos — Spawnpoint scans your code directories and presents a fuzzy-searchable list of git repos
  2. Name a branch — Enter a branch name for your feature
  3. Spawn — For each repo, Spawnpoint:
    • Creates a git worktree (or new branch if needed)
    • Initializes submodules
    • Copies .env files, CLAUDE.md, and other config files from the original repo
    • Installs dependencies (detects npm/pnpm/yarn/bun, pip/uv/poetry, bundler, go modules)

All worktrees land in a single folder (~/.spawnpoint/workspaces/<branch-name>/) so you can open the whole workspace in your editor or start an AI coding session.

Commands

Command Description
spawnpoint create Spawn worktree workspaces
spawnpoint cleanup Remove worktree workspaces
spawnpoint init Run interactive setup
spawnpoint config View current config
spawnpoint config --edit Edit config in $EDITOR
spawnpoint config --reset Reset to defaults
spawnpoint update Update to latest version
spawnpoint --version Show version

Configuration

Config lives at ~/.spawnpoint/config.toml:

# Directories to scan for git repos
scan_dirs = ['~/code', '~/projects']

# Where workspaces are created
worktree_dir = '~/.spawnpoint/workspaces'

# How deep to scan for repos (1-4)
scan_depth = 2

# Files/dirs to copy into new worktrees
copy_patterns_globs = ['.env*']
copy_patterns_files = ['AGENT.md', 'CLAUDE.md', 'GEMINI.md']
copy_patterns_dirs = ['.vscode', 'docs']

# Auto-install dependencies after worktree creation
auto_install_deps = true

When creating a new branch, Spawnpoint automatically detects the repo's default branch to use as the base. No configuration needed.

Requirements

  • Python 3.10+
  • git

Uninstall

pipx uninstall spawnpoint
rm -rf ~/.spawnpoint

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spawnpoint-0.2.0.tar.gz (15.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spawnpoint-0.2.0-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file spawnpoint-0.2.0.tar.gz.

File metadata

  • Download URL: spawnpoint-0.2.0.tar.gz
  • Upload date:
  • Size: 15.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for spawnpoint-0.2.0.tar.gz
Algorithm Hash digest
SHA256 761d1ebda28089d995150f8c66a314773a22db3a034626e0610cb0dbcb04ff05
MD5 f8ee1afd6b6245dae11ae0790dfe81eb
BLAKE2b-256 bb8fb8007fa9d759de0d03b969f54d28dd3fcc611dc6a101081d56f4af597f7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for spawnpoint-0.2.0.tar.gz:

Publisher: publish.yml on mihirgupta0900/spawnpoint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file spawnpoint-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: spawnpoint-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for spawnpoint-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 768e454eb34166aa6c5bddbc685a9fd81bab3edde8bef9b0fee9d2d21eead889
MD5 5863a6e934ac3eebc642f836a9de0dfa
BLAKE2b-256 2e5a446f3333b1cf2cc32f24396902019d120f19a3124f4992020d50694493ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for spawnpoint-0.2.0-py3-none-any.whl:

Publisher: publish.yml on mihirgupta0900/spawnpoint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page