thinkpool-pair 0.6.24 → 0.6.25
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/claude-session.mjs +12 -1
- package/package.json +1 -1
package/claude-session.mjs
CHANGED
|
@@ -213,6 +213,14 @@ export function startClaudeSession({ cwd, model, resume, onEvent, requestPermiss
|
|
|
213
213
|
abortController: ac,
|
|
214
214
|
permissionMode: 'default',
|
|
215
215
|
hooks: { PreToolUse: [{ hooks: [preTool] }] },
|
|
216
|
+
// Load the host's REAL Claude environment — user + project + local settings —
|
|
217
|
+
// so custom slash commands (.claude/commands/*.md), CLAUDE.md and agents work
|
|
218
|
+
// in the room exactly as in the user's own CLI. The Agent SDK isolates by
|
|
219
|
+
// default (no filesystem settings), which is why a custom /command came back
|
|
220
|
+
// "isn't available in this environment"; we opt in explicitly so it holds
|
|
221
|
+
// across SDK versions. The room's PreToolUse gate still runs and stays
|
|
222
|
+
// authoritative (hooks fire regardless of any loaded permission rules).
|
|
223
|
+
settingSources: ['user', 'project', 'local'],
|
|
216
224
|
// Needed for live thinking-token progress (SDKThinkingTokensMessage) to
|
|
217
225
|
// flow during a turn. We ignore the fine-grained stream_event partials in
|
|
218
226
|
// the loop; only the coarse thinking_tokens system message is surfaced.
|
|
@@ -237,7 +245,10 @@ export function startClaudeSession({ cwd, model, resume, onEvent, requestPermiss
|
|
|
237
245
|
break
|
|
238
246
|
}
|
|
239
247
|
if (m.session_id) sessionId = m.session_id
|
|
240
|
-
|
|
248
|
+
// m.slash_commands (init message) — the commands this session really
|
|
249
|
+
// supports: built-ins + the host's custom .claude/commands. Surfaced
|
|
250
|
+
// so the room composer's autocomplete lists what ACTUALLY exists.
|
|
251
|
+
emit({ kind: 'system', sessionId, model: m.model || model || null, commands: Array.isArray(m.slash_commands) ? m.slash_commands : undefined })
|
|
241
252
|
break
|
|
242
253
|
case 'assistant':
|
|
243
254
|
// Stamp tool-call start times so tool_result can report a duration.
|