@dp-pcs/ogp 0.2.31 → 0.3.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.
@@ -1,8 +1,21 @@
1
1
  ---
2
2
  skill_name: ogp-project
3
- version: 1.1.1
4
- description: Agent-aware project context skill for OGP with interview, freeform logging, and cross-peer summarization (updated for OGP 0.2.24+ peer identity and 0.2.28+ multi-agent notifyTargets)
5
- trigger: Use when the user wants to create, manage, log to, or summarize OGP projects. This includes project context interviews, freeform activity logging, and cross-peer collaboration. Also triggers on natural logging phrases like "remember this for project X", "account for this", "make note of", "track this", "jot this down", "save this to", "document this" when a project context is active or named.
3
+ version: 2.0.0
4
+ description: >
5
+ Tool-agnostic project collaboration for AI assistants. Users keep their own tools
6
+ (Linear, Jira, Obsidian, GitHub, iCloud, local files — anything). This skill makes
7
+ agents aware of what each collaborator's agent knows and where it lives, so agents
8
+ can query each other proactively rather than making the human relay information.
9
+ Supports project creation with context interviews, freeform activity logging,
10
+ proactive pre-task peer checks, and cross-peer summarization.
11
+ trigger: >
12
+ Use when the user wants to create, manage, log to, or summarize OGP projects.
13
+ ALSO use proactively — before starting any project-related work — to check shared
14
+ project state and query peer agents. Triggers on natural logging phrases like
15
+ "remember this for project X", "account for this", "make note of", "track this",
16
+ "jot this down", "save this to", "document this" when a project context is active or named.
17
+ The goal is to eliminate human-as-messenger friction: agents surface conflicts and
18
+ overlaps automatically so users don't have to ask.
6
19
  requires:
7
20
  bins:
8
21
  - ogp
@@ -13,6 +26,7 @@ requires:
13
26
  install: npm install -g @dp-pcs/ogp
14
27
  docs: https://github.com/dp-pcs/ogp
15
28
  ---
29
+
16
30
  ## Prerequisites
17
31
 
18
32
  The OGP daemon must be installed and configured. If you see errors like 'ogp: command not found', install it first:
@@ -31,168 +45,315 @@ ogp start
31
45
  Full documentation: https://github.com/dp-pcs/ogp
32
46
 
33
47
 
34
-
35
48
  # OGP Project Context Management
36
49
 
37
- This skill enables conversational project management with OGP federation. It provides agent-aware project creation with context interviews, freeform logging capabilities, and cross-peer collaboration summaries.
50
+ ## The Core Idea
51
+
52
+ People work differently. One person tracks tasks in Linear, keeps notes in GitHub, stores files locally. Another uses a different issue tracker, writes in Obsidian, stores files in iCloud. In the past, collaboration meant forcing everyone onto the same tools.
53
+
54
+ **This skill changes that.** Each user keeps their own tools and workflow. Their agent knows what they're working on and where everything lives. When two people collaborate on a project, their agents communicate directly — surfacing conflicts, sharing context, and answering each other's questions — without the human having to relay anything.
55
+
56
+ The human-as-messenger problem:
57
+ > Coworker wants to know something → asks you → you ask your agent → agent finds answer → you tell coworker
58
+
59
+ What this skill enables:
60
+ > Coworker's agent asks your agent → answer flows back → coworker just knows
61
+
62
+ ---
38
63
 
39
64
  ## When to Use
40
65
 
41
- Use this skill when:
42
66
  - User wants to create a new OGP project with contextual setup
43
- - User says "add this to project X" or "log that to project Y"
44
- - User asks about project status, activity, or collaborator contributions
45
- - User wants to understand project context or recent work
46
- - User mentions OGP projects, project logging, or cross-peer collaboration
67
+ - **User is about to start work on something project-related** check shared state first (see Proactive Pre-Task Check below)
68
+ - User expresses logging intent: "add this to project X", "log that", "remember this", "track this", etc.
69
+ - User asks about project status, activity, or what a collaborator has been working on
70
+ - A peer agent sends a query about something in your project context
71
+
72
+ ---
47
73
 
48
74
  ## Core Features
49
75
 
50
76
  ### 1. Project Creation with Context Interview
