@askexenow/exe-os 0.8.83 → 0.8.86
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/backfill-conversations.js +746 -595
- package/dist/bin/backfill-responses.js +745 -594
- package/dist/bin/backfill-vectors.js +312 -226
- package/dist/bin/cleanup-stale-review-tasks.js +154 -21
- package/dist/bin/cli.js +14678 -12676
- package/dist/bin/exe-agent-config.js +242 -0
- package/dist/bin/exe-agent.js +100 -91
- package/dist/bin/exe-assign.js +1003 -854
- package/dist/bin/exe-boot.js +1420 -485
- package/dist/bin/exe-call.js +10 -0
- package/dist/bin/exe-cloud.js +29 -6
- package/dist/bin/exe-dispatch.js +572 -271
- package/dist/bin/exe-doctor.js +403 -6
- package/dist/bin/exe-export-behaviors.js +175 -72
- package/dist/bin/exe-forget.js +102 -3
- package/dist/bin/exe-gateway.js +796 -292
- package/dist/bin/exe-healthcheck.js +134 -1
- package/dist/bin/exe-heartbeat.js +172 -36
- package/dist/bin/exe-kill.js +175 -72
- package/dist/bin/exe-launch-agent.js +189 -76
- package/dist/bin/exe-link.js +927 -82
- package/dist/bin/exe-new-employee.js +60 -8
- package/dist/bin/exe-pending-messages.js +151 -19
- package/dist/bin/exe-pending-notifications.js +97 -2
- package/dist/bin/exe-pending-reviews.js +155 -22
- package/dist/bin/exe-rename.js +564 -23
- package/dist/bin/exe-review.js +231 -73
- package/dist/bin/exe-search.js +995 -228
- package/dist/bin/exe-session-cleanup.js +4930 -1664
- package/dist/bin/exe-settings.js +20 -5
- package/dist/bin/exe-start-codex.js +2598 -0
- package/dist/bin/exe-start.sh +15 -3
- package/dist/bin/exe-status.js +154 -21
- package/dist/bin/exe-team.js +97 -2
- package/dist/bin/git-sweep.js +1180 -363
- package/dist/bin/graph-backfill.js +175 -72
- package/dist/bin/graph-export.js +175 -72
- package/dist/bin/install.js +60 -7
- package/dist/bin/list-providers.js +1 -0
- package/dist/bin/scan-tasks.js +1185 -367
- package/dist/bin/setup.js +914 -270
- package/dist/bin/shard-migrate.js +175 -72
- package/dist/bin/update.js +1 -0
- package/dist/bin/wiki-sync.js +175 -72
- package/dist/gateway/index.js +792 -285
- package/dist/hooks/bug-report-worker.js +445 -135
- package/dist/hooks/commit-complete.js +1178 -361
- package/dist/hooks/error-recall.js +994 -228
- package/dist/hooks/ingest-worker.js +1799 -1234
- package/dist/hooks/ingest.js +3 -0
- package/dist/hooks/instructions-loaded.js +707 -97
- package/dist/hooks/notification.js +699 -89
- package/dist/hooks/post-compact.js +757 -109
- package/dist/hooks/pre-compact.js +1061 -244
- package/dist/hooks/pre-tool-use.js +787 -130
- package/dist/hooks/prompt-ingest-worker.js +242 -101
- package/dist/hooks/prompt-submit.js +1121 -299
- package/dist/hooks/response-ingest-worker.js +242 -101
- package/dist/hooks/session-end.js +4063 -397
- package/dist/hooks/session-start.js +1071 -254
- package/dist/hooks/stop.js +768 -120
- package/dist/hooks/subagent-stop.js +757 -109
- package/dist/hooks/summary-worker.js +1706 -1011
- package/dist/index.js +1821 -1098
- package/dist/lib/agent-config.js +167 -0
- package/dist/lib/cloud-sync.js +932 -88
- package/dist/lib/consolidation.js +2 -1
- package/dist/lib/database.js +642 -87
- package/dist/lib/db-daemon-client.js +503 -0
- package/dist/lib/device-registry.js +547 -7
- package/dist/lib/embedder.js +14 -28
- package/dist/lib/employee-templates.js +84 -74
- package/dist/lib/employees.js +9 -0
- package/dist/lib/exe-daemon-client.js +16 -29
- package/dist/lib/exe-daemon.js +2733 -1575
- package/dist/lib/hybrid-search.js +995 -228
- package/dist/lib/identity.js +87 -67
- package/dist/lib/keychain.js +9 -1
- package/dist/lib/messaging.js +103 -40
- package/dist/lib/reminders.js +91 -74
- package/dist/lib/runtime-table.js +16 -0
- package/dist/lib/schedules.js +96 -2
- package/dist/lib/session-wrappers.js +22 -0
- package/dist/lib/skill-learning.js +103 -85
- package/dist/lib/store.js +234 -73
- package/dist/lib/tasks.js +348 -134
- package/dist/lib/tmux-routing.js +422 -208
- package/dist/lib/token-spend.js +273 -0
- package/dist/lib/ws-client.js +11 -0
- package/dist/mcp/server.js +5742 -696
- package/dist/mcp/tools/complete-reminder.js +94 -77
- package/dist/mcp/tools/create-reminder.js +94 -77
- package/dist/mcp/tools/create-task.js +375 -152
- package/dist/mcp/tools/deactivate-behavior.js +95 -77
- package/dist/mcp/tools/list-reminders.js +94 -77
- package/dist/mcp/tools/list-tasks.js +99 -31
- package/dist/mcp/tools/send-message.js +108 -45
- package/dist/mcp/tools/update-task.js +162 -77
- package/dist/runtime/index.js +1075 -258
- package/dist/tui/App.js +1333 -506
- package/package.json +6 -1
- package/src/commands/exe/agent-config.md +27 -0
- package/src/commands/exe/cc-doctor.md +10 -0
package/dist/bin/exe-call.js
CHANGED
|
@@ -107,6 +107,7 @@ __export(employees_exports, {
|
|
|
107
107
|
DEFAULT_COORDINATOR_TEMPLATE_NAME: () => DEFAULT_COORDINATOR_TEMPLATE_NAME,
|
|
108
108
|
EMPLOYEES_PATH: () => EMPLOYEES_PATH,
|
|
109
109
|
addEmployee: () => addEmployee,
|
|
110
|
+
baseAgentName: () => baseAgentName,
|
|
110
111
|
canCoordinate: () => canCoordinate,
|
|
111
112
|
getCoordinatorEmployee: () => getCoordinatorEmployee,
|
|
112
113
|
getCoordinatorName: () => getCoordinatorName,
|
|
@@ -203,6 +204,14 @@ function hasRole(agentName, role) {
|
|
|
203
204
|
const emp = getEmployee(employees, agentName);
|
|
204
205
|
return emp ? emp.role.toLowerCase() === role.toLowerCase() : false;
|
|
205
206
|
}
|
|
207
|
+
function baseAgentName(name, employees) {
|
|
208
|
+
const match = name.match(/^([a-zA-Z]+)\d+$/);
|
|
209
|
+
if (!match) return name;
|
|
210
|
+
const base = match[1];
|
|
211
|
+
const roster = employees ?? loadEmployeesSync();
|
|
212
|
+
if (getEmployee(roster, base)) return base;
|
|
213
|
+
return name;
|
|
214
|
+
}
|
|
206
215
|
function isMultiInstance(agentName, employees) {
|
|
207
216
|
const roster = employees ?? loadEmployeesSync();
|
|
208
217
|
const emp = getEmployee(roster, agentName);
|
|
@@ -1080,6 +1089,7 @@ import { realpathSync } from "fs";
|
|
|
1080
1089
|
import { fileURLToPath } from "url";
|
|
1081
1090
|
function isMainModule(importMetaUrl) {
|
|
1082
1091
|
if (process.argv[1] == null) return false;
|
|
1092
|
+
if (process.argv[1].includes("mcp/server")) return false;
|
|
1083
1093
|
try {
|
|
1084
1094
|
const scriptPath = realpathSync(process.argv[1]);
|
|
1085
1095
|
const modulePath = realpathSync(fileURLToPath(importMetaUrl));
|
package/dist/bin/exe-cloud.js
CHANGED
|
@@ -46,12 +46,20 @@ async function getMasterKey() {
|
|
|
46
46
|
}
|
|
47
47
|
const keyPath = getKeyPath();
|
|
48
48
|
if (!existsSync(keyPath)) {
|
|
49
|
+
process.stderr.write(
|
|
50
|
+
`[keychain] Key not found at ${keyPath} (HOME=${os.homedir()}, EXE_OS_DIR=${process.env.EXE_OS_DIR ?? "unset"})
|
|
51
|
+
`
|
|
52
|
+
);
|
|
49
53
|
return null;
|
|
50
54
|
}
|
|
51
55
|
try {
|
|
52
56
|
const content = await readFile(keyPath, "utf-8");
|
|
53
57
|
return Buffer.from(content.trim(), "base64");
|
|
54
|
-
} catch {
|
|
58
|
+
} catch (err) {
|
|
59
|
+
process.stderr.write(
|
|
60
|
+
`[keychain] Key read failed at ${keyPath}: ${err instanceof Error ? err.message : String(err)}
|
|
61
|
+
`
|
|
62
|
+
);
|
|
55
63
|
return null;
|
|
56
64
|
}
|
|
57
65
|
}
|
|
@@ -720,6 +728,19 @@ MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEeHztAMOpR/ZMh+rWuOASjEZ54CGY
|
|
|
720
728
|
}
|
|
721
729
|
});
|
|
722
730
|
|
|
731
|
+
// src/lib/crdt-sync.ts
|
|
732
|
+
import * as Y from "yjs";
|
|
733
|
+
import { readFileSync as readFileSync4, writeFileSync as writeFileSync3, existsSync as existsSync5, mkdirSync as mkdirSync2, unlinkSync as unlinkSync2 } from "fs";
|
|
734
|
+
import path5 from "path";
|
|
735
|
+
import { homedir } from "os";
|
|
736
|
+
var DEFAULT_STATE_PATH;
|
|
737
|
+
var init_crdt_sync = __esm({
|
|
738
|
+
"src/lib/crdt-sync.ts"() {
|
|
739
|
+
"use strict";
|
|
740
|
+
DEFAULT_STATE_PATH = path5.join(homedir(), ".exe-os", "crdt-state.bin");
|
|
741
|
+
}
|
|
742
|
+
});
|
|
743
|
+
|
|
723
744
|
// src/bin/exe-cloud.ts
|
|
724
745
|
init_keychain();
|
|
725
746
|
init_config();
|
|
@@ -745,6 +766,7 @@ import { realpathSync } from "fs";
|
|
|
745
766
|
import { fileURLToPath } from "url";
|
|
746
767
|
function isMainModule(importMetaUrl) {
|
|
747
768
|
if (process.argv[1] == null) return false;
|
|
769
|
+
if (process.argv[1].includes("mcp/server")) return false;
|
|
748
770
|
try {
|
|
749
771
|
const scriptPath = realpathSync(process.argv[1]);
|
|
750
772
|
const modulePath = realpathSync(fileURLToPath(importMetaUrl));
|
|
@@ -756,10 +778,10 @@ function isMainModule(importMetaUrl) {
|
|
|
756
778
|
|
|
757
779
|
// src/lib/cloud-sync.ts
|
|
758
780
|
init_database();
|
|
759
|
-
import { readFileSync as
|
|
781
|
+
import { readFileSync as readFileSync5, writeFileSync as writeFileSync4, existsSync as existsSync6, readdirSync, mkdirSync as mkdirSync3, appendFileSync, unlinkSync as unlinkSync3, openSync, closeSync } from "fs";
|
|
760
782
|
import crypto3 from "crypto";
|
|
761
|
-
import
|
|
762
|
-
import { homedir } from "os";
|
|
783
|
+
import path6 from "path";
|
|
784
|
+
import { homedir as homedir2 } from "os";
|
|
763
785
|
|
|
764
786
|
// src/lib/crypto.ts
|
|
765
787
|
import crypto2 from "crypto";
|
|
@@ -770,9 +792,10 @@ import { brotliCompressSync, brotliDecompressSync, constants } from "zlib";
|
|
|
770
792
|
// src/lib/cloud-sync.ts
|
|
771
793
|
init_license();
|
|
772
794
|
init_config();
|
|
795
|
+
init_crdt_sync();
|
|
773
796
|
init_employees();
|
|
774
797
|
var LOCALHOST_PATTERNS = /^(localhost|127\.0\.0\.1|\[::1\])$/i;
|
|
775
|
-
var ROSTER_LOCK_PATH =
|
|
798
|
+
var ROSTER_LOCK_PATH = path6.join(EXE_AI_DIR, "roster-merge.lock");
|
|
776
799
|
function assertSecureEndpoint(endpoint) {
|
|
777
800
|
if (endpoint.startsWith("https://")) return;
|
|
778
801
|
if (endpoint.startsWith("http://")) {
|
|
@@ -787,7 +810,7 @@ function assertSecureEndpoint(endpoint) {
|
|
|
787
810
|
);
|
|
788
811
|
}
|
|
789
812
|
}
|
|
790
|
-
var ROSTER_DELETIONS_PATH =
|
|
813
|
+
var ROSTER_DELETIONS_PATH = path6.join(EXE_AI_DIR, "roster-deletions.json");
|
|
791
814
|
|
|
792
815
|
// src/bin/exe-cloud.ts
|
|
793
816
|
var BAR = "\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550";
|