@askexenow/exe-os 0.9.72 → 0.9.74
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/bin/age-ontology-load.js +3 -0
- package/dist/bin/agentic-ontology-backfill.js +4 -1
- package/dist/bin/agentic-reflection-backfill.js +4 -1
- package/dist/bin/agentic-semantic-label.js +4 -1
- package/dist/bin/backfill-conversations.js +4 -1
- package/dist/bin/backfill-responses.js +4 -1
- package/dist/bin/backfill-vectors.js +4 -1
- package/dist/bin/bulk-sync-postgres.js +4 -1
- package/dist/bin/cc-doctor.js +3 -0
- package/dist/bin/cleanup-stale-review-tasks.js +4 -1
- package/dist/bin/cli.js +79 -51
- package/dist/bin/exe-agent-config.js +3 -0
- package/dist/bin/exe-agent.js +4 -1
- package/dist/bin/exe-assign.js +4 -1
- package/dist/bin/exe-boot.js +4 -1
- package/dist/bin/exe-call.js +4 -1
- package/dist/bin/exe-cloud.js +4 -1
- package/dist/bin/exe-dispatch.js +4 -1
- package/dist/bin/exe-doctor.js +4 -1
- package/dist/bin/exe-export-behaviors.js +4 -1
- package/dist/bin/exe-forget.js +4 -1
- package/dist/bin/exe-gateway.js +4 -1
- package/dist/bin/exe-healthcheck.js +3 -0
- package/dist/bin/exe-heartbeat.js +4 -1
- package/dist/bin/exe-kill.js +4 -1
- package/dist/bin/exe-launch-agent.js +4 -1
- package/dist/bin/exe-new-employee.js +40 -12
- package/dist/bin/exe-pending-messages.js +4 -1
- package/dist/bin/exe-pending-notifications.js +4 -1
- package/dist/bin/exe-pending-reviews.js +4 -1
- package/dist/bin/exe-rename.js +4 -1
- package/dist/bin/exe-review.js +4 -1
- package/dist/bin/exe-search.js +4 -1
- package/dist/bin/exe-session-cleanup.js +4 -1
- package/dist/bin/exe-settings.js +3 -0
- package/dist/bin/exe-start-codex.js +4 -1
- package/dist/bin/exe-start-opencode.js +4 -1
- package/dist/bin/exe-status.js +4 -1
- package/dist/bin/exe-team.js +4 -1
- package/dist/bin/git-sweep.js +4 -1
- package/dist/bin/graph-backfill.js +4 -1
- package/dist/bin/graph-export.js +4 -1
- package/dist/bin/install.js +39 -11
- package/dist/bin/intercom-check.js +4 -1
- package/dist/bin/postgres-agentic-reflection-backfill.js +3 -0
- package/dist/bin/postgres-agentic-semantic-backfill.js +3 -0
- package/dist/bin/scan-tasks.js +4 -1
- package/dist/bin/setup.js +39 -11
- package/dist/bin/shard-migrate.js +4 -1
- package/dist/bin/update.js +3 -0
- package/dist/gateway/index.js +4 -1
- package/dist/hooks/bug-report-worker.js +4 -1
- package/dist/hooks/codex-stop-task-finalizer.js +4 -1
- package/dist/hooks/commit-complete.js +4 -1
- package/dist/hooks/error-recall.js +4 -1
- package/dist/hooks/exe-heartbeat-hook.js +3 -0
- package/dist/hooks/ingest-worker.js +3 -0
- package/dist/hooks/ingest.js +4 -1
- package/dist/hooks/instructions-loaded.js +4 -1
- package/dist/hooks/notification.js +4 -1
- package/dist/hooks/post-compact.js +4 -1
- package/dist/hooks/post-tool-combined.js +4 -1
- package/dist/hooks/pre-compact.js +4 -1
- package/dist/hooks/pre-tool-use.js +4 -1
- package/dist/hooks/prompt-submit.js +4 -1
- package/dist/hooks/session-end.js +4 -1
- package/dist/hooks/session-start.js +4 -1
- package/dist/hooks/stop.js +4 -1
- package/dist/hooks/subagent-stop.js +4 -1
- package/dist/hooks/summary-worker.js +4 -1
- package/dist/index.js +4 -1
- package/dist/lib/agent-config.js +3 -0
- package/dist/lib/cloud-sync.js +3 -0
- package/dist/lib/config.js +3 -0
- package/dist/lib/consolidation.js +3 -0
- package/dist/lib/database.js +3 -0
- package/dist/lib/db-daemon-client.js +3 -0
- package/dist/lib/db.js +3 -0
- package/dist/lib/device-registry.js +3 -0
- package/dist/lib/embedder.js +3 -0
- package/dist/lib/employee-templates.js +4 -1
- package/dist/lib/employees.js +3 -0
- package/dist/lib/exe-daemon-client.js +3 -0
- package/dist/lib/exe-daemon.js +4 -1
- package/dist/lib/hybrid-search.js +4 -1
- package/dist/lib/identity.js +3 -0
- package/dist/lib/license.js +3 -0
- package/dist/lib/messaging.js +3 -0
- package/dist/lib/reminders.js +3 -0
- package/dist/lib/schedules.js +4 -1
- package/dist/lib/session-wrappers.js +31 -6
- package/dist/lib/skill-learning.js +3 -0
- package/dist/lib/store.js +4 -1
- package/dist/lib/task-router.js +3 -0
- package/dist/lib/tasks.js +3 -0
- package/dist/lib/tmux-routing.js +3 -0
- package/dist/lib/token-spend.js +3 -0
- package/dist/mcp/server.js +4 -1
- package/dist/mcp/tools/complete-reminder.js +3 -0
- package/dist/mcp/tools/create-reminder.js +3 -0
- package/dist/mcp/tools/create-task.js +3 -0
- package/dist/mcp/tools/deactivate-behavior.js +3 -0
- package/dist/mcp/tools/list-reminders.js +3 -0
- package/dist/mcp/tools/list-tasks.js +3 -0
- package/dist/mcp/tools/send-message.js +3 -0
- package/dist/mcp/tools/update-task.js +3 -0
- package/dist/runtime/index.js +4 -1
- package/dist/tui/App.js +4 -1
- package/package.json +1 -1
|
@@ -298,6 +298,9 @@ var init_config = __esm({
|
|
|
298
298
|
autoInstall: false,
|
|
299
299
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
300
300
|
},
|
|
301
|
+
support: {
|
|
302
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
303
|
+
},
|
|
301
304
|
orchestration: {
|
|
302
305
|
phase: "phase_1_coo",
|
|
303
306
|
phaseSetBy: "default"
|
|
@@ -3359,7 +3362,7 @@ var init_platform_procedures = __esm({
|
|
|
3359
3362
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
3360
3363
|
domain: "support",
|
|
3361
3364
|
priority: "p0",
|
|
3362
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3365
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3363
3366
|
},
|
|
3364
3367
|
// --- Operations ---
|
|
3365
3368
|
{
|
|
@@ -298,6 +298,9 @@ var init_config = __esm({
|
|
|
298
298
|
autoInstall: false,
|
|
299
299
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
300
300
|
},
|
|
301
|
+
support: {
|
|
302
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
303
|
+
},
|
|
301
304
|
orchestration: {
|
|
302
305
|
phase: "phase_1_coo",
|
|
303
306
|
phaseSetBy: "default"
|
|
@@ -3359,7 +3362,7 @@ var init_platform_procedures = __esm({
|
|
|
3359
3362
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
3360
3363
|
domain: "support",
|
|
3361
3364
|
priority: "p0",
|
|
3362
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3365
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3363
3366
|
},
|
|
3364
3367
|
// --- Operations ---
|
|
3365
3368
|
{
|
|
@@ -298,6 +298,9 @@ var init_config = __esm({
|
|
|
298
298
|
autoInstall: false,
|
|
299
299
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
300
300
|
},
|
|
301
|
+
support: {
|
|
302
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
303
|
+
},
|
|
301
304
|
orchestration: {
|
|
302
305
|
phase: "phase_1_coo",
|
|
303
306
|
phaseSetBy: "default"
|
|
@@ -3359,7 +3362,7 @@ var init_platform_procedures = __esm({
|
|
|
3359
3362
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
3360
3363
|
domain: "support",
|
|
3361
3364
|
priority: "p0",
|
|
3362
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3365
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3363
3366
|
},
|
|
3364
3367
|
// --- Operations ---
|
|
3365
3368
|
{
|
|
@@ -298,6 +298,9 @@ var init_config = __esm({
|
|
|
298
298
|
autoInstall: false,
|
|
299
299
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
300
300
|
},
|
|
301
|
+
support: {
|
|
302
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
303
|
+
},
|
|
301
304
|
orchestration: {
|
|
302
305
|
phase: "phase_1_coo",
|
|
303
306
|
phaseSetBy: "default"
|
|
@@ -3499,7 +3502,7 @@ var init_platform_procedures = __esm({
|
|
|
3499
3502
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
3500
3503
|
domain: "support",
|
|
3501
3504
|
priority: "p0",
|
|
3502
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3505
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3503
3506
|
},
|
|
3504
3507
|
// --- Operations ---
|
|
3505
3508
|
{
|
|
@@ -298,6 +298,9 @@ var init_config = __esm({
|
|
|
298
298
|
autoInstall: false,
|
|
299
299
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
300
300
|
},
|
|
301
|
+
support: {
|
|
302
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
303
|
+
},
|
|
301
304
|
orchestration: {
|
|
302
305
|
phase: "phase_1_coo",
|
|
303
306
|
phaseSetBy: "default"
|
|
@@ -3499,7 +3502,7 @@ var init_platform_procedures = __esm({
|
|
|
3499
3502
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
3500
3503
|
domain: "support",
|
|
3501
3504
|
priority: "p0",
|
|
3502
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3505
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3503
3506
|
},
|
|
3504
3507
|
// --- Operations ---
|
|
3505
3508
|
{
|
|
@@ -298,6 +298,9 @@ var init_config = __esm({
|
|
|
298
298
|
autoInstall: false,
|
|
299
299
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
300
300
|
},
|
|
301
|
+
support: {
|
|
302
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
303
|
+
},
|
|
301
304
|
orchestration: {
|
|
302
305
|
phase: "phase_1_coo",
|
|
303
306
|
phaseSetBy: "default"
|
|
@@ -3495,7 +3498,7 @@ var init_platform_procedures = __esm({
|
|
|
3495
3498
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
3496
3499
|
domain: "support",
|
|
3497
3500
|
priority: "p0",
|
|
3498
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3501
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3499
3502
|
},
|
|
3500
3503
|
// --- Operations ---
|
|
3501
3504
|
{
|
|
@@ -298,6 +298,9 @@ var init_config = __esm({
|
|
|
298
298
|
autoInstall: false,
|
|
299
299
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
300
300
|
},
|
|
301
|
+
support: {
|
|
302
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
303
|
+
},
|
|
301
304
|
orchestration: {
|
|
302
305
|
phase: "phase_1_coo",
|
|
303
306
|
phaseSetBy: "default"
|
|
@@ -3667,7 +3670,7 @@ var init_platform_procedures = __esm({
|
|
|
3667
3670
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
3668
3671
|
domain: "support",
|
|
3669
3672
|
priority: "p0",
|
|
3670
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3673
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
3671
3674
|
},
|
|
3672
3675
|
// --- Operations ---
|
|
3673
3676
|
{
|
package/dist/bin/cc-doctor.js
CHANGED
|
@@ -110,6 +110,9 @@ var DEFAULT_CONFIG = {
|
|
|
110
110
|
autoInstall: false,
|
|
111
111
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
112
112
|
},
|
|
113
|
+
support: {
|
|
114
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
115
|
+
},
|
|
113
116
|
orchestration: {
|
|
114
117
|
phase: "phase_1_coo",
|
|
115
118
|
phaseSetBy: "default"
|
|
@@ -300,6 +300,9 @@ var init_config = __esm({
|
|
|
300
300
|
autoInstall: false,
|
|
301
301
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
302
302
|
},
|
|
303
|
+
support: {
|
|
304
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
305
|
+
},
|
|
303
306
|
orchestration: {
|
|
304
307
|
phase: "phase_1_coo",
|
|
305
308
|
phaseSetBy: "default"
|
|
@@ -4142,7 +4145,7 @@ var init_platform_procedures = __esm({
|
|
|
4142
4145
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
4143
4146
|
domain: "support",
|
|
4144
4147
|
priority: "p0",
|
|
4145
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
4148
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
4146
4149
|
},
|
|
4147
4150
|
// --- Operations ---
|
|
4148
4151
|
{
|
package/dist/bin/cli.js
CHANGED
|
@@ -310,6 +310,9 @@ var init_config = __esm({
|
|
|
310
310
|
autoInstall: false,
|
|
311
311
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
312
312
|
},
|
|
313
|
+
support: {
|
|
314
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
315
|
+
},
|
|
313
316
|
orchestration: {
|
|
314
317
|
phase: "phase_1_coo",
|
|
315
318
|
phaseSetBy: "default"
|
|
@@ -3695,8 +3698,8 @@ function findPackageRoot() {
|
|
|
3695
3698
|
function getAvailableMemoryGB() {
|
|
3696
3699
|
if (process.platform === "darwin") {
|
|
3697
3700
|
try {
|
|
3698
|
-
const { execSync:
|
|
3699
|
-
const vmstat =
|
|
3701
|
+
const { execSync: execSync18 } = __require("child_process");
|
|
3702
|
+
const vmstat = execSync18("vm_stat", { encoding: "utf8" });
|
|
3700
3703
|
const pageSize = 16384;
|
|
3701
3704
|
const pageSizeMatch = vmstat.match(/page size of (\d+) bytes/);
|
|
3702
3705
|
const actualPageSize = pageSizeMatch ? parseInt(pageSizeMatch[1], 10) : pageSize;
|
|
@@ -8663,7 +8666,7 @@ var init_platform_procedures = __esm({
|
|
|
8663
8666
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
8664
8667
|
domain: "support",
|
|
8665
8668
|
priority: "p0",
|
|
8666
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
8669
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
8667
8670
|
},
|
|
8668
8671
|
// --- Operations ---
|
|
8669
8672
|
{
|
|
@@ -18116,12 +18119,14 @@ import {
|
|
|
18116
18119
|
readdirSync as readdirSync9,
|
|
18117
18120
|
unlinkSync as unlinkSync14
|
|
18118
18121
|
} from "fs";
|
|
18122
|
+
import { execSync as execSync13 } from "child_process";
|
|
18119
18123
|
import path37 from "path";
|
|
18120
18124
|
import { homedir as homedir5 } from "os";
|
|
18121
18125
|
function generateSessionWrappers(packageRoot, homeDir) {
|
|
18122
18126
|
const home = homeDir ?? homedir5();
|
|
18123
18127
|
const binDir = path37.join(home, ".exe-os", "bin");
|
|
18124
18128
|
const rosterPath = path37.join(home, ".exe-os", "exe-employees.json");
|
|
18129
|
+
const shouldMirrorToGlobalBin = homeDir === void 0;
|
|
18125
18130
|
mkdirSync21(binDir, { recursive: true });
|
|
18126
18131
|
const exeStartDst = path37.join(binDir, "exe-start");
|
|
18127
18132
|
const candidates = [
|
|
@@ -18162,15 +18167,18 @@ function generateSessionWrappers(packageRoot, homeDir) {
|
|
|
18162
18167
|
const wrapperContent = `#!/bin/bash
|
|
18163
18168
|
exec "${exeStartDst}" "$0" "$@"
|
|
18164
18169
|
`;
|
|
18170
|
+
const globalBinDir = shouldMirrorToGlobalBin ? resolveGlobalBinDir() : null;
|
|
18165
18171
|
for (const emp of employees) {
|
|
18166
18172
|
for (let n = 1; n <= MAX_N; n++) {
|
|
18167
|
-
|
|
18168
|
-
|
|
18169
|
-
|
|
18173
|
+
writeWrapper(path37.join(binDir, `${emp.name}${n}`), wrapperContent);
|
|
18174
|
+
if (globalBinDir) {
|
|
18175
|
+
writeWrapper(path37.join(globalBinDir, `${emp.name}${n}`), wrapperContent);
|
|
18176
|
+
}
|
|
18170
18177
|
created++;
|
|
18171
|
-
|
|
18172
|
-
|
|
18173
|
-
|
|
18178
|
+
writeWrapper(path37.join(binDir, `${emp.name}${n}-codex`), wrapperContent);
|
|
18179
|
+
if (globalBinDir) {
|
|
18180
|
+
writeWrapper(path37.join(globalBinDir, `${emp.name}${n}-codex`), wrapperContent);
|
|
18181
|
+
}
|
|
18174
18182
|
created++;
|
|
18175
18183
|
}
|
|
18176
18184
|
}
|
|
@@ -18199,6 +18207,26 @@ exec node "${codexLauncher}" --agent ${emp.name} "$@"
|
|
|
18199
18207
|
const pathConfigured = ensurePath(home, binDir);
|
|
18200
18208
|
return { created, pathConfigured };
|
|
18201
18209
|
}
|
|
18210
|
+
function writeWrapper(wrapperPath, content) {
|
|
18211
|
+
try {
|
|
18212
|
+
writeFileSync22(wrapperPath, content);
|
|
18213
|
+
chmodSync3(wrapperPath, 493);
|
|
18214
|
+
} catch {
|
|
18215
|
+
}
|
|
18216
|
+
}
|
|
18217
|
+
function resolveGlobalBinDir() {
|
|
18218
|
+
try {
|
|
18219
|
+
const exeOsPath = execSync13("command -v exe-os", { encoding: "utf8", timeout: 3e3 }).trim().split("\n")[0];
|
|
18220
|
+
if (exeOsPath) return path37.dirname(exeOsPath);
|
|
18221
|
+
} catch {
|
|
18222
|
+
}
|
|
18223
|
+
try {
|
|
18224
|
+
const prefix = execSync13("npm prefix -g", { encoding: "utf8", timeout: 3e3 }).trim();
|
|
18225
|
+
if (prefix) return path37.join(prefix, "bin");
|
|
18226
|
+
} catch {
|
|
18227
|
+
}
|
|
18228
|
+
return null;
|
|
18229
|
+
}
|
|
18202
18230
|
function ensurePath(home, binDir) {
|
|
18203
18231
|
if (process.env.PATH?.split(":").includes(binDir)) {
|
|
18204
18232
|
return false;
|
|
@@ -18300,8 +18328,8 @@ function ask3(rl, prompt) {
|
|
|
18300
18328
|
function getAvailableMemoryGB2() {
|
|
18301
18329
|
if (process.platform === "darwin") {
|
|
18302
18330
|
try {
|
|
18303
|
-
const { execSync:
|
|
18304
|
-
const vmstat =
|
|
18331
|
+
const { execSync: execSync18 } = __require("child_process");
|
|
18332
|
+
const vmstat = execSync18("vm_stat", { encoding: "utf8" });
|
|
18305
18333
|
const pageSizeMatch = vmstat.match(/page size of (\d+) bytes/);
|
|
18306
18334
|
const pageSize = pageSizeMatch ? parseInt(pageSizeMatch[1], 10) : 16384;
|
|
18307
18335
|
const free = vmstat.match(/Pages free:\s+(\d+)/);
|
|
@@ -19161,7 +19189,7 @@ var init_update_backup = __esm({
|
|
|
19161
19189
|
});
|
|
19162
19190
|
|
|
19163
19191
|
// src/lib/update-check.ts
|
|
19164
|
-
import { execSync as
|
|
19192
|
+
import { execSync as execSync14 } from "child_process";
|
|
19165
19193
|
import { readFileSync as readFileSync27 } from "fs";
|
|
19166
19194
|
import path40 from "path";
|
|
19167
19195
|
function getLocalVersion(packageRoot) {
|
|
@@ -19171,7 +19199,7 @@ function getLocalVersion(packageRoot) {
|
|
|
19171
19199
|
}
|
|
19172
19200
|
function getRemoteVersion() {
|
|
19173
19201
|
try {
|
|
19174
|
-
const output =
|
|
19202
|
+
const output = execSync14("npm view @askexenow/exe-os version", {
|
|
19175
19203
|
encoding: "utf-8",
|
|
19176
19204
|
timeout: 15e3,
|
|
19177
19205
|
stdio: ["pipe", "pipe", "pipe"]
|
|
@@ -19210,7 +19238,7 @@ __export(update_exports, {
|
|
|
19210
19238
|
getRemoteVersion: () => getRemoteVersion,
|
|
19211
19239
|
runUpdate: () => runUpdate
|
|
19212
19240
|
});
|
|
19213
|
-
import { execSync as
|
|
19241
|
+
import { execSync as execSync15 } from "child_process";
|
|
19214
19242
|
import { createInterface as createInterface5 } from "readline";
|
|
19215
19243
|
async function runRestore() {
|
|
19216
19244
|
console.log("\n\u{1F504} Restoring from update backup...");
|
|
@@ -19221,7 +19249,7 @@ async function runRestore() {
|
|
|
19221
19249
|
console.log(`
|
|
19222
19250
|
\u{1F4E5} Reinstalling @askexenow/exe-os@${manifest.version}...`);
|
|
19223
19251
|
try {
|
|
19224
|
-
|
|
19252
|
+
execSync15(`npm install -g @askexenow/exe-os@${manifest.version}`, {
|
|
19225
19253
|
stdio: ["pipe", "pipe", "inherit"],
|
|
19226
19254
|
timeout: 3e5
|
|
19227
19255
|
});
|
|
@@ -19298,7 +19326,7 @@ async function runUpdate(cliArgs) {
|
|
|
19298
19326
|
}
|
|
19299
19327
|
console.log("\u{1F9F9} Clearing npm cache...");
|
|
19300
19328
|
try {
|
|
19301
|
-
|
|
19329
|
+
execSync15("npm cache clean --force", { stdio: "pipe" });
|
|
19302
19330
|
console.log(" Done");
|
|
19303
19331
|
} catch {
|
|
19304
19332
|
console.log(" Skipped (non-critical)");
|
|
@@ -19306,7 +19334,7 @@ async function runUpdate(cliArgs) {
|
|
|
19306
19334
|
console.log("\u{1F4E5} Installing @askexenow/exe-os@latest...");
|
|
19307
19335
|
console.log(" This may take a minute...\n");
|
|
19308
19336
|
try {
|
|
19309
|
-
|
|
19337
|
+
execSync15("npm install -g @askexenow/exe-os@latest", {
|
|
19310
19338
|
stdio: ["pipe", "pipe", "inherit"],
|
|
19311
19339
|
timeout: 3e5
|
|
19312
19340
|
});
|
|
@@ -19324,7 +19352,7 @@ async function runUpdate(cliArgs) {
|
|
|
19324
19352
|
newVersion = getLocalVersion(packageRoot);
|
|
19325
19353
|
} catch {
|
|
19326
19354
|
try {
|
|
19327
|
-
const out =
|
|
19355
|
+
const out = execSync15("npm list -g @askexenow/exe-os --depth=0 2>/dev/null", { encoding: "utf8" });
|
|
19328
19356
|
const match = out.match(/@askexenow\/exe-os@(\S+)/);
|
|
19329
19357
|
newVersion = match?.[1] ?? "unknown";
|
|
19330
19358
|
} catch {
|
|
@@ -19353,7 +19381,7 @@ async function runUpdate(cliArgs) {
|
|
|
19353
19381
|
}
|
|
19354
19382
|
console.log("\u{1F527} Re-registering MCP, hooks, wrappers, and daemon...");
|
|
19355
19383
|
try {
|
|
19356
|
-
|
|
19384
|
+
execSync15("exe-os-install --global", {
|
|
19357
19385
|
stdio: ["pipe", "inherit", "inherit"],
|
|
19358
19386
|
timeout: 3e5
|
|
19359
19387
|
});
|
|
@@ -26690,13 +26718,13 @@ __export(tmux_status_exports, {
|
|
|
26690
26718
|
parseActivity: () => parseActivity,
|
|
26691
26719
|
parseContextPercentage: () => parseContextPercentage
|
|
26692
26720
|
});
|
|
26693
|
-
import { execSync as
|
|
26721
|
+
import { execSync as execSync16 } from "child_process";
|
|
26694
26722
|
function inTmux() {
|
|
26695
26723
|
if (process.env.TMUX || process.env.TMUX_PANE) return true;
|
|
26696
26724
|
const term = process.env.TERM ?? "";
|
|
26697
26725
|
if (term.startsWith("tmux") || term.startsWith("screen")) return true;
|
|
26698
26726
|
try {
|
|
26699
|
-
|
|
26727
|
+
execSync16("tmux display-message -p '#{session_name}' 2>/dev/null", {
|
|
26700
26728
|
encoding: "utf8",
|
|
26701
26729
|
timeout: 2e3
|
|
26702
26730
|
});
|
|
@@ -26706,12 +26734,12 @@ function inTmux() {
|
|
|
26706
26734
|
try {
|
|
26707
26735
|
let pid = process.ppid;
|
|
26708
26736
|
for (let depth = 0; depth < 8 && pid > 1; depth++) {
|
|
26709
|
-
const comm =
|
|
26737
|
+
const comm = execSync16(`ps -p ${pid} -o comm= 2>/dev/null`, {
|
|
26710
26738
|
encoding: "utf8",
|
|
26711
26739
|
timeout: 1e3
|
|
26712
26740
|
}).trim();
|
|
26713
26741
|
if (/tmux/.test(comm)) return true;
|
|
26714
|
-
const ppid =
|
|
26742
|
+
const ppid = execSync16(`ps -p ${pid} -o ppid= 2>/dev/null`, {
|
|
26715
26743
|
encoding: "utf8",
|
|
26716
26744
|
timeout: 1e3
|
|
26717
26745
|
}).trim();
|
|
@@ -26724,7 +26752,7 @@ function inTmux() {
|
|
|
26724
26752
|
}
|
|
26725
26753
|
function listTmuxSessions() {
|
|
26726
26754
|
try {
|
|
26727
|
-
const out =
|
|
26755
|
+
const out = execSync16("tmux list-sessions -F '#{session_name}' 2>/dev/null", {
|
|
26728
26756
|
encoding: "utf8",
|
|
26729
26757
|
timeout: 3e3
|
|
26730
26758
|
});
|
|
@@ -26735,7 +26763,7 @@ function listTmuxSessions() {
|
|
|
26735
26763
|
}
|
|
26736
26764
|
function capturePaneLines(windowName, lines = 10) {
|
|
26737
26765
|
try {
|
|
26738
|
-
const out =
|
|
26766
|
+
const out = execSync16(
|
|
26739
26767
|
`tmux capture-pane -t ${JSON.stringify(windowName)} -p 2>/dev/null | tail -${lines}`,
|
|
26740
26768
|
{ encoding: "utf8", timeout: 3e3 }
|
|
26741
26769
|
);
|
|
@@ -26746,7 +26774,7 @@ function capturePaneLines(windowName, lines = 10) {
|
|
|
26746
26774
|
}
|
|
26747
26775
|
function getPaneCwd(windowName) {
|
|
26748
26776
|
try {
|
|
26749
|
-
const out =
|
|
26777
|
+
const out = execSync16(
|
|
26750
26778
|
`tmux display-message -t ${JSON.stringify(windowName)} -p '#{pane_current_path}' 2>/dev/null`,
|
|
26751
26779
|
{ encoding: "utf8", timeout: 3e3 }
|
|
26752
26780
|
);
|
|
@@ -26757,7 +26785,7 @@ function getPaneCwd(windowName) {
|
|
|
26757
26785
|
}
|
|
26758
26786
|
function projectFromPath(dir) {
|
|
26759
26787
|
try {
|
|
26760
|
-
const root =
|
|
26788
|
+
const root = execSync16("git -C " + JSON.stringify(dir) + " rev-parse --show-toplevel 2>/dev/null", {
|
|
26761
26789
|
encoding: "utf8",
|
|
26762
26790
|
timeout: 3e3
|
|
26763
26791
|
}).trim();
|
|
@@ -26826,7 +26854,7 @@ function getEmployeeStatuses(employeeNames) {
|
|
|
26826
26854
|
}
|
|
26827
26855
|
let paneAlive = true;
|
|
26828
26856
|
try {
|
|
26829
|
-
const paneStatus =
|
|
26857
|
+
const paneStatus = execSync16(
|
|
26830
26858
|
`tmux list-panes -t ${JSON.stringify(sessionName)} -F '#{pane_dead}' 2>/dev/null`,
|
|
26831
26859
|
{ encoding: "utf8", timeout: 3e3 }
|
|
26832
26860
|
).trim();
|
|
@@ -27016,8 +27044,8 @@ function Footer() {
|
|
|
27016
27044
|
setSessions(allSessions.length);
|
|
27017
27045
|
if (!currentSession) {
|
|
27018
27046
|
try {
|
|
27019
|
-
const { execSync:
|
|
27020
|
-
const name =
|
|
27047
|
+
const { execSync: execSync18 } = await import("child_process");
|
|
27048
|
+
const name = execSync18("tmux display-message -p '#{session_name}' 2>/dev/null", {
|
|
27021
27049
|
encoding: "utf8",
|
|
27022
27050
|
timeout: 2e3
|
|
27023
27051
|
}).trim();
|
|
@@ -30371,8 +30399,8 @@ function TmuxPane({ sessionName, employeeName, employeeRole, projectName, onDeta
|
|
|
30371
30399
|
}
|
|
30372
30400
|
const capture = () => {
|
|
30373
30401
|
try {
|
|
30374
|
-
const { execSync:
|
|
30375
|
-
const output =
|
|
30402
|
+
const { execSync: execSync18 } = __require("child_process");
|
|
30403
|
+
const output = execSync18(
|
|
30376
30404
|
`tmux capture-pane -t ${JSON.stringify(sessionName)} -p -e 2>/dev/null | tail -${CAPTURE_LINES}`,
|
|
30377
30405
|
{ encoding: "utf8", timeout: 3e3 }
|
|
30378
30406
|
);
|
|
@@ -30396,8 +30424,8 @@ function TmuxPane({ sessionName, employeeName, employeeRole, projectName, onDeta
|
|
|
30396
30424
|
if (key.return) {
|
|
30397
30425
|
if (!demo && inputBuffer.trim()) {
|
|
30398
30426
|
try {
|
|
30399
|
-
const { execSync:
|
|
30400
|
-
|
|
30427
|
+
const { execSync: execSync18 } = __require("child_process");
|
|
30428
|
+
execSync18(
|
|
30401
30429
|
`tmux send-keys -t ${JSON.stringify(sessionName)} ${JSON.stringify(inputBuffer)} Enter`,
|
|
30402
30430
|
{ timeout: 2e3 }
|
|
30403
30431
|
);
|
|
@@ -30405,8 +30433,8 @@ function TmuxPane({ sessionName, employeeName, employeeRole, projectName, onDeta
|
|
|
30405
30433
|
}
|
|
30406
30434
|
} else if (!demo) {
|
|
30407
30435
|
try {
|
|
30408
|
-
const { execSync:
|
|
30409
|
-
|
|
30436
|
+
const { execSync: execSync18 } = __require("child_process");
|
|
30437
|
+
execSync18(`tmux send-keys -t ${JSON.stringify(sessionName)} Enter`, { timeout: 2e3 });
|
|
30410
30438
|
} catch {
|
|
30411
30439
|
}
|
|
30412
30440
|
}
|
|
@@ -31093,12 +31121,12 @@ function SessionsView({
|
|
|
31093
31121
|
return;
|
|
31094
31122
|
}
|
|
31095
31123
|
} else {
|
|
31096
|
-
const { execSync:
|
|
31124
|
+
const { execSync: execSync18 } = await import("child_process");
|
|
31097
31125
|
const dir = projectDir || process.cwd();
|
|
31098
|
-
|
|
31099
|
-
|
|
31126
|
+
execSync18(`tmux new-session -d -s ${JSON.stringify(entry.sessionName)} -c ${JSON.stringify(dir)}`, { timeout: 5e3 });
|
|
31127
|
+
execSync18(`tmux send-keys -t ${JSON.stringify(entry.sessionName)} "claude --dangerously-skip-permissions" Enter`, { timeout: 3e3 });
|
|
31100
31128
|
await new Promise((r) => setTimeout(r, 3e3));
|
|
31101
|
-
|
|
31129
|
+
execSync18(`tmux send-keys -t ${JSON.stringify(entry.sessionName)} "/exe" Enter`, { timeout: 3e3 });
|
|
31102
31130
|
}
|
|
31103
31131
|
const updated = { ...entry, status: "active", activity: "Starting...", attached: false };
|
|
31104
31132
|
setViewingEmployee(updated);
|
|
@@ -31201,7 +31229,7 @@ function SessionsView({
|
|
|
31201
31229
|
const { listTmuxSessions: listTmuxSessions2, inTmux: inTmux2, capturePaneLines: capturePaneLines2, parseActivity: parseActivity2 } = await Promise.resolve().then(() => (init_tmux_status(), tmux_status_exports));
|
|
31202
31230
|
const { getCoordinatorName: getCoordinatorName2, isCoordinatorRole: isCoordinatorRole2, loadEmployees: loadEmployees2 } = await Promise.resolve().then(() => (init_employees(), employees_exports));
|
|
31203
31231
|
const { isExeSession: isExeSession2 } = await Promise.resolve().then(() => (init_tmux_routing(), tmux_routing_exports));
|
|
31204
|
-
const { execSync:
|
|
31232
|
+
const { execSync: execSync18 } = await import("child_process");
|
|
31205
31233
|
if (!inTmux2()) {
|
|
31206
31234
|
setTmuxAvailable(false);
|
|
31207
31235
|
setProjects([]);
|
|
@@ -31210,7 +31238,7 @@ function SessionsView({
|
|
|
31210
31238
|
setTmuxAvailable(true);
|
|
31211
31239
|
const attachedMap = /* @__PURE__ */ new Map();
|
|
31212
31240
|
try {
|
|
31213
|
-
const out =
|
|
31241
|
+
const out = execSync18("tmux list-sessions -F '#{session_name}:#{session_attached}' 2>/dev/null", {
|
|
31214
31242
|
encoding: "utf8",
|
|
31215
31243
|
timeout: 3e3
|
|
31216
31244
|
});
|
|
@@ -32246,8 +32274,8 @@ function upsertConversation(conversations, platform, senderId, message) {
|
|
|
32246
32274
|
async function loadGatewayConfig() {
|
|
32247
32275
|
const state = { running: false, port: 3100, adapters: [], agents: [], gatewayUrl: "" };
|
|
32248
32276
|
try {
|
|
32249
|
-
const { execSync:
|
|
32250
|
-
const ps =
|
|
32277
|
+
const { execSync: execSync18 } = await import("child_process");
|
|
32278
|
+
const ps = execSync18("pgrep -f exe-gateway 2>/dev/null", { encoding: "utf8", timeout: 3e3 });
|
|
32251
32279
|
state.running = ps.trim().length > 0;
|
|
32252
32280
|
} catch {
|
|
32253
32281
|
state.running = false;
|
|
@@ -32724,10 +32752,10 @@ var init_Gateway = __esm({
|
|
|
32724
32752
|
});
|
|
32725
32753
|
|
|
32726
32754
|
// src/tui/utils/agent-status.ts
|
|
32727
|
-
import { execSync as
|
|
32755
|
+
import { execSync as execSync17 } from "child_process";
|
|
32728
32756
|
function getAgentStatus(agentId) {
|
|
32729
32757
|
try {
|
|
32730
|
-
const sessions =
|
|
32758
|
+
const sessions = execSync17("tmux list-sessions -F '#{session_name}' 2>/dev/null", {
|
|
32731
32759
|
encoding: "utf8",
|
|
32732
32760
|
timeout: 2e3
|
|
32733
32761
|
}).trim().split("\n");
|
|
@@ -32738,7 +32766,7 @@ function getAgentStatus(agentId) {
|
|
|
32738
32766
|
return /^\d?-/.test(suffix) || /^\d+$/.test(suffix);
|
|
32739
32767
|
});
|
|
32740
32768
|
if (!agentSession) return { label: "offline", color: "gray" };
|
|
32741
|
-
const pane =
|
|
32769
|
+
const pane = execSync17(`tmux capture-pane -t "${agentSession}" -p 2>/dev/null | tail -3`, {
|
|
32742
32770
|
encoding: "utf8",
|
|
32743
32771
|
timeout: 2e3
|
|
32744
32772
|
});
|
|
@@ -33661,8 +33689,8 @@ function SettingsView({ onBack }) {
|
|
|
33661
33689
|
};
|
|
33662
33690
|
});
|
|
33663
33691
|
try {
|
|
33664
|
-
const { execSync:
|
|
33665
|
-
|
|
33692
|
+
const { execSync: execSync18 } = await import("child_process");
|
|
33693
|
+
execSync18("curl -s --max-time 1 http://localhost:11434/api/tags", { timeout: 2e3 });
|
|
33666
33694
|
providerList.push({ name: "Ollama", configured: true, detail: "localhost:11434" });
|
|
33667
33695
|
} catch {
|
|
33668
33696
|
providerList.push({ name: "Ollama", configured: false, detail: "not running" });
|
|
@@ -36458,10 +36486,10 @@ async function runClaudeUninstall(flags = []) {
|
|
|
36458
36486
|
}
|
|
36459
36487
|
}
|
|
36460
36488
|
try {
|
|
36461
|
-
const { execSync:
|
|
36489
|
+
const { execSync: execSync18 } = await import("child_process");
|
|
36462
36490
|
const findExeBin3 = () => {
|
|
36463
36491
|
try {
|
|
36464
|
-
return
|
|
36492
|
+
return execSync18(process.platform === "win32" ? "where exe-os" : "which exe-os", { encoding: "utf8" }).trim();
|
|
36465
36493
|
} catch {
|
|
36466
36494
|
return null;
|
|
36467
36495
|
}
|
|
@@ -117,6 +117,9 @@ var init_config = __esm({
|
|
|
117
117
|
autoInstall: false,
|
|
118
118
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
119
119
|
},
|
|
120
|
+
support: {
|
|
121
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
122
|
+
},
|
|
120
123
|
orchestration: {
|
|
121
124
|
phase: "phase_1_coo",
|
|
122
125
|
phaseSetBy: "default"
|
package/dist/bin/exe-agent.js
CHANGED
|
@@ -101,6 +101,9 @@ var init_config = __esm({
|
|
|
101
101
|
autoInstall: false,
|
|
102
102
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
103
103
|
},
|
|
104
|
+
support: {
|
|
105
|
+
bugReportEndpoint: "https://askexe.com/v1/support/bug-reports"
|
|
106
|
+
},
|
|
104
107
|
orchestration: {
|
|
105
108
|
phase: "phase_1_coo",
|
|
106
109
|
phaseSetBy: "default"
|
|
@@ -1372,7 +1375,7 @@ var PLATFORM_PROCEDURES = [
|
|
|
1372
1375
|
title: "Customer patch triage \u2014 upstream bug vs customization",
|
|
1373
1376
|
domain: "support",
|
|
1374
1377
|
priority: "p0",
|
|
1375
|
-
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
1378
|
+
content: "When an agent encounters a suspected Exe OS bug, update breakage, MCP/tool failure, installer issue, memory/orchestration defect, or customer-local patch need, it MUST use create_bug_report. Do this before or alongside any local workaround so the report reaches AskExe support directly via the customer's license. Do NOT ask the founder for permission to file a required bug report. If create_bug_report is deferred/lazy-loaded, load it and call it. If it is unavailable in the live MCP surface, report 'create_bug_report unavailable in this session' and save a local report in exe/output \u2014 never claim the tool does not exist unless the live MCP surface was checked. Classify first: upstream_bug = reproducible exe-os/platform defect; customer_customization = identity, behavior, procedure, config, branding, workflow preference that belongs in customer-owned layers; emergency_hotfix = temporary local patch. For upstream bugs/emergency hotfixes include version, repro steps, expected/actual, files changed, workaround, and local diff summary. Avoid permanent platform-code patches unless founder approves; if a hotfix is unavoidable, document it in the bug report and re-check after npm update."
|
|
1376
1379
|
},
|
|
1377
1380
|
// --- Operations ---
|
|
1378
1381
|
{
|