51
- - Interactive 5-question interview during project creation
52
- - Captures repository, workspace, notes location, collaborators, description
53
- - Stores as structured `context.*` contributions
77
+ - Interactive interview during project creation
78
+ - Captures: repository, workspace, notes location, tools used, collaborators, description
79
+ - Stored as `context.*` contributions — this is how peer agents know what to ask you about
54
80
 
55
81
  ### 2. Freeform Activity Logging
56
- - Monitors for logging signals ("add this to project X")
57
- - Agent-driven logging of decisions, progress, blockers
58
- - Flexible entry type assignment (progress, decision, blocker, context, summary)
59
- - **Auto-registration**: Project IDs auto-register as agent-comms topics for all approved peers
60
-
61
- ### 3. Project-Aware Agent Behavior
62
- - Auto-loads project context on first reference
63
- - Proactive logging during work sessions
64
- - Cross-peer contribution awareness
65
-
66
- ### 4. Cross-Peer Summarization
67
- - Queries both local and peer contributions
68
- - Unified view of team activity
82
+ - Monitors for logging intent (any natural phrasing)
83
+ - Logs decisions, progress, blockers, context — all queryable later
84
+ - Auto-registers project ID as agent-comms topic for all approved peers
85
+
86
+ ### 3. Proactive Pre-Task Check ← KEY BEHAVIOR
87
+ - Before starting project-related work, automatically check local state AND ping peer agents
88
+ - Surfaces "heads up — your collaborator is already working on that" moments
89
+ - Eliminates duplicate work and uncovers conflicts early
90
+
91
+ ### 4. Peer Response Policy Awareness
92
+ - Peer agents have their own response policies (auto-answer vs. escalate to human)
93
+ - Your agent respects those policies and adjusts behavior accordingly
94
+ - This preserves each user's autonomy over how their agent handles interruptions
95
+
96
+ ### 5. Cross-Peer Summarization
97
+ - Unified view of contributions across local + all peer agents
69
98
  - Deduplication and synthesis
70
99
 
71
- ## Interactive Workflows
100
+ ---
72
101
 
73
- ### Project Creation Interview
102
+ ## Proactive Pre-Task Check (MANDATORY)
74
103
 
75
- When creating a project, conduct this optional interview:
104
+ **This is the most important behavior in this skill.**
76
105
 
106
+ Whenever the user expresses intent to start work on something project-related, run this flow BEFORE starting:
107
+
108
+ ### Step 1: Check local project state
77
109
  ```bash
78
- # First create the project
79
- ogp project create <project-id> <name> --description "<description>"
110
+ # Quick scan of recent activity
111
+ ogp project query <project-id> --limit 20
112
+
113
+ # Check for anything on this specific topic
114
+ ogp project query <project-id> --search "<keywords from user's intent>"
80
115
  ```
81
116
 
82
- Then run interview flow:
117
+ ### Step 2: Query peer agents
118
+ ```bash
119
+ # For each approved peer in the project, ask if they know anything relevant
120
+ ogp federation agent <peer-id> <project-id> "My user is about to start working on <what they said>. Anything I should know before we begin?"
83
121
  ```
84
- Project created! Let me capture some context (all optional — press Enter to skip):
85
122
 
