All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.24.0 - 2025-11-03
- Package renamed from
linear-createtoagent2linear - CLI commands: Both
agent2linearanda2l(short alias) are now available - Repository: Moved to https://github.com/smorin/agent2linear
- npm package: Published as
agent2linearfor better discoverability - Publishing: Added
npfor automated releases (npm run release) - License: Added MIT license file for npm compliance
- All documentation and examples updated to reflect new naming
This major release completes the comprehensive issue management suite with four full-featured commands.
- 23+ creation options with full field coverage
- Auto-assignment to current user by default (override with
--no-assignee) - Member resolution via ID, alias, email, or display name
- Project resolution via ID, alias, or name lookup
- Config integration with
defaultTeamanddefaultProjectsupport - Team-aware validation for states and projects
- Smart defaults minimize required flags for common use cases
- Hierarchical issues with
--parentflag for sub-issue creation - Date parsing with natural language support ("tomorrow", "next week", etc.)
- Label and subscriber management with comma-separated lists
- Content from files with
--content-fileflag
- 33+ update options covering all mutable fields
- Add/remove patterns for labels and subscribers (
--add-labels,--remove-labels) - Clearing operations with
--no-*flags (assignee, dates, estimates, relationships) - Flexible updates - update one field or many simultaneously
- Team-aware validation with automatic state compatibility checks
- Mutual exclusivity enforcement prevents conflicting flag combinations
- Lifecycle operations with
--trashand--untrashflags - Parent relationship management with
--parentand--no-parent - Cross-team moves with automatic state validation
- Terminal display with comprehensive formatting
- JSON output mode for scripting and automation
- Web browser integration with
--webflag - Comments display with
--show-commentsflag - History display with
--show-historyflag - Identifier resolution supports both ENG-123 format and UUIDs
- Smart defaults - shows your assigned issues automatically
- Extensive filtering - 20+ filter options including:
- Team, state, priority, assignee, labels
- Project, cycle, parent relationships
- Date ranges (created, updated, due)
- Parent/sub-issue filters
- Flexible sorting by priority, dates, identifier, or other fields
- Multiple output formats: table (default), compact, JSON, URLs
- Performance optimized with batch fetching:
- Eliminates N+1 query patterns
- 11x+ reduction in API calls
- Sub-100ms response times for typical queries
- Pagination support with
--limitand--offset
- Batch fetching infrastructure (M15.1) eliminates N+1 queries across all issue commands
- Entity caching reduces redundant API calls
- Query optimization for list operations:
- Before: ~110 API calls for 10 issues with relationships
- After: ~10 API calls (11x reduction)
- Typical response time: <100ms
- Unit tests: 108 tests covering date parsing and smoke tests
- Integration tests: Comprehensive test suites for all 4 commands
- Type safety: Full TypeScript coverage with strict mode
- Error handling: Helpful error messages with context and suggestions
- Documentation: Complete README updates and inline code documentation
- Infrastructure improvements (M15.1):
BatchFetcherutility for optimized data loading- Enhanced resolvers for members, projects, cycles
- Improved type definitions for issue entities
- Config system updates for issue defaults
- JSON output in
issue viewincludes status messages (known limitation - documented) - Label validation in tests fails for cross-team labels (workspace-specific - not a bug)
- Date parser edge cases for relative dates
- Team validation for state transitions
(See archive/MILESTONES_*.md for detailed history of previous releases)