@dp-pcs/ogp 0.2.18 → 0.2.20

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dp-pcs/ogp",
3
- "version": "0.2.18",
3
+ "version": "0.2.20",
4
4
  "description": "Open Gateway Protocol (OGP) - Peer-to-peer federation daemon for OpenClaw AI gateways with cryptographic signatures",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -112,8 +112,9 @@ ogp federation approve <peer-id>
112
112
  ogp federation approve <peer-id> --intents "message,agent-comms,project.join,project.contribute,project.query,project.status"
113
113
  ```
114
114
 
115
- > **Note:** As of OGP 0.2.7, `federation approve` automatically grants default scopes bidirectionally.
116
- > Both sides get full scopes in a single handshake no manual grant step needed.
115
+ > **Note:** As of OGP 0.2.7+, `federation approve` automatically grants default scopes bidirectionally.
116
+ > As of 0.2.19, approval also auto-enables the `general` agent-comms topic so messages work immediately.
117
+ > Blocked messages notify your agent: *"Hey — [peer] tried to message you on topic X but I blocked it. Say the word and I'll enable it."*
117
118
 
118
119
  ### Grant or update scopes for an existing peer
119
120
  ```bash
@@ -142,9 +143,35 @@ ogp federation send <peer-id> <intent> '<json-payload>'
142
143
  ```bash
143
144
  ogp federation agent <peer-id> <topic> "<message>"
144
145
  # Example:
145
- ogp federation agent giving-produces-microphone-mild.trycloudflare.com:18790 project-coordination "Stan, join Project Synapse: ogp project join synapse 'Project Synapse' --create"
146
+ ogp federation agent giving-produces-microphone-mild.trycloudflare.com:18790 general "Hey, can you check on project synapse?"
146
147
  ```
147
148
 
149
+ ### Manage agent-comms policies (what topics you'll respond to)
150
+
151
+ Federation scopes and agent-comms policies are **two separate layers**. Approval handles scopes automatically. Agent-comms policies control what your agent actually responds to — `general` is auto-enabled at approval, everything else is `off` by default.
152
+
153
+ ```bash
154
+ # Status page — shows what's allowed, blocked, and what to do about it
155
+ ogp agent-comms policies <peer-id>
156
+
157
+ # Global view of all peers
158
+ ogp agent-comms policies
159
+
160
+ # Allow a topic
161
+ ogp agent-comms add-topic <peer-id> <topic> --level summary
162
+
163
+ # Block a topic
164
+ ogp agent-comms set-topic <peer-id> <topic> off
165
+
166
+ # Open all topics by default for a peer
167
+ ogp agent-comms set-default <peer-id> summary
168
+
169
+ # View activity log
170
+ ogp agent-comms activity [peer-id]
171
+ ```
172
+
173
+ Response levels: `full` (full content passed to agent), `summary` (condensed), `escalate` (route to user), `off` (blocked — sender gets a witty non-answer)
174
+
148
175
  ---
149
176
 
150
177
  ## Scope Reference
@@ -169,7 +196,8 @@ Default grant includes all of the above. Customize with `--intents` if needed.
169
196
  1. Run: ogp federation invite → get a 6-char code
170
197
  2. Share the code with your peer (Telegram, Slack, etc.)
171
198
  3. They run: ogp federation accept <code>
172
- 4. Done no URL, no pubkey, no manual config
199
+ 4. Scopes auto-granted + "general" topic auto-enabled
200
+ 5. Test: ogp federation agent <peer-id> general "hello"
173
201
  ```
174
202
 
175
203
  ### Old way — manual URL exchange (still works)
@@ -178,9 +206,12 @@ Default grant includes all of the above. Customize with `--intents` if needed.
178
206
  2. Check their card: curl -s <url>/.well-known/ogp | python3 -m json.tool
179
207
  3. Request federation: ogp federation request <url>
180
208
  4. They approve on their side (or you approve if they requested)
181
- 5. Confirm scopes: ogp federation scopes <peer-id>
182
- 6. Test: ogp federation ping <url>
183
- 7. (Optional) Create or join a shared project
209
+ Scopes auto-granted + "general" topic auto-enabled ✓
210
+ 5. Check agent-comms status: ogp agent-comms policies <peer-id>
211
+ 6. Add more topics if needed: ogp agent-comms add-topic <peer-id> <topic>
212
+ 7. Test: ogp federation ping <url>
213
+ 8. Test agent-comms: ogp federation agent <peer-id> general "hello"
214
+ 9. (Optional) Create or join a shared project
184
215
  ```
185
216
 
186
217
  ---
@@ -218,7 +249,8 @@ ogp project query-peer <peer-id> <project-id>
218
249
  | `Peer not approved` | Request pending | Check `ogp federation list --status pending` |
219
250
  | `400 Bad Request` on push | Peer hasn't granted you scopes | Ask peer to run `ogp federation grant <your-peer-id>` or update to OGP 0.2.7 |
220
251
  | `Invalid signature` | Version mismatch on `messageStr` field | Peer needs OGP 0.2.7+ (`npm install -g @dp-pcs/ogp@latest`) |
221
- | `Send failed` on agent-comms | Scope not granted or topic not allowed | Check `ogp federation scopes <peer-id>` |
252
+ | `Send failed` on agent-comms | Topic blocked on receiver's side | Receiver runs `ogp agent-comms policies <peer-id>` — look for blocked/missing topics |
253
+ | Agent-comms silently ignored | Receiver's default is `off`, topic not allowed | Receiver runs `ogp agent-comms add-topic <your-peer-id> <topic> --level summary` |
222
254
  | `ogp: command not found` | Not installed | `npm install -g @dp-pcs/ogp` |
223
255
  | Daemon not running | Process died | `ogp start --background` |
224
256