86
- 1. 📁 GitHub/GitLab repo URL?
87
- [if provided] ogp project contribute <id> context.repository "<url>"
123
+ ### Step 3: Surface findings
124
+ - **If something relevant found locally:** "Before you start — I found [X] in the project. [Summary]."
125
+ - **If peer agent responds with something relevant:** "Heads up — [peer's name]'s agent says [summary]."
126
+ - **If nothing found:** Proceed silently (don't announce "I checked and found nothing" — just start).
88
127
 
89
- 2. 💻 Local workspace folder?
90
- [if provided] ogp project contribute <id> context.workspace "<path>"
128
+ ### When to trigger this check
129
+ - User says they're going to start/build/work on something in a known project context
130
+ - User asks a question that could be answered by a peer's project context
131
+ - User mentions a feature/component that might overlap with collaborator work
91
132
 
92
- 3. 📝 Where do you keep notes? (Obsidian vault, Apple Notes, etc.)
93
- → [if provided] ogp project contribute <id> context.notes "<location>"
133
+ ### Example
134
+ ```
135
+ User: "Let's start working on the companion app"
94
136
 
95
- 4. 👥 Any collaborators already? (peer IDs or names)
96
- [if provided] ogp project contribute <id> context.collaborators "<collaborators>"
137
+ Agent (internally):
138
+ 1. ogp project query my-project --search "companion app"
139
+ → Found: "User B flagged companion app as out of scope in v1" (decision, 3 days ago)
97
140
 
98
- 5. 🎯 One sentence: what is this project about?
99
- [if provided] ogp project contribute <id> context.description "<description>"
141
+ Agent (to user): "Before you dive in — there's a note in the project from 3 days ago:
142
+ User B's agent logged a decision that companion app is out of scope for v1.
143
+ Want to check with them first, or are you overriding that?"
100
144
  ```
101
145
 
102
- ### Freeform Logging Detection
146
+ ```
147
+ User: "Let's start working on the companion app"
103
148
 
104
- **IMPORTANT: Detect logging intent from ANY natural phrasing — not just exact keywords.**
149
+ Agent (internally):
150
+ 1. ogp project query my-project --search "companion app" → nothing found
151
+ 2. ogp federation agent peer-b my-project "My user is about to start on the companion app. Anything I should know?"
152
+ → Peer agent responds: "No conflicts. Bob hasn't touched that area."
105
153
 
106
- Monitor for these signals (and semantic equivalents):
154
+ Agent: [starts working no announcement needed]
155
+ ```
107
156
 
108
- | User Input | Action | Example |
109
- |------------|---------|---------|
110
- | "add this to [project]" | `ogp project contribute <id> context "<summary>"` | Context logging |
111
- | "log that to [project]" | `ogp project contribute <id> progress "<summary>"` | Progress update |
112
- | "remember for [project] that..." | `ogp project contribute <id> context "<summary>"` | Context note |
113
- | "account for this in [project]" | `ogp project contribute <id> context "<summary>"` | Context note |
114
- | "make note of this for [project]" | `ogp project contribute <id> context "<summary>"` | Note |
115
- | "track this in [project]" | `ogp project contribute <id> progress "<summary>"` | Progress |
116
- | "jot this down for [project]" | `ogp project contribute <id> context "<summary>"` | Quick note |
117
- | "save this to [project]" | `ogp project contribute <id> context "<summary>"` | Context |
118
- | "put this in [project]" | `ogp project contribute <id> context "<summary>"` | Context |
119
- | "document this for [project]" | `ogp project contribute <id> context "<summary>"` | Documentation |
120
- | After coding session | Offer: "Should I log a summary to [project]?" | Proactive logging |
121
- | Decision made | `ogp project contribute <id> decision "<summary>"` | Architecture decisions |
122
- | Blocker encountered | `ogp project contribute <id> blocker "<summary>"` | Issue tracking |
157
+ ---
123
158
 
124
- **If no project is specified:** Ask "Which project should I log this to?" and list active projects from `ogp project list`.
159
+ ## Peer Response Policy
125
160
 
126
- **Intent over keywords:** If the user clearly wants to capture something for a project regardless of exact phrasing trigger the logging flow. Don't wait for magic words.
161
+ When your agent queries a peer agent, the peer agent responds according to its owner's configured policy. Your agent should interpret and respect these responses:
127
162
 
128
- ### Project Status and Summarization
163
+ | Peer Response | Meaning | Your Agent's Behavior |
164
+ |--------------|---------|----------------------|
165
+ | Direct answer | Peer auto-answered | Use the information, proceed |
166
+ | "I've asked [name] and will follow up" | Peer is escalating to human | Wait for follow-up, or proceed with caveat |
167
+ | "I don't have permission to share that" | Topic is restricted | Respect it, don't re-ask |
168
+ | No response / timeout | Peer offline or unavailable | Proceed, note that peer was unavailable |
129
169
 
130
- **Local project query:**
170
+ **Configuring your own response policy** (how YOUR agent handles incoming queries):
131
171
  ```bash
132
- # Get project overview
133
- ogp project status <project-id>
172
+ # See current policies
173
+ ogp agent-comms policies
174
+
175
+ # Auto-answer project queries (full detail)
176
+ ogp agent-comms add-topic <peer-id> <project-id> --level full
134
177
 
135
- # Get recent activity
136
- ogp project query <project-id> --limit 10
178
+ # Escalate to human before answering
179
+ ogp agent-comms add-topic <peer-id> <project-id> --level escalate
137
180
 
138
- # Get specific topics
139
- ogp project query <project-id> --topic progress
140
- ogp project query <project-id> --topic context.repository
181
+ # Summary only
182
+ ogp agent-comms add-topic <peer-id> <project-id> --level summary
141
183
  ```
142
184
 
143
- **Cross-peer collaboration:**
185
+ Response levels:
186
+ - `full` — agent answers directly with full context
187
+ - `summary` — agent answers with high-level overview only
188
+ - `escalate` — agent asks the human before responding ("Stan's agent wants to know about X — should I answer?")
189
+ - `off` — agent declines to respond on this topic
190
+
191
+ ---
192
+
193
+ ## Project Creation with Context Interview
194
+
195
+ When a project is created, run this conversational interview. It is **optional but valuable** — the more context captured here, the more useful the agent becomes for both the user and their collaborators.
196
+
197
+ **Two things happen with every answer:**
198
+ 1. It gets logged as a `context.*` contribution (so peer agents can query it)
199
+ 2. It shapes how YOUR agent behaves going forward for this project (so you actually use it)
200
+
201
+ If the user skips questions, that's fine — the agent operates in generalized mode and logs/queries from `projects.json` only.
202
+
203
+ ### Step 1: Create the project
144
204
  ```bash
145
- # Query peer contributions
146
- ogp project query-peer <peer-id> <project-id>
205
+ ogp project create <project-id> <name> --description "<description>"
206
+ ```
147
207
 
148
- # Get peer project status
149
- ogp project status-peer <peer-id> <project-id>
208
+ ### Step 2: Run the interview
209
+
210
+ Ask these questions conversationally — not as a form. Let the user's answers lead naturally. Skip any they don't want to answer.
211
+
212
+ ---
213
+
214
+ **Q1: How do you track tasks for this project?**
215
+ *(e.g. Linear, Jira, GitHub Issues, Trello, a text file, nothing formal)*
216
+
217
+ - If answered → `ogp project contribute <id> context.tools "Tasks tracked in: <answer>"`
218
+ - Agent behavior unlocked: When a peer agent asks about tasks/issues/tickets, search here first. If the tool has an API or CLI, offer to query it directly.
219
+ - Example agent behavior: *"Stan's agent is asking what's in your backlog for this project. I can check Linear for you — want me to pull the open items?"*
220
+ - If skipped → agent notes task tracking is unspecified; will only know what's been logged manually
221
+
222
+ ---
223
+
224
+ **Q2: Where do you keep notes or docs for this project?**
225
+ *(e.g. Obsidian vault at ~/notes/project-x, Notion, GitHub wiki, Apple Notes, Google Docs, a local folder)*
226
+
227
+ - If answered → `ogp project contribute <id> context.notes "<location>"`
228
+ - Agent behavior unlocked: When a peer asks about ideas, decisions, meeting notes, or any written context — go look there first before saying "I don't know."
229
+ - Example agent behavior: *"Before I answer Stan's question about the API design, let me check your Obsidian vault..."*
230
+ - If skipped → agent can only surface what's been explicitly logged to the project
231
+
232
+ ---
233
+
234
+ **Q3: Is there a code repository?**
235
+ *(e.g. GitHub URL, GitLab, local git repo path)*
236
+
237
+ - If answered → `ogp project contribute <id> context.repository "<url or path>"`
238
+ - Agent behavior unlocked: When peer asks about code, architecture, or recent commits — check the repo. Can run `git log`, search files, check open PRs.
239
+ - If skipped → agent won't know where code lives
240
+
241
+ ---
242
+
243
+ **Q4: Where do you store files for this project?**
244
+ *(e.g. ~/Documents/project-x, iCloud Drive, Google Drive, Dropbox, S3 bucket)*
245
+
246
+ - If answered → `ogp project contribute <id> context.workspace "<path or location>"`
247
+ - Agent behavior unlocked: When peer asks about assets, specs, or anything file-based — look here.
248
+ - If skipped → agent won't look for files outside the project log
249
+
250
+ ---
251
+
252
+ **Q5: Is anyone else working on this with you?**
253
+ *(peer IDs, names, or email addresses of collaborators)*
254
+
255
+ - If answered → `ogp project contribute <id> context.collaborators "<names/peer-ids>"`
256
+ - Agent behavior unlocked: Know who to ping during pre-task checks. Know whose agent to query when looking for context.
257
+ - Also offer: *"Want me to send them a federation invite?"* — if yes, run `ogp project request-join <peer-id> <project-id> <name>`
258
+ - If skipped → no peer checks until collaborators are added later
259
+
260
+ ---
261
+
262
+ **Q6: Anything else I should know about this project?**
263
+ *(free text — constraints, deadlines, important context, tools not covered above)*
264
+
265
+ - If answered → `ogp project contribute <id> context "<free text>"`
266
+ - This catches anything the structured questions missed
267
+ - If skipped → fine, move on
268
+
269
+ ---
270
+
271
+ ### Step 3: Confirm what was captured
272
+
273
+ After the interview, summarize what you now know:
274
+
275
+ ```
276
+ ✅ Project "<name>" is set up. Here's what I know:
277
+
278
+ 📋 Tasks: <answer or "not specified — log manually">
279
+ 📝 Notes: <answer or "not specified">
280
+ 💻 Repo: <answer or "not specified">
281
+ 📁 Files: <answer or "not specified">
282
+ 👥 Collaborators: <answer or "none yet">
283
+
284
+ For anything I don't know yet, you can tell me later and I'll update the project context.
285
+ I'll check this context before starting any work on this project.
150
286
  ```
151
287
 
152
- **Synthesized team view:**
153
- 1. Query local contributions
154
- 2. Query each peer's contributions
155
- 3. Merge, deduplicate, and present unified timeline
156
- 4. Highlight collaboration patterns and recent activity
288
+ > **Why this matters:** The `context.*` entries do two jobs. They tell peer agents where your stuff lives (so they know what to ask you about). And they tell YOUR agent where to actually look when answering questions — not just what's been logged to `projects.json`.
289
+
290
+ ---
157
291
 
158
- ## Agent Instructions
292
+ ## Freeform Activity Logging
159
293
 
160
- ### On Project Reference
161
- When a project is mentioned:
162
- 1. **First time**: Fetch all `context.*` contributions to understand the project
163
- 2. **Check for updates**: Query recent contributions since last interaction
164
- 3. **Cross-peer check**: If project has collaborators, query peer activity
294
+ **Detect logging intent from ANY natural phrasing — not just exact keywords.**
165
295
 
166
- ### During Work Sessions
167
- 1. **Monitor for decisions**: Log architectural or product decisions automatically
168
- 2. **Track blockers**: When user expresses frustration or being stuck, offer to log as blocker
169
- 3. **Completion logging**: After significant work, offer: "Should I log a progress summary to [project]?"
296
+ ### Explicit Project Logging
297
+ | User Input | Action |
298
+ |------------|--------|
299
+ | "add/log/save/put/track this to [project]" | `ogp project contribute <id> context "<summary>"` |
300
+ | "remember for [project] that..." | `ogp project contribute <id> context "<summary>"` |
301
+ | Decision made during conversation | `ogp project contribute <id> decision "<summary>"` |
302
+ | Blocker encountered | `ogp project contribute <id> blocker "<summary>"` |
303
+ | Work completed | `ogp project contribute <id> progress "<summary>"` |
304
+
305
+ ### No Project Specified
306
+ If logging intent is clear but no project named:
307
+ ```
308
+ 📝 I can log this for you. Which project?
309
+ Active: [list from `ogp project list`]
310
+ Or name a new one to create it.
311
+ ```
170
312
 
171
- ### Logging Intelligence
172
- **Entry Type Selection Logic:**
173
- - `progress` — work completed, features implemented, milestones reached
313
+ ### Entry Type Selection
314
+ - `progress` work completed, milestones reached
174
315
  - `decision` — architectural choices, technology selections, product decisions
175
- - `blocker` — things preventing progress, issues encountered, dependencies
176
- - `context` — general observations, meeting notes, requirements changes
177
- - `summary` — periodic digests, weekly summaries, sprint reviews
316
+ - `blocker` — things preventing progress, unresolved dependencies
317
+ - `context` — general notes, meeting takeaways, requirements changes
318
+ - `summary` — periodic digests, sprint reviews
178
319
 
179
- **Example Logging:**
320
+ ---
321
+
322
+ ## Handling Incoming Peer Queries
323
+
324
+ When a peer agent sends a query to your project topic, your agent should:
325
+
326
+ 1. **Check your response policy** for that peer + topic
327
+ 2. **If `full` or `summary`:** Search local project state and context, formulate a response, reply via agent-comms
328
+ 3. **If `escalate`:** Ask the user: "Stan's agent is asking about [topic] for project [X]. Here's their question: [question]. Should I answer, and what should I say?"
329
+ 4. **If `off`:** Decline politely
330
+
331
+ **Searching your context to answer:**
180
332
  ```bash
181
- # User completed authentication feature
182
- ogp project contribute auth-service progress "Implemented OAuth2 login flow with GitHub provider. Added JWT token management and user session persistence. All tests passing."
333
+ # Search project contributions
334
+ ogp project query <project-id> --search "<keywords>"
335
+
336
+ # Check specific context entries
337
+ ogp project query <project-id> --type context.notes
338
+ ogp project query <project-id> --type context.repository
339
+ ogp project query <project-id> --type decision
183
340
 
184
- # User made architectural decision
185
- ogp project contribute auth-service decision "Decided to use Redis for session storage instead of database. Better performance for frequent session lookups and automatic expiration."
341
+ # Recent activity
342
+ ogp project query <project-id> --limit 20
343
+ ```
186
344
 
187
- # User encountered blocker
188
- ogp project contribute auth-service blocker "GitHub OAuth app approval pending. Cannot test production flow until approved. Estimated 2-3 days delay."
345
+ **Replying to a peer query:**
346
+ ```bash
347
+ ogp federation agent <peer-id> <project-id> "<your answer>"
189
348
  ```
190
349
 
350
+ ---
351
+
191
352
  ## CLI Command Reference
192
353
 
193
354
  ### Project Management
194
355
  ```bash
195
- # Create project locally
356
+ # Create project
196
357
  ogp project create <id> <name> [--description "..."]
197
358
 
198
359
  # Join existing project
@@ -207,12 +368,12 @@ ogp project status <id>
207
368
 
208
369
  ### Contributions & Logging
209
370
  ```bash
210
- # Add contribution by entry type
371
+ # Add contribution
211
372
  ogp project contribute <id> <type> <summary> [--metadata '{"key":"value"}']
212
373
 
213
374
  # Query contributions
214
- ogp project query <id> [--type <type>] [--author <author>] [--search <text>] [--limit <n>]
215
- # Note: --topic is a hidden alias for --type for backwards compatibility
375
+ ogp project query <id> [--type <type>] [--search <text>] [--limit <n>]
376
+ # Note: --topic is a hidden alias for --type (backwards compat)
216
377
  ```
217
378
 
218
379
  ### Cross-Peer Collaboration
@@ -221,180 +382,114 @@ ogp project query <id> [--type <type>] [--author <author>] [--search <text>] [--
221
382
  ogp project request-join <peer-id> <project-id> <name>
222
383
 
223
384
  # Send contribution to peer project
224
- ogp project send-contribution <peer-id> <project-id> <topic> <summary>
385
+ ogp project send-contribution <peer-id> <project-id> <type> <summary>
225
386
 
226
387
  # Query peer project contributions
227
- ogp project query-peer <peer-id> <project-id> [--topic <topic>] [--limit <n>]
388
+ ogp project query-peer <peer-id> <project-id> [--topic <type>] [--limit <n>]
228
389
 
229
390
  # Get peer project status
230
391
  ogp project status-peer <peer-id> <project-id>
231
- ```
232
392
 
233
- ## Response Templates
234
-
235
- ### Project Creation Success
393
+ # Send agent-to-agent message on project topic
394
+ ogp federation agent <peer-id> <project-id> "<message>"
236
395
  ```
237
- ✅ Project "{name}" created successfully!
238
396
 
239
- 📋 Context captured:
240
- • Repository: {repo_url}
241
- • Workspace: {workspace_path}
242
- • Notes: {notes_location}
243
- • Collaborators: {collaborators}
244
- • Description: {description}
397
+ ---
245
398
 
246
- You can now:
247
- • Say "add this to {project_id}" to log activities
248
- • Ask "tell me about {project_id}" for status updates
249
- • Invite collaborators via federation
250
- ```
399
+ ## Response Templates
251
400
 
252
- ### Freeform Logging Confirmation
401
+ ### Pre-Task Check — Conflict Found
253
402
  ```
254
- 📝 Logged to project "{project_name}":
255
- Type: {type}
256
- Summary: {summary}
403
+ Before you start — I found something in the project:
257
404
 
258
- Recent activity: {recent_count} contributions in the last week
259
- ```
405
+ [Entry type] from [date]: [summary]
260
406
 
261
- ### Project Status Summary
407
+ Want to proceed anyway, or check with [peer name] first?
262
408
  ```
263
- 📊 Project "{name}" Status
264
409
 
265
- 🎯 About: {description}
266
- 👥 Members: {member_count} ({member_names})
267
- 📈 Activity: {contribution_count} contributions, last active {last_activity}
268
-
269
- 📋 Recent Activity:
270
- {recent_contributions}
271
-
272
- 🤝 Peer Activity:
273
- {peer_contributions_summary}
410
+ ### Pre-Task Check — Peer Agent Response
274
411
  ```
412
+ Heads up — [peer alias]'s agent says: "[their response]"
275
413
 
276
- ### Cross-Peer Summary
414
+ [Proceed / ask user how to handle based on content]
277
415
  ```
278
- 🌐 Team Activity for "{project_name}"
279
-
280
- Local Contributions ({local_count}):
281
- {local_summary}
282
416
 
283
- Peer Contributions ({peer_count}):
284
- {peer_summary}
285
-
286
- 🔗 Collaboration Highlights:
287
- {collaboration_patterns}
417
+ ### Logging Confirmation
418
+ ```
419
+ ✅ Logged to [project-name] · [type]
420
+ [Summary]
288
421
  ```
289
422
 
290
- ## Context Entry Types Schema
291
-
292
- Standard context entry types for structured project information:
293
-
294
- | Entry Type | Purpose | Example |
295
- |------------|---------|---------|
296
- | `context.repository` | Code repository URL | `https://github.com/user/repo` |
297
- | `context.workspace` | Local development path | `/Users/name/projects/myapp` |
298
- | `context.notes` | Notes/documentation location | `Obsidian vault: ProjectNotes/MyApp` |
299
- | `context.collaborators` | Team members and peer IDs | `alice:18790, bob@example.com` |
300
- | `context.description` | Plain English project summary | `Mobile app for expense tracking` |
301
-
302
- ## Integration Examples
303
-
304
- ### After Code Implementation
423
+ ### Project Status Summary
305
424
  ```
306
- User: "I just finished the authentication system"
425
+ 📊 [Project Name]
307
426
 
308
- Agent: "Great! Should I log this progress to the auth-service project?"
309
- [User confirms]
427
+ 🎯 [description]
428
+ 👥 [member count] members · last active [date]
310
429
 
311
- Agent runs: ogp project contribute auth-service progress "Completed authentication system implementation. Added OAuth2 with GitHub, JWT token management, user sessions, password reset flow. All unit tests passing, ready for integration testing."
312
- ```
430
+ Recent:
431
+ [contributions list]
313
432
 
314
- ### During Architecture Decision
433
+ Peer activity:
434
+ [peer summary]
315
435
  ```
316
- User: "I think we should use PostgreSQL instead of MongoDB for this"
317
436
 
318
- Agent: "That sounds like an important architectural decision. Should I document this in the project?"
319
- [User confirms]
437
+ ---
320
438
 
321
- Agent runs: ogp project contribute inventory-system decision "Switched from MongoDB to PostgreSQL for data persistence. Reasons: better ACID guarantees for inventory tracking, existing team expertise, superior query performance for reporting needs."
322
- ```
439
+ ## Troubleshooting
323
440
 
324
- ### Cross-Peer Status Check
325
- ```
326
- User: "What has Alice been working on in the mobile-app project?"
441
+ ### Pre-Task Check Returns Nothing
442
+ - Normal — proceed with work silently
443
+ - Don't announce "I checked and found nothing"
327
444
 
328
- Agent runs:
329
- 1. ogp project query-peer 9d4e1f... mobile-app --limit 10
330
- 2. ogp project query mobile-app --limit 10 --author alice
445
+ ### Peer Agent Not Responding
446
+ ```bash
447
+ # Check peer is online
448
+ ogp federation ping <peer-alias>
331
449
 
332
- Agent: "Alice's recent contributions to mobile-app:
333
- 2 days ago: Implemented push notification system
334
- • 4 days ago: Fixed authentication token refresh bug
335
- • 1 week ago: Added offline data sync capability
450
+ # Check agent-comms policies
451
+ ogp agent-comms policies <peer-id>
336
452
 
337
- Total: 8 contributions this month, very active on backend integration work."
453
+ # Check activity log
454
+ ogp agent-comms activity <peer-id>
338
455
  ```
339
456
 
340
- ## Troubleshooting
341
-
342
457
  ### Project Not Found
343
458
  ```bash
344
- # List available projects
345
459
  ogp project list
346
-
347
- # Check if peer project exists
348
460
  ogp project status-peer <peer-id> <project-id>
349
461
  ```
350
462
 
351
463
  ### Logging Failures
352
464
  ```bash
353
- # Verify project exists and you're a member
354
465
  ogp project status <project-id>
355
-
356
- # Check OGP daemon status
357
466
  ogp status
358
467
  ```
359
468
 
360
469
  ### Cross-Peer Issues
361
470
  ```bash
362
- # Verify peer is approved and has project scope
363
471
  ogp federation list --status approved
364
- ogp federation scopes 302a300506032b65
365
-
366
- # Test basic peer connectivity
367
- ogp federation send 302a300506032b65 message '{"text":"ping"}'
472
+ ogp federation scopes <peer-id>
473
+ ogp federation send <peer-id> message '{"text":"ping"}'
368
474
  ```
369
475
 
370
- ### No Context Loaded
371
- If agent seems unaware of project context:
372
- 1. Check `context.*` contributions exist: `ogp project query <id> --topic context`
373
- 2. Verify project membership: `ogp project status <id>`
374
- 3. Restart skill to reload project data
476
+ ---
375
477
 
376
478
  ## Implementation Notes
377
479
 
378
480
  **Data Flow:**
379
481
  ```
380
- User Input Agent Skill → OGP CLI → OGP Daemon → ~/.ogp/projects.json
381
-
382
- Federation (if peer project)
383
-
384
- Peer's OGP Daemon OpenClaw Agent
482
+ User says something project-related
483
+ → Agent checks local project state (ogp project query)
484
+ Agent pings peer agents (ogp federation agent)
485
+ → Surfaces conflicts/info before starting
486
+ Logs outcomes (ogp project contribute)
487
+ → Federation syncs to peers
385
488
  ```
386
489
 
387
- **Skill Behavior:**
388
- - Always load `context.*` on first project reference
389
- - Proactively offer logging after significant work
390
- - Monitor conversation for logging signals
391
- - Cross-reference peer activity for collaboration awareness
392
- - Synthesize unified views across local + peer contributions
490
+ **The tool-agnostic principle:**
491
+ The project doesn't care what tools you use. `context.notes`, `context.repository`, `context.tools` are just text. If you keep notes in Obsidian, that's in `context.notes`. If your peer uses GitHub wikis, that's in their `context.notes`. Peer agents read each other's context entries and know where to look — or know what to ask.
393
492
 
394
493
  **Storage:**
395
- - Projects stored in `~/.ogp/projects.json`
396
- - Contributions organized by topic within each project
397
- - Cross-peer queries via federation protocol
398
- - Activity logged locally for retrospectives
399
-
400
- This skill bridges the gap between OGP's technical capabilities and natural conversational project management, enabling seamless collaboration across federated AI agents.
494
+ - `~/.ogp/projects.json` — all project data and contributions
495
+ - `~/.ogp/peers.json` peer identities and federation state