@askexenow/exe-os 0.9.122 → 0.9.124

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.
Files changed (72) hide show
  1. package/dist/bin/agentic-ontology-backfill.js +1 -1
  2. package/dist/bin/agentic-reflection-backfill.js +1 -1
  3. package/dist/bin/agentic-semantic-label.js +1 -1
  4. package/dist/bin/backfill-conversations.js +1 -1
  5. package/dist/bin/backfill-responses.js +1 -1
  6. package/dist/bin/backfill-vectors.js +1 -1
  7. package/dist/bin/bulk-sync-postgres.js +1 -1
  8. package/dist/bin/cleanup-stale-review-tasks.js +1 -1
  9. package/dist/bin/cli.js +2 -2
  10. package/dist/bin/exe-agent.js +1 -1
  11. package/dist/bin/exe-assign.js +1 -1
  12. package/dist/bin/exe-boot.js +1 -1
  13. package/dist/bin/exe-call.js +1 -1
  14. package/dist/bin/exe-cloud.js +1 -1
  15. package/dist/bin/exe-dispatch.js +1 -1
  16. package/dist/bin/exe-doctor.js +1 -1
  17. package/dist/bin/exe-export-behaviors.js +1 -1
  18. package/dist/bin/exe-forget.js +1 -1
  19. package/dist/bin/exe-gateway.js +1 -1
  20. package/dist/bin/exe-heartbeat.js +1 -1
  21. package/dist/bin/exe-kill.js +1 -1
  22. package/dist/bin/exe-launch-agent.js +1 -1
  23. package/dist/bin/exe-new-employee.js +2 -2
  24. package/dist/bin/exe-pending-messages.js +1 -1
  25. package/dist/bin/exe-pending-notifications.js +1 -1
  26. package/dist/bin/exe-pending-reviews.js +1 -1
  27. package/dist/bin/exe-rename.js +1 -1
  28. package/dist/bin/exe-review.js +1 -1
  29. package/dist/bin/exe-search.js +1 -1
  30. package/dist/bin/exe-session-cleanup.js +1 -1
  31. package/dist/bin/exe-start-codex.js +2 -2
  32. package/dist/bin/exe-start-opencode.js +2 -2
  33. package/dist/bin/exe-status.js +1 -1
  34. package/dist/bin/exe-team.js +1 -1
  35. package/dist/bin/git-sweep.js +1 -1
  36. package/dist/bin/graph-backfill.js +1 -1
  37. package/dist/bin/graph-export.js +1 -1
  38. package/dist/bin/install.js +1 -1
  39. package/dist/bin/intercom-check.js +1 -1
  40. package/dist/bin/pre-publish.js +1 -1
  41. package/dist/bin/scan-tasks.js +1 -1
  42. package/dist/bin/setup.js +1 -1
  43. package/dist/bin/shard-migrate.js +1 -1
  44. package/dist/gateway/index.js +1 -1
  45. package/dist/hooks/bug-report-worker.js +1 -1
  46. package/dist/hooks/codex-stop-task-finalizer.js +1 -1
  47. package/dist/hooks/commit-complete.js +1 -1
  48. package/dist/hooks/error-recall.js +1 -1
  49. package/dist/hooks/ingest.js +1 -1
  50. package/dist/hooks/instructions-loaded.js +1 -1
  51. package/dist/hooks/notification.js +1 -1
  52. package/dist/hooks/post-compact.js +1 -1
  53. package/dist/hooks/post-tool-combined.js +1 -1
  54. package/dist/hooks/pre-compact.js +1 -1
  55. package/dist/hooks/pre-tool-use.js +1 -1
  56. package/dist/hooks/prompt-submit.js +1 -1
  57. package/dist/hooks/session-end.js +1 -1
  58. package/dist/hooks/session-start.js +1 -1
  59. package/dist/hooks/stop.js +1 -1
  60. package/dist/hooks/subagent-stop.js +1 -1
  61. package/dist/hooks/summary-worker.js +1 -1
  62. package/dist/index.js +1 -1
  63. package/dist/lib/employee-templates.js +1 -1
  64. package/dist/lib/exe-daemon.js +52 -2
  65. package/dist/lib/hybrid-search.js +1 -1
  66. package/dist/lib/schedules.js +1 -1
  67. package/dist/lib/store.js +1 -1
  68. package/dist/mcp/register-tools.js +17 -4
  69. package/dist/mcp/server.js +17 -4
  70. package/dist/runtime/index.js +1 -1
  71. package/dist/tui/App.js +1 -1
  72. package/package.json +1 -1
