Add initial changelog and clarify README

This commit is contained in:
Peter Steinberger
2025-11-28 08:10:07 +01:00
parent 5ae8801b23
commit d1202b6832
2 changed files with 22 additions and 6 deletions
+10
View File
@@ -0,0 +1,10 @@
# Changelog
All notable changes to this project will be documented in this file.
## 0.1.0 — 2025-11-28
- Initial release of `bird`, a CLI for posting tweets and replies via the Twitter/X GraphQL API.
- Supports posting tweets, replying to existing tweets by ID or URL, and reading tweet details.
- Credential resolution priority: CLI flags, environment variables (`AUTH_TOKEN`, `CT0`, fallbacks `TWITTER_AUTH_TOKEN`, `TWITTER_CT0`), then macOS Chrome cookies.
- Includes credential check command and human-friendly output for tweet metadata.
- Bundled TypeScript sources, Vitest coverage, and Biome lint/format configuration.
+12 -6
View File
@@ -1,6 +1,6 @@
# bird
# bird 🐦
A command-line tool for posting tweets and replies via Twitter/X's GraphQL API.
`bird` is a focused command-line tool for posting tweets, replying, and reading tweet details using Twitter/X's GraphQL API. It keeps setup minimal while supporting common workflows for automation or scripting.
## Installation
@@ -12,6 +12,12 @@ pnpm run binary # Creates the 'bird' executable
## Usage
### Commands at a glance
- `bird tweet "<text>"` — post a new tweet.
- `bird reply <tweet-id-or-url> "<text>"` — reply to a tweet using its ID or URL.
- `bird read <tweet-id-or-url> [--json]` — fetch tweet content as text or JSON.
- `bird check` — show which credentials are available and where they were sourced from.
### Post a tweet
```bash
@@ -44,7 +50,7 @@ bird check
## Authentication
The tool resolves credentials in the following order of priority:
`bird` resolves credentials in the following order of priority:
1. **CLI arguments** (highest priority)
```bash
@@ -90,6 +96,6 @@ pnpm run lint:fix
## Notes
- Chrome cookie extraction requires macOS (uses `sqlite3` and `security` CLI tools)
- The keychain access may block when running over SSH - use env vars instead
- Twitter may rotate GraphQL query IDs - update `src/lib/twitter-client.ts` if needed
- Chrome cookie extraction requires macOS (uses `sqlite3` and `security` CLI tools).
- The keychain access may block when running over SSH; use environment variables instead.
- Twitter/X may rotate GraphQL query IDs; update `src/lib/twitter-client.ts` if requests start failing.