@gholl-studio/pier-connector 0.7.10 → 0.7.13

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/dist/inbound.js CHANGED
@@ -12,11 +12,15 @@
12
12
  export async function handleInbound(ctx, inbound, jobId, robot, plugin) {
13
13
  const logger = ctx.log || console;
14
14
  const channelRuntime = ctx.channelRuntime;
15
+ if (!channelRuntime?.reply) {
16
+ console.error(`[pier-connector][${robot.accountId}] SDK Error: channelRuntime.reply is not available.`);
17
+ return;
18
+ }
15
19
  // 1. Prepare Scoped Config
16
20
  const rootConfig = ctx.cfg || {};
17
21
  const accountScopedCfg = rootConfig;
18
22
  // 2. Resolve Agent Route
19
- // A message is part of a workspace if it has a workspace prefix or matches known patterns.
23
+ // A message is part of a workspace if it has a workspace prefix or is explicitly marked.
20
24
  const isWorkspace = !!inbound.jobId && (inbound.jobId.startsWith('job-') || inbound.isWorkspace === true);
21
25
  const peerId = jobId;
22
26
  const chatType = isWorkspace ? 'group' : 'direct';
@@ -77,14 +81,15 @@ export async function handleInbound(ctx, inbound, jobId, robot, plugin) {
77
81
  isWorkspace ? `BOARD INDEX: ${boardIndex}` : "",
78
82
  "-----------------------------------------",
79
83
  isWorkspace ? "SWARM COORDINATION & PM PROTOCOL:" : "",
80
- isWorkspace ? "1. PROJECT MANAGER (PM) ROLE: If you are acting as a lead/PM, use `tasks.[id]` keys to assign sub-tasks and monitor progress. Only the PM should mark tasks as 'VALIDATED'." : "",
81
- isWorkspace ? "2. CONFLICT PROTECTION: In a multi-agent environment, you MUST provide 'expectedRevision' when calling `pier_update_board_item` to prevent overwriting others' work." : "",
82
- isWorkspace ? "3. STATE MACHINE: Use standard statuses: TODO -> DOING -> DONE -> VALIDATED." : "",
83
- isWorkspace ? "4. Use the groupId exactly as provided. DO NOT add 'pierWorkspace:' prefixes." : "",
84
+ isWorkspace ? "1. THE GOAL: The 'PRIMARY MISSION GOAL' is your source of truth. It defines your purpose here." : "",
85
+ isWorkspace ? "2. PM ROLE: If acting as lead/PM, use `tasks.[id]` keys for assignment. Only PM should mark tasks as 'VALIDATED'." : "",
86
+ isWorkspace ? "3. MEMBER AWARENESS: Use `pier_get_workspace_directory` to fetch real-time member IDs and online status for collaboration." : "",
87
+ isWorkspace ? "4. CONFLICT PROTECTION: You MUST provide 'expectedRevision' when calling `pier_update_board_item` to prevent overwrites." : "",
88
+ isWorkspace ? "5. Use the groupId exactly as provided. DO NOT add 'pierWorkspace:' prefixes." : "",
84
89
  "-----------------------------------------",
85
- "5. You MUST USE the `pier_finish_task` tool to submit the final result when the mission objectives are fully met.",
86
- "6. If requirements are unclear, use `pier_chat` to consult the employer.",
87
- "7. Do not remain idle if the goal is clear. Act, update the board, and coordinate."
90
+ "6. You MUST USE the `pier_finish_task` tool to submit the final result when the mission objectives are fully met.",
91
+ "7. If requirements are unclear, use `pier_chat` to consult the employer.",
92
+ "8. Do not remain idle if the goal is clear. Act, update the board, and coordinate."
88
93
  ].filter(Boolean).join('\n');
89
94
  }
90
95
  // 3. Finalize Context
@@ -102,18 +107,71 @@ export async function handleInbound(ctx, inbound, jobId, robot, plugin) {
102
107
  WasMentioned: inbound.WasMentioned,
103
108
  InjectedSystemPrompt: injectedPrompt,
104
109
  Metadata: {
105
- jobId: jobId,
106
- pierJobId: metadata?.pierJobId,
110
+ ...metadata,
111
+ accountId: robot.accountId,
112
+ agentId: finalAgentId,
113
+ pierJobId: jobId,
114
+ routingSource: routingSource,
107
115
  workspace: isWorkspace,
108
116
  boardKeys: boardIndex
109
117
  }
110
118
  });