@@ -6163,7 +6163,7 @@ var init_platform_procedures = __esm({
6163
6163
  title: "MCP tools \u2014 identity, behavior, and support",
6164
6164
  domain: "tool-use",
6165
6165
  priority: "p1",
6166
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
6166
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
6167
6167
  },
6168
6168
  {
6169
6169
  title: "MCP tools \u2014 communication and messaging",
@@ -18913,6 +18913,56 @@ function startServer() {
18913
18913
  });
18914
18914
  _mcpHttpReady = startMcpHttpServer();
18915
18915
  }
18916
+ var FIXED_MCP_PORT = 48700;
18917
+ async function resolveAndClaimPort() {
18918
+ if (process.env.EXE_MCP_PORT) {
18919
+ const envPort = parseInt(process.env.EXE_MCP_PORT, 10);
18920
+ if (envPort > 0) return envPort;
18921
+ }
18922
+ const targetPort = FIXED_MCP_PORT;
18923
+ try {
18924
+ const http = await import("http");
18925
+ const isHealthy = await new Promise((resolve) => {
18926
+ const req = http.request(
18927
+ { hostname: "127.0.0.1", port: targetPort, path: "/health", method: "GET", timeout: 2e3 },
18928
+ (res) => {
18929
+ resolve(res.statusCode === 200);
18930
+ }
18931
+ );
18932
+ req.on("error", () => resolve(false));
18933
+ req.on("timeout", () => {
18934
+ req.destroy();
18935
+ resolve(false);
18936
+ });
18937
+ req.end();
18938
+ });
18939
+ if (isHealthy) {
18940
+ process.stderr.write(`[exed] Port ${targetPort} has a healthy daemon \u2014 exiting (not a duplicate)
18941
+ `);
18942
+ process.exit(0);
18943
+ }
18944
+ } catch {
18945
+ }
18946
+ try {
18947
+ const { execSync: execSync14 } = await import("child_process");
18948
+ const pids = execSync14(`lsof -ti :${targetPort} 2>/dev/null`, { encoding: "utf8" }).trim();
18949
+ if (pids) {
18950
+ process.stderr.write(`[exed] Port ${targetPort} held by PID(s) ${pids.replace(/\n/g, ",")} \u2014 killing
18951
+ `);
18952
+ for (const pid of pids.split("\n").filter(Boolean)) {
18953
+ try {
18954
+ process.kill(parseInt(pid, 10), "SIGTERM");
18955
+ } catch {
18956
+ }
18957
+ }
18958
+ await new Promise((r) => setTimeout(r, 500));
18959
+ }
18960
+ } catch {
18961
+ }
18962
+ process.stderr.write(`[exed] Using fixed MCP port ${targetPort}
18963
+ `);
18964
+ return targetPort;
18965
+ }
18916
18966
  async function startMcpHttpServer() {
18917
18967
  process.stderr.write("[exed] MCP HTTP: starting setup...\n");
18918
18968
  try {
@@ -19018,7 +19068,7 @@ async function startMcpHttpServer() {
19018
19068
  `);
19019
19069
  });
19020
19070
  const transports = /* @__PURE__ */ new Map();
19021
- const MCP_HTTP_PORT = parseInt(process.env.EXE_MCP_PORT || "48739", 10);
19071
+ const MCP_HTTP_PORT = await resolveAndClaimPort();
19022
19072
  const MCP_SESSION_TTL_MS = parseDurationMs2(process.env.EXE_MCP_SESSION_TTL_MS, 30 * 60 * 1e3, { allowZero: true });
19023
19073
  const MCP_SESSION_SWEEP_MS = parseDurationMs2(process.env.EXE_MCP_SESSION_SWEEP_MS, 60 * 1e3);
19024
19074
  const sessionLastSeen = /* @__PURE__ */ new Map();
@@ -4645,7 +4645,7 @@ var init_platform_procedures = __esm({
4645
4645
  title: "MCP tools \u2014 identity, behavior, and support",
4646
4646
  domain: "tool-use",
4647
4647
  priority: "p1",
4648
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
4648
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
4649
4649
  },
4650
4650
  {
4651
4651
  title: "MCP tools \u2014 communication and messaging",
@@ -3861,7 +3861,7 @@ var init_platform_procedures = __esm({
3861
3861
  title: "MCP tools \u2014 identity, behavior, and support",
3862
3862
  domain: "tool-use",
3863
3863
  priority: "p1",
3864
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
3864
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
3865
3865
  },
3866
3866
  {
3867
3867
  title: "MCP tools \u2014 communication and messaging",
package/dist/lib/store.js CHANGED
@@ -3861,7 +3861,7 @@ var init_platform_procedures = __esm({
3861
3861
  title: "MCP tools \u2014 identity, behavior, and support",
3862
3862
  domain: "tool-use",
3863
3863
  priority: "p1",
3864
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
3864
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
3865
3865
  },
3866
3866
  {
3867
3867
  title: "MCP tools \u2014 communication and messaging",
@@ -5268,7 +5268,7 @@ var init_platform_procedures = __esm({
5268
5268
  title: "MCP tools \u2014 identity, behavior, and support",
5269
5269
  domain: "tool-use",
5270
5270
  priority: "p1",
5271
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
5271
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
5272
5272
  },
5273
5273
  {
5274
5274
  title: "MCP tools \u2014 communication and messaging",
@@ -28728,6 +28728,7 @@ function buildMarkdown(input) {
28728
28728
  `id: ${input.id}`,
28729
28729
  `classification: ${input.classification}`,
28730
28730
  `severity: ${input.severity}`,
28731
+ `product: ${input.product}`,
28731
28732
  `filed_by: ${input.agentId} (${input.agentRole})`,
28732
28733
  `package_version: ${input.packageVersion}`,
28733
28734
  `project: ${input.projectName ?? "unknown"}`,
@@ -28801,7 +28802,8 @@ function registerCreateBugReport(server) {
28801
28802
  files_changed: z88.array(z88.string()).optional().describe("Files changed or suspected"),
28802
28803
  workaround: z88.string().optional().describe("Temporary local workaround/hotfix, if any"),
28803
28804
  local_patch_diff: z88.string().optional().describe("Small local diff or patch summary"),
28804
- package_version: z88.string().optional().describe("Installed @askexenow/exe-os version"),
28805
+ product: z88.string().optional().describe("Product this bug is for: exe-os, exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. Defaults to exe-os."),
28806
+ package_version: z88.string().optional().describe("Installed package version"),
28805
28807
  project_name: z88.string().optional().describe("Project/customer context"),
28806
28808
  send_upstream: z88.boolean().default(true).describe("Attempt to POST to configured AskExe support endpoint")
28807
28809
  }
@@ -28818,6 +28820,7 @@ function registerCreateBugReport(server) {
28818
28820
  files_changed,
28819
28821
  workaround,
28820
28822
  local_patch_diff,
28823
+ product,
28821
28824
  package_version,
28822
28825
  project_name,
28823
28826
  send_upstream
@@ -28833,6 +28836,7 @@ function registerCreateBugReport(server) {
28833
28836
  }
28834
28837
  const { agentId, agentRole } = getActiveAgent();
28835
28838
  const id = crypto18.randomUUID();
28839
+ const resolvedProduct = product ?? "exe-os";
28836
28840
  const version = package_version ?? "unknown";
28837
28841
  const markdown = buildMarkdown({
28838
28842
  id,
@@ -28841,6 +28845,7 @@ function registerCreateBugReport(server) {
28841
28845
  severity,
28842
28846
  agentId,
28843
28847
  agentRole,
28848
+ product: resolvedProduct,
28844
28849
  packageVersion: version,
28845
28850
  summary,
28846
28851
  customerImpact: customer_impact,
@@ -28888,6 +28893,7 @@ function registerCreateBugReport(server) {
28888
28893
  title,
28889
28894
  classification,
28890
28895
  severity,
28896
+ product: resolvedProduct,
28891
28897
  summary,
28892
28898
  customer_impact,
28893
28899
  reproduction_steps,
@@ -28952,6 +28958,7 @@ function buildMarkdown2(input) {
28952
28958
  `id: ${input.id}`,
28953
28959
  `category: ${input.category}`,
28954
28960
  `priority: ${input.priority}`,
28961
+ `product: ${input.product}`,
28955
28962
  `filed_by: ${input.agentId} (${input.agentRole})`,
28956
28963
  `package_version: ${input.packageVersion}`,
28957
28964
  `project: ${input.projectName ?? "unknown"}`,
@@ -29013,7 +29020,8 @@ function registerCreateFeatureRequest(server) {
29013
29020
  current_workaround: z89.string().optional().describe("How the need is currently addressed, if at all"),
29014
29021
  proposed_solution: z89.string().optional().describe("Suggested implementation approach"),
29015
29022
  business_impact: z89.string().optional().describe("Impact on business/workflow if this ships"),
29016
- package_version: z89.string().optional().describe("Installed @askexenow/exe-os version"),
29023
+ product: z89.string().optional().describe("Product this feature is for: exe-os, exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. Defaults to exe-os."),
29024
+ package_version: z89.string().optional().describe("Installed package version"),
29017
29025
  project_name: z89.string().optional().describe("Project/customer context"),
29018
29026
  send_upstream: z89.boolean().default(true).describe("Attempt to POST to configured AskExe support endpoint")
29019
29027
  }
@@ -29027,12 +29035,14 @@ function registerCreateFeatureRequest(server) {
29027
29035
  current_workaround,
29028
29036
  proposed_solution,
29029
29037
  business_impact,
29038
+ product,
29030
29039
  package_version,
29031
29040
  project_name,
29032
29041
  send_upstream
29033
29042
  }) => {
29034
29043
  const { agentId, agentRole } = getActiveAgent();
29035
29044
  const id = crypto19.randomUUID();
29045
+ const resolvedProduct = product ?? "exe-os";
29036
29046
  const version = package_version ?? "unknown";
29037
29047
  const markdown = buildMarkdown2({
29038
29048
  id,
@@ -29041,6 +29051,7 @@ function registerCreateFeatureRequest(server) {
29041
29051
  priority,
29042
29052
  agentId,
29043
29053
  agentRole,
29054
+ product: resolvedProduct,
29044
29055
  packageVersion: version,
29045
29056
  description,
29046
29057
  useCase: use_case,
@@ -29085,6 +29096,7 @@ function registerCreateFeatureRequest(server) {
29085
29096
  title,
29086
29097
  category,
29087
29098
  priority,
29099
+ product: resolvedProduct,
29088
29100
  description,
29089
29101
  use_case,
29090
29102
  current_workaround,
@@ -31279,7 +31291,7 @@ function registerSupportConsolidated(server) {
31279
31291
  "support",
31280
31292
  {
31281
31293
  title: "Support",
31282
- description: "Bug reports, feature requests, and support system. Actions: create_bug, create_feature, list_my_bugs, list_my_features, list_bugs, get_bug, triage_bug, list_features, get_feature, triage_feature, health, test.",
31294
+ description: "Bug reports, feature requests, and support system. Actions: create_bug, create_feature, list_my_bugs, list_my_features, list_bugs, get_bug, triage_bug, list_features, get_feature, triage_feature, health, test. Use 'product' param to file bugs for any AskExe product (exe-os, exe-create, exe-wiki, etc.).",
31283
31295
  inputSchema: {
31284
31296
  action: z97.enum([
31285
31297
  "create_bug",
@@ -31301,6 +31313,7 @@ function registerSupportConsolidated(server) {
31301
31313
  expected_behavior: z97.string().optional().describe("Expected behavior (bugs)"),
31302
31314
  actual_behavior: z97.string().optional().describe("Actual behavior (bugs)"),
31303
31315
  severity: z97.string().optional().describe("Severity: p0/p1/p2/p3"),
31316
+ product: z97.string().optional().describe("Product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build"),
31304
31317
  use_case: z97.string().optional().describe("Use case (features)"),
31305
31318
  proposed_solution: z97.string().optional().describe("Proposed solution (features)"),
31306
31319
  priority: z97.string().optional().describe("Priority (features)"),
@@ -5336,7 +5336,7 @@ var init_platform_procedures = __esm({
5336
5336
  title: "MCP tools \u2014 identity, behavior, and support",
5337
5337
  domain: "tool-use",
5338
5338
  priority: "p1",
5339
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
5339
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
5340
5340
  },
5341
5341
  {
5342
5342
  title: "MCP tools \u2014 communication and messaging",
@@ -28821,6 +28821,7 @@ function buildMarkdown(input) {
28821
28821
  `id: ${input.id}`,
28822
28822
  `classification: ${input.classification}`,
28823
28823
  `severity: ${input.severity}`,
28824
+ `product: ${input.product}`,
28824
28825
  `filed_by: ${input.agentId} (${input.agentRole})`,
28825
28826
  `package_version: ${input.packageVersion}`,
28826
28827
  `project: ${input.projectName ?? "unknown"}`,
@@ -28894,7 +28895,8 @@ function registerCreateBugReport(server2) {
28894
28895
  files_changed: z88.array(z88.string()).optional().describe("Files changed or suspected"),
28895
28896
  workaround: z88.string().optional().describe("Temporary local workaround/hotfix, if any"),
28896
28897
  local_patch_diff: z88.string().optional().describe("Small local diff or patch summary"),
28897
- package_version: z88.string().optional().describe("Installed @askexenow/exe-os version"),
28898
+ product: z88.string().optional().describe("Product this bug is for: exe-os, exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. Defaults to exe-os."),
28899
+ package_version: z88.string().optional().describe("Installed package version"),
28898
28900
  project_name: z88.string().optional().describe("Project/customer context"),
28899
28901
  send_upstream: z88.boolean().default(true).describe("Attempt to POST to configured AskExe support endpoint")
28900
28902
  }
@@ -28911,6 +28913,7 @@ function registerCreateBugReport(server2) {
28911
28913
  files_changed,
28912
28914
  workaround,
28913
28915
  local_patch_diff,
28916
+ product,
28914
28917
  package_version,
28915
28918
  project_name,
28916
28919
  send_upstream
@@ -28926,6 +28929,7 @@ function registerCreateBugReport(server2) {
28926
28929
  }
28927
28930
  const { agentId, agentRole } = getActiveAgent();
28928
28931
  const id = crypto18.randomUUID();
28932
+ const resolvedProduct = product ?? "exe-os";
28929
28933
  const version = package_version ?? "unknown";
28930
28934
  const markdown = buildMarkdown({
28931
28935
  id,
@@ -28934,6 +28938,7 @@ function registerCreateBugReport(server2) {
28934
28938
  severity,
28935
28939
  agentId,
28936
28940
  agentRole,
28941
+ product: resolvedProduct,
28937
28942
  packageVersion: version,
28938
28943
  summary,
28939
28944
  customerImpact: customer_impact,
@@ -28981,6 +28986,7 @@ function registerCreateBugReport(server2) {
28981
28986
  title,
28982
28987
  classification,
28983
28988
  severity,
28989
+ product: resolvedProduct,
28984
28990
  summary,
28985
28991
  customer_impact,
28986
28992
  reproduction_steps,
@@ -29045,6 +29051,7 @@ function buildMarkdown2(input) {
29045
29051
  `id: ${input.id}`,
29046
29052
  `category: ${input.category}`,
29047
29053
  `priority: ${input.priority}`,
29054
+ `product: ${input.product}`,
29048
29055
  `filed_by: ${input.agentId} (${input.agentRole})`,
29049
29056
  `package_version: ${input.packageVersion}`,
29050
29057
  `project: ${input.projectName ?? "unknown"}`,
@@ -29106,7 +29113,8 @@ function registerCreateFeatureRequest(server2) {
29106
29113
  current_workaround: z89.string().optional().describe("How the need is currently addressed, if at all"),
29107
29114
  proposed_solution: z89.string().optional().describe("Suggested implementation approach"),
29108
29115
  business_impact: z89.string().optional().describe("Impact on business/workflow if this ships"),
29109
- package_version: z89.string().optional().describe("Installed @askexenow/exe-os version"),
29116
+ product: z89.string().optional().describe("Product this feature is for: exe-os, exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. Defaults to exe-os."),
29117
+ package_version: z89.string().optional().describe("Installed package version"),
29110
29118
  project_name: z89.string().optional().describe("Project/customer context"),
29111
29119
  send_upstream: z89.boolean().default(true).describe("Attempt to POST to configured AskExe support endpoint")
29112
29120
  }
@@ -29120,12 +29128,14 @@ function registerCreateFeatureRequest(server2) {
29120
29128
  current_workaround,
29121
29129
  proposed_solution,
29122
29130
  business_impact,
29131
+ product,
29123
29132
  package_version,
29124
29133
  project_name,
29125
29134
  send_upstream
29126
29135
  }) => {
29127
29136
  const { agentId, agentRole } = getActiveAgent();
29128
29137
  const id = crypto19.randomUUID();
29138
+ const resolvedProduct = product ?? "exe-os";
29129
29139
  const version = package_version ?? "unknown";
29130
29140
  const markdown = buildMarkdown2({
29131
29141
  id,
@@ -29134,6 +29144,7 @@ function registerCreateFeatureRequest(server2) {
29134
29144
  priority,
29135
29145
  agentId,
29136
29146
  agentRole,
29147
+ product: resolvedProduct,
29137
29148
  packageVersion: version,
29138
29149
  description,
29139
29150
  useCase: use_case,
@@ -29178,6 +29189,7 @@ function registerCreateFeatureRequest(server2) {
29178
29189
  title,
29179
29190
  category,
29180
29191
  priority,
29192
+ product: resolvedProduct,
29181
29193
  description,
29182
29194
  use_case,
29183
29195
  current_workaround,
@@ -31372,7 +31384,7 @@ function registerSupportConsolidated(server2) {
31372
31384
  "support",
31373
31385
  {
31374
31386
  title: "Support",
31375
- description: "Bug reports, feature requests, and support system. Actions: create_bug, create_feature, list_my_bugs, list_my_features, list_bugs, get_bug, triage_bug, list_features, get_feature, triage_feature, health, test.",
31387
+ description: "Bug reports, feature requests, and support system. Actions: create_bug, create_feature, list_my_bugs, list_my_features, list_bugs, get_bug, triage_bug, list_features, get_feature, triage_feature, health, test. Use 'product' param to file bugs for any AskExe product (exe-os, exe-create, exe-wiki, etc.).",
31376
31388
  inputSchema: {
31377
31389
  action: z97.enum([
31378
31390
  "create_bug",
@@ -31394,6 +31406,7 @@ function registerSupportConsolidated(server2) {
31394
31406
  expected_behavior: z97.string().optional().describe("Expected behavior (bugs)"),
31395
31407
  actual_behavior: z97.string().optional().describe("Actual behavior (bugs)"),
31396
31408
  severity: z97.string().optional().describe("Severity: p0/p1/p2/p3"),
31409
+ product: z97.string().optional().describe("Product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build"),
31397
31410
  use_case: z97.string().optional().describe("Use case (features)"),
31398
31411
  proposed_solution: z97.string().optional().describe("Proposed solution (features)"),
31399
31412
  priority: z97.string().optional().describe("Priority (features)"),
@@ -9647,7 +9647,7 @@ var init_platform_procedures = __esm({
9647
9647
  title: "MCP tools \u2014 identity, behavior, and support",
9648
9648
  domain: "tool-use",
9649
9649
  priority: "p1",
9650
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
9650
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
9651
9651
  },
9652
9652
  {
9653
9653
  title: "MCP tools \u2014 communication and messaging",
package/dist/tui/App.js CHANGED
@@ -9829,7 +9829,7 @@ var init_platform_procedures = __esm({
9829
9829
  title: "MCP tools \u2014 identity, behavior, and support",
9830
9830
  domain: "tool-use",
9831
9831
  priority: "p1",
9832
- content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
9832
+ content: `identity(action="get") / get_identity: read an agent's exe.md (Layer 1 identity). identity(action="update") / update_identity: write an agent's exe.md. Identity > behavior. behavior(action="store") / store_behavior: record a correction or pattern (Layer 2 expertise). behavior(action="list") / list_behaviors: view active behaviors. behavior(action="deactivate") / deactivate_behavior: soft-delete a stale behavior. support(action="create_bug"): file a bug report. Required: title, description, severity (p0-p3). Optional: steps_to_reproduce, expected_behavior, actual_behavior. Auto-delivers to AskExe support. support(action="create_feature"): file a feature request. Required: title, description. Optional: use_case (why you need it), proposed_solution (how it could work). Include business impact if possible \u2014 it helps prioritization. Both create_bug and create_feature accept a 'product' param to file for any AskExe product: exe-os (default), exe-create, exe-wiki, exe-gateway, exe-crm, exe-build. support(action="list_my_bugs"): check status of YOUR filed bug reports \u2014 see which are open, triaged, or fixed with version number. support(action="list_my_features"): check status of YOUR filed feature requests \u2014 see which are open, planned, shipped, or closed with response notes from AskExe. support(action="health"): verify support server is reachable. When a bug shows status='closed' with a fixed_version, tell the founder: 'Bug X fixed in vY \u2014 run exe-os update to get it.' When a feature shows status='shipped' with a shipped_version, tell the founder: 'Feature X shipped in vY \u2014 run exe-os update.' support(action="triage_bug"): AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
9833
9833
  },
9834
9834
  {
9835
9835
  title: "MCP tools \u2014 communication and messaging",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@askexenow/exe-os",
3
- "version": "0.9.122",
3
+ "version": "0.9.124",
4
4
  "description": "AI employee operating system — persistent memory, task management, and multi-agent coordination for Claude Code.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "type": "module",