@gobi-ai/cli 1.3.3 → 1.3.4

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.
@@ -4,12 +4,12 @@
4
4
  "name": "gobi-ai"
5
5
  },
6
6
  "description": "Claude Code plugin for the Gobi collaborative knowledge platform CLI",
7
- "version": "1.3.3",
7
+ "version": "1.3.4",
8
8
  "plugins": [
9
9
  {
10
10
  "name": "gobi",
11
11
  "description": "Manage the Gobi collaborative knowledge platform from the command line. Search and ask brains, publish brain documents, create threads, manage sessions, generate images and videos.",
12
- "version": "1.3.3",
12
+ "version": "1.3.4",
13
13
  "author": {
14
14
  "name": "gobi-ai"
15
15
  },
@@ -21,6 +21,7 @@
21
21
  "./skills/gobi-brain",
22
22
  "./skills/gobi-feed",
23
23
  "./skills/gobi-notes",
24
+ "./skills/gobi-proposal",
24
25
  "./skills/gobi-media",
25
26
  "./skills/gobi-sense",
26
27
  "./skills/gobi-homepage"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "gobi",
3
3
  "description": "Manage the Gobi collaborative knowledge platform from the command line",
4
- "version": "1.3.3",
4
+ "version": "1.3.4",
5
5
  "author": {
6
6
  "name": "gobi-ai"
7
7
  },
@@ -12,6 +12,7 @@
12
12
  "./skills/gobi-brain",
13
13
  "./skills/gobi-feed",
14
14
  "./skills/gobi-notes",
15
+ "./skills/gobi-proposal",
15
16
  "./skills/gobi-media",
16
17
  "./skills/gobi-sense",
17
18
  "./skills/gobi-homepage"
package/README.md CHANGED
@@ -150,6 +150,22 @@ Times are ISO 8601 UTC (e.g. `2026-03-20T00:00:00Z`).
150
150
  `notes list` and `notes create` accept `--timezone <iana>` (default: system timezone) for day boundaries.
151
151
  `notes list` also accepts `--limit`/`--cursor` for pagination.
152
152
 
153
+ ### Proposals
154
+
155
+ Proposals are authored by your agent during chat (or by external agents using `gobi proposal add` as their tool layer). The top 5 pending proposals (lowest priority first) feed the agent's system prompt every turn.
156
+
157
+ | Command | Description |
158
+ |---------|-------------|
159
+ | `gobi proposal list [--limit N]` | List proposals (priority ASC, then newest first) |
160
+ | `gobi proposal get <id>` | Show one proposal with its history |
161
+ | `gobi proposal add <content> [--session <id>] [--priority N]` | Add a proposal (use `-` for stdin) |
162
+ | `gobi proposal edit <id> <content>` | Replace content; bumps revision |
163
+ | `gobi proposal delete <id>` | Delete a proposal |
164
+ | `gobi proposal prioritize <id> <priority>` | Set priority (lower = higher) |
165
+ | `gobi proposal accept <id>` | Accept; posts "Accept your proposal X" into the originating session |
166
+ | `gobi proposal reject <id>` | Reject; posts "Reject your proposal X" into the originating session |
167
+ | `gobi proposal revise <id> <comment>` | Ask the agent to revise; posts the comment into the session |
168
+
153
169
  ### Sync
154
170
 
155
171
  | Command | Description |
@@ -72,6 +72,26 @@ export function registerProposalCommand(program) {
72
72
  }
73
73
  }
74
74
  });
75
+ // ── Add ──
76
+ proposal
77
+ .command("add <content>")
78
+ .description("Add a proposal directly. Pass '-' to read from stdin.")
79
+ .option("--session <sessionId>", "Originate from a chat session (UUID)")
80
+ .option("--priority <number>", "Priority (lower = higher), default 100")
81
+ .action(async (content, opts) => {
82
+ const body = { content: readContent(content) };
83
+ if (opts.session)
84
+ body.sessionId = opts.session;
85
+ if (opts.priority)
86
+ body.priority = parseInt(opts.priority, 10);
87
+ const resp = (await apiPost("/app/proposals", body));
88
+ const p = unwrapResp(resp);
89
+ if (isJsonMode(proposal)) {
90
+ jsonOut(p);
91
+ return;
92
+ }
93
+ console.log(`Created ${p.proposalId} (priority ${p.priority}).`);
94
+ });
75
95
  // ── Edit content ──
