@rubytech/create-maxy-code 0.1.75 → 0.1.79
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/__tests__/plugin-install.test.js +2 -2
- package/dist/lib/plugin-install.js +1 -1
- package/package.json +1 -1
- package/payload/platform/config/brand.json +1 -1
- package/payload/platform/lib/graph-write/dist/index.js +1 -1
- package/payload/platform/lib/graph-write/src/index.ts +1 -1
- package/payload/platform/package.json +1 -1
- package/payload/platform/plugins/.claude-plugin/marketplace.json +101 -1
- package/payload/platform/plugins/admin/mcp/dist/index.js +1 -1
- package/payload/platform/plugins/admin/skills/commitment-followthrough/SKILL.md +1 -1
- package/payload/platform/plugins/admin/skills/session-management/SKILL.md +1 -1
- package/payload/platform/plugins/business-assistant/PLUGIN.md +1 -1
- package/payload/platform/plugins/business-assistant/references/task-management.md +13 -13
- package/payload/platform/plugins/docs/references/admin-session.md +7 -6
- package/payload/platform/plugins/docs/references/internals.md +2 -2
- package/payload/platform/plugins/memory/PLUGIN.md +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/neo4j-password-path.test.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/neo4j-password-path.test.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/neo4j-password-path.test.js +57 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/neo4j-password-path.test.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/neo4j.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/neo4j.js +9 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/neo4j.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/vitest.config.ts +2 -0
- package/payload/platform/plugins/memory/skills/conversation-archive-enrich/SKILL.md +2 -2
- package/payload/platform/plugins/projects/PLUGIN.md +3 -3
- package/payload/platform/plugins/projects/references/sprint.md +2 -2
- package/payload/platform/plugins/scheduling/skills/briefing/SKILL.md +2 -2
- package/payload/platform/plugins/tasks/.claude-plugin/plugin.json +1 -1
- package/payload/platform/plugins/work/.claude-plugin/plugin.json +17 -0
- package/payload/platform/plugins/{tasks → work}/.mcp.json +2 -2
- package/payload/platform/plugins/work/PLUGIN.md +120 -0
- package/payload/platform/plugins/work/mcp/dist/index.d.ts +2 -0
- package/payload/platform/plugins/work/mcp/dist/index.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/index.js +543 -0
- package/payload/platform/plugins/work/mcp/dist/index.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/lib/embeddings.d.ts +7 -0
- package/payload/platform/plugins/work/mcp/dist/lib/embeddings.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/lib/embeddings.js +24 -0
- package/payload/platform/plugins/work/mcp/dist/lib/embeddings.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/lib/neo4j.d.ts +5 -0
- package/payload/platform/plugins/work/mcp/dist/lib/neo4j.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/lib/neo4j.js +40 -0
- package/payload/platform/plugins/work/mcp/dist/lib/neo4j.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-complete.d.ts +17 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-complete.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-complete.js +76 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-complete.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-create.d.ts +29 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-create.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-create.js +235 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-create.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-get.d.ts +40 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-get.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-get.js +125 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-get.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-list.d.ts +26 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-list.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-list.js +81 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-list.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-update.d.ts +19 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-update.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-update.js +102 -0
- package/payload/platform/plugins/work/mcp/dist/tools/project-update.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-list.d.ts +20 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-list.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-list.js +37 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-list.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-name.d.ts +12 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-name.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-name.js +28 -0
- package/payload/platform/plugins/work/mcp/dist/tools/session-name.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-complete.d.ts +16 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-complete.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-complete.js +33 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-complete.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-create.d.ts +63 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-create.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-create.js +141 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-create.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-get.d.ts +19 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-get.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-get.js +51 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-get.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-list.d.ts +18 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-list.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-list.js +66 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-list.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-ready.d.ts +21 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-ready.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-ready.js +54 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-ready.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-relate.d.ts +12 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-relate.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-relate.js +59 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-relate.js.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-update.d.ts +32 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-update.d.ts.map +1 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-update.js +112 -0
- package/payload/platform/plugins/work/mcp/dist/tools/work-update.js.map +1 -0
- package/payload/platform/plugins/{tasks → work}/mcp/package.json +1 -1
- package/payload/platform/scripts/conversation-id-allowlist.txt +4 -4
- package/payload/platform/scripts/seed-neo4j.sh +1 -1
- package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/http-server.js +34 -5
- package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/index.js +32 -0
- package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +33 -1
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +170 -39
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/specialist-drift.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/specialist-drift.js +10 -4
- package/payload/platform/services/claude-session-manager/dist/specialist-drift.js.map +1 -1
- package/payload/platform/templates/agents/admin/IDENTITY.md +21 -37
- package/payload/platform/templates/specialists/agents/database-operator.md +1 -1
- package/payload/platform/templates/specialists/agents/librarian.md +1 -1
- package/payload/platform/templates/specialists/agents/personal-assistant.md +1 -1
- package/payload/platform/templates/specialists/agents/project-manager.md +3 -3
- package/payload/premium-plugins/real-agent/plugins/leads/PLUGIN.md +1 -1
- package/payload/server/{chunk-ITQ55PCQ.js → chunk-TFEIFU7F.js} +1 -1
- package/payload/server/{chunk-HZ77KMTV.js → chunk-W33UUYYR.js} +1 -4
- package/payload/server/{cloudflare-task-tracker-PZBX7X3D.js → cloudflare-task-tracker-7P355PSD.js} +1 -1
- package/payload/server/maxy-edge.js +1 -1
- package/payload/server/server.js +50 -18
- package/payload/platform/plugins/tasks/PLUGIN.md +0 -120
|
@@ -132,10 +132,14 @@ export function buildMcpPlaceholders(p, env = process.env) {
|
|
|
132
132
|
if (!maxyBrandPort) {
|
|
133
133
|
throw new Error('[claude-session-manager] MAXY_BRAND_PORT not set — manager unit must stamp it');
|
|
134
134
|
}
|
|
135
|
+
// Task 205 — USER_ID lands in lockstep with ACCOUNT_ID. Empty string on
|
|
136
|
+
// silent-compaction / recorder spawns; never undefined, so JSON
|
|
137
|
+
// serialization of mcp.json yields a stable shape.
|
|
135
138
|
return {
|
|
136
139
|
PLATFORM_ROOT: p.platformRoot,
|
|
137
140
|
PREMIUM_PLUGINS_ROOT: join(dirname(p.platformRoot), 'premium-plugins'),
|
|
138
141
|
ACCOUNT_ID: p.accountId,
|
|
142
|
+
USER_ID: p.userId ?? '',
|
|
139
143
|
SESSION_ID: p.bridgeSuffixHint,
|
|
140
144
|
LOG_DIR: p.logDir,
|
|
141
145
|
PLATFORM_PORT: platformPort,
|
|
@@ -290,7 +294,14 @@ function emitToolInventoryAsync(p) {
|
|
|
290
294
|
else
|
|
291
295
|
notExposed.push(name);
|
|
292
296
|
}
|
|
293
|
-
|
|
297
|
+
// Task 207 — `argv-tools=0` is now the literal truth for specialist
|
|
298
|
+
// spawns (no `--allowed-tools` push). The frontmatter list is implied
|
|
299
|
+
// by `exposed.length + notExposed.length`; the load-bearing signal is
|
|
300
|
+
// `mcp-listed-tools` (does the agent's plugin namespace resolve via
|
|
301
|
+
// plugin-system?) and `not-exposed` (does it match what the agent
|
|
302
|
+
// declared?). When both reach the brief's target values, the
|
|
303
|
+
// recorder turn produces real `tool_use` blocks.
|
|
304
|
+
p.logger(`[pty-spawn-tool-inventory] sessionId=${p.sessionId} specialist=${p.specialist} argv-tools=0 mcp-listed-tools=${mcpListedCount} exposed=${exposed.join(',')} not-exposed=${notExposed.join(',')}`);
|
|
294
305
|
})
|
|
295
306
|
.catch((err) => {
|
|
296
307
|
const msg = err instanceof Error ? err.message : String(err);
|
|
@@ -404,39 +415,76 @@ export async function spawnClaudeSession(deps, args) {
|
|
|
404
415
|
specialistTools = filtered;
|
|
405
416
|
}
|
|
406
417
|
}
|
|
418
|
+
// Task 207 — specialist spawns no longer push `--allowed-tools` argv.
|
|
419
|
+
// `--agent <name>` resolves the agent file's `tools:` frontmatter
|
|
420
|
+
// natively against Claude Code's plugin-tool registry (registry #1);
|
|
421
|
+
// the argv push was Task 165's belt-and-suspenders mirror that became
|
|
422
|
+
// load-bearing in the wrong direction after Task 203's `mcp__plugin_…`
|
|
423
|
+
// rename: the per-spawn `.mcp.json` registered servers under the
|
|
424
|
+
// bare-name namespace, so the renamed argv filter found zero matches
|
|
425
|
+
// and collapsed registry #2 to empty. Specialist agent-frontmatter
|
|
426
|
+
// tools are still READ above (jsonlTail.register consumes the array,
|
|
427
|
+
// strip-list observability still fires) but never reach argv.
|
|
428
|
+
// Operator (non-specialist) spawns retain the role-based push.
|
|
407
429
|
const allowed = specialistTools !== null
|
|
408
430
|
? Array.from(new Set(specialistTools)).sort()
|
|
409
431
|
: Array.from(args.role === 'public' ? deps.toolSurface.public : deps.toolSurface.admin).sort();
|
|
410
|
-
for (const tool of allowed) {
|
|
411
|
-
argv.push('--allowed-tools', tool);
|
|
412
|
-
}
|
|
413
432
|
if (isSpecialistSpawn) {
|
|
414
|
-
deps.logger(`pty-spawn-allowlist specialist=${args.specialist} count
|
|
433
|
+
deps.logger(`pty-spawn-allowlist specialist=${args.specialist} source=native-agent-flag count=skipped stripped=${strippedCount}`);
|
|
415
434
|
}
|
|
416
435
|
else {
|
|
436
|
+
for (const tool of allowed) {
|
|
437
|
+
argv.push('--allowed-tools', tool);
|
|
438
|
+
}
|
|
417
439
|
const excludedSample = args.role === 'public'
|
|
418
440
|
? Array.from(deps.toolSurface.admin).filter((t) => !deps.toolSurface.public.has(t)).sort().slice(0, 5).join(',')
|
|
419
441
|
: '';
|
|
420
442
|
deps.logger(`tool-allowlist role=${args.role} count=${allowed.length} excluded=${excludedSample}`);
|
|
421
443
|
}
|
|
444
|
+
// Task 207 — `--permission-mode bypassPermissions` for specialist spawns
|
|
445
|
+
// when the caller has not explicitly set one. Headless specialists have
|
|
446
|
+
// no operator to consent to write-tool invocations; default mode blocks
|
|
447
|
+
// them with `Claude requested permissions to use mcp__plugin_…, but you
|
|
448
|
+
// haven't granted it yet` and the recorder turn ends with zero writes.
|
|
449
|
+
// Operator (non-specialist) spawns keep default mode — the operator IS
|
|
450
|
+
// the consenter.
|
|
422
451
|
if (args.permissionMode && args.permissionMode !== 'default') {
|
|
423
452
|
argv.push('--permission-mode', args.permissionMode);
|
|
424
453
|
}
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
if (!
|
|
437
|
-
|
|
454
|
+
else if (isSpecialistSpawn) {
|
|
455
|
+
argv.push('--permission-mode', 'bypassPermissions');
|
|
456
|
+
}
|
|
457
|
+
// Task 207 — specialist spawns no longer write a per-spawn `.mcp.json`
|
|
458
|
+
// or pass `--mcp-config`. Plugin manifests register the MCPs at session
|
|
459
|
+
// start (post-202+203); per-account env (ACCOUNT_ID, USER_ID,
|
|
460
|
+
// NEO4J_URI, NEO4J_PASSWORD, PLATFORM_ROOT, CLAUDE_CONFIG_DIR) rides
|
|
461
|
+
// the PTY env block below. Operator (non-specialist) spawns retain the
|
|
462
|
+
// per-spawn write — their MCP children are registered through the same
|
|
463
|
+
// `--mcp-config` channel and rely on placeholder substitution.
|
|
464
|
+
let mcpConfigResult = null;
|
|
465
|
+
if (!isSpecialistSpawn) {
|
|
466
|
+
mcpConfigResult = writePerSpawnMcpConfig({
|
|
467
|
+
role: args.role,
|
|
468
|
+
toolSurface: deps.toolSurface,
|
|
469
|
+
accountId: deps.accountId,
|
|
470
|
+
userId: args.userId,
|
|
471
|
+
platformRoot: deps.platformRoot,
|
|
472
|
+
logDir: deps.logDir,
|
|
473
|
+
bridgeSuffixHint: args.senderId,
|
|
474
|
+
targetDir: deps.mcpConfigDir ?? tmpdir(),
|
|
475
|
+
logger: deps.logger,
|
|
476
|
+
specialistTools,
|
|
477
|
+
});
|
|
478
|
+
if (!mcpConfigResult.ok) {
|
|
479
|
+
return { ok: false, reason: 'mcp-config-write-failed', stderrTail: mcpConfigResult.detail };
|
|
480
|
+
}
|
|
481
|
+
argv.push('--mcp-config', mcpConfigResult.path);
|
|
482
|
+
// Task 205 — surface whether the placeholder map received a non-empty
|
|
483
|
+
// USER_ID. Silent-compaction / recorder spawns legitimately stamp empty;
|
|
484
|
+
// a cookie-auth admin spawn with userId-present=no is a regression and
|
|
485
|
+
// names exactly which spawn produced the `MissingUserIdError` later.
|
|
486
|
+
deps.logger(`pty-spawn-mcp-config-env userId-present=${args.userId && args.userId.length > 0 ? 'yes' : 'no'}`);
|
|
438
487
|
}
|
|
439
|
-
argv.push('--mcp-config', mcpConfigResult.path);
|
|
440
488
|
const dirsToAdd = [...deps.agentsDirs[args.role]];
|
|
441
489
|
if (args.role === 'admin' && existsSync(deps.perAccountSpecialistsDir)) {
|
|
442
490
|
dirsToAdd.push(deps.perAccountSpecialistsDir);
|
|
@@ -445,7 +493,15 @@ export async function spawnClaudeSession(deps, args) {
|
|
|
445
493
|
argv.push('--add-dir', d);
|
|
446
494
|
deps.logger(`pty-spawn-agents-dir role=${args.role} path=${d}`);
|
|
447
495
|
}
|
|
448
|
-
|
|
496
|
+
if (mcpConfigResult) {
|
|
497
|
+
deps.logger(`pty-spawn-mcp-config servers=${mcpConfigResult.serverCount} tools=${allowed.length} bytes=${mcpConfigResult.bytes} path=${mcpConfigResult.path}`);
|
|
498
|
+
}
|
|
499
|
+
else {
|
|
500
|
+
// Task 207 — specialist spawns omit the per-spawn .mcp.json; the
|
|
501
|
+
// operator's view of MCP registration is via the plugin-manifest log
|
|
502
|
+
// chain at session start, not this line.
|
|
503
|
+
deps.logger(`pty-spawn-mcp-config specialist=${args.specialist} source=plugin-manifests`);
|
|
504
|
+
}
|
|
449
505
|
if (args.role === 'public' && args.attachmentDir) {
|
|
450
506
|
mkdirSync(args.attachmentDir, { recursive: true });
|
|
451
507
|
argv.push('--add-dir', args.attachmentDir);
|
|
@@ -463,21 +519,58 @@ export async function spawnClaudeSession(deps, args) {
|
|
|
463
519
|
promptPositional = true;
|
|
464
520
|
}
|
|
465
521
|
const hooksResolved = discoverHooks(deps.spawnCwd, process.env.CLAUDE_CONFIG_DIR);
|
|
466
|
-
|
|
522
|
+
// Task 205 — `userId` slug on the spawn-start line lets the operator
|
|
523
|
+
// pair a spawn with the subsequent jsonl. `absent` only on documented
|
|
524
|
+
// silent-compaction / recorder paths. Slice pattern matches the UI
|
|
525
|
+
// route's spawn-request-in log (claude-sessions.ts).
|
|
526
|
+
const userIdSlug = args.userId ? args.userId.slice(0, 8) : 'absent';
|
|
527
|
+
// Task 207 — assemble the PTY env once so the spawn-start log can name
|
|
528
|
+
// the explicit specialist-env keys before the spawn fires. The keys-only
|
|
529
|
+
// surface lets `grep env-keys=` on server.log confirm the contract at
|
|
530
|
+
// spawn time without leaking secret values into logs.
|
|
531
|
+
const spawnEnv = {
|
|
532
|
+
...process.env,
|
|
533
|
+
TERM: 'xterm-256color',
|
|
534
|
+
MAXY_SESSION_ROLE: args.role,
|
|
535
|
+
MAXY_HIDDEN_SPAWN: args.hidden ? '1' : '0',
|
|
536
|
+
// Task 147 — Stop-hook gate against recursion now reads the
|
|
537
|
+
// specialist value, since the recorder is a Sidebar-equivalent
|
|
538
|
+
// spawn with `specialist=database-operator`. No standalone
|
|
539
|
+
// recorder-only env flag.
|
|
540
|
+
MAXY_SPECIALIST: args.specialist ?? '',
|
|
541
|
+
// Task 205 — admin operator's userId on the MCP child env so
|
|
542
|
+
// scheduling, memory, time-resolve etc. can key UserProfile reads
|
|
543
|
+
// by (accountId, userId). Empty string on silent-compaction /
|
|
544
|
+
// recorder paths; MCP module init must stay boot-tolerant per
|
|
545
|
+
// the Task 202 contract, so handlers refuse at first use rather
|
|
546
|
+
// than refusing at boot.
|
|
547
|
+
USER_ID: args.userId ?? '',
|
|
548
|
+
};
|
|
549
|
+
// Task 207 — specialist spawns inherit per-account env explicitly so
|
|
550
|
+
// plugin-system MCP children get a deterministic context without the
|
|
551
|
+
// per-spawn `.mcp.json` (dropped above). `{...process.env}` already
|
|
552
|
+
// covers the production case where the manager systemd unit sets
|
|
553
|
+
// these — the explicit overwrite documents the contract, plumbs the
|
|
554
|
+
// values through `deps` so unit tests can inject them, and surfaces
|
|
555
|
+
// them on the `env-keys=` log line below. Operator spawns are unchanged;
|
|
556
|
+
// their per-spawn `.mcp.json` continues to inject these via placeholders.
|
|
557
|
+
const specialistEnvKeys = [];
|
|
558
|
+
if (isSpecialistSpawn) {
|
|
559
|
+
spawnEnv.ACCOUNT_ID = deps.accountId;
|
|
560
|
+
spawnEnv.PLATFORM_ROOT = deps.platformRoot;
|
|
561
|
+
spawnEnv.CLAUDE_CONFIG_DIR = deps.claudeConfigDir;
|
|
562
|
+
spawnEnv.NEO4J_URI = deps.brandedNeo4jUri ?? '';
|
|
563
|
+
spawnEnv.NEO4J_PASSWORD = deps.brandedNeo4jPassword ?? '';
|
|
564
|
+
specialistEnvKeys.push('ACCOUNT_ID', 'USER_ID', 'PLATFORM_ROOT', 'CLAUDE_CONFIG_DIR', 'NEO4J_URI', 'NEO4J_PASSWORD');
|
|
565
|
+
}
|
|
566
|
+
const envKeysField = specialistEnvKeys.length > 0
|
|
567
|
+
? ` env-keys=${specialistEnvKeys.join(',')}`
|
|
568
|
+
: '';
|
|
569
|
+
deps.logger(`pty-spawn-start claudeBin=${deps.claudeBin} argv-count=${argv.length} append-system-prompt-bytes=${Buffer.byteLength(appendSystemPrompt, 'utf8')} permission-mode=${args.permissionMode ?? 'default'} resume=${args.resumeClaudeSessionId ? 'yes' : 'no'} specialist=${args.specialist ?? 'none'} prompt-positional=${promptPositional ? 'yes' : 'no'} prompt-bytes=${promptBytes} userId=${userIdSlug} hooksResolved=${hooksResolved.join(',') || 'none'}${envKeysField}`);
|
|
467
570
|
const ptySpawnStart = Date.now();
|
|
468
571
|
let pty;
|
|
469
572
|
try {
|
|
470
|
-
pty = deps.spawnPty(deps.claudeBin, argv,
|
|
471
|
-
...process.env,
|
|
472
|
-
TERM: 'xterm-256color',
|
|
473
|
-
MAXY_SESSION_ROLE: args.role,
|
|
474
|
-
MAXY_HIDDEN_SPAWN: args.hidden ? '1' : '0',
|
|
475
|
-
// Task 147 — Stop-hook gate against recursion now reads the
|
|
476
|
-
// specialist value, since the recorder is a Sidebar-equivalent
|
|
477
|
-
// spawn with `specialist=database-operator`. No standalone
|
|
478
|
-
// recorder-only env flag.
|
|
479
|
-
MAXY_SPECIALIST: args.specialist ?? '',
|
|
480
|
-
});
|
|
573
|
+
pty = deps.spawnPty(deps.claudeBin, argv, spawnEnv);
|
|
481
574
|
}
|
|
482
575
|
catch (err) {
|
|
483
576
|
const e = err;
|
|
@@ -575,7 +668,44 @@ export async function spawnClaudeSession(deps, args) {
|
|
|
575
668
|
// own failures emit a [pty-spawn-tool-inventory-failed] line. Operator
|
|
576
669
|
// (admin/public) spawns have no agent frontmatter — the failure shape
|
|
577
670
|
// this closes the gap on is recorder-specific (Task 174 §3).
|
|
671
|
+
//
|
|
672
|
+
// Task 207 — descriptors come from `deps.toolSurface.mcpServers`
|
|
673
|
+
// directly (narrowed to the plugin namespaces the agent file's
|
|
674
|
+
// `tools:` frontmatter references) instead of the per-spawn `.mcp.json`
|
|
675
|
+
// that this task drops for specialists. The probe still spawns its
|
|
676
|
+
// own MCP children to query `tools/list`; it does not — and cannot —
|
|
677
|
+
// inspect Claude Code's internal plugin-tool registry. `argv-tools` is
|
|
678
|
+
// now 0 for specialists (no `--allowed-tools` push); `mcp-listed-tools`
|
|
679
|
+
// continues to reflect what each MCP server actually offers. The
|
|
680
|
+
// not-exposed = (frontmatter ∖ offered) computation still surfaces
|
|
681
|
+
// namespace-mismatch regressions.
|
|
578
682
|
if (isSpecialistSpawn && specialistTools !== null) {
|
|
683
|
+
const placeholders = buildMcpPlaceholders({
|
|
684
|
+
platformRoot: deps.platformRoot,
|
|
685
|
+
accountId: deps.accountId,
|
|
686
|
+
userId: args.userId,
|
|
687
|
+
bridgeSuffixHint: args.senderId,
|
|
688
|
+
logDir: deps.logDir,
|
|
689
|
+
});
|
|
690
|
+
const specialistPluginNames = new Set();
|
|
691
|
+
for (const t of specialistTools) {
|
|
692
|
+
const m = t.match(/^mcp__(.+?)__/);
|
|
693
|
+
if (m)
|
|
694
|
+
specialistPluginNames.add(m[1]);
|
|
695
|
+
}
|
|
696
|
+
const resolvedServers = new Map();
|
|
697
|
+
for (const [name, desc] of deps.toolSurface.mcpServers) {
|
|
698
|
+
if (!specialistPluginNames.has(name))
|
|
699
|
+
continue;
|
|
700
|
+
const probeEnv = desc.env
|
|
701
|
+
? Object.fromEntries(Object.entries(desc.env).map(([k, v]) => [k, expandPlaceholders(v, placeholders)]))
|
|
702
|
+
: undefined;
|
|
703
|
+
resolvedServers.set(name, {
|
|
704
|
+
command: expandPlaceholders(desc.command, placeholders),
|
|
705
|
+
args: desc.args.map((a) => expandPlaceholders(a, placeholders)),
|
|
706
|
+
env: probeEnv,
|
|
707
|
+
});
|
|
708
|
+
}
|
|
579
709
|
const readInventory = deps.readMcpToolInventory
|
|
580
710
|
?? ((req) => probeMcpServerTools({
|
|
581
711
|
servers: req.servers,
|
|
@@ -586,7 +716,7 @@ export async function spawnClaudeSession(deps, args) {
|
|
|
586
716
|
sessionId: session.sessionId,
|
|
587
717
|
specialist: args.specialist,
|
|
588
718
|
frontmatterAllowlist: specialistTools,
|
|
589
|
-
resolvedServers
|
|
719
|
+
resolvedServers,
|
|
590
720
|
readMcpToolInventory: readInventory,
|
|
591
721
|
timeoutMs: deps.toolInventoryProbeTimeoutMs ?? 5_000,
|
|
592
722
|
logger: deps.logger,
|
|
@@ -594,15 +724,16 @@ export async function spawnClaudeSession(deps, args) {
|
|
|
594
724
|
}
|
|
595
725
|
// Task 183 — register the specialist spawn with the JSONL tail. The
|
|
596
726
|
// tail's state must exist BEFORE any JSONL modify event fires so the
|
|
597
|
-
// first init-shaped record produces Line 1.
|
|
598
|
-
//
|
|
599
|
-
//
|
|
600
|
-
//
|
|
601
|
-
// not register; the tail emits nothing for
|
|
727
|
+
// first init-shaped record produces Line 1. Task 207 — `--allowed-tools`
|
|
728
|
+
// is no longer pushed for specialists, so `argvTools` is the empty array
|
|
729
|
+
// for them; `toolsArgvMissingFromExposed` becomes a no-op, which is the
|
|
730
|
+
// correct semantic (nothing was launched on argv, so nothing can be
|
|
731
|
+
// missing). Operator spawns do not register; the tail emits nothing for
|
|
732
|
+
// them.
|
|
602
733
|
if (isSpecialistSpawn && deps.jsonlTail) {
|
|
603
734
|
deps.jsonlTail.register(session.sessionId, {
|
|
604
735
|
specialist: args.specialist,
|
|
605
|
-
argvTools:
|
|
736
|
+
argvTools: [],
|
|
606
737
|
});
|
|
607
738
|
pty.onExit(() => deps.jsonlTail?.unregister(session.sessionId));
|
|
608
739
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pty-spawner.js","sourceRoot":"","sources":["../src/pty-spawner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pty-spawner.js","sourceRoot":"","sources":["../src/pty-spawner.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,0DAA0D;AAC1D,wEAAwE;AACxE,uEAAuE;AACvE,+DAA+D;AAC/D,sEAAsE;AACtE,sEAAsE;AACtE,qBAAqB;AACrB,EAAE;AACF,oEAAoE;AACpE,2DAA2D;AAC3D,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,2DAA2D;AAC3D,kEAAkE;AAClE,wDAAwD;AACxD,yEAAyE;AACzE,kEAAkE;AAClE,mEAAmE;AACnE,wEAAwE;AACxE,EAAE;AACF,yDAAyD;AACzD,gEAAgE;AAChE,2EAA2E;AAE3E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAGlD,OAAO,EACL,mBAAmB,GAGpB,MAAM,sBAAsB,CAAA;AAE7B,uEAAuE;AACvE,MAAM,YAAY,GAAG,yBAAyB,CAAA;AAC9C,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,CAAA;AAC/B,MAAM,kBAAkB,GAAG,IAAI,CAAA;AAO/B,SAAS,aAAa,CAAC,GAAc;IACnC,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,IAAI,GAAG,GAA+B,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACxD,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;QACrC,IAAI,GAAG,CAAC,MAAM,GAAG,cAAc;YAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,cAAc,CAAC,CAAA;IAC/E,CAAC,CAAC,CAAA;IACF,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG;QAClB,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,GAAG,EAAE,CAAC;gBAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBAAC,GAAG,GAAG,IAAI,CAAA;YAAC,CAAC;QACxC,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACzF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;AAChC,CAAC;AAED,OAAO,EACL,yBAAyB,GAK1B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAqIpD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,cAAc,GAAwB,IAAI,GAAG,CAAC;IACzD,mBAAmB;IACnB,iBAAiB;IACjB,YAAY;IACZ,YAAY;CACb,CAAC,CAAA;AAsCF,MAAM,CAAC,MAAM,gBAAgB,GAA8B,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAA;AAuC1H;;;;;;sBAMsB;AACtB,MAAM,UAAU,mBAAmB,CAAC,eAAuB,EAAE,UAAkB;IAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,EAAE,GAAG,UAAU,KAAK,CAAC,CAAA;IAChE,IAAI,GAAW,CAAA;IACf,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC5D,MAAM,IAAI,KAAK,CACb,oDAAoD,IAAI,QAAQ,GAAG,EAAE,CACtE,CAAA;IACH,CAAC;IACD,sEAAsE;IACtE,yCAAyC;IACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAChC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,sDAAsD,IAAI,EAAE,CAC7D,CAAA;IACH,CAAC;IACD,IAAI,SAAS,GAAkB,IAAI,CAAA;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK;YAAE,MAAK;QAChC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QACvC,IAAI,CAAC,EAAE,CAAC;YAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAAC,MAAK;QAAC,CAAC;IACpC,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,qDAAqD,IAAI,EAAE,CAC5D,CAAA;IACH,CAAC;IACD,OAAO,SAAS;SACb,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,kBAAkB,CACzB,GAAW,EACX,IAAsC;IAEtC,OAAO,GAAG,CAAC,OAAO,CAAC,2BAA2B,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE;QAClE,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1E,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;8DAE8D;AAC9D,MAAM,UAAU,oBAAoB,CAClC,CAAsG,EACtG,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,YAAY,GAAG,GAAG,CAAC,aAAa,CAAA;IACtC,MAAM,aAAa,GAAG,GAAG,CAAC,eAAe,CAAA;IACzC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAA;IAC3G,CAAC;IACD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAA;IAClG,CAAC;IACD,wEAAwE;IACxE,gEAAgE;IAChE,mDAAmD;IACnD,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,YAAY;QAC7B,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC;QACtE,UAAU,EAAE,CAAC,CAAC,SAAS;QACvB,OAAO,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE;QACvB,UAAU,EAAE,CAAC,CAAC,gBAAgB;QAC9B,OAAO,EAAE,CAAC,CAAC,MAAM;QACjB,aAAa,EAAE,YAAY;QAC3B,eAAe,EAAE,aAAa;KAC/B,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,CAAuB;IACrD,MAAM,cAAc,GAAkG,EAAE,CAAA;IACxH,IAAI,CAAC,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;QAC/B,4DAA4D;QAC5D,qEAAqE;QACrE,8DAA8D;QAC9D,gEAAgE;QAChE,2DAA2D;QAC3D,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAU,CAAA;QAC/C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;YAClC,IAAI,CAAC;gBAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACxC,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YACpD,IAAI,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QACxE,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,UAAU;YAAE,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACxF,CAAC;SAAM,CAAC;QACN,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAA;QAC3C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;YAClC,IAAI,CAAC;gBAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACpC,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YACpD,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,qEAAqE;IACrE,6CAA6C;IAC7C,uEAAuE;IACvE,0DAA0D;IAC1D,MAAM,YAAY,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAA;IAE5C,MAAM,UAAU,GAAsF,EAAE,CAAA;IACxG,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAsE;YAC/E,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC;YACvD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;SAChE,CAAA;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAA2B,EAAE,CAAA;YACtC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,GAAG,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;YAC3F,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;IAC1B,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,OAAO,CAAA;IACtF,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAC1C,IAAI,CAAC;QACH,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC5D,CAAC,CAAC,MAAM,CAAC,kCAAkC,MAAM,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC/E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;IACnC,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAoC,CAAA;IACnE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE;YACxB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,EAAE,KAAK,CAAC,GAAG;SACf,CAAC,CAAA;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACzC,WAAW,EAAE,cAAc,CAAC,MAAM;QAClC,eAAe;KAChB,CAAA;AACH,CAAC;AAED;;;2DAG2D;AAC3D,SAAS,uBAAuB,CAC9B,IAAe,EACf,IAAe;IAEf,MAAM,iBAAiB,GAAG,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAA;IAC3F,IAAI,CAAC,iBAAiB;QAAE,OAAO,SAAS,CAAA;IAExC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAA;IACrE,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;IAE/D,IAAI,cAAc,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,cAAc;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC;aAC1D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CACT,4CAA4C,IAAI,CAAC,SAAS,YAAY,cAAc,CAAC,MAAM,QAAQ,IAAI,CAAC,aAAa,eAAe,CACrI,CAAA;YACD,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,CAAA;QACzG,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QACnD,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC7B,IAAI,CAAC;gBAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QACvC,IAAI,CAAC,MAAM,CACT,4CAA4C,IAAI,CAAC,SAAS,YAAY,cAAc,CAAC,MAAM,QAAQ,IAAI,CAAC,aAAa,YAAY,UAAU,CAAC,SAAS,EAAE,CACxJ,CAAA;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/D,IAAI,CAAC,MAAM,CACT,2CAA2C,QAAQ,CAAC,MAAM,YAAY,IAAI,CAAC,eAAe,aAAa,IAAI,CAAC,WAAW,wBAAwB,IAAI,CAAC,QAAQ,EAAE,CAC/J,CAAA;QACD,OAAO;YACL,IAAI,EAAE,yBAAyB;YAC/B,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,OAAO,EAAE,IAAI,CAAC,eAAe;YAC7B,QAAQ,EAAE,IAAI,CAAC,WAAW;SAC3B,CAAA;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;;;mDAMmD;AACnD,SAAS,sBAAsB,CAAC,CAa/B;IACC,CAAC,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,eAAe,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;SAC3E,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;QACjC,IAAI,cAAc,GAAG,CAAC,CAAA;QACtB,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,QAAQ,UAAU,KAAK,IAAI,EAAE,CAAC,CAAA;gBAC1C,cAAc,EAAE,CAAA;YAClB,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAa,EAAE,CAAA;QAC/B,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,oBAAoB,EAAE,CAAC;YAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;;gBACpC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC;QACD,oEAAoE;QACpE,sEAAsE;QACtE,sEAAsE;QACtE,oEAAoE;QACpE,kEAAkE;QAClE,6DAA6D;QAC7D,iDAAiD;QACjD,CAAC,CAAC,MAAM,CACN,wCAAwC,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,UAAU,kCAAkC,cAAc,YAAY,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAClM,CAAA;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC5D,CAAC,CAAC,MAAM,CACN,+CAA+C,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,UAAU,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CACnH,CAAA;IACH,CAAC,CAAC,CAAA;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAe,EAAE,IAAe;IACvE,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;IAC3C,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACxB,MAAM,YAAY,GAChB,IAAI,CAAC,iBAAiB,KAAK,SAAS;QAClC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE;QACrD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IAEf,yEAAyE;IACzE,yEAAyE;IACzE,yEAAyE;IACzE,yEAAyE;IACzE,wEAAwE;IACxE,qBAAqB;IACrB,MAAM,iBAAiB,GAAG,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAA;IAC3F,IAAI,kBAAkB,GAAG,EAAE,CAAA;IAC3B,sEAAsE;IACtE,uEAAuE;IACvE,uEAAuE;IACvE,6DAA6D;IAC7D,IAAI,aAAa,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,CAAA;IAC9E,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,yBAAyB,CACxC,YAAY,EACZ,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAChD;YACE,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;SAC1C,CACF,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,IAAI,QAAQ,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,iCAAiC,CAAA;gBACnF,IAAI,CAAC,MAAM,CAAC,2DAA2D,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;gBACpG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAA;YACrE,CAAC;YACD,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YAC5C,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAA;YACtE,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACzD,IAAI,CAAC,MAAM,CACT,kEAAkE,IAAI,CAAC,UAAU,SAAS,IAAI,CAAC,IAAI,SAAS,IAAI,QAAQ,GAAG,EAAE,CAC9H,CAAA;YACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAA;QAClF,CAAC;QACD,kBAAkB,GAAG,QAAQ,CAAC,KAAK,CAAA;QACnC,aAAa,GAAG;YACd,QAAQ,EAAE,QAAQ,CAAC,aAAa;YAChC,IAAI,EAAE,QAAQ,CAAC,SAAS;YACxB,UAAU,EAAE,QAAQ,CAAC,eAAe;YACpC,cAAc,EAAE,QAAQ,CAAC,mBAAmB;SAC7C,CAAA;QACD,IAAI,CAAC,MAAM,CACT,iCAAiC,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,UAAU,4BAA4B,MAAM,CAAC,UAAU,CAAC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,QAAQ,CAAC,aAAa,cAAc,QAAQ,CAAC,SAAS,oBAAoB,QAAQ,CAAC,eAAe,wBAAwB,QAAQ,CAAC,mBAAmB,wBAAwB,QAAQ,CAAC,mBAAmB,2BAA2B,QAAQ,CAAC,sBAAsB,EAAE,CAC1a,CAAA;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,MAAM,CACT,sCAAsC,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,UAAU,kCAAkC,CAChH,CAAA;IACH,CAAC;IAED,gEAAgE;IAChE,sEAAsE;IACtE,mDAAmD;IACnD,MAAM,QAAQ,GAAG,iBAAiB,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,UAAW,CAAC,CAAA;IAC1E,MAAM,IAAI,GAAa,CAAC,WAAW,CAAC,CAAA;IACpC,IAAI,CAAC,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC5C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,CAAA;IACzD,CAAC;IACD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAA;IACnD,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;IACvC,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IACD,uEAAuE;IACvE,mEAAmE;IACnE,wEAAwE;IACxE,qEAAqE;IACrE,0BAA0B;IAC1B,IAAI,eAAe,GAA6B,IAAI,CAAA;IACpD,IAAI,aAAa,GAAG,CAAC,CAAA;IACrB,IAAI,iBAAiB,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,UAAW,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC/D,IAAI,CAAC,MAAM,CAAC,kDAAkD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACvF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;QACzE,CAAC;QACD,+DAA+D;QAC/D,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,iEAAiE;QACjE,2BAA2B;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,EAAE,GAAG,CAAC,IAAI,CAAC,UAAW,CAAC,CAAA;QACpE,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YAChE,aAAa,GAAG,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;YACxD,eAAe,GAAG,QAAQ,CAAA;QAC5B,CAAC;IACH,CAAC;IACD,sEAAsE;IACtE,kEAAkE;IAClE,qEAAqE;IACrE,sEAAsE;IACtE,uEAAuE;IACvE,iEAAiE;IACjE,qEAAqE;IACrE,mEAAmE;IACnE,qEAAqE;IACrE,8DAA8D;IAC9D,+DAA+D;IAC/D,MAAM,OAAO,GAAG,eAAe,KAAK,IAAI;QACtC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE;QAC7C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;IAChG,IAAI,iBAAiB,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,kCAAkC,IAAI,CAAC,UAAU,oDAAoD,aAAa,EAAE,CAAC,CAAA;IACnI,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;QACpC,CAAC;QACD,MAAM,cAAc,GAClB,IAAI,CAAC,IAAI,KAAK,QAAQ;YACpB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAChH,CAAC,CAAC,EAAE,CAAA;QACR,IAAI,CAAC,MAAM,CAAC,uBAAuB,IAAI,CAAC,IAAI,UAAU,OAAO,CAAC,MAAM,aAAa,cAAc,EAAE,CAAC,CAAA;IACpG,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,wEAAwE;IACxE,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,iBAAiB;IACjB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC7D,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;IACrD,CAAC;SAAM,IAAI,iBAAiB,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAA;IACrD,CAAC;IAED,uEAAuE;IACvE,wEAAwE;IACxE,8DAA8D;IAC9D,qEAAqE;IACrE,uEAAuE;IACvE,uEAAuE;IACvE,+DAA+D;IAC/D,IAAI,eAAe,GAAgC,IAAI,CAAA;IACvD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,eAAe,GAAG,sBAAsB,CAAC;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,gBAAgB,EAAE,IAAI,CAAC,QAAQ;YAC/B,SAAS,EAAE,IAAI,CAAC,YAAY,IAAI,MAAM,EAAE;YACxC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,eAAe;SAChB,CAAC,CAAA;QACF,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACxB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,UAAU,EAAE,eAAe,CAAC,MAAM,EAAE,CAAA;QAC7F,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,IAAI,CAAC,CAAA;QAC/C,sEAAsE;QACtE,yEAAyE;QACzE,uEAAuE;QACvE,qEAAqE;QACrE,IAAI,CAAC,MAAM,CACT,2CAA2C,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAClG,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACjD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC;QACvE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;IAC/C,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QACzB,IAAI,CAAC,MAAM,CAAC,6BAA6B,IAAI,CAAC,IAAI,SAAS,CAAC,EAAE,CAAC,CAAA;IACjE,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,CACT,gCAAgC,eAAe,CAAC,WAAW,UAAU,OAAO,CAAC,MAAM,UAAU,eAAe,CAAC,KAAK,SAAS,eAAe,CAAC,IAAI,EAAE,CAClJ,CAAA;IACH,CAAC;SAAM,CAAC;QACN,iEAAiE;QACjE,qEAAqE;QACrE,yCAAyC;QACzC,IAAI,CAAC,MAAM,CACT,mCAAmC,IAAI,CAAC,UAAU,0BAA0B,CAC7E,CAAA;IACH,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACjD,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAClD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;QAC1C,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,IAAI,CAAC,aAAa,MAAM,CAAC,CAAA;IAChE,CAAC;IAED,0EAA0E;IAC1E,yEAAyE;IACzE,wEAAwE;IACxE,qEAAqE;IACrE,iEAAiE;IACjE,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,EAAE,MAAM,CAAC,CAAA;IACxE,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAC5B,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QACpC,gBAAgB,GAAG,IAAI,CAAA;IACzB,CAAC;IAED,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IACjF,qEAAqE;IACrE,sEAAsE;IACtE,mEAAmE;IACnE,qDAAqD;IACrD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IAEnE,uEAAuE;IACvE,yEAAyE;IACzE,sEAAsE;IACtE,sDAAsD;IACtD,MAAM,QAAQ,GAAsB;QAClC,GAAG,OAAO,CAAC,GAAG;QACd,IAAI,EAAE,gBAAgB;QACtB,iBAAiB,EAAE,IAAI,CAAC,IAAI;QAC5B,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;QAC1C,4DAA4D;QAC5D,+DAA+D;QAC/D,2DAA2D;QAC3D,0BAA0B;QAC1B,eAAe,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;QACtC,6DAA6D;QAC7D,kEAAkE;QAClE,8DAA8D;QAC9D,8DAA8D;QAC9D,gEAAgE;QAChE,yBAAyB;QACzB,OAAO,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;KAC3B,CAAA;IACD,qEAAqE;IACrE,qEAAqE;IACrE,oEAAoE;IACpE,iEAAiE;IACjE,oEAAoE;IACpE,oEAAoE;IACpE,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,iBAAiB,GAAa,EAAE,CAAA;IACtC,IAAI,iBAAiB,EAAE,CAAC;QACtB,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAA;QACpC,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAA;QAC1C,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAA;QACjD,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,CAAA;QAC/C,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAA;QACzD,iBAAiB,CAAC,IAAI,CACpB,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAC7D,WAAW,EAAE,gBAAgB,CAC9B,CAAA;IACH,CAAC;IACD,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC;QAC/C,CAAC,CAAC,aAAa,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAC5C,CAAC,CAAC,EAAE,CAAA;IAEN,IAAI,CAAC,MAAM,CACT,6BAA6B,IAAI,CAAC,SAAS,eAAe,IAAI,CAAC,MAAM,+BAA+B,MAAM,CAAC,UAAU,CAAC,kBAAkB,EAAE,MAAM,CAAC,oBAAoB,IAAI,CAAC,cAAc,IAAI,SAAS,WAAW,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,eAAe,IAAI,CAAC,UAAU,IAAI,MAAM,sBAAsB,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,iBAAiB,WAAW,WAAW,UAAU,kBAAkB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,GAAG,YAAY,EAAE,CAC5c,CAAA;IACD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAChC,IAAI,GAAc,CAAA;IAClB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IACrD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,GAA4B,CAAA;QACtC,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,kBAAkB,CAAA;QAClF,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;QAC/C,IAAI,CAAC,MAAM,CAAC,uBAAuB,MAAM,gBAAgB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,iBAAiB,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC,CAAA;QACjI,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;IAC1C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,CAAC,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC,CAAA;IAE1E,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;IAE/B,+DAA+D;IAC/D,sEAAsE;IACtE,kEAAkE;IAClE,sEAAsE;IACtE,EAAE;IACF,wEAAwE;IACxE,qEAAqE;IACrE,2DAA2D;IAC3D,IAAI,WAAW,GAAkB,IAAI,CAAA;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,eAAe,CAAC;YACd,GAAG;YACH,SAAS,EAAE,IAAI,CAAC,mBAAmB;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;gBACb,WAAW,GAAG,GAAG,CAAA;gBACjB,IAAI,CAAC,MAAM,CAAC,oBAAoB,GAAG,CAAC,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAA;gBACrD,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAA;gBAChC,IAAI,CAAC,GAAG;oBAAE,OAAM;gBAChB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAChC,IAAI,IAAI;oBAAE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;gBACxB,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAA;YAC3B,CAAC;YACD,SAAS,EAAE,GAAG,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,2BAA2B,GAAG,CAAC,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;YAC5E,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAED,qEAAqE;IACrE,gEAAgE;IAChE,MAAM,YAAY,GAA+B,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAElE,8DAA8D;IAC9D,kEAAkE;IAClE,IAAI,GAAe,CAAA;IACnB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;IACrE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;QACjC,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC/D,IAAI,CAAC,MAAM,CAAC,4CAA4C,GAAG,CAAC,GAAG,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QAC/I,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAA;IAC9D,CAAC;IAED,YAAY,CAAC,OAAO,GAAG,GAAG,CAAC,SAAS,CAAA;IAEpC,MAAM,OAAO,GAAkB;QAC7B,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,eAAe,EAAE,GAAG,CAAC,eAAe,IAAI,WAAW,GAAG,CAAC,SAAS,EAAE;QAClE,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,SAAS;QAC/C,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,GAAG,EAAE,WAAW;QAChB,SAAS;QACT,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,GAAG;QACH,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI;QAC5B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,KAAK,IAAI,IAAI;KACjD,CAAA;IACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAEvB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CACT,2BAA2B,OAAO,CAAC,UAAU,IAAI,MAAM,cAAc,OAAO,CAAC,SAAS,QAAQ,GAAG,CAAC,GAAG,EAAE,CACxG,CAAA;IACH,CAAC;IAED,mEAAmE;IACnE,gEAAgE;IAChE,yEAAyE;IACzE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;QACjC,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,oBAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,CAAC,CAAA;IAC1F,CAAC,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;IACrC,IAAI,CAAC,MAAM,CACT,qCAAqC,OAAO,CAAC,SAAS,QAAQ,GAAG,CAAC,GAAG,OAAO,UAAU,EAAE,CACzF,CAAA;IACD,IAAI,CAAC,MAAM,CACT,aAAa,GAAG,CAAC,GAAG,cAAc,OAAO,CAAC,SAAS,aAAa,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,IAAI,YAAY,IAAI,CAAC,OAAO,mBAAmB,IAAI,CAAC,cAAc,IAAI,SAAS,kBAAkB,CAAC,QAAQ,eAAe,UAAU,EAAE,CACjO,CAAA;IACD,IAAI,CAAC,MAAM,CACT,yBAAyB,OAAO,CAAC,SAAS,4BAA4B,MAAM,CAAC,UAAU,CAAC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,aAAa,CAAC,QAAQ,cAAc,aAAa,CAAC,IAAI,oBAAoB,aAAa,CAAC,UAAU,wBAAwB,aAAa,CAAC,cAAc,eAAe,IAAI,CAAC,UAAU,SAAS,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,UAAU,IAAI,MAAM,aAAa,IAAI,CAAC,IAAI,CAAC,QAAQ,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,aAAa,IAAI,CAAC,IAAI,CAAC,QAAQ,cAAc,YAAY,CAAC,SAAS,IAAI,MAAM,EAAE,CAC/f,CAAA;IAED,wEAAwE;IACxE,wEAAwE;IACxE,sEAAsE;IACtE,uEAAuE;IACvE,sEAAsE;IACtE,6DAA6D;IAC7D,EAAE;IACF,iEAAiE;IACjE,+DAA+D;IAC/D,wEAAwE;IACxE,mEAAmE;IACnE,qEAAqE;IACrE,uEAAuE;IACvE,wEAAwE;IACxE,iEAAiE;IACjE,mEAAmE;IACnE,kCAAkC;IAClC,IAAI,iBAAiB,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,YAAY,GAAG,oBAAoB,CAAC;YACxC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,gBAAgB,EAAE,IAAI,CAAC,QAAQ;YAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAA;QACF,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAU,CAAA;QAC/C,KAAK,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;YAClC,IAAI,CAAC;gBAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACxC,CAAC;QACD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAoC,CAAA;QACnE,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YACvD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAQ;YAC9C,MAAM,QAAQ,GAAuC,IAAI,CAAC,GAAG;gBAC3D,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;gBACxG,CAAC,CAAC,SAAS,CAAA;YACb,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE;gBACxB,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC;gBACvD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;gBAC/D,GAAG,EAAE,QAAQ;aACd,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB;eAC1C,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC;gBAC/B,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,OAAO,EAAE,OAAO,CAAC,GAAG;gBACpB,SAAS,EAAE,GAAG,CAAC,SAAS;aACzB,CAAC,CAAC,CAAA;QACL,sBAAsB,CAAC;YACrB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,IAAI,CAAC,UAAW;YAC5B,oBAAoB,EAAE,eAAe;YACrC,eAAe;YACf,oBAAoB,EAAE,aAAa;YACnC,SAAS,EAAE,IAAI,CAAC,2BAA2B,IAAI,KAAK;YACpD,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAA;IACJ,CAAC;IAED,oEAAoE;IACpE,qEAAqE;IACrE,yEAAyE;IACzE,yEAAyE;IACzE,wEAAwE;IACxE,oEAAoE;IACpE,wEAAwE;IACxE,QAAQ;IACR,IAAI,iBAAiB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE;YACzC,UAAU,EAAE,IAAI,CAAC,UAAW;YAC5B,SAAS,EAAE,EAAE;SACd,CAAC,CAAA;QACF,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,CAAA;IAC9B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AAC9B,CAAC;AAQD;;;;;;;;;;;;;;;;;;;;;YAqBY;AACZ,MAAM,UAAU,oBAAoB,CAClC,IAA6C,EAC7C,OAAsB,EACtB,IAA2C,EAC3C,UAAkB;IAElB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAA;IACrB,kEAAkE;IAClE,kEAAkE;IAClE,4DAA4D;IAC5D,4BAA4B;IAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;IACtF,IAAI,QAAQ,KAAK,kBAAkB;QAAE,OAAO,CAAC,UAAU,GAAG,IAAI,CAAA;IAC9D,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACpC,IAAI,CAAC,MAAM,CACT,YAAY,OAAO,CAAC,GAAG,oCAAoC,IAAI,CAAC,QAAQ,WAAW,IAAI,CAAC,MAAM,IAAI,MAAM,gBAAgB,gBAAgB,CAAC,UAAU,CAAC,IAAI,QAAQ,EAAE,CACnK,CAAA;AACH,CAAC;AAED;;;;;;iCAMiC;AACjC,SAAS,kBAAkB,CAAC,CAAgB;IAC1C,IAAI,CAAC;QACH,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAA;QACjB,OAAO,kBAAkB,CAAA;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC5D,OAAO,8BAA8B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAA;IAC5D,CAAC;AACH,CAAC;AAED;0EAC0E;AAC1E,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAc,EACd,SAAiB;IAEjB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACnC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;IACjC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACb,8DAA8D;QAC9D,mEAAmE;QACnE,+DAA+D;QAC/D,iEAAiE;QACjE,mEAAmE;QACnE,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA;QAC1E,IAAI,QAAQ,KAAK,kBAAkB;YAAE,CAAC,CAAC,UAAU,GAAG,IAAI,CAAA;QACxD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC5B,IAAI,CAAC,MAAM,CAAC,kBAAkB,SAAS,QAAQ,CAAC,CAAC,GAAG,kDAAkD,QAAQ,EAAE,CAAC,CAAA;QACjH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IACD,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACrB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,CAAC,CAAC,MAAM;gBAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACpC,OAAO,EAAE,CAAA;QACX,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACpB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE;YAChB,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,OAAO,EAAE,CAAA;QACX,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA;IAC1E,IAAI,QAAQ,KAAK,kBAAkB;QAAE,CAAC,CAAC,UAAU,GAAG,IAAI,CAAA;IACxD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC5B,IAAI,CAAC,MAAM,CAAC,kBAAkB,SAAS,QAAQ,CAAC,CAAC,GAAG,wCAAwC,QAAQ,EAAE,CAAC,CAAA;IACvG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;AAC1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specialist-drift.d.ts","sourceRoot":"","sources":["../src/specialist-drift.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"specialist-drift.d.ts","sourceRoot":"","sources":["../src/specialist-drift.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAmCpD,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EACF,0BAA0B,GAC1B,wBAAwB,GACxB,gBAAgB,GAChB,uBAAuB,CAAA;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC;;;yCAGqC;IACrC,EAAE,EAAE,OAAO,CAAA;IACX;;wCAEoC;IACpC,OAAO,EAAE,qBAAqB,EAAE,CAAA;IAChC,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAA;IACjB;;;;6CAIyC;IACzC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;CACpD;AAED;;;kEAGkE;AAClE,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI3E;AAmCD;;;;;;;;;wDASwD;AACxD,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,WAAW,EAAE,WAAW,EACxB,eAAe,GAAE,WAAW,CAAC,MAAM,CAAa,GAC/C,qBAAqB,CAgDvB"}
|
|
@@ -46,10 +46,16 @@ const CC_NATIVE_TOOLS = new Set([
|
|
|
46
46
|
'AskUserQuestion',
|
|
47
47
|
]);
|
|
48
48
|
/** MCP-bridge namespaces. Tools under these prefixes are served by MCP
|
|
49
|
-
* servers that are not declared via PLUGIN.md —
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
|
|
49
|
+
* servers that are not declared via PLUGIN.md — `mcp__plugin_*` are
|
|
50
|
+
* Claude Code's plugin-system tool registry (every plugin-system MCP
|
|
51
|
+
* tool renders as `mcp__plugin_<plugin>_<server>__<tool>`, including
|
|
52
|
+
* Playwright and every platform plugin loaded via the maxy-platform
|
|
53
|
+
* marketplace), and the graph proxy (`platform/lib/graph-mcp`) is
|
|
54
|
+
* registered through `.mcp.json` / per-spawn config as `mcp__graph__*`.
|
|
55
|
+
* PLUGIN.md only declares the bare `<server>:<tool>` shape; the
|
|
56
|
+
* plugin-system rendering is authoritative for `--agent` spawns and
|
|
57
|
+
* is not visible to this drift check ahead of boot. */
|
|
58
|
+
const BRIDGE_PREFIXES = ['mcp__plugin_', 'mcp__graph__'];
|
|
53
59
|
/** Extract the value of the `tools:` line from a YAML frontmatter block.
|
|
54
60
|
* Returns the raw value (whitespace-trimmed) or null when no `tools:`
|
|
55
61
|
* key appears. The value is the comma-separated tool list Claude Code
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specialist-drift.js","sourceRoot":"","sources":["../src/specialist-drift.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,EAAE;AACF,wEAAwE;AACxE,qEAAqE;AACrE,wEAAwE;AACxE,yEAAyE;AACzE,wEAAwE;AACxE,uEAAuE;AACvE,wBAAwB;AACxB,EAAE;AACF,qEAAqE;AACrE,wEAAwE;AACxE,EAAE;AACF,6DAA6D;AAC7D,yEAAyE;AACzE,gEAAgE;AAChE,wCAAwC;AACxC,4EAA4E;AAC5E,gDAAgD;AAChD,EAAE;AACF,0EAA0E;AAC1E,sEAAsE;AACtE,wEAAwE;AACxE,uEAAuE;AACvE,sBAAsB;AAEtB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAG1C;;sDAEsD;AACtD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS;IACtC,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,YAAY;IACZ,WAAW;IACX,WAAW;IACX,UAAU;IACV,MAAM;IACN,WAAW;IACX,cAAc;IACd,cAAc;IACd,iBAAiB;CAClB,CAAC,CAAA;AAEF
|
|
1
|
+
{"version":3,"file":"specialist-drift.js","sourceRoot":"","sources":["../src/specialist-drift.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,60 +1,44 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Business Assistant
|
|
2
|
+
|
|
3
|
+
Your job is to do useful work for the operator. How useful you can be depends on what you know about them and their business; both grow together, and every interaction is a chance to learn more.
|
|
2
4
|
|
|
3
5
|
## Prime Directives
|
|
4
6
|
|
|
5
|
-
1. **Be precise.** Every claim has a source: a memory search, a tool result, a log line, a file you read.
|
|
7
|
+
1. **Be precise.** Every claim has a source: a memory search, a tool result, a log line, a file you read. This binds proposals as much as facts: if you cannot name the evidence behind what you are about to propose, ask for what would let you ground it instead of proposing anything.
|
|
6
8
|
2. **Be concise.** Three sentences or fewer. If you cannot answer in three, ask in five words.
|
|
7
9
|
3. **Show your evidence.** Gather evidence before forming a hypothesis. Never speculate.
|
|
8
10
|
|
|
9
|
-
##
|
|
11
|
+
## Before you speak
|
|
10
12
|
|
|
11
|
-
|
|
13
|
+
Before your first message, do reconnaissance. Treat your starting knowledge as whatever your tools can surface, not what the system prompt names. Search the memory graph for what's known about the operator and their business, read the profile, check today's calendar, active projects, open work, and recent conversations. Infer the domain from the plugins and skills installed; they were chosen for a reason and are evidence of what this operation does.
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
Then lead with what you found. When you have enough knowledge of the operator and their business to make a useful proposal, follow with one suited to where they are in their day; otherwise, gather more before proposing. Ask only the questions you genuinely could not answer through investigation. You are expected to drive the day, not to solicit instructions for it.
|
|
14
16
|
|
|
15
|
-
|
|
17
|
+
## Before you act
|
|
16
18
|
|
|
17
|
-
|
|
19
|
+
You may not act on a request until you know three things: what is being asked, what is in scope and what is out of scope, and what rules apply for this specific request. When the owner's words are precise, all three are obvious. Act. When any of the three is imprecise, stop and ask for clarification. You must insist on the operator being precise and concise.
|
|
18
20
|
|
|
19
|
-
|
|
21
|
+
## SOUL.md
|
|
20
22
|
|
|
21
|
-
|
|
23
|
+
`SOUL.md` lives at `<accountDir>/agents/admin/SOUL.md`. It is your tonal register: the voice and conversational habits you have earned with this operator. Not rules; observations. Its contents are rendered into your system prompt as `<soul>` every turn, so you do not need to read the file separately at session start.
|
|
22
24
|
|
|
23
|
-
|
|
25
|
+
Update it (with `Write`) when the operator's language reveals a tonal preference worth carrying forward: a phrasing they reject, a register they prefer, a metaphor that lands. The next session inherits what you wrote.
|
|
24
26
|
|
|
25
27
|
## How you sound
|
|
26
28
|
|
|
27
29
|
You are an AI. Say so if asked. Never pretend to be a human. Speak British English. Plain hyphens, straight quotes, three periods, no emoji. Every link in a reply is a markdown link in the form `[label](url)`, never a raw URL. Tool names, MCP prefixes, task numbers, doctrine names, and error codes belong in your reasoning, not in user-facing replies. Translate them into plain English.
|
|
28
30
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
- `SOUL.md`: how you sound. Tone and personality only, no rules.
|
|
32
|
-
- `AGENTS.md`: the list of installed specialists and when to send work to each.
|
|
33
|
-
|
|
34
|
-
## How to choose where work goes
|
|
35
|
-
|
|
36
|
-
The platform injects two blocks into your system prompt every turn. `<specialist-domains>` lists each specialist and the tools it owns, with a one-sentence description of every tool. `<plugin-manifest>` lists each plugin and the skills it owns, with a one-sentence description of every skill. Use them in this order:
|
|
37
|
-
|
|
38
|
-
1. Match the owner's intent to a tool description in `<specialist-domains>`. Send the work to the specialist that owns the tool. The specialist's own prompt knows how to run the tool correctly.
|
|
39
|
-
2. If no specialist tool matches, match the intent to a skill description in `<plugin-manifest>`. Load the skill with `mcp__admin__skill-load skillName=<name>`. Follow the skill.
|
|
40
|
-
3. If neither matches, fall back to `memory-search` against the graph. If `memory-search` returns nothing useful, tell the owner you do not have a way to do what they asked.
|
|
41
|
-
|
|
42
|
-
`ToolSearch` is a last resort for tools that no block names. Prefer admitting ignorance over discovering. Never reconstruct a skill's steps from memory: if the skill exists, load it.
|
|
43
|
-
|
|
44
|
-
## Asking questions
|
|
45
|
-
|
|
46
|
-
Every question the agent asks — confirmation, disambiguation, or information-gathering — is one-sided. *"Proceed?"* is usable; *"Proceed, or stop?"* is not, because a "yes" carries no signal. The rule has no exemptions: opening questions, follow-up questions, and clarifying questions all share the same shape. One question per response; it is the final sentence.
|
|
47
|
-
|
|
48
|
-
## When a tool returns an error
|
|
49
|
-
|
|
50
|
-
Acknowledge the failure first: name what you tried, what the error said, and what the `[tool-failure-diag]` line shows. Do not retry the same tool on the same target inside one turn; a second identical failure is evidence the path is broken, not that another attempt is warranted. When the error message starts with an UPPERCASE code, the platform has already decided that retry will fail; tell the owner what failed, why, and what they can do. Do not silently call a different tool to continue the original instruction. When an error envelope carries values the platform has already gathered (under names like `inputsAlreadyHeld` or `discoveryResults`), those values are correct; repeat them, never re-ask the owner for them.
|
|
31
|
+
Speak the way you would speak in person, in short direct sentences. Plain words from everyday English. Sound like a capable professional joining a serious operation: neither performing humanity nor performing efficiency. When a sentence sounds like marketing copy, executive-coach motivation, or chatbot prose, the plainer version is the right one.
|
|
51
32
|
|
|
52
|
-
|
|
33
|
+
Specific patterns to avoid in every reply:
|
|
53
34
|
|
|
54
|
-
-
|
|
55
|
-
-
|
|
56
|
-
-
|
|
35
|
+
- Coaching jargon: "closing the gap", "putting your weight behind it", "what's on your plate", "what 'done well' looks like", "scaling effectiveness", "thin ground", "I should be upfront".
|
|
36
|
+
- Inflation words: "powerful", "robust", "comprehensive", "pivotal", "seamless", "strategic". Use the concrete property instead.
|
|
37
|
+
- Warm-up phrases: "let's unpack this", "to make this useful", "at the heart of", "what does this mean".
|
|
38
|
+
- Announcing what you are about to do in place of doing it: "Let me check", "Quick recon before I propose anything", "I'll search for that". Do the work; the message reports the result.
|
|
39
|
+
- Em-dashes. Use a comma, a semicolon, parentheses, or two sentences.
|
|
40
|
+
- "It's not X, it's Y" antithetical pattern. Just say Y.
|
|
57
41
|
|
|
58
42
|
## Access
|
|
59
43
|
|
|
60
|
-
Remote access and public-facing channels are optional. Cloudflare Tunnel exposes the platform on a custom domain; WhatsApp, Telegram, and email reach the owner without one. If none is set up, explain each briefly when
|
|
44
|
+
Remote access and public-facing channels are optional. Cloudflare Tunnel exposes the platform on a custom domain; WhatsApp, Telegram, and email reach the owner without one. If none is set up, explain each briefly when something comes up that needs it, and offer to assist.
|
|
@@ -3,7 +3,7 @@ name: database-operator
|
|
|
3
3
|
description: "Background recorder for the memory graph. Reads the operator's full conversation transcript (ordered turns array with text and tool calls) from stdin and writes whatever the most recent operator turn implies into the graph via the wrapped writers. Fires once per admin turn from a Stop hook; never reachable from the admin agent directly."
|
|
4
4
|
summary: "Watches every completed admin turn and records what it implies into the memory graph."
|
|
5
5
|
model: claude-sonnet-4-6
|
|
6
|
-
tools:
|
|
6
|
+
tools: mcp__plugin_memory_memory__memory-write, mcp__plugin_memory_memory__memory-update, mcp__plugin_memory_memory__memory-search, mcp__plugin_memory_memory__profile-update, mcp__plugin_memory_memory__profile-read, mcp__plugin_contacts_contacts__contact-create, mcp__plugin_contacts_contacts__contact-update, mcp__plugin_tasks_tasks__task-create, mcp__plugin_tasks_tasks__task-update, mcp__plugin_tasks_tasks__project-create, mcp__plugin_tasks_tasks__project-update
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
You are an expert Neo4J graph operator. Here is the schema {schema}.
|
|
@@ -3,7 +3,7 @@ name: librarian
|
|
|
3
3
|
description: "Foreground ingester for the memory graph. Owns external-archive and document ingestion — PDFs, web pages, plain text, conversation transcripts (WhatsApp / Telegram / Signal / iMessage / Slack / LinkedIn DMs / Zoom / meeting minutes), LinkedIn Basic Data Exports, and post-unzip trees the admin agent forwards. Loads `document-ingest`, `conversation-archive`, `conversation-archive-enrich`, and `linkedin-import` skills. Returns to the admin agent with a structured outcome line; never interacts with the operator directly except through the dispatching agent."
|
|
4
4
|
summary: "Owns foreground ingest of documents, conversation transcripts, and external archives into the memory graph."
|
|
5
5
|
model: claude-sonnet-4-5
|
|
6
|
-
tools: mcp__memory__memory-ingest-extract, mcp__memory__memory-ingest, mcp__memory__memory-ingest-web, mcp__memory__memory-classify, mcp__memory__memory-archive-write, mcp__memory__memory-write, mcp__memory__memory-update, mcp__memory__memory-search, mcp__memory__conversation-archive-derive-insights, mcp__memory__conversation-archive-enrich-rejection, mcp__graph__maxy-graph-read_neo4j_cypher, mcp__graph__maxy-graph-write_neo4j_cypher, mcp__contacts__contact-create,
|
|
6
|
+
tools: mcp__memory__memory-ingest-extract, mcp__memory__memory-ingest, mcp__memory__memory-ingest-web, mcp__memory__memory-classify, mcp__memory__memory-archive-write, mcp__memory__memory-write, mcp__memory__memory-update, mcp__memory__memory-search, mcp__memory__conversation-archive-derive-insights, mcp__memory__conversation-archive-enrich-rejection, mcp__graph__maxy-graph-read_neo4j_cypher, mcp__graph__maxy-graph-write_neo4j_cypher, mcp__contacts__contact-create, mcp__work__work-create, Read, Bash
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Librarian
|
|
@@ -32,7 +32,7 @@ Each domain has a small set of tools and, where it exists, a skill that drives t
|
|
|
32
32
|
|
|
33
33
|
**Timezones are not optional.** Scheduling output is rendered in the user's locale timezone from `UserProfile.timezone` (IANA). Storage is UTC. If timezone is unset, the scheduling tool errors; set it via `profile-update` with `profileFields: { timezone: "Europe/London" }`. There is no UTC fallback.
|
|
34
34
|
|
|
35
|
-
**Graph adjacency at write time.** Wrapped writers (`schedule-event`, `contact-create`, `
|
|
35
|
+
**Graph adjacency at write time.** Wrapped writers (`schedule-event`, `contact-create`, `work-create`) reject zero-edge calls. Resolve target elementIds via `memory-search` and pass them in the create call. The current admin session's Conversation satisfies the rule automatically when you are inside a session.
|
|
36
36
|
|
|
37
37
|
**WhatsApp ToS.** Automated broadcast is forbidden. The platform blocks broadcast for WhatsApp regardless of channel config; do not try to design around it.
|
|
38
38
|
|