111
- // 4. Dispatch to Agent
119
+ // 4. Create Dispatcher
120
+ const { dispatcher, replyOptions, markDispatchIdle, markRunComplete } = channelRuntime.reply.createReplyDispatcherWithTyping({
121
+ deliver: async (payload, info) => {
122
+ const currentMeta = robot.activeNodeJobs.get(jobId);
123
+ const resAgent = payload.agentId || finalAgentId;
124
+ logger.info(`[pier-connector:trace] Outbound delivery for ${jobId}. Responder: ${resAgent}.`);
125
+ if (payload.text && payload.text.length > 0) {
126
+ await plugin.outbound.sendText({
127
+ text: payload.text,
128
+ to: `pier:${jobId}`,
129
+ accountId: robot.accountId,
130
+ metadata: {
131
+ ...currentMeta,
132
+ accountId: robot.accountId,
133
+ pierJobId: jobId,
134
+ respondingAgentId: resAgent,
135
+ workspace: isWorkspace
136
+ },
137
+ });
138
+ }
139
+ }
140
+ });
141
+ // 5. Session Recording
142
+ if (channelRuntime.session?.recordSessionMetaFromInbound) {
143
+ try {
144
+ const storePath = channelRuntime.session.resolveStorePath(dynamicSessionKey);
145
+ await channelRuntime.session.recordSessionMetaFromInbound({
146
+ storePath, sessionKey: dynamicSessionKey, ctx: ctxPayload
147
+ });
148
+ }
149
+ catch (err) {
150
+ logger.error(`[pier-connector] ✖ Failed to record session metadata: ${err.message}`);
151
+ }
152
+ }
153
+ // 6. Dispatch
112
154
  try {
113
- await channelRuntime.reply.dispatchInbound(ctxPayload);
155
+ const { queuedFinal, counts } = await channelRuntime.reply.dispatchReplyFromConfig({
156
+ ctx: ctxPayload,
157
+ cfg: accountScopedCfg,
158
+ dispatcher,
159
+ replyOptions: {
160
+ ...replyOptions,
161
+ onModelSelected: (mCtx) => {
162
+ logger.info(`[pier-connector:debug] Model selected for ${jobId}: ${mCtx.provider}/${mCtx.model}`);
163
+ }
164
+ }
165
+ });
166
+ await dispatcher.waitForIdle();
167
+ logger.info(`[pier-connector] Dispatch complete for ${jobId}. queuedFinal=${queuedFinal}, counts=${JSON.stringify(counts)}`);
114
168
  }
115
169
  catch (err) {
116
- logger.error(`[pier-connector] Dispatch failed: ${err.message}`);
170
+ logger.error(`[pier-connector] Dispatch error for job ${jobId}: ${err.message}`);
171
+ }
172
+ finally {
173
+ markRunComplete?.();
174
+ markDispatchIdle?.();
117
175
  }
118
176
  }
