claude-tempo 0.2.3 → 0.2.5-beta.1
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/copilot-bridge.js +32 -8
- package/package.json +1 -1
package/dist/copilot-bridge.js
CHANGED
|
@@ -167,15 +167,19 @@ async function main() {
|
|
|
167
167
|
},
|
|
168
168
|
systemMessage: {
|
|
169
169
|
mode: 'append',
|
|
170
|
-
content: `You are part of the "${config.ensemble}" ensemble
|
|
171
|
-
`
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
170
|
+
content: `You are part of the "${config.ensemble}" ensemble coordinated via Temporal. ` +
|
|
171
|
+
`You have MCP tools available — ALWAYS use these tools directly, NEVER try to run them as shell commands:\n` +
|
|
172
|
+
`- set_name: Set your player name (call this FIRST if instructed)\n` +
|
|
173
|
+
`- ensemble: List active sessions\n` +
|
|
174
|
+
`- cue: Send a message to another player\n` +
|
|
175
|
+
`- set_part: Update your status/description\n` +
|
|
176
|
+
`- listen: Check for pending messages\n` +
|
|
177
|
+
`- recruit: Spawn a new player session\n` +
|
|
178
|
+
`- report: Report to the conductor\n` +
|
|
179
|
+
`- terminate: Terminate a session\n\n` +
|
|
180
|
+
`When you receive a message from another session, treat it like a coworker asking for help — respond promptly using your MCP tools.`,
|
|
178
181
|
},
|
|
182
|
+
excludedTools: ['write_powershell', 'read_powershell', 'list_powershell'],
|
|
179
183
|
...(model ? { model } : {}),
|
|
180
184
|
};
|
|
181
185
|
log('Creating Copilot session...');
|
|
@@ -198,6 +202,18 @@ async function main() {
|
|
|
198
202
|
const tools = data.toolRequests?.map((t) => t.name).join(', ') || 'none';
|
|
199
203
|
log(`[event:${event.type}] content="${(data.content || '').substring(0, 200)}" tools=[${tools}]`);
|
|
200
204
|
}
|
|
205
|
+
else if (event.type === 'session.info') {
|
|
206
|
+
log(`[session.info] ${JSON.stringify(event.data)}`);
|
|
207
|
+
}
|
|
208
|
+
else if (event.type === 'session.warning') {
|
|
209
|
+
log(`[session.warning] ${JSON.stringify(event.data)}`);
|
|
210
|
+
}
|
|
211
|
+
else if (event.type === 'session.mcp_servers_loaded') {
|
|
212
|
+
log(`[mcp_servers_loaded] ${JSON.stringify(event.data)}`);
|
|
213
|
+
}
|
|
214
|
+
else if (event.type === 'session.mcp_server_status_changed') {
|
|
215
|
+
log(`[mcp_server_status_changed] ${JSON.stringify(event.data)}`);
|
|
216
|
+
}
|
|
201
217
|
else if (event.type === 'session.idle') {
|
|
202
218
|
log(`[event:session.idle] Session is idle`);
|
|
203
219
|
}
|
|
@@ -221,6 +237,14 @@ async function main() {
|
|
|
221
237
|
const t0 = Date.now();
|
|
222
238
|
const initResult = await session.sendAndWait({ prompt: 'Call the ensemble tool to list active sessions. Respond in one short sentence.' }, 120_000);
|
|
223
239
|
log(`Initial prompt completed in ${Date.now() - t0}ms, result:`, JSON.stringify(initResult)?.substring(0, 300));
|
|
240
|
+
// Dump available tools for diagnostics
|
|
241
|
+
try {
|
|
242
|
+
const toolList = await session.rpc.tools.list({});
|
|
243
|
+
log('Available tools:', JSON.stringify(toolList.tools?.map((t) => t.name || t.namespacedName)));
|
|
244
|
+
}
|
|
245
|
+
catch (toolErr) {
|
|
246
|
+
log('Failed to list tools:', toolErr?.message);
|
|
247
|
+
}
|
|
224
248
|
}
|
|
225
249
|
catch (err) {
|
|
226
250
|
log(`Initial prompt error after ${Date.now()}ms:`, err?.message, err?.stack?.substring(0, 300));
|