@pidgeon-ai/cli 0.0.0-stage → 1.0.1

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/README.md CHANGED
@@ -1,3 +1,35 @@
1
- # Temporary Holding Version
1
+ # `@pidgeon-ai/cli`
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ The Pidgeon API from a terminal.
4
+
5
+ ```sh
6
+ npm install -g @pidgeon-ai/cli
7
+ export PIDGEON_API_KEY=pgn_live_…
8
+
9
+ pidgeon identities list --limit 5
10
+ pidgeon messages send --from you@yours.test --to a@b.test --to c@d.test --subject Hi --text Hello
11
+ ```
12
+
13
+ `pidgeon --help` lists every group; `pidgeon <group> <command> --help`
14
+ describes one command, with its endpoint and its flags.
15
+
16
+ ## It is generated
17
+
18
+ One command per operation in [the published
19
+ contract](https://pidgeon.ai/openapi.json), which is generated from the
20
+ schemas the API validates with. The group is the operation's tag, the
21
+ command is the rest of its `operationId`, and the flags are its parameters
22
+ and the top level of its request body.
23
+
24
+ So `pidgeon messages send` is `POST /messages` because the document says
25
+ so, and the day an endpoint gains a field this gains a flag. The same
26
+ document produces the TypeScript client this calls through, the Python
27
+ client, and the MCP server's tool list.
28
+
29
+ ## Flags
30
+
31
+ - Repeat a list flag: `--to one@example.com --to two@example.com`.
32
+ - `--flag value` and `--flag=value` both work, and a subject may contain
33
+ an `=`.
34
+ - A nested object takes JSON: `--some_field '{"a":1}'`.
35
+ - `PIDGEON_BASE_URL` points it somewhere other than production.