@askexenow/exe-os 0.9.89 → 0.9.90
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 +44 -23
- 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 +44 -23
- 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
package/dist/bin/scan-tasks.js
CHANGED
|
@@ -7900,6 +7900,19 @@ var init_platform_procedures = __esm({
|
|
|
7900
7900
|
priority: "p1",
|
|
7901
7901
|
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."
|
|
7902
7902
|
},
|
|
7903
|
+
// --- Updates and deployment ---
|
|
7904
|
+
{
|
|
7905
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
7906
|
+
domain: "operations",
|
|
7907
|
+
priority: "p0",
|
|
7908
|
+
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.'
|
|
7909
|
+
},
|
|
7910
|
+
{
|
|
7911
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
7912
|
+
domain: "operations",
|
|
7913
|
+
priority: "p1",
|
|
7914
|
+
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."
|
|
7915
|
+
},
|
|
7903
7916
|
// --- Hierarchy and dispatch ---
|
|
7904
7917
|
{
|
|
7905
7918
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -7970,6 +7983,20 @@ var init_platform_procedures = __esm({
|
|
|
7970
7983
|
priority: "p1",
|
|
7971
7984
|
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."
|
|
7972
7985
|
},
|
|
7986
|
+
// --- Platform vs Customer ownership ---
|
|
7987
|
+
{
|
|
7988
|
+
title: "What the platform provides vs what you customize",
|
|
7989
|
+
domain: "architecture",
|
|
7990
|
+
priority: "p0",
|
|
7991
|
+
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."
|
|
7992
|
+
},
|
|
7993
|
+
// --- Updates ---
|
|
7994
|
+
{
|
|
7995
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
7996
|
+
domain: "operations",
|
|
7997
|
+
priority: "p0",
|
|
7998
|
+
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."
|
|
7999
|
+
},
|
|
7973
8000
|
// --- Operations ---
|
|
7974
8001
|
{
|
|
7975
8002
|
title: "Managers must supervise deployed workers",
|
|
@@ -8029,58 +8056,52 @@ var init_platform_procedures = __esm({
|
|
|
8029
8056
|
},
|
|
8030
8057
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
8031
8058
|
{
|
|
8032
|
-
title: "MCP
|
|
8059
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
8033
8060
|
domain: "tool-use",
|
|
8034
|
-
priority: "
|
|
8035
|
-
content:
|
|
8036
|
-
},
|
|
8037
|
-
{
|
|
8038
|
-
title: "MCP tools \u2014 task orchestration",
|
|
8039
|
-
domain: "tool-use",
|
|
8040
|
-
priority: "p1",
|
|
8041
|
-
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."
|
|
8061
|
+
priority: "p0",
|
|
8062
|
+
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.'
|
|
8042
8063
|
},
|
|
8043
8064
|
{
|
|
8044
|
-
title: "MCP tools \u2014
|
|
8065
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
8045
8066
|
domain: "tool-use",
|
|
8046
8067
|
priority: "p1",
|
|
8047
|
-
content: "
|
|
8068
|
+
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.`
|
|
8048
8069
|
},
|
|
8049
8070
|
{
|
|
8050
|
-
title: "MCP tools \u2014
|
|
8071
|
+
title: "MCP tools \u2014 task orchestration",
|
|
8051
8072
|
domain: "tool-use",
|
|
8052
8073
|
priority: "p1",
|
|
8053
|
-
content: "
|
|
8074
|
+
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.'
|
|
8054
8075
|
},
|
|
8055
8076
|
{
|
|
8056
|
-
title: "MCP tools \u2014
|
|
8077
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
8057
8078
|
domain: "tool-use",
|
|
8058
8079
|
priority: "p1",
|
|
8059
|
-
content: "
|
|
8080
|
+
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.'
|
|
8060
8081
|
},
|
|
8061
8082
|
{
|
|
8062
|
-
title: "MCP tools \u2014
|
|
8083
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
8063
8084
|
domain: "tool-use",
|
|
8064
8085
|
priority: "p1",
|
|
8065
|
-
content: "
|
|
8086
|
+
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.`
|
|
8066
8087
|
},
|
|
8067
8088
|
{
|
|
8068
|
-
title: "MCP tools \u2014
|
|
8089
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
8069
8090
|
domain: "tool-use",
|
|
8070
8091
|
priority: "p1",
|
|
8071
|
-
content: "
|
|
8092
|
+
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.'
|
|
8072
8093
|
},
|
|
8073
8094
|
{
|
|
8074
|
-
title: "MCP tools \u2014
|
|
8095
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
8075
8096
|
domain: "tool-use",
|
|
8076
8097
|
priority: "p1",
|
|
8077
|
-
content: "
|
|
8098
|
+
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.'
|
|
8078
8099
|
},
|
|
8079
8100
|
{
|
|
8080
|
-
title: "MCP tools \u2014
|
|
8101
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
8081
8102
|
domain: "tool-use",
|
|
8082
8103
|
priority: "p1",
|
|
8083
|
-
content: "
|
|
8104
|
+
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.'
|
|
8084
8105
|
}
|
|
8085
8106
|
];
|
|
8086
8107
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
package/dist/bin/setup.js
CHANGED
|
@@ -6523,6 +6523,19 @@ var init_platform_procedures = __esm({
|
|
|
6523
6523
|
priority: "p1",
|
|
6524
6524
|
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."
|
|
6525
6525
|
},
|
|
6526
|
+
// --- Updates and deployment ---
|
|
6527
|
+
{
|
|
6528
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
6529
|
+
domain: "operations",
|
|
6530
|
+
priority: "p0",
|
|
6531
|
+
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.'
|
|
6532
|
+
},
|
|
6533
|
+
{
|
|
6534
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
6535
|
+
domain: "operations",
|
|
6536
|
+
priority: "p1",
|
|
6537
|
+
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."
|
|
6538
|
+
},
|
|
6526
6539
|
// --- Hierarchy and dispatch ---
|
|
6527
6540
|
{
|
|
6528
6541
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -6593,6 +6606,20 @@ var init_platform_procedures = __esm({
|
|
|
6593
6606
|
priority: "p1",
|
|
6594
6607
|
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."
|
|
6595
6608
|
},
|
|
6609
|
+
// --- Platform vs Customer ownership ---
|
|
6610
|
+
{
|
|
6611
|
+
title: "What the platform provides vs what you customize",
|
|
6612
|
+
domain: "architecture",
|
|
6613
|
+
priority: "p0",
|
|
6614
|
+
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."
|
|
6615
|
+
},
|
|
6616
|
+
// --- Updates ---
|
|
6617
|
+
{
|
|
6618
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
6619
|
+
domain: "operations",
|
|
6620
|
+
priority: "p0",
|
|
6621
|
+
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."
|
|
6622
|
+
},
|
|
6596
6623
|
// --- Operations ---
|
|
6597
6624
|
{
|
|
6598
6625
|
title: "Managers must supervise deployed workers",
|
|
@@ -6652,58 +6679,52 @@ var init_platform_procedures = __esm({
|
|
|
6652
6679
|
},
|
|
6653
6680
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
6654
6681
|
{
|
|
6655
|
-
title: "MCP
|
|
6682
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
6656
6683
|
domain: "tool-use",
|
|
6657
|
-
priority: "
|
|
6658
|
-
content:
|
|
6659
|
-
},
|
|
6660
|
-
{
|
|
6661
|
-
title: "MCP tools \u2014 task orchestration",
|
|
6662
|
-
domain: "tool-use",
|
|
6663
|
-
priority: "p1",
|
|
6664
|
-
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."
|
|
6684
|
+
priority: "p0",
|
|
6685
|
+
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.'
|
|
6665
6686
|
},
|
|
6666
6687
|
{
|
|
6667
|
-
title: "MCP tools \u2014
|
|
6688
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
6668
6689
|
domain: "tool-use",
|
|
6669
6690
|
priority: "p1",
|
|
6670
|
-
content: "
|
|
6691
|
+
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.`
|
|
6671
6692
|
},
|
|
6672
6693
|
{
|
|
6673
|
-
title: "MCP tools \u2014
|
|
6694
|
+
title: "MCP tools \u2014 task orchestration",
|
|
6674
6695
|
domain: "tool-use",
|
|
6675
6696
|
priority: "p1",
|
|
6676
|
-
content: "
|
|
6697
|
+
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.'
|
|
6677
6698
|
},
|
|
6678
6699
|
{
|
|
6679
|
-
title: "MCP tools \u2014
|
|
6700
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
6680
6701
|
domain: "tool-use",
|
|
6681
6702
|
priority: "p1",
|
|
6682
|
-
content: "
|
|
6703
|
+
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.'
|
|
6683
6704
|
},
|
|
6684
6705
|
{
|
|
6685
|
-
title: "MCP tools \u2014
|
|
6706
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
6686
6707
|
domain: "tool-use",
|
|
6687
6708
|
priority: "p1",
|
|
6688
|
-
content: "
|
|
6709
|
+
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.`
|
|
6689
6710
|
},
|
|
6690
6711
|
{
|
|
6691
|
-
title: "MCP tools \u2014
|
|
6712
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
6692
6713
|
domain: "tool-use",
|
|
6693
6714
|
priority: "p1",
|
|
6694
|
-
content: "
|
|
6715
|
+
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.'
|
|
6695
6716
|
},
|
|
6696
6717
|
{
|
|
6697
|
-
title: "MCP tools \u2014
|
|
6718
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
6698
6719
|
domain: "tool-use",
|
|
6699
6720
|
priority: "p1",
|
|
6700
|
-
content: "
|
|
6721
|
+
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.'
|
|
6701
6722
|
},
|
|
6702
6723
|
{
|
|
6703
|
-
title: "MCP tools \u2014
|
|
6724
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
6704
6725
|
domain: "tool-use",
|
|
6705
6726
|
priority: "p1",
|
|
6706
|
-
content: "
|
|
6727
|
+
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.'
|
|
6707
6728
|
}
|
|
6708
6729
|
];
|
|
6709
6730
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
|
@@ -3341,6 +3341,19 @@ var init_platform_procedures = __esm({
|
|
|
3341
3341
|
priority: "p1",
|
|
3342
3342
|
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."
|
|
3343
3343
|
},
|
|
3344
|
+
// --- Updates and deployment ---
|
|
3345
|
+
{
|
|
3346
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
3347
|
+
domain: "operations",
|
|
3348
|
+
priority: "p0",
|
|
3349
|
+
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.'
|
|
3350
|
+
},
|
|
3351
|
+
{
|
|
3352
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
3353
|
+
domain: "operations",
|
|
3354
|
+
priority: "p1",
|
|
3355
|
+
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."
|
|
3356
|
+
},
|
|
3344
3357
|
// --- Hierarchy and dispatch ---
|
|
3345
3358
|
{
|
|
3346
3359
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -3411,6 +3424,20 @@ var init_platform_procedures = __esm({
|
|
|
3411
3424
|
priority: "p1",
|
|
3412
3425
|
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."
|
|
3413
3426
|
},
|
|
3427
|
+
// --- Platform vs Customer ownership ---
|
|
3428
|
+
{
|
|
3429
|
+
title: "What the platform provides vs what you customize",
|
|
3430
|
+
domain: "architecture",
|
|
3431
|
+
priority: "p0",
|
|
3432
|
+
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."
|
|
3433
|
+
},
|
|
3434
|
+
// --- Updates ---
|
|
3435
|
+
{
|
|
3436
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
3437
|
+
domain: "operations",
|
|
3438
|
+
priority: "p0",
|
|
3439
|
+
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."
|
|
3440
|
+
},
|
|
3414
3441
|
// --- Operations ---
|
|
3415
3442
|
{
|
|
3416
3443
|
title: "Managers must supervise deployed workers",
|
|
@@ -3470,58 +3497,52 @@ var init_platform_procedures = __esm({
|
|
|
3470
3497
|
},
|
|
3471
3498
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
3472
3499
|
{
|
|
3473
|
-
title: "MCP
|
|
3500
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
3474
3501
|
domain: "tool-use",
|
|
3475
|
-
priority: "
|
|
3476
|
-
content:
|
|
3477
|
-
},
|
|
3478
|
-
{
|
|
3479
|
-
title: "MCP tools \u2014 task orchestration",
|
|
3480
|
-
domain: "tool-use",
|
|
3481
|
-
priority: "p1",
|
|
3482
|
-
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."
|
|
3502
|
+
priority: "p0",
|
|
3503
|
+
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.'
|
|
3483
3504
|
},
|
|
3484
3505
|
{
|
|
3485
|
-
title: "MCP tools \u2014
|
|
3506
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
3486
3507
|
domain: "tool-use",
|
|
3487
3508
|
priority: "p1",
|
|
3488
|
-
content: "
|
|
3509
|
+
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.`
|
|
3489
3510
|
},
|
|
3490
3511
|
{
|
|
3491
|
-
title: "MCP tools \u2014
|
|
3512
|
+
title: "MCP tools \u2014 task orchestration",
|
|
3492
3513
|
domain: "tool-use",
|
|
3493
3514
|
priority: "p1",
|
|
3494
|
-
content: "
|
|
3515
|
+
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.'
|
|
3495
3516
|
},
|
|
3496
3517
|
{
|
|
3497
|
-
title: "MCP tools \u2014
|
|
3518
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
3498
3519
|
domain: "tool-use",
|
|
3499
3520
|
priority: "p1",
|
|
3500
|
-
content: "
|
|
3521
|
+
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.'
|
|
3501
3522
|
},
|
|
3502
3523
|
{
|
|
3503
|
-
title: "MCP tools \u2014
|
|
3524
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
3504
3525
|
domain: "tool-use",
|
|
3505
3526
|
priority: "p1",
|
|
3506
|
-
content: "
|
|
3527
|
+
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.`
|
|
3507
3528
|
},
|
|
3508
3529
|
{
|
|
3509
|
-
title: "MCP tools \u2014
|
|
3530
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
3510
3531
|
domain: "tool-use",
|
|
3511
3532
|
priority: "p1",
|
|
3512
|
-
content: "
|
|
3533
|
+
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.'
|
|
3513
3534
|
},
|
|
3514
3535
|
{
|
|
3515
|
-
title: "MCP tools \u2014
|
|
3536
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
3516
3537
|
domain: "tool-use",
|
|
3517
3538
|
priority: "p1",
|
|
3518
|
-
content: "
|
|
3539
|
+
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.'
|
|
3519
3540
|
},
|
|
3520
3541
|
{
|
|
3521
|
-
title: "MCP tools \u2014
|
|
3542
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
3522
3543
|
domain: "tool-use",
|
|
3523
3544
|
priority: "p1",
|
|
3524
|
-
content: "
|
|
3545
|
+
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.'
|
|
3525
3546
|
}
|
|
3526
3547
|
];
|
|
3527
3548
|
PLATFORM_PROCEDURE_TITLES = new Set(
|