mirror of
https://github.com/samsonjs/vibetunnel.git
synced 2026-04-04 11:05:53 +00:00
* Prevent recursive VibeTunnel sessions (GitHub #95) Added detection and prevention of nested VibeTunnel sessions to avoid recursive 'vt' command execution. Changes: - Set INSIDE_VIBETUNNEL and VIBETUNNEL_SESSION environment variables when creating PTY sessions - Added check in vt script to detect if already inside a VibeTunnel session - Shows helpful error message when recursive session is attempted This prevents the confusing behavior where users could run 'vt' inside a VibeTunnel session, creating nested terminal instances. Now users get a clear error message explaining they're already in a VibeTunnel session. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * Improve recursive session prevention based on PR feedback - Consolidate to single environment variable VIBETUNNEL_SESSION_ID - Add session ID for debugging purposes as requested - Show session ID in error message for better user feedback - Remove redundant environment variables (INSIDE_VIBETUNNEL, VIBETUNNEL_SESSION) This addresses feedback from PR #104 to use a single, more informative environment variable that serves both purposes: preventing recursion and providing debugging information. --------- Co-authored-by: Claude <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| docs | ||
| scripts | ||
| VibeTunnel | ||
| VibeTunnel-Mac.xcodeproj | ||
| VibeTunnelTests | ||
| .gitignore | ||
| .swiftformat | ||
| .swiftlint.yml | ||
| CHANGELOG.md | ||
| Package.swift | ||
| README.md | ||
| VibeTunnel-Info.plist | ||
VibeTunnel macOS App
This directory contains the macOS version of VibeTunnel.
Quick Start
Building
# Using Xcode
xcodebuild -workspace VibeTunnel.xcworkspace -scheme VibeTunnel build
# Using build script
./scripts/build.sh
Running Tests
xcodebuild -workspace VibeTunnel.xcworkspace -scheme VibeTunnel test
Creating Release
./scripts/build.sh --configuration Release --sign
./scripts/create-dmg.sh build/Build/Products/Release/VibeTunnel.app
Project Structure
mac/
├── VibeTunnel/ # Source code
│ ├── Core/ # Core services and models
│ ├── Presentation/ # Views and UI components
│ └── Utilities/ # Helper utilities
├── VibeTunnelTests/ # Unit tests
├── scripts/ # Build and release scripts
├── docs/ # macOS-specific documentation
└── private/ # Signing keys (not in git)
Scripts
build.sh- Build the app with optional signingcreate-dmg.sh- Create a DMG for distributionrelease.sh- Full release processmonitor-ci.sh- Monitor CI build statussign-and-notarize.sh- Code signing and notarization
Documentation
See docs/ for macOS-specific documentation:
- Code signing setup
- Release process
- Sparkle update framework
- Development signing
CI/CD
The app is built automatically on GitHub Actions:
- On every push to main
- On pull requests
- For releases (tagged with v*)
See .github/workflows/swift.yml for the build configuration.