bsky-cli 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,141 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [1.0.0] - 2026-02-06
9
+
10
+ ### Added
11
+
12
+ #### Phase 1: Core Foundation
13
+ - **Authentication System**
14
+ - `bsky login` - Interactive authentication with app passwords
15
+ - `bsky logout` - Session management and credential clearing
16
+ - `bsky whoami` - Display authenticated user information
17
+ - Secure session storage in `~/.config/bluesky-cli/session.json`
18
+ - Support for custom API endpoints
19
+
20
+ - **Configuration Management**
21
+ - Automatic configuration directory creation
22
+ - Cross-platform config path support (macOS, Linux, Windows)
23
+ - `config.json` for persistent settings
24
+ - Color output toggle support
25
+
26
+ #### Phase 2: Posting & Timeline
27
+ - **Post Management**
28
+ - `bsky post` - Create text posts with rich features:
29
+ - Support for @mentions and URL detection
30
+ - Image attachments (up to 4 images per post)
31
+ - Alt text support for accessibility
32
+ - Reply functionality with proper thread tracking
33
+ - Quote posts
34
+ - Stdin input support for scripting
35
+ - `bsky delete` - Delete posts by AT URI
36
+
37
+ - **Timeline Features**
38
+ - `bsky timeline` - View home feed with formatted output
39
+ - `bsky posts` - View posts from specific users
40
+ - `bsky notifications` - View and track notifications:
41
+ - Likes, reposts, replies, mentions, follows, quotes
42
+ - Formatted notification type display
43
+ - Timestamp formatting
44
+
45
+ #### Phase 3: Social Features
46
+ - **User Discovery & Interaction**
47
+ - `bsky search` - Search for users by handle or display name
48
+ - `bsky profile` - View detailed user profiles:
49
+ - Display name, handle, bio
50
+ - Avatar and banner images
51
+ - Follower/following/post counts
52
+ - Account labels and moderation status
53
+
54
+ - **Follow Management**
55
+ - `bsky follow` - Follow users by handle
56
+ - `bsky unfollow` - Unfollow users by handle
57
+ - `bsky followers` - List user's followers
58
+ - `bsky following` - List users being followed
59
+
60
+ #### Phase 4: Direct Messages
61
+ - **DM Functionality**
62
+ - `bsky dm list` - List all DM conversations:
63
+ - Participant information
64
+ - Last message preview
65
+ - Unread message counts
66
+ - Formatted timestamps
67
+ - `bsky dm send` - Send direct messages:
68
+ - Text message support
69
+ - Stdin input support
70
+ - `bsky dm read` - Read conversation history:
71
+ - Chronological message display
72
+ - Sender identification
73
+ - Timestamp formatting
74
+
75
+ #### Phase 5: Polish & Release
76
+ - **Enhanced Error Handling**
77
+ - Authentication state validation
78
+ - Comprehensive input validation
79
+ - User-friendly error messages
80
+ - Graceful failure modes
81
+
82
+ - **Output Formatting**
83
+ - Colored terminal output with chalk
84
+ - Formatted tables for lists and feeds
85
+ - JSON output mode for all commands
86
+ - Consistent visual hierarchy
87
+
88
+ - **Documentation**
89
+ - Comprehensive README with full command reference
90
+ - Common workflow examples
91
+ - Scripting and automation guides
92
+ - Troubleshooting section
93
+ - Contributing guidelines
94
+
95
+ ### Technical Details
96
+
97
+ - **Stack**
98
+ - TypeScript for type safety
99
+ - Bun runtime for performance
100
+ - @atproto/api for Bluesky integration
101
+ - Commander.js for CLI framework
102
+ - Chalk for terminal styling
103
+ - cli-table3 for formatted output
104
+
105
+ - **Code Quality**
106
+ - ESLint configuration with TypeScript support
107
+ - Prettier for code formatting
108
+ - TypeScript strict mode
109
+ - Modular command architecture
110
+
111
+ ### Security
112
+
113
+ - Secure credential storage using OS-specific config directories
114
+ - App password support (never stores main password)
115
+ - Session token management
116
+ - Input validation and sanitization
117
+
118
+ ### Performance
119
+
120
+ - Built with Bun for fast startup and execution
121
+ - Efficient API request handling
122
+ - Minimal dependency footprint
123
+ - Optimized image upload process
124
+
125
+ ## [Unreleased]
126
+
127
+ ### Planned Features
128
+
129
+ - Thread view command
130
+ - Repost functionality
131
+ - Like/unlike commands
132
+ - Mute/block user management
133
+ - Custom feed support
134
+ - List management
135
+ - Draft post system
136
+ - Multi-account support
137
+ - Post scheduling
138
+
139
+ ---
140
+
141
+ [1.0.0]: https://github.com/yourusername/bluesky-cli/releases/tag/v1.0.0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Bluesky CLI Contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.