fix: add validation checks to repo init and support dots in GitHub URLs#320
Merged
dlorenc merged 1 commit intodlorenc:mainfrom Jan 28, 2026
Merged
fix: add validation checks to repo init and support dots in GitHub URLs#320dlorenc merged 1 commit intodlorenc:mainfrom
dlorenc merged 1 commit intodlorenc:mainfrom
Conversation
Fixes two bugs in the init command: 1. The init command now checks if a repository is already initialized or if the tmux session already exists before attempting to create them. Previously, users would get cryptic "exit status 1" errors when trying to re-initialize a repo. Now they get clear error messages with actionable suggestions. 2. The GitHub URL parser now supports repository names containing dots (e.g., demos.expanso.io). The regex was too restrictive and excluded dots from repo names, causing fork detection to fail for repos with dotted names. Changes: - Add pre-flight checks in initRepo to verify repo doesn't exist in state - Check if repository directory already exists before cloning - Check if tmux session exists before attempting to create it - Update regex in ParseGitHubURL to allow dots in repository names - Update test to reflect that dots in repo names are now supported Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
aronchick
added a commit
to aronchick/multiclaude
that referenced
this pull request
Jan 29, 2026
…Ls (dlorenc#320) Fixes two bugs in the init command: 1. The init command now checks if a repository is already initialized or if the tmux session already exists before attempting to create them. Previously, users would get cryptic "exit status 1" errors when trying to re-initialize a repo. Now they get clear error messages with actionable suggestions. 2. The GitHub URL parser now supports repository names containing dots (e.g., demos.expanso.io). The regex was too restrictive and excluded dots from repo names, causing fork detection to fail for repos with dotted names. Changes: - Add pre-flight checks in initRepo to verify repo doesn't exist in state - Check if repository directory already exists before cloning - Check if tmux session exists before attempting to create it - Update regex in ParseGitHubURL to allow dots in repository names - Update test to reflect that dots in repo names are now supported Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes two bugs in the
multiclaude initcommand:Better error messages for re-initialization attempts: The init command now checks if a repository is already initialized or if the tmux session already exists before attempting to create them. Previously, users would get cryptic "exit status 1" errors. Now they get clear error messages with actionable suggestions.
Support dots in GitHub repository names: The GitHub URL parser now correctly handles repository names containing dots (e.g.,
demos.expanso.io). The regex was too restrictive and excluded dots from repo names, causing fork detection to fail.Changes
internal/cli/cli.go:1083-1110: Add pre-flight validation checks ininitRepo()internal/fork/fork.go:107-115: Update regex inParseGitHubURL()to allow dots in repository names[^/.]+to[^/]+?to allow any characters except slashesinternal/fork/api_test.go:308-314: Update test case to reflect dots are now supportedTest Plan
go test ./...demos.expanso.ioRelated Issues
Fixes the bug reported where
multiclaude init https://github.com/expanso-io/demos.expanso.io demos-expanso-iofailed with:unable to parse GitHub URL: https://github.com/expanso-io/demos.expanso.iotmux create session failed: exit status 1🤖 Generated with Claude Code