119
177
  //# sourceMappingURL=inbound.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inbound.js","sourceRoot":"","sources":["../src/inbound.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAC/B,GAAQ,EACR,OAAuB,EACvB,KAAa,EACb,KAAgB,EAChB,MAAW;IAEX,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,OAAO,CAAC;IAClC,MAAM,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC;IAE1C,2BAA2B;IAC3B,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IACjC,MAAM,gBAAgB,GAAG,UAAU,CAAC;IAEpC,yBAAyB;IACzB,2FAA2F;IAC3F,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAK,OAAe,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC;IACnH,MAAM,MAAM,GAAG,KAAK,CAAC;IACrB,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;IAElD,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACnD,GAAG,EAAE,gBAAgB;QACrB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE;KAC/D,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC;IAC7C,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,sBAAsB,CAAC;IAElF,MAAM,CAAC,IAAI,CAAC,qCAAqC,KAAK,CAAC,SAAS,eAAe,YAAY,cAAc,aAAa,GAAG,CAAC,CAAC;IAE3H,MAAM,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAC;IAC3C,MAAM,QAAQ,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,cAAc,GAAG,EAAE,CAAC;IAExB,yEAAyE;IACzE,IAAI,UAAU,GAAG,SAAS,CAAC;IAC3B,IAAI,WAAW,GAAG,eAAe,CAAC;IAClC,IAAI,WAAW,EAAE,CAAC;QACd,IAAI,CAAC;YACD,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAEzD,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,EAAE,CAAC;YAChB,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,QAAQ;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAElD,wDAAwD;YACxD,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACvE,IAAI,SAAS,EAAE,CAAC;gBACZ,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC5D,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IAClB,CAAC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAC5C,cAAc,GAAG;YACb,2CAA2C;YAC3C,+CAA+C;YAC/C,2CAA2C;YAC3C,qFAAqF;YACrF,gFAAgF;YAChF,oGAAoG;YACpG,6CAA6C;YAC7C,kEAAkE;YAClE,WAAW,KAAK,EAAE;SACrB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;SAAM,CAAC;QACJ,cAAc,GAAG;YACb,2CAA2C;YAC3C,2CAA2C;YAC3C,2CAA2C;YAC3C,0CAA0C;YAC1C,WAAW,CAAC,CAAC,CAAC,mCAAmC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;YAC7D,WAAW,CAAC,CAAC,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;YACzD,WAAW,CAAC,CAAC,CAAC,gBAAgB,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;YAC/C,2CAA2C;YAC3C,WAAW,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,EAAE;YACtD,WAAW,CAAC,CAAC,CAAC,6KAA6K,CAAC,CAAC,CAAC,EAAE;YAChM,WAAW,CAAC,CAAC,CAAC,sKAAsK,CAAC,CAAC,CAAC,EAAE;YACzL,WAAW,CAAC,CAAC,CAAC,8EAA8E,CAAC,CAAC,CAAC,EAAE;YACjG,WAAW,CAAC,CAAC,CAAC,+EAA+E,CAAC,CAAC,CAAC,EAAE;YAClG,2CAA2C;YAC3C,mHAAmH;YACnH,0EAA0E;YAC1E,oFAAoF;SACvF,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,sBAAsB;IACtB,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,sBAAsB,CAAC;QAC3D,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,OAAO,CAAC,IAAI;QAC1B,OAAO,EAAE,OAAO,CAAC,IAAI;QACrB,IAAI,EAAE,OAAO,CAAC,QAAQ;QACtB,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,iBAAiB,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE;QAC5D,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,QAAe;QACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,UAAU,EAAE,OAAO,CAAC,QAAQ;QAC5B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,oBAAoB,EAAE,cAAc;QACpC,QAAQ,EAAE;YACN,KAAK,EAAE,KAAK;YACZ,SAAS,EAAE,QAAQ,EAAE,SAAS;YAC9B,SAAS,EAAE,WAAW;YACtB,SAAS,EAAE,UAAU;SACxB;KACJ,CAAC,CAAC;IAEH,uBAAuB;IACvB,IAAI,CAAC;QACD,MAAM,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,MAAM,CAAC,KAAK,CAAC,qCAAqC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"inbound.js","sourceRoot":"","sources":["../src/inbound.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -453,6 +453,44 @@ const register = (api) => {
453
453
  }
454
454
  }
455
455
  }, { optional: true });
