neodrop-cli 1.1.0 → 2.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/README.md CHANGED
@@ -39,14 +39,23 @@ No browser is auto-launched, no local port is opened, no callback is needed —
39
39
 
40
40
  ## Commands
41
41
 
42
- | Area | Commands |
43
- |---|---|
44
- | Identity | `me` · `whoami` · `tokens list` |
45
- | Channels | `channels list` · `get` · `search` · `create` · `subscribe` · `unsubscribe` · `categories` · `by-category` |
46
- | Posts | `posts list` · `get` · `search` · `feed` |
47
- | Raw procedure | `api <procedure> [--json '…' \| --stdin] [--mutation]` |
48
-
49
- Full command reference: [`references/commands.md`](https://github.com/NeoDropAI/neodrop-skills/blob/main/skills/neodrop-cli/references/commands.md).
42
+ | Area | What you can do | Commands |
43
+ |---|---|---|
44
+ | **Identity** | Who am I, and manage my access tokens | `me` · `whoami` · `tokens list` · `tokens revoke <id>` |
45
+ | **Channels** | Browse, search, create (async) and subscribe to channels | `channels list` · `get` · `search` · `create` · `create-status` · `run` · `subscribe` · `unsubscribe` · `categories` · `by-category` |
46
+ | **Posts** | Read and search content; view your subscribed feed | `posts list` · `get` · `search` · `feed` |
47
+ | **Chat** | Message a Neodrop AI assistant and get the full reply | `chat "<message>" [--session <id> \| --channel <id>]` · `chat history` · `chat sessions` |
48
+ | **Raw procedure** | Call any tRPC procedure with no sugar command | `api <procedure> [--json '…' \| --stdin] [--mutation]` |
49
+
50
+ Every command takes `--help` for its arguments and `--pretty` for indented JSON. Full reference with per-command tables: [`references/commands.md`](https://github.com/NeoDropAI/neodrop-skills/blob/main/skills/neodrop-cli/references/commands.md).
51
+
52
+ ### Chat, in one line
53
+
54
+ ```bash
55
+ npx neodrop-cli chat "What's new in my subscriptions this week?"
56
+ ```
57
+
58
+ Sends the message, blocks until the assistant's reply is fully generated (server-side, so it survives disconnects), and prints `{sessionId, reply, newMessages}` as JSON. Reuse the printed `sessionId` with `--session` to continue the conversation, or add `--channel <id>` to talk to a specific channel's assistant.
50
59
 
51
60
  ## Use as an AI-agent skill
52
61
 
package/SKILL.md CHANGED
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  name: neodrop-cli
3
- version: 1.1.0
3
+ version: 2.0.0
4
4
  tested_with:
5
- neodrop_api: "2026-06"
5
+ neodrop_api: "2026-07"
6
6
  node: ">=18"
7
- description: Operate the Neodrop platform (neodrop.ai) as the current user — create channels, subscribe / unsubscribe, search public channels and content, browse categories, list your own channels, and read post details. Trigger this skill whenever the user mentions Neodrop or neodrop.ai, "my channels" / "what am I subscribed to", "post" / "posts" (Neodrop's content units — also called "grain" / "grains", the legacy name), "create a channel" / "subscribe to this channel" / "search channels", public content / public feed / subscribed feed — or the same intent in any language. Always call `npx neodrop-cli <command>`; do NOT use fetch / curl / hand-rolled HTTP — this skill already handles auth, JSON serialization, error codes and locale defaults.
7
+ description: Operate the Neodrop platform (neodrop.ai) as the current user — create channels, subscribe / unsubscribe, search public channels and content, browse categories, list your own channels, read post details, and chat with Neodrop's AI assistants (global or per-channel, sending a message and receiving the full reply). Trigger this skill whenever the user mentions Neodrop or neodrop.ai, "my channels" / "what am I subscribed to", "post" / "posts" (Neodrop's content units — also called "grain" / "grains", the legacy name), "create a channel" / "subscribe to this channel" / "search channels", "ask Neodrop's assistant" / "chat with my channel", public content / public feed / subscribed feed — or the same intent in any language. Always call `npx neodrop-cli <command>`; do NOT use fetch / curl / hand-rolled HTTP — this skill already handles auth, JSON serialization, error codes and locale defaults.
8
8
  ---
9
9
 
10
10
  # neodrop-cli skill
@@ -59,14 +59,16 @@ Full flow + security model + reusing credentials across machines: [`references/a
59
59
  | Scenario | Command | Details |
60
60
  |---|---|---|
61
61
  | Current user / token | `me` / `whoami` / `tokens list` | [`references/commands.md#identity`](references/commands.md#identity) |
62
- | View / search / create / subscribe channels | `channels list/get/search/create/subscribe/unsubscribe`, `channels categories`, `channels by-category` | [`references/commands.md#channels`](references/commands.md#channels) |
62
+ | View / search / create / subscribe channels | `channels list/get/search/create/create-status/run/subscribe/unsubscribe`, `channels categories`, `channels by-category` | [`references/commands.md#channels`](references/commands.md#channels) |
63
63
  | View / search post content | `posts list/get/search`, `feed` | [`references/commands.md#posts`](references/commands.md#posts) |
64
+ | Chat with the AI assistant (send a message, wait for the full reply) | `chat "<message>" [--session <id> \| --channel <id>]`, `chat history`, `chat sessions` | [`references/commands.md#chat`](references/commands.md#chat) |
64
65
  | A procedure with no sugar command | `api <procedure> [--json '…' \| --stdin] [--mutation]` | [`references/commands.md#api`](references/commands.md#api) |
65
66
  | User pasted a Neodrop URL and wants details | Map URL → id, call the matching `get` command | [`references/url-routing.md`](references/url-routing.md) |
66
67
  | Failure / error | Read the error code on stderr | [`references/troubleshooting.md`](references/troubleshooting.md) |
67
68
 
68
69
  ## Hard rules for the AI
69
70
 
71
+ - **Channel creation is async and costs credits**: `channels create` starts the creation agent (same pipeline as the web wizard) and usually takes a few minutes. Tell the user creation has started, then poll `channels create-status <taskId>` (or use `--wait`). Don't report "channel created" until the task status is `COMPLETED`.
70
72
  - **De-dupe before creating a channel**: run `channels list --mine` to check you don't already own one on the topic, then `channels search` against the public pool for a same-name channel — avoid duplicates.
71
73
  - **`channels get <id>` before subscribing** to check locale / private / topic — don't subscribe blindly.
72
74
  - **Never hand-craft links from memory** — `posts get` / `channels get` / `me` already print `🔗 <canonical-url>` to stderr; use that line.