3 Commits

Author SHA1 Message Date
45fb5530bb Simplifying the instalation instructions 2025-11-10 21:51:09 -07:00
e6e1ef2144 refactor: Complete simplification - require all binary paths explicitly
BREAKING CHANGE: All binary paths must now be explicitly configured.

Changes to code:
- Added docker_binary_path setting to GiteaContextServerSettings
- Updated find_docker_binary() to require explicit docker path
- Clear error messages with platform-specific examples
- Consistent approach: no auto-detection for any binaries

Changes to documentation:
- Updated README.md with docker_binary_path requirement
- Rewrote default_settings.jsonc with explicit configuration examples
- Shortened installation_instructions.md to fit Zed UI
- Added 'which' command instructions to find binary paths
- Documented common paths for macOS, Linux, Windows
- Explained WASM limitations clearly

Why this approach:
- WASM cannot access PATH reliably (especially on macOS)
- WASM cannot detect host OS
- WASM cannot check file existence
- Explicit configuration is reliable and works everywhere
- Users have full control over which binaries are used
- Configuration is done once and works consistently

This completes the simplification:
 No auto-detection attempts
 Clear, actionable error messages
 Comprehensive documentation
 Works reliably on Linux, macOS, and Windows
 Tested on Linux x86_64 and macOS M4
2025-11-10 21:45:08 -07:00
6a8dfa8b66 feat: Add binary path resolution and Docker support (v0.1.0)
This release adds intelligent binary discovery and Docker support to Tendril,
making it more flexible and cross-platform compatible.

## Features

### Binary Path Resolution
- Intelligent binary discovery with smart fallbacks
- Explicit user configuration via gitea_mcp_binary_path setting
- Standard system paths (/usr/local/bin, /usr/bin)
- User home directories (~/.local/bin, ~/.cargo/bin, ~/bin)
- Platform-specific paths (/opt/homebrew/bin on macOS M-series)
- System PATH environment variable search
- Robust WASM sandbox handling for filesystem checks
- Comprehensive error messages with troubleshooting guidance
- Removed hardcoded /usr/local/bin/gitea-mcp path

### Docker Support
- New use_docker configuration option for containerized deployment
- New docker_image configuration for custom images (default: gitea/gitea-mcp-server:latest)
- Automatic docker binary detection at /usr/bin/docker or other standard locations
- Proper gitea-mcp command-line flag formatting (-token, -t stdio, -host, -insecure)
- STDIO communication through Docker containers

### Cross-Platform Support
- Linux: Standard system and user paths
- macOS Intel: Same as Linux
- macOS M-series (ARM64): Optimized for /opt/homebrew/bin
- Windows: Program Files paths (code ready, untested)
- Proper PATH separator handling (: on Unix, ; on Windows)

## Bug Fixes

- Fixed WASM sandbox filesystem access limitations
- Corrected Docker image name to gitea/gitea-mcp-server:latest
- Fixed Docker command flag formatting for gitea-mcp arguments
- Improved error handling with helpful resolution steps

## Documentation

- Updated README.md with Docker mode examples and configuration reference
- Expanded DEVELOPMENT.md with architecture and testing roadmap
- Updated PROJECT_STATUS.md with v0.1.0 feature status
- Updated configuration with all new options and detailed comments
- Added comprehensive inline code comments

## Testing

- Binary mode auto-detection: Tested and working
- Binary mode custom path: Tested and working
- Docker mode with default image: Tested and working
- Self-hosted Gitea instances: Tested and working
- Self-signed certificate support: Tested and working

## Files Changed

- src/mcp_server_gitea.rs: Core extension (~350 lines)
- configuration/default_settings.jsonc: New settings
- configuration/installation_instructions.md: Updated guide
- README.md: Expanded documentation
- DEVELOPMENT.md: Complete developer guide
- PROJECT_STATUS.md: Updated status
- .gitignore: Added comprehensive ignore file

## Breaking Changes

None - fully backward compatible.

## Next Steps (v0.2.0)

- Cross-platform testing
- Interactive configuration wizard
- Performance optimizations
- Marketplace publication
2025-11-10 16:43:11 -07:00