Add comprehensive authentication support to enable onx push and onx sync
to work with remote repositories.
New Features:
- Created internal/git/auth.go with multi-method authentication
* SSH: ssh-agent and ~/.ssh key file support
* HTTPS: git credential helper, environment variables
* Auto-detection based on remote URL
* Credential caching for performance
- Updated internal/commands/push.go
* Integrate AuthProvider for remote authentication
* Graceful fallback if auth unavailable
- Updated internal/commands/sync.go
* Integrate AuthProvider for fetch operations
* Consistent auth handling with push
Benefits:
✅ onx push now works with authenticated remotes
✅ onx sync can fetch from private repositories
✅ Leverages existing git credential helpers
✅ Zero-configuration for standard setups
✅ SSH and HTTPS support
Successfully tested: pushed 4 branches to origin using onx push!
IMPORTANT: This repository now uses Onyx for its own development.
Updates:
- Added comprehensive dogfooding policy section to CLAUDE.md
- Specified which commands to use (onx) vs avoid (git)
- Listed exceptions for git usage (remote setup, PR creation, debugging)
- Added completion metadata to Milestone 4 checklist
- Emphasizes validation of user experience through real-world use
This ensures all future development (human and AI) uses Onyx commands,
validating the tool works correctly for actual development workflows.
- Add rebase engine with stacked rebase support
- Implement rerere integration for conflict resolution
- Create conflict resolution UI with clear guidance
- Implement onx sync command for remote synchronization
- Implement onx push command for publishing workstreams
- Add remote configuration helpers
- Register new commands in CLI
All core Milestone 4 features complete and tested.