@askexenow/exe-os 0.9.89 → 0.9.91
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/deploy/stack-manifests/v0.9.json +48 -9
- package/dist/bin/agentic-ontology-backfill.js +44 -23
- package/dist/bin/agentic-reflection-backfill.js +44 -23
- package/dist/bin/agentic-semantic-label.js +44 -23
- package/dist/bin/backfill-conversations.js +44 -23
- package/dist/bin/backfill-responses.js +44 -23
- package/dist/bin/backfill-vectors.js +44 -23
- package/dist/bin/bulk-sync-postgres.js +44 -23
- package/dist/bin/cleanup-stale-review-tasks.js +44 -23
- package/dist/bin/cli.js +44 -23
- package/dist/bin/exe-agent.js +44 -23
- package/dist/bin/exe-assign.js +44 -23
- package/dist/bin/exe-boot.js +44 -23
- package/dist/bin/exe-call.js +44 -23
- package/dist/bin/exe-cloud.js +44 -23
- package/dist/bin/exe-dispatch.js +44 -23
- package/dist/bin/exe-doctor.js +44 -23
- package/dist/bin/exe-export-behaviors.js +44 -23
- package/dist/bin/exe-forget.js +44 -23
- package/dist/bin/exe-gateway.js +44 -23
- package/dist/bin/exe-heartbeat.js +44 -23
- package/dist/bin/exe-kill.js +44 -23
- package/dist/bin/exe-launch-agent.js +44 -23
- package/dist/bin/exe-new-employee.js +44 -23
- package/dist/bin/exe-pending-messages.js +44 -23
- package/dist/bin/exe-pending-notifications.js +44 -23
- package/dist/bin/exe-pending-reviews.js +44 -23
- package/dist/bin/exe-rename.js +44 -23
- package/dist/bin/exe-review.js +44 -23
- package/dist/bin/exe-search.js +44 -23
- package/dist/bin/exe-session-cleanup.js +44 -23
- package/dist/bin/exe-start-codex.js +44 -23
- package/dist/bin/exe-start-opencode.js +44 -23
- package/dist/bin/exe-status.js +44 -23
- package/dist/bin/exe-team.js +44 -23
- package/dist/bin/git-sweep.js +44 -23
- package/dist/bin/graph-backfill.js +44 -23
- package/dist/bin/graph-export.js +44 -23
- package/dist/bin/intercom-check.js +44 -23
- package/dist/bin/scan-tasks.js +44 -23
- package/dist/bin/setup.js +44 -23
- package/dist/bin/shard-migrate.js +44 -23
- package/dist/gateway/index.js +44 -23
- package/dist/hooks/bug-report-worker.js +44 -23
- package/dist/hooks/codex-stop-task-finalizer.js +44 -23
- package/dist/hooks/commit-complete.js +44 -23
- package/dist/hooks/error-recall.js +44 -23
- package/dist/hooks/ingest.js +44 -23
- package/dist/hooks/instructions-loaded.js +44 -23
- package/dist/hooks/notification.js +44 -23
- package/dist/hooks/post-compact.js +44 -23
- package/dist/hooks/post-tool-combined.js +44 -23
- package/dist/hooks/pre-compact.js +44 -23
- package/dist/hooks/pre-tool-use.js +44 -23
- package/dist/hooks/prompt-submit.js +44 -23
- package/dist/hooks/session-end.js +44 -23
- package/dist/hooks/session-start.js +44 -23
- package/dist/hooks/stop.js +44 -23
- package/dist/hooks/subagent-stop.js +44 -23
- package/dist/hooks/summary-worker.js +44 -23
- package/dist/index.js +44 -23
- package/dist/lib/employee-templates.js +44 -23
- package/dist/lib/exe-daemon.js +51 -25
- package/dist/lib/hybrid-search.js +44 -23
- package/dist/lib/schedules.js +44 -23
- package/dist/lib/store.js +44 -23
- package/dist/mcp/server.js +51 -25
- package/dist/runtime/index.js +44 -23
- package/dist/tui/App.js +44 -23
- package/package.json +1 -1
- package/stack.release.json +4 -4
|
@@ -7894,6 +7894,19 @@ var init_platform_procedures = __esm({
|
|
|
7894
7894
|
priority: "p1",
|
|
7895
7895
|
content: "exe-os supports three tools: Claude Code (Anthropic), Codex (OpenAI), and OpenCode (open source, 75+ providers). Each agent can use a different tool and model. COO uses set_agent_config MCP tool to view or change settings. Call with no args to show all agents. Call with agent_id + runtime + model to change. Users can also run `exe-os settings` from terminal for interactive arrow-key selection."
|
|
7896
7896
|
},
|
|
7897
|
+
// --- Updates and deployment ---
|
|
7898
|
+
{
|
|
7899
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
7900
|
+
domain: "operations",
|
|
7901
|
+
priority: "p0",
|
|
7902
|
+
content: 'Updating exe-os is a two-step process. Step 1 \u2014 update the CLI: `npm install -g @askexenow/exe-os@latest` (gets bug fixes, new platform procedures, new tools). Step 2 \u2014 update the VPS stack (if applicable): `exe-os stack-update --target <version> --yes` (pulls new Docker images for exed, wiki, CRM, gateway). Step 1 MUST happen before Step 2 \u2014 the stack-update command itself may have bug fixes. After updating, restart the daemon: the deploy script handles this automatically. Check update availability: `exe-os update --check` or config(action="check_update"). Agents should NEVER run npm install or stack-update autonomously \u2014 always confirm with the user first.'
|
|
7903
|
+
},
|
|
7904
|
+
{
|
|
7905
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
7906
|
+
domain: "operations",
|
|
7907
|
+
priority: "p1",
|
|
7908
|
+
content: "Fresh install: `npm install -g @askexenow/exe-os` then run `exe` to start the setup wizard. The wizard prompts for: encryption passphrase (creates master key), license key (exe_sk_* from AskExe team), COO name, and optional team members. No license key = free tier (1 employee, 5K memories). After setup: hooks install automatically, MCP server registers in ~/.claude.json, daemon starts. Verify health: run `exe-os healthcheck` or use mcp_ping() tool."
|
|
7909
|
+
},
|
|
7897
7910
|
// --- Hierarchy and dispatch ---
|
|
7898
7911
|
{
|
|
7899
7912
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -7964,6 +7977,20 @@ var init_platform_procedures = __esm({
|
|
|
7964
7977
|
priority: "p1",
|
|
7965
7978
|
content: "Once per session (COO boot only, never repeat), call list_my_feature_requests to check if any previously filed feature requests have been shipped by AskExe. If any request has status 'shipped' with a shipped_version, surface it to the founder immediately: '\u{1F680} N feature(s) shipped \u2014 run exe-os update to get version X.Y.Z'. This is a one-time check at boot, not a recurring poll. If no requests exist or none are shipped, skip silently. If the MCP tool is unavailable or the network call fails, skip silently \u2014 this is informational, not blocking."
|
|
7966
7979
|
},
|
|
7980
|
+
// --- Platform vs Customer ownership ---
|
|
7981
|
+
{
|
|
7982
|
+
title: "What the platform provides vs what you customize",
|
|
7983
|
+
domain: "architecture",
|
|
7984
|
+
priority: "p0",
|
|
7985
|
+
content: "Exe OS has two layers. PLATFORM layer (shipped in code, updated via npm): platform procedures, default identity templates, MCP tools, tool gating, schema migrations, daemon behavior. You get improvements automatically on update. CUSTOMER layer (yours, stored locally): agent identities (exe.md files), behaviors, company procedures, config.json, wiki content, CRM data, memory. These are NEVER overwritten by updates. Identity templates are stamped once at /exe-new-employee \u2014 after that the file is yours. If the platform ships a better template, you can compare yours against the default with getTemplate() and merge what you want. Company procedures (company_procedure tool) layer ON TOP of platform procedures \u2014 both are injected, platform first. Behaviors are always yours. Config is always yours. The platform will never modify your local data."
|
|
7986
|
+
},
|
|
7987
|
+
// --- Updates ---
|
|
7988
|
+
{
|
|
7989
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
7990
|
+
domain: "operations",
|
|
7991
|
+
priority: "p0",
|
|
7992
|
+
content: "When bug fixes or features are available (surfaced at boot via list_my_bug_reports/list_my_feature_requests), update in two steps: (1) CLI: `npm install -g @askexenow/exe-os@latest` \u2014 this updates the local tools, MCP server, and bundled stack manifest. Must happen first so the stack-update tool itself has the latest fixes. (2) Stack (VPS only): `exe-os stack-update --target <version> --yes` \u2014 pulls new Docker images and restarts services. The target version comes from the stack manifest bundled with the CLI. Always update CLI before stack. Use `exe-os update --check` to see if a CLI update is available. Use `exe-os stack-update --check` to see stack status. For non-interactive/SSH: use `--yes` or `-y` flag. Never run `npm install -g` inside a tmux agent session \u2014 have the founder or COO do it from the host shell."
|
|
7993
|
+
},
|
|
7967
7994
|
// --- Operations ---
|
|
7968
7995
|
{
|
|
7969
7996
|
title: "Managers must supervise deployed workers",
|
|
@@ -8023,58 +8050,52 @@ var init_platform_procedures = __esm({
|
|
|
8023
8050
|
},
|
|
8024
8051
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
8025
8052
|
{
|
|
8026
|
-
title: "MCP
|
|
8053
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
8027
8054
|
domain: "tool-use",
|
|
8028
|
-
priority: "
|
|
8029
|
-
content:
|
|
8030
|
-
},
|
|
8031
|
-
{
|
|
8032
|
-
title: "MCP tools \u2014 task orchestration",
|
|
8033
|
-
domain: "tool-use",
|
|
8034
|
-
priority: "p1",
|
|
8035
|
-
content: "create_task: dispatch work to an employee (auto-spawns session). The ONLY dispatch path. list_tasks: query tasks by status, assignee, project. get_task: fetch full task details by ID. update_task: change status (in_progress, done, blocked, cancelled) + add result summary. close_task: finalize a reviewed task (COO only). checkpoint_task: save progress state for crash recovery. resume_employee: re-spawn an employee session for an existing task."
|
|
8055
|
+
priority: "p0",
|
|
8056
|
+
content: 'exe-os MCP tools come in two surfaces depending on EXE_MCP_TOOL_SURFACE config. Consolidated (19 tools): action-based dispatch \u2014 memory(action="recall"), task(action="create"), etc. Legacy (108 tools): one tool per operation \u2014 recall_my_memory, create_task, etc. Both surfaces have identical functionality. Use whichever tool names are available in your session. If you see domain tools (memory, task, config, etc.), use the action parameter. If you see specific tools (recall_my_memory, create_task, etc.), call them directly.'
|
|
8036
8057
|
},
|
|
8037
8058
|
{
|
|
8038
|
-
title: "MCP tools \u2014
|
|
8059
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
8039
8060
|
domain: "tool-use",
|
|
8040
8061
|
priority: "p1",
|
|
8041
|
-
content: "
|
|
8062
|
+
content: `memory(action="recall") / recall_my_memory: search your own memories (semantic + FTS). memory(action="ask_team") / ask_team_memory: search a colleague's memories by agent name. memory(action="store") / store_memory: persist a memory. memory(action="commit") / commit_memory: high-importance memory that survives consolidation. Requires summary. memory(action="search") / search_everything: unified search across memories, tasks, entities, conversations. memory(action="session_context") / get_session_context: temporal memory window. Requires session_id + target_timestamp. memory(action="consolidate") / consolidate_memories: merge duplicate/related memories. memory(action="cardinality") / get_memory_cardinality: count memories per agent. decision(action="store") / store_decision: record an architectural decision (domain, decision, rationale). decision(action="get") / get_decision: retrieve a past decision by domain or query.`
|
|
8042
8063
|
},
|
|
8043
8064
|
{
|
|
8044
|
-
title: "MCP tools \u2014
|
|
8065
|
+
title: "MCP tools \u2014 task orchestration",
|
|
8045
8066
|
domain: "tool-use",
|
|
8046
8067
|
priority: "p1",
|
|
8047
|
-
content: "
|
|
8068
|
+
content: 'task(action="create") / create_task: dispatch work (title, assigned_to, context). The ONLY dispatch path. Auto-spawns session. task(action="list") / list_tasks: query tasks by status, assignee, project. task(action="get") / get_task: fetch full task details by task_id. task(action="update") / update_task: change status (in_progress, done, blocked, cancelled) + result summary. task(action="close") / close_task: finalize a reviewed task (COO only). task(action="checkpoint") / checkpoint_task: save progress state for crash recovery. task(action="resume") / resume_employee: re-spawn an employee session for an existing task.'
|
|
8048
8069
|
},
|
|
8049
8070
|
{
|
|
8050
|
-
title: "MCP tools \u2014
|
|
8071
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
8051
8072
|
domain: "tool-use",
|
|
8052
8073
|
priority: "p1",
|
|
8053
|
-
content: "
|
|
8074
|
+
content: 'graph(action="query_relationships") / query_relationships: find connections between entities. graph(action="entity_neighbors") / get_entity_neighbors: explore direct connections. graph(action="hot_entities") / get_hot_entities: most-referenced entities. graph(action="stats") / get_graph_stats: entity/relationship counts. graph(action="export") / export_graph: export for visualization (output_path, format). graph(action="merge_entities") / merge_entities: deduplicate entities (source_id, target_id). graph(action="similar_trajectories") / find_similar_trajectories: match patterns to past solutions.'
|
|
8054
8075
|
},
|
|
8055
8076
|
{
|
|
8056
|
-
title: "MCP tools \u2014
|
|
8077
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
8057
8078
|
domain: "tool-use",
|
|
8058
8079
|
priority: "p1",
|
|
8059
|
-
content: "
|
|
8080
|
+
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") / create_bug_report: file a bug report to AskExe (title, description, severity). support(action="create_feature") / create_feature_request: file a feature request. support(action="health") / support_health: check support server readiness. support(action="triage_bug"): triage a bug (id, triage_notes). AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
|
|
8060
8081
|
},
|
|
8061
8082
|
{
|
|
8062
|
-
title: "MCP tools \u2014
|
|
8083
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
8063
8084
|
domain: "tool-use",
|
|
8064
8085
|
priority: "p1",
|
|
8065
|
-
content: "
|
|
8086
|
+
content: 'message(action="send") / send_message: send context to another agent (NOT for actionable work \u2014 use task). message(action="acknowledge") / acknowledge_messages: mark messages as read. reminder(action="create") / create_reminder: set a reminder (text, due_date). Shown in boot brief. reminder(action="list") / list_reminders: view pending reminders. reminder(action="complete") / complete_reminder: mark done (reminder_id). session(action="events") / get_session_events: view session event log (session_id). session(action="last_response") / get_last_assistant_response: get most recent response.'
|
|
8066
8087
|
},
|
|
8067
8088
|
{
|
|
8068
|
-
title: "MCP tools \u2014
|
|
8089
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
8069
8090
|
domain: "tool-use",
|
|
8070
8091
|
priority: "p1",
|
|
8071
|
-
content: "
|
|
8092
|
+
content: 'wiki(action="list") / list_wiki_pages: list wiki pages (workspace). wiki(action="get") / get_wiki_page: read a wiki page (workspace, title or document_id). document(action="ingest") / ingest_document: import a file as memory chunks (workspace_id, filename, chunks). document(action="list") / list_documents: browse documents (workspace_id). document(action="purge") / purge_document: remove a document (document_id). document(action="set_importance") / set_document_importance: adjust chunk scores. document(action="rerank") / rerank_documents: re-score relevance (query, candidates). crm(action="list_people|get_person|list_tables|describe_table"): CRM records from exe-db. raw_data(action="list_sources|query|get"): read raw landing-pad events. gateway(action="send_whatsapp") / send_whatsapp: send WhatsApp message (recipients, message). gateway(action="query_conversations") / query_conversations: search conversations across channels. gateway(action="query_company_brain") / query_company_brain: unified RAG across company knowledge.'
|
|
8072
8093
|
},
|
|
8073
8094
|
{
|
|
8074
|
-
title: "MCP tools \u2014
|
|
8095
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
8075
8096
|
domain: "tool-use",
|
|
8076
8097
|
priority: "p1",
|
|
8077
|
-
content: "
|
|
8098
|
+
content: 'config(action="list_employees"): view roster. config(action="agent_spend"): token usage per agent. config(action="daemon_health"): check exed status. config(action="license_status"): check license. config(action="cloud_sync"): force sync. config(action="memory_audit"): health check (dupes, null vectors). config(action="run_consolidation"): trigger memory consolidation. config(action="company_procedure", subaction="store|list|deactivate"): manage company procedures. config(action="global_procedure"): list all procedures (platform + company). config(action="create_trigger|list_triggers"): scheduled agent jobs. config(action="export_orchestration|import_orchestration"): portable org state. diagnostics(action="healthcheck|doctor|status_brief|check_update|cloud_status"): system diagnostics. mcp_ping(): daemon health + license status + tool usage stats.'
|
|
8078
8099
|
}
|
|
8079
8100
|
];
|
|
8080
8101
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
|
@@ -4114,6 +4114,19 @@ var init_platform_procedures = __esm({
|
|
|
4114
4114
|
priority: "p1",
|
|
4115
4115
|
content: "exe-os supports three tools: Claude Code (Anthropic), Codex (OpenAI), and OpenCode (open source, 75+ providers). Each agent can use a different tool and model. COO uses set_agent_config MCP tool to view or change settings. Call with no args to show all agents. Call with agent_id + runtime + model to change. Users can also run `exe-os settings` from terminal for interactive arrow-key selection."
|
|
4116
4116
|
},
|
|
4117
|
+
// --- Updates and deployment ---
|
|
4118
|
+
{
|
|
4119
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4120
|
+
domain: "operations",
|
|
4121
|
+
priority: "p0",
|
|
4122
|
+
content: 'Updating exe-os is a two-step process. Step 1 \u2014 update the CLI: `npm install -g @askexenow/exe-os@latest` (gets bug fixes, new platform procedures, new tools). Step 2 \u2014 update the VPS stack (if applicable): `exe-os stack-update --target <version> --yes` (pulls new Docker images for exed, wiki, CRM, gateway). Step 1 MUST happen before Step 2 \u2014 the stack-update command itself may have bug fixes. After updating, restart the daemon: the deploy script handles this automatically. Check update availability: `exe-os update --check` or config(action="check_update"). Agents should NEVER run npm install or stack-update autonomously \u2014 always confirm with the user first.'
|
|
4123
|
+
},
|
|
4124
|
+
{
|
|
4125
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4126
|
+
domain: "operations",
|
|
4127
|
+
priority: "p1",
|
|
4128
|
+
content: "Fresh install: `npm install -g @askexenow/exe-os` then run `exe` to start the setup wizard. The wizard prompts for: encryption passphrase (creates master key), license key (exe_sk_* from AskExe team), COO name, and optional team members. No license key = free tier (1 employee, 5K memories). After setup: hooks install automatically, MCP server registers in ~/.claude.json, daemon starts. Verify health: run `exe-os healthcheck` or use mcp_ping() tool."
|
|
4129
|
+
},
|
|
4117
4130
|
// --- Hierarchy and dispatch ---
|
|
4118
4131
|
{
|
|
4119
4132
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4184,6 +4197,20 @@ var init_platform_procedures = __esm({
|
|
|
4184
4197
|
priority: "p1",
|
|
4185
4198
|
content: "Once per session (COO boot only, never repeat), call list_my_feature_requests to check if any previously filed feature requests have been shipped by AskExe. If any request has status 'shipped' with a shipped_version, surface it to the founder immediately: '\u{1F680} N feature(s) shipped \u2014 run exe-os update to get version X.Y.Z'. This is a one-time check at boot, not a recurring poll. If no requests exist or none are shipped, skip silently. If the MCP tool is unavailable or the network call fails, skip silently \u2014 this is informational, not blocking."
|
|
4186
4199
|
},
|
|
4200
|
+
// --- Platform vs Customer ownership ---
|
|
4201
|
+
{
|
|
4202
|
+
title: "What the platform provides vs what you customize",
|
|
4203
|
+
domain: "architecture",
|
|
4204
|
+
priority: "p0",
|
|
4205
|
+
content: "Exe OS has two layers. PLATFORM layer (shipped in code, updated via npm): platform procedures, default identity templates, MCP tools, tool gating, schema migrations, daemon behavior. You get improvements automatically on update. CUSTOMER layer (yours, stored locally): agent identities (exe.md files), behaviors, company procedures, config.json, wiki content, CRM data, memory. These are NEVER overwritten by updates. Identity templates are stamped once at /exe-new-employee \u2014 after that the file is yours. If the platform ships a better template, you can compare yours against the default with getTemplate() and merge what you want. Company procedures (company_procedure tool) layer ON TOP of platform procedures \u2014 both are injected, platform first. Behaviors are always yours. Config is always yours. The platform will never modify your local data."
|
|
4206
|
+
},
|
|
4207
|
+
// --- Updates ---
|
|
4208
|
+
{
|
|
4209
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4210
|
+
domain: "operations",
|
|
4211
|
+
priority: "p0",
|
|
4212
|
+
content: "When bug fixes or features are available (surfaced at boot via list_my_bug_reports/list_my_feature_requests), update in two steps: (1) CLI: `npm install -g @askexenow/exe-os@latest` \u2014 this updates the local tools, MCP server, and bundled stack manifest. Must happen first so the stack-update tool itself has the latest fixes. (2) Stack (VPS only): `exe-os stack-update --target <version> --yes` \u2014 pulls new Docker images and restarts services. The target version comes from the stack manifest bundled with the CLI. Always update CLI before stack. Use `exe-os update --check` to see if a CLI update is available. Use `exe-os stack-update --check` to see stack status. For non-interactive/SSH: use `--yes` or `-y` flag. Never run `npm install -g` inside a tmux agent session \u2014 have the founder or COO do it from the host shell."
|
|
4213
|
+
},
|
|
4187
4214
|
// --- Operations ---
|
|
4188
4215
|
{
|
|
4189
4216
|
title: "Managers must supervise deployed workers",
|
|
@@ -4243,58 +4270,52 @@ var init_platform_procedures = __esm({
|
|
|
4243
4270
|
},
|
|
4244
4271
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4245
4272
|
{
|
|
4246
|
-
title: "MCP
|
|
4273
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4247
4274
|
domain: "tool-use",
|
|
4248
|
-
priority: "
|
|
4249
|
-
content:
|
|
4250
|
-
},
|
|
4251
|
-
{
|
|
4252
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4253
|
-
domain: "tool-use",
|
|
4254
|
-
priority: "p1",
|
|
4255
|
-
content: "create_task: dispatch work to an employee (auto-spawns session). The ONLY dispatch path. list_tasks: query tasks by status, assignee, project. get_task: fetch full task details by ID. update_task: change status (in_progress, done, blocked, cancelled) + add result summary. close_task: finalize a reviewed task (COO only). checkpoint_task: save progress state for crash recovery. resume_employee: re-spawn an employee session for an existing task."
|
|
4275
|
+
priority: "p0",
|
|
4276
|
+
content: 'exe-os MCP tools come in two surfaces depending on EXE_MCP_TOOL_SURFACE config. Consolidated (19 tools): action-based dispatch \u2014 memory(action="recall"), task(action="create"), etc. Legacy (108 tools): one tool per operation \u2014 recall_my_memory, create_task, etc. Both surfaces have identical functionality. Use whichever tool names are available in your session. If you see domain tools (memory, task, config, etc.), use the action parameter. If you see specific tools (recall_my_memory, create_task, etc.), call them directly.'
|
|
4256
4277
|
},
|
|
4257
4278
|
{
|
|
4258
|
-
title: "MCP tools \u2014
|
|
4279
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4259
4280
|
domain: "tool-use",
|
|
4260
4281
|
priority: "p1",
|
|
4261
|
-
content: "
|
|
4282
|
+
content: `memory(action="recall") / recall_my_memory: search your own memories (semantic + FTS). memory(action="ask_team") / ask_team_memory: search a colleague's memories by agent name. memory(action="store") / store_memory: persist a memory. memory(action="commit") / commit_memory: high-importance memory that survives consolidation. Requires summary. memory(action="search") / search_everything: unified search across memories, tasks, entities, conversations. memory(action="session_context") / get_session_context: temporal memory window. Requires session_id + target_timestamp. memory(action="consolidate") / consolidate_memories: merge duplicate/related memories. memory(action="cardinality") / get_memory_cardinality: count memories per agent. decision(action="store") / store_decision: record an architectural decision (domain, decision, rationale). decision(action="get") / get_decision: retrieve a past decision by domain or query.`
|
|
4262
4283
|
},
|
|
4263
4284
|
{
|
|
4264
|
-
title: "MCP tools \u2014
|
|
4285
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4265
4286
|
domain: "tool-use",
|
|
4266
4287
|
priority: "p1",
|
|
4267
|
-
content: "
|
|
4288
|
+
content: 'task(action="create") / create_task: dispatch work (title, assigned_to, context). The ONLY dispatch path. Auto-spawns session. task(action="list") / list_tasks: query tasks by status, assignee, project. task(action="get") / get_task: fetch full task details by task_id. task(action="update") / update_task: change status (in_progress, done, blocked, cancelled) + result summary. task(action="close") / close_task: finalize a reviewed task (COO only). task(action="checkpoint") / checkpoint_task: save progress state for crash recovery. task(action="resume") / resume_employee: re-spawn an employee session for an existing task.'
|
|
4268
4289
|
},
|
|
4269
4290
|
{
|
|
4270
|
-
title: "MCP tools \u2014
|
|
4291
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4271
4292
|
domain: "tool-use",
|
|
4272
4293
|
priority: "p1",
|
|
4273
|
-
content: "
|
|
4294
|
+
content: 'graph(action="query_relationships") / query_relationships: find connections between entities. graph(action="entity_neighbors") / get_entity_neighbors: explore direct connections. graph(action="hot_entities") / get_hot_entities: most-referenced entities. graph(action="stats") / get_graph_stats: entity/relationship counts. graph(action="export") / export_graph: export for visualization (output_path, format). graph(action="merge_entities") / merge_entities: deduplicate entities (source_id, target_id). graph(action="similar_trajectories") / find_similar_trajectories: match patterns to past solutions.'
|
|
4274
4295
|
},
|
|
4275
4296
|
{
|
|
4276
|
-
title: "MCP tools \u2014
|
|
4297
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4277
4298
|
domain: "tool-use",
|
|
4278
4299
|
priority: "p1",
|
|
4279
|
-
content: "
|
|
4300
|
+
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") / create_bug_report: file a bug report to AskExe (title, description, severity). support(action="create_feature") / create_feature_request: file a feature request. support(action="health") / support_health: check support server readiness. support(action="triage_bug"): triage a bug (id, triage_notes). AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
|
|
4280
4301
|
},
|
|
4281
4302
|
{
|
|
4282
|
-
title: "MCP tools \u2014
|
|
4303
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4283
4304
|
domain: "tool-use",
|
|
4284
4305
|
priority: "p1",
|
|
4285
|
-
content: "
|
|
4306
|
+
content: 'message(action="send") / send_message: send context to another agent (NOT for actionable work \u2014 use task). message(action="acknowledge") / acknowledge_messages: mark messages as read. reminder(action="create") / create_reminder: set a reminder (text, due_date). Shown in boot brief. reminder(action="list") / list_reminders: view pending reminders. reminder(action="complete") / complete_reminder: mark done (reminder_id). session(action="events") / get_session_events: view session event log (session_id). session(action="last_response") / get_last_assistant_response: get most recent response.'
|
|
4286
4307
|
},
|
|
4287
4308
|
{
|
|
4288
|
-
title: "MCP tools \u2014
|
|
4309
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4289
4310
|
domain: "tool-use",
|
|
4290
4311
|
priority: "p1",
|
|
4291
|
-
content: "
|
|
4312
|
+
content: 'wiki(action="list") / list_wiki_pages: list wiki pages (workspace). wiki(action="get") / get_wiki_page: read a wiki page (workspace, title or document_id). document(action="ingest") / ingest_document: import a file as memory chunks (workspace_id, filename, chunks). document(action="list") / list_documents: browse documents (workspace_id). document(action="purge") / purge_document: remove a document (document_id). document(action="set_importance") / set_document_importance: adjust chunk scores. document(action="rerank") / rerank_documents: re-score relevance (query, candidates). crm(action="list_people|get_person|list_tables|describe_table"): CRM records from exe-db. raw_data(action="list_sources|query|get"): read raw landing-pad events. gateway(action="send_whatsapp") / send_whatsapp: send WhatsApp message (recipients, message). gateway(action="query_conversations") / query_conversations: search conversations across channels. gateway(action="query_company_brain") / query_company_brain: unified RAG across company knowledge.'
|
|
4292
4313
|
},
|
|
4293
4314
|
{
|
|
4294
|
-
title: "MCP tools \u2014
|
|
4315
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4295
4316
|
domain: "tool-use",
|
|
4296
4317
|
priority: "p1",
|
|
4297
|
-
content: "
|
|
4318
|
+
content: 'config(action="list_employees"): view roster. config(action="agent_spend"): token usage per agent. config(action="daemon_health"): check exed status. config(action="license_status"): check license. config(action="cloud_sync"): force sync. config(action="memory_audit"): health check (dupes, null vectors). config(action="run_consolidation"): trigger memory consolidation. config(action="company_procedure", subaction="store|list|deactivate"): manage company procedures. config(action="global_procedure"): list all procedures (platform + company). config(action="create_trigger|list_triggers"): scheduled agent jobs. config(action="export_orchestration|import_orchestration"): portable org state. diagnostics(action="healthcheck|doctor|status_brief|check_update|cloud_status"): system diagnostics. mcp_ping(): daemon health + license status + tool usage stats.'
|
|
4298
4319
|
}
|
|
4299
4320
|
];
|
|
4300
4321
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
package/dist/hooks/ingest.js
CHANGED
|
@@ -4290,6 +4290,19 @@ var init_platform_procedures = __esm({
|
|
|
4290
4290
|
priority: "p1",
|
|
4291
4291
|
content: "exe-os supports three tools: Claude Code (Anthropic), Codex (OpenAI), and OpenCode (open source, 75+ providers). Each agent can use a different tool and model. COO uses set_agent_config MCP tool to view or change settings. Call with no args to show all agents. Call with agent_id + runtime + model to change. Users can also run `exe-os settings` from terminal for interactive arrow-key selection."
|
|
4292
4292
|
},
|
|
4293
|
+
// --- Updates and deployment ---
|
|
4294
|
+
{
|
|
4295
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4296
|
+
domain: "operations",
|
|
4297
|
+
priority: "p0",
|
|
4298
|
+
content: 'Updating exe-os is a two-step process. Step 1 \u2014 update the CLI: `npm install -g @askexenow/exe-os@latest` (gets bug fixes, new platform procedures, new tools). Step 2 \u2014 update the VPS stack (if applicable): `exe-os stack-update --target <version> --yes` (pulls new Docker images for exed, wiki, CRM, gateway). Step 1 MUST happen before Step 2 \u2014 the stack-update command itself may have bug fixes. After updating, restart the daemon: the deploy script handles this automatically. Check update availability: `exe-os update --check` or config(action="check_update"). Agents should NEVER run npm install or stack-update autonomously \u2014 always confirm with the user first.'
|
|
4299
|
+
},
|
|
4300
|
+
{
|
|
4301
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4302
|
+
domain: "operations",
|
|
4303
|
+
priority: "p1",
|
|
4304
|
+
content: "Fresh install: `npm install -g @askexenow/exe-os` then run `exe` to start the setup wizard. The wizard prompts for: encryption passphrase (creates master key), license key (exe_sk_* from AskExe team), COO name, and optional team members. No license key = free tier (1 employee, 5K memories). After setup: hooks install automatically, MCP server registers in ~/.claude.json, daemon starts. Verify health: run `exe-os healthcheck` or use mcp_ping() tool."
|
|
4305
|
+
},
|
|
4293
4306
|
// --- Hierarchy and dispatch ---
|
|
4294
4307
|
{
|
|
4295
4308
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4360,6 +4373,20 @@ var init_platform_procedures = __esm({
|
|
|
4360
4373
|
priority: "p1",
|
|
4361
4374
|
content: "Once per session (COO boot only, never repeat), call list_my_feature_requests to check if any previously filed feature requests have been shipped by AskExe. If any request has status 'shipped' with a shipped_version, surface it to the founder immediately: '\u{1F680} N feature(s) shipped \u2014 run exe-os update to get version X.Y.Z'. This is a one-time check at boot, not a recurring poll. If no requests exist or none are shipped, skip silently. If the MCP tool is unavailable or the network call fails, skip silently \u2014 this is informational, not blocking."
|
|
4362
4375
|
},
|
|
4376
|
+
// --- Platform vs Customer ownership ---
|
|
4377
|
+
{
|
|
4378
|
+
title: "What the platform provides vs what you customize",
|
|
4379
|
+
domain: "architecture",
|
|
4380
|
+
priority: "p0",
|
|
4381
|
+
content: "Exe OS has two layers. PLATFORM layer (shipped in code, updated via npm): platform procedures, default identity templates, MCP tools, tool gating, schema migrations, daemon behavior. You get improvements automatically on update. CUSTOMER layer (yours, stored locally): agent identities (exe.md files), behaviors, company procedures, config.json, wiki content, CRM data, memory. These are NEVER overwritten by updates. Identity templates are stamped once at /exe-new-employee \u2014 after that the file is yours. If the platform ships a better template, you can compare yours against the default with getTemplate() and merge what you want. Company procedures (company_procedure tool) layer ON TOP of platform procedures \u2014 both are injected, platform first. Behaviors are always yours. Config is always yours. The platform will never modify your local data."
|
|
4382
|
+
},
|
|
4383
|
+
// --- Updates ---
|
|
4384
|
+
{
|
|
4385
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4386
|
+
domain: "operations",
|
|
4387
|
+
priority: "p0",
|
|
4388
|
+
content: "When bug fixes or features are available (surfaced at boot via list_my_bug_reports/list_my_feature_requests), update in two steps: (1) CLI: `npm install -g @askexenow/exe-os@latest` \u2014 this updates the local tools, MCP server, and bundled stack manifest. Must happen first so the stack-update tool itself has the latest fixes. (2) Stack (VPS only): `exe-os stack-update --target <version> --yes` \u2014 pulls new Docker images and restarts services. The target version comes from the stack manifest bundled with the CLI. Always update CLI before stack. Use `exe-os update --check` to see if a CLI update is available. Use `exe-os stack-update --check` to see stack status. For non-interactive/SSH: use `--yes` or `-y` flag. Never run `npm install -g` inside a tmux agent session \u2014 have the founder or COO do it from the host shell."
|
|
4389
|
+
},
|
|
4363
4390
|
// --- Operations ---
|
|
4364
4391
|
{
|
|
4365
4392
|
title: "Managers must supervise deployed workers",
|
|
@@ -4419,58 +4446,52 @@ var init_platform_procedures = __esm({
|
|
|
4419
4446
|
},
|
|
4420
4447
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4421
4448
|
{
|
|
4422
|
-
title: "MCP
|
|
4449
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4423
4450
|
domain: "tool-use",
|
|
4424
|
-
priority: "
|
|
4425
|
-
content:
|
|
4426
|
-
},
|
|
4427
|
-
{
|
|
4428
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4429
|
-
domain: "tool-use",
|
|
4430
|
-
priority: "p1",
|
|
4431
|
-
content: "create_task: dispatch work to an employee (auto-spawns session). The ONLY dispatch path. list_tasks: query tasks by status, assignee, project. get_task: fetch full task details by ID. update_task: change status (in_progress, done, blocked, cancelled) + add result summary. close_task: finalize a reviewed task (COO only). checkpoint_task: save progress state for crash recovery. resume_employee: re-spawn an employee session for an existing task."
|
|
4451
|
+
priority: "p0",
|
|
4452
|
+
content: 'exe-os MCP tools come in two surfaces depending on EXE_MCP_TOOL_SURFACE config. Consolidated (19 tools): action-based dispatch \u2014 memory(action="recall"), task(action="create"), etc. Legacy (108 tools): one tool per operation \u2014 recall_my_memory, create_task, etc. Both surfaces have identical functionality. Use whichever tool names are available in your session. If you see domain tools (memory, task, config, etc.), use the action parameter. If you see specific tools (recall_my_memory, create_task, etc.), call them directly.'
|
|
4432
4453
|
},
|
|
4433
4454
|
{
|
|
4434
|
-
title: "MCP tools \u2014
|
|
4455
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4435
4456
|
domain: "tool-use",
|
|
4436
4457
|
priority: "p1",
|
|
4437
|
-
content: "
|
|
4458
|
+
content: `memory(action="recall") / recall_my_memory: search your own memories (semantic + FTS). memory(action="ask_team") / ask_team_memory: search a colleague's memories by agent name. memory(action="store") / store_memory: persist a memory. memory(action="commit") / commit_memory: high-importance memory that survives consolidation. Requires summary. memory(action="search") / search_everything: unified search across memories, tasks, entities, conversations. memory(action="session_context") / get_session_context: temporal memory window. Requires session_id + target_timestamp. memory(action="consolidate") / consolidate_memories: merge duplicate/related memories. memory(action="cardinality") / get_memory_cardinality: count memories per agent. decision(action="store") / store_decision: record an architectural decision (domain, decision, rationale). decision(action="get") / get_decision: retrieve a past decision by domain or query.`
|
|
4438
4459
|
},
|
|
4439
4460
|
{
|
|
4440
|
-
title: "MCP tools \u2014
|
|
4461
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4441
4462
|
domain: "tool-use",
|
|
4442
4463
|
priority: "p1",
|
|
4443
|
-
content: "
|
|
4464
|
+
content: 'task(action="create") / create_task: dispatch work (title, assigned_to, context). The ONLY dispatch path. Auto-spawns session. task(action="list") / list_tasks: query tasks by status, assignee, project. task(action="get") / get_task: fetch full task details by task_id. task(action="update") / update_task: change status (in_progress, done, blocked, cancelled) + result summary. task(action="close") / close_task: finalize a reviewed task (COO only). task(action="checkpoint") / checkpoint_task: save progress state for crash recovery. task(action="resume") / resume_employee: re-spawn an employee session for an existing task.'
|
|
4444
4465
|
},
|
|
4445
4466
|
{
|
|
4446
|
-
title: "MCP tools \u2014
|
|
4467
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4447
4468
|
domain: "tool-use",
|
|
4448
4469
|
priority: "p1",
|
|
4449
|
-
content: "
|
|
4470
|
+
content: 'graph(action="query_relationships") / query_relationships: find connections between entities. graph(action="entity_neighbors") / get_entity_neighbors: explore direct connections. graph(action="hot_entities") / get_hot_entities: most-referenced entities. graph(action="stats") / get_graph_stats: entity/relationship counts. graph(action="export") / export_graph: export for visualization (output_path, format). graph(action="merge_entities") / merge_entities: deduplicate entities (source_id, target_id). graph(action="similar_trajectories") / find_similar_trajectories: match patterns to past solutions.'
|
|
4450
4471
|
},
|
|
4451
4472
|
{
|
|
4452
|
-
title: "MCP tools \u2014
|
|
4473
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4453
4474
|
domain: "tool-use",
|
|
4454
4475
|
priority: "p1",
|
|
4455
|
-
content: "
|
|
4476
|
+
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") / create_bug_report: file a bug report to AskExe (title, description, severity). support(action="create_feature") / create_feature_request: file a feature request. support(action="health") / support_health: check support server readiness. support(action="triage_bug"): triage a bug (id, triage_notes). AskExe-internal only. CRITICAL: triage uses triage_notes NOT notes.`
|
|
4456
4477
|
},
|
|
4457
4478
|
{
|
|
4458
|
-
title: "MCP tools \u2014
|
|
4479
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4459
4480
|
domain: "tool-use",
|
|
4460
4481
|
priority: "p1",
|
|
4461
|
-
content: "
|
|
4482
|
+
content: 'message(action="send") / send_message: send context to another agent (NOT for actionable work \u2014 use task). message(action="acknowledge") / acknowledge_messages: mark messages as read. reminder(action="create") / create_reminder: set a reminder (text, due_date). Shown in boot brief. reminder(action="list") / list_reminders: view pending reminders. reminder(action="complete") / complete_reminder: mark done (reminder_id). session(action="events") / get_session_events: view session event log (session_id). session(action="last_response") / get_last_assistant_response: get most recent response.'
|
|
4462
4483
|
},
|
|
4463
4484
|
{
|
|
4464
|
-
title: "MCP tools \u2014
|
|
4485
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4465
4486
|
domain: "tool-use",
|
|
4466
4487
|
priority: "p1",
|
|
4467
|
-
content: "
|
|
4488
|
+
content: 'wiki(action="list") / list_wiki_pages: list wiki pages (workspace). wiki(action="get") / get_wiki_page: read a wiki page (workspace, title or document_id). document(action="ingest") / ingest_document: import a file as memory chunks (workspace_id, filename, chunks). document(action="list") / list_documents: browse documents (workspace_id). document(action="purge") / purge_document: remove a document (document_id). document(action="set_importance") / set_document_importance: adjust chunk scores. document(action="rerank") / rerank_documents: re-score relevance (query, candidates). crm(action="list_people|get_person|list_tables|describe_table"): CRM records from exe-db. raw_data(action="list_sources|query|get"): read raw landing-pad events. gateway(action="send_whatsapp") / send_whatsapp: send WhatsApp message (recipients, message). gateway(action="query_conversations") / query_conversations: search conversations across channels. gateway(action="query_company_brain") / query_company_brain: unified RAG across company knowledge.'
|
|
4468
4489
|
},
|
|
4469
4490
|
{
|
|
4470
|
-
title: "MCP tools \u2014
|
|
4491
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4471
4492
|
domain: "tool-use",
|
|
4472
4493
|
priority: "p1",
|
|
4473
|
-
content: "
|
|
4494
|
+
content: 'config(action="list_employees"): view roster. config(action="agent_spend"): token usage per agent. config(action="daemon_health"): check exed status. config(action="license_status"): check license. config(action="cloud_sync"): force sync. config(action="memory_audit"): health check (dupes, null vectors). config(action="run_consolidation"): trigger memory consolidation. config(action="company_procedure", subaction="store|list|deactivate"): manage company procedures. config(action="global_procedure"): list all procedures (platform + company). config(action="create_trigger|list_triggers"): scheduled agent jobs. config(action="export_orchestration|import_orchestration"): portable org state. diagnostics(action="healthcheck|doctor|status_brief|check_update|cloud_status"): system diagnostics. mcp_ping(): daemon health + license status + tool usage stats.'
|
|
4474
4495
|
}
|
|
4475
4496
|
];
|
|
4476
4497
|
PLATFORM_PROCEDURE_TITLES = new Set(
|