This change makes index parameters more flexible by accepting both
numeric and string values. LLM agents often pass issue/PR indices
as strings (e.g., "123") since they appear as string identifiers in
URLs and CLI contexts. The implementation:
- Created pkg/params package with GetIndex() helper function
- Updated 25+ tool functions across issue, pull, label, and timetracking operations
- Improved error messages to say "must be a valid integer" instead of misleading "is required"
- Added comprehensive tests for both numeric and string inputs
This improves UX for MCP clients and LLMs while maintaining backward
compatibility with existing numeric callers.
Fixes: #121
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>