456
+ api.registerTool({
457
+ name: 'pier_get_workspace_directory',
458
+ label: 'Get Workspace Directory',
459
+ description: 'Fetch the real-time directory of all members in this workspace, including their roles and online status.',
460
+ parameters: {
461
+ type: 'object',
462
+ properties: {
463
+ groupId: { type: 'string', description: 'The Workspace Group ID' }
464
+ },
465
+ required: ['groupId']
466
+ },
467
+ async execute(_id, params, ctx) {
468
+ const robot = instances.get(ctx?.metadata?.accountId || ctx?.accountId || 'default') || instances.values().next().value;
469
+ if (!robot)
470
+ return { content: [{ type: 'text', text: 'Error' }], details: {} };
471
+ try {
472
+ // 1. Get Workspace Metadata from KV
473
+ const lobbyKv = await robot.client.nats.getWorkspaceKV('PIER_WORKSPACES_LOBBY');
474
+ const wsEntry = await lobbyKv.get(params.groupId);
475
+ if (!wsEntry)
476
+ return { content: [{ type: 'text', text: 'Workspace not found.' }], details: {} };
477
+ const wsData = JSON.parse(new TextDecoder().decode(wsEntry.value));
478
+ const members = wsData.config?.members || [];
479
+ // 2. Get Real-time Online Status for all nodes
480
+ const allNodes = await robot.client.getNodes();
481
+ const nodeStatusMap = new Map(allNodes.map((n) => [n.id, n.is_online]));
482
+ // 3. Build Directory Report
483
+ const report = members.map((m) => {
484
+ const isOnline = nodeStatusMap.has(m.id) ? (nodeStatusMap.get(m.id) ? 'ONLINE' : 'OFFLINE') : 'UNKNOWN/EXTERNAL';
485
+ return `• [${m.role}] ${m.name || 'Anonymous'} (ID: ${m.id}) - STATUS: ${isOnline}`;
486
+ }).join('\n');
487
+ return { content: [{ type: 'text', text: `WORKSPACE DIRECTORY FOR ${wsData.name}:\n${report || 'No members listed.'}` }], details: { members } };
488
+ }
489
+ catch (err) {
490
+ return { content: [{ type: 'text', text: `Error: ${err.message}` }], details: {} };
491
+ }
492
+ }
493
+ }, { optional: true });
456
494
  api.registerTool({
457
495
  name: 'pier_get_profile',
458
496
  label: 'Pier Profile',
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gholl-studio/pier-connector",
3
3
  "author": "gholl",
4
- "version": "0.7.10",
4
+ "version": "0.7.13",
5
5
  "description": "OpenClaw plugin that connects to the Pier job marketplace. Automatically fetches, executes, and reports distributed tasks for rewards.",
6
6
  "type": "module",
7
7
  "main": "dist/index.js",
@@ -41,7 +41,7 @@
41
41
  ],
42
42
  "license": "MIT",
43
43
  "dependencies": {
44
- "@gholl-studio/pier-sdk": "^1.4.8",
44
+ "@gholl-studio/pier-sdk": "^1.4.9",
45
45
  "@nats-io/jetstream": "^3.3.1",
46
46
  "@nats-io/transport-node": "^3.0.0",
47
47
  "ethers": "^6.16.0",
package/src/inbound.ts CHANGED
@@ -23,13 +23,18 @@ export async function handleInbound(
23
23
  ) {
24
24
  const logger = ctx.log || console;
25
25
  const channelRuntime = ctx.channelRuntime;
26
+
27
+ if (!channelRuntime?.reply) {
28
+ console.error(`[pier-connector][${robot.accountId}] SDK Error: channelRuntime.reply is not available.`);
29
+ return;
30
+ }
26
31
 
27
32
  // 1. Prepare Scoped Config
28
33
  const rootConfig = ctx.cfg || {};
29
34
  const accountScopedCfg = rootConfig;
30
35
 
31
36
  // 2. Resolve Agent Route
32
- // A message is part of a workspace if it has a workspace prefix or matches known patterns.
37
+ // A message is part of a workspace if it has a workspace prefix or is explicitly marked.
33
38
  const isWorkspace = !!inbound.jobId && (inbound.jobId.startsWith('job-') || (inbound as any).isWorkspace === true);
34
39
  const peerId = jobId;
35
40
  const chatType = isWorkspace ? 'group' : 'direct';
@@ -94,14 +99,15 @@ export async function handleInbound(
94
99
  isWorkspace ? `BOARD INDEX: ${boardIndex}` : "",
95
100
  "-----------------------------------------",
96
101
  isWorkspace ? "SWARM COORDINATION & PM PROTOCOL:" : "",
97
- isWorkspace ? "1. PROJECT MANAGER (PM) ROLE: If you are acting as a lead/PM, use `tasks.[id]` keys to assign sub-tasks and monitor progress. Only the PM should mark tasks as 'VALIDATED'." : "",
98
- isWorkspace ? "2. CONFLICT PROTECTION: In a multi-agent environment, you MUST provide 'expectedRevision' when calling `pier_update_board_item` to prevent overwriting others' work." : "",
99
- isWorkspace ? "3. STATE MACHINE: Use standard statuses: TODO -> DOING -> DONE -> VALIDATED." : "",
100
- isWorkspace ? "4. Use the groupId exactly as provided. DO NOT add 'pierWorkspace:' prefixes." : "",
102
+ isWorkspace ? "1. THE GOAL: The 'PRIMARY MISSION GOAL' is your source of truth. It defines your purpose here." : "",
103
+ isWorkspace ? "2. PM ROLE: If acting as lead/PM, use `tasks.[id]` keys for assignment. Only PM should mark tasks as 'VALIDATED'." : "",
104
+ isWorkspace ? "3. MEMBER AWARENESS: Use `pier_get_workspace_directory` to fetch real-time member IDs and online status for collaboration." : "",
105
+ isWorkspace ? "4. CONFLICT PROTECTION: You MUST provide 'expectedRevision' when calling `pier_update_board_item` to prevent overwrites." : "",
106
+ isWorkspace ? "5. Use the groupId exactly as provided. DO NOT add 'pierWorkspace:' prefixes." : "",
101
107
  "-----------------------------------------",
102
- "5. You MUST USE the `pier_finish_task` tool to submit the final result when the mission objectives are fully met.",
103
- "6. If requirements are unclear, use `pier_chat` to consult the employer.",
104
- "7. Do not remain idle if the goal is clear. Act, update the board, and coordinate."
108
+ "6. You MUST USE the `pier_finish_task` tool to submit the final result when the mission objectives are fully met.",
109
+ "7. If requirements are unclear, use `pier_chat` to consult the employer.",
110
+ "8. Do not remain idle if the goal is clear. Act, update the board, and coordinate."
105
111
  ].filter(Boolean).join('\n');
106
112
  }
107
113
 
@@ -119,18 +125,74 @@ export async function handleInbound(
119
125
  SenderName: inbound.senderId,
120
126
  WasMentioned: inbound.WasMentioned,
121
127
  InjectedSystemPrompt: injectedPrompt,
122
- Metadata: {
123
- jobId: jobId,
124
- pierJobId: metadata?.pierJobId,
128
+ Metadata: {
129
+ ...metadata,
130
+ accountId: robot.accountId,
131
+ agentId: finalAgentId,
132
+ pierJobId: jobId,
133
+ routingSource: routingSource,
125
134
  workspace: isWorkspace,
126
135
  boardKeys: boardIndex
127
136
  }
128
137
  });
129
138
 
130
- // 4. Dispatch to Agent
139
+ // 4. Create Dispatcher
140
+ const { dispatcher, replyOptions, markDispatchIdle, markRunComplete } = channelRuntime.reply.createReplyDispatcherWithTyping({
141
+ deliver: async (payload: any, info: any) => {
142
+ const currentMeta = robot.activeNodeJobs.get(jobId);
143
+ const resAgent = payload.agentId || finalAgentId;
144
+
145
+ logger.info(`[pier-connector:trace] Outbound delivery for ${jobId}. Responder: ${resAgent}.`);
146
+
147
+ if (payload.text && payload.text.length > 0) {
148
+ await plugin.outbound.sendText({
149
+ text: payload.text,
150
+ to: `pier:${jobId}`,
151
+ accountId: robot.accountId,
152
+ metadata: {
153
+ ...currentMeta,
154
+ accountId: robot.accountId,
155
+ pierJobId: jobId,
156
+ respondingAgentId: resAgent,
157
+ workspace: isWorkspace
158
+ },
159
+ });
160
+ }
161
+ }
162
+ });
163
+
164
+ // 5. Session Recording
165
+ if (channelRuntime.session?.recordSessionMetaFromInbound) {
166
+ try {
167
+ const storePath = channelRuntime.session.resolveStorePath(dynamicSessionKey);
168
+ await channelRuntime.session.recordSessionMetaFromInbound({
169
+ storePath, sessionKey: dynamicSessionKey, ctx: ctxPayload
170
+ });
171
+ } catch (err: any) {
172
+ logger.error(`[pier-connector] ✖ Failed to record session metadata: ${err.message}`);
173
+ }
174
+ }
175
+
176
+ // 6. Dispatch
131
177
  try {
132
- await channelRuntime.reply.dispatchInbound(ctxPayload);
178
+ const { queuedFinal, counts } = await channelRuntime.reply.dispatchReplyFromConfig({
179
+ ctx: ctxPayload,
180
+ cfg: accountScopedCfg,
181
+ dispatcher,
182
+ replyOptions: {
183
+ ...replyOptions,
184
+ onModelSelected: (mCtx: any) => {
185
+ logger.info(`[pier-connector:debug] Model selected for ${jobId}: ${mCtx.provider}/${mCtx.model}`);
186
+ }
187
+ }
188
+ });
189
+
190
+ await dispatcher.waitForIdle();
191
+ logger.info(`[pier-connector] Dispatch complete for ${jobId}. queuedFinal=${queuedFinal}, counts=${JSON.stringify(counts)}`);
133
192
  } catch (err: any) {
134
- logger.error(`[pier-connector] Dispatch failed: ${err.message}`);
193
+ logger.error(`[pier-connector] Dispatch error for job ${jobId}: ${err.message}`);
194
+ } finally {
195
+ markRunComplete?.();
196
+ markDispatchIdle?.();
135
197
  }
136
198
  }
package/src/index.ts CHANGED
@@ -467,6 +467,46 @@ const register = (api: PierPluginApi) => {
467
467
  }
468
468
  }, { optional: true });
