@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/mcp/server.js
CHANGED
|
@@ -4760,6 +4760,19 @@ var init_platform_procedures = __esm({
|
|
|
4760
4760
|
priority: "p1",
|
|
4761
4761
|
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."
|
|
4762
4762
|
},
|
|
4763
|
+
// --- Updates and deployment ---
|
|
4764
|
+
{
|
|
4765
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4766
|
+
domain: "operations",
|
|
4767
|
+
priority: "p0",
|
|
4768
|
+
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.'
|
|
4769
|
+
},
|
|
4770
|
+
{
|
|
4771
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4772
|
+
domain: "operations",
|
|
4773
|
+
priority: "p1",
|
|
4774
|
+
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."
|
|
4775
|
+
},
|
|
4763
4776
|
// --- Hierarchy and dispatch ---
|
|
4764
4777
|
{
|
|
4765
4778
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4830,6 +4843,20 @@ var init_platform_procedures = __esm({
|
|
|
4830
4843
|
priority: "p1",
|
|
4831
4844
|
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."
|
|
4832
4845
|
},
|
|
4846
|
+
// --- Platform vs Customer ownership ---
|
|
4847
|
+
{
|
|
4848
|
+
title: "What the platform provides vs what you customize",
|
|
4849
|
+
domain: "architecture",
|
|
4850
|
+
priority: "p0",
|
|
4851
|
+
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."
|
|
4852
|
+
},
|
|
4853
|
+
// --- Updates ---
|
|
4854
|
+
{
|
|
4855
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4856
|
+
domain: "operations",
|
|
4857
|
+
priority: "p0",
|
|
4858
|
+
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."
|
|
4859
|
+
},
|
|
4833
4860
|
// --- Operations ---
|
|
4834
4861
|
{
|
|
4835
4862
|
title: "Managers must supervise deployed workers",
|
|
@@ -4889,58 +4916,52 @@ var init_platform_procedures = __esm({
|
|
|
4889
4916
|
},
|
|
4890
4917
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4891
4918
|
{
|
|
4892
|
-
title: "MCP
|
|
4919
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4893
4920
|
domain: "tool-use",
|
|
4894
|
-
priority: "
|
|
4895
|
-
content:
|
|
4896
|
-
},
|
|
4897
|
-
{
|
|
4898
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4899
|
-
domain: "tool-use",
|
|
4900
|
-
priority: "p1",
|
|
4901
|
-
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."
|
|
4921
|
+
priority: "p0",
|
|
4922
|
+
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.'
|
|
4902
4923
|
},
|
|
4903
4924
|
{
|
|
4904
|
-
title: "MCP tools \u2014
|
|
4925
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4905
4926
|
domain: "tool-use",
|
|
4906
4927
|
priority: "p1",
|
|
4907
|
-
content: "
|
|
4928
|
+
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.`
|
|
4908
4929
|
},
|
|
4909
4930
|
{
|
|
4910
|
-
title: "MCP tools \u2014
|
|
4931
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4911
4932
|
domain: "tool-use",
|
|
4912
4933
|
priority: "p1",
|
|
4913
|
-
content: "
|
|
4934
|
+
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.'
|
|
4914
4935
|
},
|
|
4915
4936
|
{
|
|
4916
|
-
title: "MCP tools \u2014
|
|
4937
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4917
4938
|
domain: "tool-use",
|
|
4918
4939
|
priority: "p1",
|
|
4919
|
-
content: "
|
|
4940
|
+
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.'
|
|
4920
4941
|
},
|
|
4921
4942
|
{
|
|
4922
|
-
title: "MCP tools \u2014
|
|
4943
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4923
4944
|
domain: "tool-use",
|
|
4924
4945
|
priority: "p1",
|
|
4925
|
-
content: "
|
|
4946
|
+
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.`
|
|
4926
4947
|
},
|
|
4927
4948
|
{
|
|
4928
|
-
title: "MCP tools \u2014
|
|
4949
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4929
4950
|
domain: "tool-use",
|
|
4930
4951
|
priority: "p1",
|
|
4931
|
-
content: "
|
|
4952
|
+
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.'
|
|
4932
4953
|
},
|
|
4933
4954
|
{
|
|
4934
|
-
title: "MCP tools \u2014
|
|
4955
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4935
4956
|
domain: "tool-use",
|
|
4936
4957
|
priority: "p1",
|
|
4937
|
-
content: "
|
|
4958
|
+
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.'
|
|
4938
4959
|
},
|
|
4939
4960
|
{
|
|
4940
|
-
title: "MCP tools \u2014
|
|
4961
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4941
4962
|
domain: "tool-use",
|
|
4942
4963
|
priority: "p1",
|
|
4943
|
-
content: "
|
|
4964
|
+
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.'
|
|
4944
4965
|
}
|
|
4945
4966
|
];
|
|
4946
4967
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
package/dist/runtime/index.js
CHANGED
|
@@ -7936,6 +7936,19 @@ var init_platform_procedures = __esm({
|
|
|
7936
7936
|
priority: "p1",
|
|
7937
7937
|
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."
|
|
7938
7938
|
},
|
|
7939
|
+
// --- Updates and deployment ---
|
|
7940
|
+
{
|
|
7941
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
7942
|
+
domain: "operations",
|
|
7943
|
+
priority: "p0",
|
|
7944
|
+
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.'
|
|
7945
|
+
},
|
|
7946
|
+
{
|
|
7947
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
7948
|
+
domain: "operations",
|
|
7949
|
+
priority: "p1",
|
|
7950
|
+
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."
|
|
7951
|
+
},
|
|
7939
7952
|
// --- Hierarchy and dispatch ---
|
|
7940
7953
|
{
|
|
7941
7954
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -8006,6 +8019,20 @@ var init_platform_procedures = __esm({
|
|
|
8006
8019
|
priority: "p1",
|
|
8007
8020
|
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."
|
|
8008
8021
|
},
|
|
8022
|
+
// --- Platform vs Customer ownership ---
|
|
8023
|
+
{
|
|
8024
|
+
title: "What the platform provides vs what you customize",
|
|
8025
|
+
domain: "architecture",
|
|
8026
|
+
priority: "p0",
|
|
8027
|
+
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."
|
|
8028
|
+
},
|
|
8029
|
+
// --- Updates ---
|
|
8030
|
+
{
|
|
8031
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
8032
|
+
domain: "operations",
|
|
8033
|
+
priority: "p0",
|
|
8034
|
+
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."
|
|
8035
|
+
},
|
|
8009
8036
|
// --- Operations ---
|
|
8010
8037
|
{
|
|
8011
8038
|
title: "Managers must supervise deployed workers",
|
|
@@ -8065,58 +8092,52 @@ var init_platform_procedures = __esm({
|
|
|
8065
8092
|
},
|
|
8066
8093
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
8067
8094
|
{
|
|
8068
|
-
title: "MCP
|
|
8095
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
8069
8096
|
domain: "tool-use",
|
|
8070
|
-
priority: "
|
|
8071
|
-
content:
|
|
8072
|
-
},
|
|
8073
|
-
{
|
|
8074
|
-
title: "MCP tools \u2014 task orchestration",
|
|
8075
|
-
domain: "tool-use",
|
|
8076
|
-
priority: "p1",
|
|
8077
|
-
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."
|
|
8097
|
+
priority: "p0",
|
|
8098
|
+
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.'
|
|
8078
8099
|
},
|
|
8079
8100
|
{
|
|
8080
|
-
title: "MCP tools \u2014
|
|
8101
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
8081
8102
|
domain: "tool-use",
|
|
8082
8103
|
priority: "p1",
|
|
8083
|
-
content: "
|
|
8104
|
+
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.`
|
|
8084
8105
|
},
|
|
8085
8106
|
{
|
|
8086
|
-
title: "MCP tools \u2014
|
|
8107
|
+
title: "MCP tools \u2014 task orchestration",
|
|
8087
8108
|
domain: "tool-use",
|
|
8088
8109
|
priority: "p1",
|
|
8089
|
-
content: "
|
|
8110
|
+
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.'
|
|
8090
8111
|
},
|
|
8091
8112
|
{
|
|
8092
|
-
title: "MCP tools \u2014
|
|
8113
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
8093
8114
|
domain: "tool-use",
|
|
8094
8115
|
priority: "p1",
|
|
8095
|
-
content: "
|
|
8116
|
+
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.'
|
|
8096
8117
|
},
|
|
8097
8118
|
{
|
|
8098
|
-
title: "MCP tools \u2014
|
|
8119
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
8099
8120
|
domain: "tool-use",
|
|
8100
8121
|
priority: "p1",
|
|
8101
|
-
content: "
|
|
8122
|
+
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.`
|
|
8102
8123
|
},
|
|
8103
8124
|
{
|
|
8104
|
-
title: "MCP tools \u2014
|
|
8125
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
8105
8126
|
domain: "tool-use",
|
|
8106
8127
|
priority: "p1",
|
|
8107
|
-
content: "
|
|
8128
|
+
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.'
|
|
8108
8129
|
},
|
|
8109
8130
|
{
|
|
8110
|
-
title: "MCP tools \u2014
|
|
8131
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
8111
8132
|
domain: "tool-use",
|
|
8112
8133
|
priority: "p1",
|
|
8113
|
-
content: "
|
|
8134
|
+
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.'
|
|
8114
8135
|
},
|
|
8115
8136
|
{
|
|
8116
|
-
title: "MCP tools \u2014
|
|
8137
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
8117
8138
|
domain: "tool-use",
|
|
8118
8139
|
priority: "p1",
|
|
8119
|
-
content: "
|
|
8140
|
+
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.'
|
|
8120
8141
|
}
|
|
8121
8142
|
];
|
|
8122
8143
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
package/dist/tui/App.js
CHANGED
|
@@ -8908,6 +8908,19 @@ var init_platform_procedures = __esm({
|
|
|
8908
8908
|
priority: "p1",
|
|
8909
8909
|
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."
|
|
8910
8910
|
},
|
|
8911
|
+
// --- Updates and deployment ---
|
|
8912
|
+
{
|
|
8913
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
8914
|
+
domain: "operations",
|
|
8915
|
+
priority: "p0",
|
|
8916
|
+
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.'
|
|
8917
|
+
},
|
|
8918
|
+
{
|
|
8919
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
8920
|
+
domain: "operations",
|
|
8921
|
+
priority: "p1",
|
|
8922
|
+
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."
|
|
8923
|
+
},
|
|
8911
8924
|
// --- Hierarchy and dispatch ---
|
|
8912
8925
|
{
|
|
8913
8926
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -8978,6 +8991,20 @@ var init_platform_procedures = __esm({
|
|
|
8978
8991
|
priority: "p1",
|
|
8979
8992
|
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."
|
|
8980
8993
|
},
|
|
8994
|
+
// --- Platform vs Customer ownership ---
|
|
8995
|
+
{
|
|
8996
|
+
title: "What the platform provides vs what you customize",
|
|
8997
|
+
domain: "architecture",
|
|
8998
|
+
priority: "p0",
|
|
8999
|
+
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."
|
|
9000
|
+
},
|
|
9001
|
+
// --- Updates ---
|
|
9002
|
+
{
|
|
9003
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
9004
|
+
domain: "operations",
|
|
9005
|
+
priority: "p0",
|
|
9006
|
+
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."
|
|
9007
|
+
},
|
|
8981
9008
|
// --- Operations ---
|
|
8982
9009
|
{
|
|
8983
9010
|
title: "Managers must supervise deployed workers",
|
|
@@ -9037,58 +9064,52 @@ var init_platform_procedures = __esm({
|
|
|
9037
9064
|
},
|
|
9038
9065
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
9039
9066
|
{
|
|
9040
|
-
title: "MCP
|
|
9067
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
9041
9068
|
domain: "tool-use",
|
|
9042
|
-
priority: "
|
|
9043
|
-
content:
|
|
9044
|
-
},
|
|
9045
|
-
{
|
|
9046
|
-
title: "MCP tools \u2014 task orchestration",
|
|
9047
|
-
domain: "tool-use",
|
|
9048
|
-
priority: "p1",
|
|
9049
|
-
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."
|
|
9069
|
+
priority: "p0",
|
|
9070
|
+
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.'
|
|
9050
9071
|
},
|
|
9051
9072
|
{
|
|
9052
|
-
title: "MCP tools \u2014
|
|
9073
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
9053
9074
|
domain: "tool-use",
|
|
9054
9075
|
priority: "p1",
|
|
9055
|
-
content: "
|
|
9076
|
+
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.`
|
|
9056
9077
|
},
|
|
9057
9078
|
{
|
|
9058
|
-
title: "MCP tools \u2014
|
|
9079
|
+
title: "MCP tools \u2014 task orchestration",
|
|
9059
9080
|
domain: "tool-use",
|
|
9060
9081
|
priority: "p1",
|
|
9061
|
-
content: "
|
|
9082
|
+
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.'
|
|
9062
9083
|
},
|
|
9063
9084
|
{
|
|
9064
|
-
title: "MCP tools \u2014
|
|
9085
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
9065
9086
|
domain: "tool-use",
|
|
9066
9087
|
priority: "p1",
|
|
9067
|
-
content: "
|
|
9088
|
+
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.'
|
|
9068
9089
|
},
|
|
9069
9090
|
{
|
|
9070
|
-
title: "MCP tools \u2014
|
|
9091
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
9071
9092
|
domain: "tool-use",
|
|
9072
9093
|
priority: "p1",
|
|
9073
|
-
content: "
|
|
9094
|
+
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.`
|
|
9074
9095
|
},
|
|
9075
9096
|
{
|
|
9076
|
-
title: "MCP tools \u2014
|
|
9097
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
9077
9098
|
domain: "tool-use",
|
|
9078
9099
|
priority: "p1",
|
|
9079
|
-
content: "
|
|
9100
|
+
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.'
|
|
9080
9101
|
},
|
|
9081
9102
|
{
|
|
9082
|
-
title: "MCP tools \u2014
|
|
9103
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
9083
9104
|
domain: "tool-use",
|
|
9084
9105
|
priority: "p1",
|
|
9085
|
-
content: "
|
|
9106
|
+
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.'
|
|
9086
9107
|
},
|
|
9087
9108
|
{
|
|
9088
|
-
title: "MCP tools \u2014
|
|
9109
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
9089
9110
|
domain: "tool-use",
|
|
9090
9111
|
priority: "p1",
|
|
9091
|
-
content: "
|
|
9112
|
+
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.'
|
|
9092
9113
|
}
|
|
9093
9114
|
];
|
|
9094
9115
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@askexenow/exe-os",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.90",
|
|
4
4
|
"description": "AI employee operating system — persistent memory, task management, and multi-agent coordination for Claude Code.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"type": "module",
|
package/stack.release.json
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
"repo": "AskExe/exe-os",
|
|
5
5
|
"service": "exed",
|
|
6
6
|
"packageName": "@askexenow/exe-os",
|
|
7
|
-
"version": "0.9.
|
|
8
|
-
"image": "ghcr.io/askexe/exed:v0.9.
|
|
7
|
+
"version": "0.9.8",
|
|
8
|
+
"image": "ghcr.io/askexe/exed:v0.9.8",
|
|
9
9
|
"imageEnv": "EXED_IMAGE_TAG",
|
|
10
10
|
"stackParticipation": {
|
|
11
11
|
"required": true,
|
|
@@ -42,9 +42,9 @@
|
|
|
42
42
|
"breakingChanges": [],
|
|
43
43
|
"dataSovereignty": "Customer-local memory/tasks/behaviors stay in SQLCipher/local storage. Updates must not overwrite roster, identity, behavior, or local memory files.",
|
|
44
44
|
"releaseLine": "v0.9 private/customer pilot; v1.0 is public-beta stable.",
|
|
45
|
-
"highGhostStack": "0.9.
|
|
45
|
+
"highGhostStack": "0.9.8",
|
|
46
46
|
"deploymentScope": "customer"
|
|
47
47
|
},
|
|
48
48
|
"deploymentScope": "customer",
|
|
49
|
-
"highGhostStack": "0.9.
|
|
49
|
+
"highGhostStack": "0.9.8"
|
|
50
50
|
}
|