76
96
  proposal
77
97
  .command("edit <proposalId> <content>")
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gobi-ai/cli",
3
- "version": "1.3.3",
3
+ "version": "1.3.4",
4
4
  "description": "CLI client for the Gobi collaborative knowledge platform",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -0,0 +1,63 @@
1
+ ---
2
+ name: gobi-proposal
3
+ description: >-
4
+ Gobi proposal commands for managing agent-authored proposals: list, get, add,
5
+ edit, delete, prioritize, accept, reject, or revise. The top-priority pending
6
+ proposals feed into the agent's system prompt every turn. Use when the user
7
+ wants to review, organize, or respond to proposals — or when an agent (using
8
+ gobi-cli as its tool layer) wants to record a proposal it just composed.
9
+ allowed-tools: Bash(gobi:*)
10
+ metadata:
11
+ author: gobi-ai
12
+ version: "1.3.4"
13
+ ---
14
+
15
+ # gobi-proposal
16
+
17
+ Gobi proposal commands for managing agent-authored proposals (v1.3.4).
18
+
19
+ Requires gobi-cli installed and authenticated. See gobi-core skill for setup.
20
+
21
+ ## What is a proposal?
22
+
23
+ A proposal is a unit of standing guidance authored by an agent (in-process during chat, or via `gobi proposal add` when the agent uses gobi-cli as its tool layer). Each proposal has:
24
+
25
+ - **content** — the proposal text (markdown, up to 8000 chars)
26
+ - **priority** — lower number = higher priority; default `100`
27
+ - **status** — `pending`, `accepted`, or `rejected`
28
+ - **revision** — bumped each time the content is edited
29
+ - **sessionId** — optional; the chat session the proposal originated from
30
+ - **history** — append-only log of `created`, `edited`, `prioritized`, `accepted`, `rejected`, and `revise_requested` events
31
+
32
+ The top 5 pending proposals (lowest priority first) are injected into the agent's system prompt every turn — that's how proposals turn into standing instructions.
33
+
34
+ ## Lifecycle
35
+
36
+ `accept` and `reject` are terminal: they post a synthesized user message into the originating chat session ("Accept your proposal X" / "Reject your proposal X") so the agent can react. `revise` keeps the proposal pending and posts the user's comment into the session, asking the agent to revise. Only pending proposals can be revised.
37
+
38
+ ## Important: JSON Mode
39
+
40
+ For programmatic/agent usage, always pass `--json` as a **global** option (before the subcommand):
41
+
42
+ ```bash
43
+ gobi --json proposal list --limit 20
44
+ gobi --json proposal add "Prefer concise titles" --priority 50
45
+ ```
46
+
47
+ JSON mode wraps the response as `{"success": true, "data": <proposal>}` (or `{"success": false, "error": "..."}`).
48
+
49
+ ## Available Commands
50
+
51
+ - `gobi proposal` — Proposals authored by your agent during chat. Top-5 feed the system prompt; accept/reject/revise post into the originating chat session.
52
+ - `gobi proposal list` — List proposals (priority ASC, then newest first).
53
+ - `gobi proposal get` — Show one proposal with its history.
54
+ - `gobi proposal edit` — Replace proposal content (bumps revision). Pass '-' for stdin.
55
+ - `gobi proposal delete` — Delete a proposal.
56
+ - `gobi proposal prioritize` — Set priority (lower = higher). Top 5 feed the system prompt.
57
+ - `gobi proposal accept` — Accept — posts "Accept your proposal X" into the originating chat session.
58
+ - `gobi proposal reject` — Reject — posts "Reject your proposal X" into the originating chat session.
59
+ - `gobi proposal revise` — Ask the agent to revise — posts "Update your proposal X. Here's my comment. {comment}" into the chat session.
60
+
61
+ ## Reference Documentation
62
+
63
+ - [gobi proposal](references/proposal.md)
@@ -0,0 +1,124 @@
1
+ # gobi proposal
2
+
3
+ ```
4
+ Usage: gobi proposal [options] [command]
5
+
6
+ Proposals authored by your agent during chat. Top-5 feed the system prompt; accept/reject/revise post into the originating chat session.
7
+
8
+ Options:
9
+ -h, --help display help for command
10
+
11
+ Commands:
12
+ list [options] List proposals (priority ASC, then newest first).
13
+ get <proposalId> Show one proposal with its history.
14
+ add [options] <content> Add a proposal directly. Pass '-' to read from stdin.
15
+ edit <proposalId> <content> Replace proposal content (bumps revision). Pass '-' for stdin.
16
+ delete <proposalId> Delete a proposal.
17
+ prioritize <proposalId> <priority> Set priority (lower = higher). Top 5 feed the system prompt.
18
+ accept <proposalId> Accept — posts "Accept your proposal X" into the originating chat session.
19
+ reject <proposalId> Reject — posts "Reject your proposal X" into the originating chat session.
20
+ revise <proposalId> <comment> Ask the agent to revise — posts "Update your proposal X. Here's my comment. {comment}" into the chat session.
21
+ help [command] display help for command
22
+ ```
23
+
24
+ ## list
25
+
26
+ ```
27
+ Usage: gobi proposal list [options]
28
+
29
+ List proposals (priority ASC, then newest first).
30
+
31
+ Options:
32
+ --limit <number> Max proposals to return (1-200) (default: "50")
33
+ -h, --help display help for command
34
+ ```
35
+
36
+ ## get
37
+
38
+ ```
39
+ Usage: gobi proposal get [options] <proposalId>
40
+
41
+ Show one proposal with its history.
42
+
43
+ Options:
44
+ -h, --help display help for command
45
+ ```
46
+
47
+ ## add
48
+
49
+ ```
50
+ Usage: gobi proposal add [options] <content>
51
+
52
+ Add a proposal directly. Pass '-' to read from stdin.
53
+
54
+ Options:
55
+ --session <sessionId> Originate from a chat session (UUID)
56
+ --priority <number> Priority (lower = higher), default 100
57
+ -h, --help display help for command
58
+ ```
59
+
60
+ ## edit
61
+
62
+ ```
63
+ Usage: gobi proposal edit [options] <proposalId> <content>
64
+
65
+ Replace proposal content (bumps revision). Pass '-' for stdin.
66
+
67
+ Options:
68
+ -h, --help display help for command
69
+ ```
70
+
71
+ ## delete
72
+
73
+ ```
74
+ Usage: gobi proposal delete [options] <proposalId>
75
+
76
+ Delete a proposal.
77
+
78
+ Options:
79
+ -h, --help display help for command
80
+ ```
81
+
82
+ ## prioritize
83
+
84
+ ```
85
+ Usage: gobi proposal prioritize [options] <proposalId> <priority>
86
+
87
+ Set priority (lower = higher). Top 5 feed the system prompt.
88
+
89
+ Options:
90
+ -h, --help display help for command
91
+ ```
92
+
93
+ ## accept
94
+
95
+ ```
96
+ Usage: gobi proposal accept [options] <proposalId>
97
+
98
+ Accept — posts "Accept your proposal X" into the originating chat session.
99
+
100
+ Options:
101
+ -h, --help display help for command
102
+ ```
103
+
104
+ ## reject
105
+
106
+ ```
107
+ Usage: gobi proposal reject [options] <proposalId>
108
+
109
+ Reject — posts "Reject your proposal X" into the originating chat session.
110
+
111
+ Options:
112
+ -h, --help display help for command
113
+ ```
114
+
115
+ ## revise
116
+
117
+ ```
118
+ Usage: gobi proposal revise [options] <proposalId> <comment>
119
+
120
+ Ask the agent to revise — posts "Update your proposal X. Here's my comment. {comment}" into the chat session.
121
+
122
+ Options:
123
+ -h, --help display help for command
124
+ ```