469
469
 
470
+ api.registerTool({
471
+ name: 'pier_get_workspace_directory',
472
+ label: 'Get Workspace Directory',
473
+ description: 'Fetch the real-time directory of all members in this workspace, including their roles and online status.',
474
+ parameters: {
475
+ type: 'object',
476
+ properties: {
477
+ groupId: { type: 'string', description: 'The Workspace Group ID' }
478
+ },
479
+ required: ['groupId']
480
+ },
481
+ async execute(_id, params, ctx: any) {
482
+ const robot = instances.get(ctx?.metadata?.accountId || ctx?.accountId || 'default') || instances.values().next().value;
483
+ if (!robot) return { content: [{ type: 'text', text: 'Error' }], details: {} };
484
+
485
+ try {
486
+ // 1. Get Workspace Metadata from KV
487
+ const lobbyKv = await robot.client.nats.getWorkspaceKV('PIER_WORKSPACES_LOBBY');
488
+ const wsEntry = await lobbyKv.get(params.groupId);
489
+ if (!wsEntry) return { content: [{ type: 'text', text: 'Workspace not found.' }], details: {} };
490
+ const wsData = JSON.parse(new TextDecoder().decode(wsEntry.value));
491
+ const members = wsData.config?.members || [];
492
+
493
+ // 2. Get Real-time Online Status for all nodes
494
+ const allNodes = await robot.client.getNodes();
495
+ const nodeStatusMap = new Map(allNodes.map((n: any) => [n.id, n.is_online]));
496
+
497
+ // 3. Build Directory Report
498
+ const report = members.map((m: any) => {
499
+ const isOnline = nodeStatusMap.has(m.id) ? (nodeStatusMap.get(m.id) ? 'ONLINE' : 'OFFLINE') : 'UNKNOWN/EXTERNAL';
500
+ return `• [${m.role}] ${m.name || 'Anonymous'} (ID: ${m.id}) - STATUS: ${isOnline}`;
501
+ }).join('\n');
502
+
503
+ return { content: [{ type: 'text', text: `WORKSPACE DIRECTORY FOR ${wsData.name}:\n${report || 'No members listed.'}` }], details: { members } };
504
+ } catch (err: any) {
505
+ return { content: [{ type: 'text', text: `Error: ${err.message}` }], details: {} };
506
+ }
507
+ }
508
+ }, { optional: true });
509
+
470
510
  api.registerTool({
471
511
  name: 'pier_get_profile',
472
512
  label: 'Pier Profile',