@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/hooks/stop.js
CHANGED
|
@@ -4597,6 +4597,19 @@ var init_platform_procedures = __esm({
|
|
|
4597
4597
|
priority: "p1",
|
|
4598
4598
|
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."
|
|
4599
4599
|
},
|
|
4600
|
+
// --- Updates and deployment ---
|
|
4601
|
+
{
|
|
4602
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4603
|
+
domain: "operations",
|
|
4604
|
+
priority: "p0",
|
|
4605
|
+
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.'
|
|
4606
|
+
},
|
|
4607
|
+
{
|
|
4608
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4609
|
+
domain: "operations",
|
|
4610
|
+
priority: "p1",
|
|
4611
|
+
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."
|
|
4612
|
+
},
|
|
4600
4613
|
// --- Hierarchy and dispatch ---
|
|
4601
4614
|
{
|
|
4602
4615
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4667,6 +4680,20 @@ var init_platform_procedures = __esm({
|
|
|
4667
4680
|
priority: "p1",
|
|
4668
4681
|
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."
|
|
4669
4682
|
},
|
|
4683
|
+
// --- Platform vs Customer ownership ---
|
|
4684
|
+
{
|
|
4685
|
+
title: "What the platform provides vs what you customize",
|
|
4686
|
+
domain: "architecture",
|
|
4687
|
+
priority: "p0",
|
|
4688
|
+
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."
|
|
4689
|
+
},
|
|
4690
|
+
// --- Updates ---
|
|
4691
|
+
{
|
|
4692
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4693
|
+
domain: "operations",
|
|
4694
|
+
priority: "p0",
|
|
4695
|
+
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."
|
|
4696
|
+
},
|
|
4670
4697
|
// --- Operations ---
|
|
4671
4698
|
{
|
|
4672
4699
|
title: "Managers must supervise deployed workers",
|
|
@@ -4726,58 +4753,52 @@ var init_platform_procedures = __esm({
|
|
|
4726
4753
|
},
|
|
4727
4754
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4728
4755
|
{
|
|
4729
|
-
title: "MCP
|
|
4756
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4730
4757
|
domain: "tool-use",
|
|
4731
|
-
priority: "
|
|
4732
|
-
content:
|
|
4733
|
-
},
|
|
4734
|
-
{
|
|
4735
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4736
|
-
domain: "tool-use",
|
|
4737
|
-
priority: "p1",
|
|
4738
|
-
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."
|
|
4758
|
+
priority: "p0",
|
|
4759
|
+
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.'
|
|
4739
4760
|
},
|
|
4740
4761
|
{
|
|
4741
|
-
title: "MCP tools \u2014
|
|
4762
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4742
4763
|
domain: "tool-use",
|
|
4743
4764
|
priority: "p1",
|
|
4744
|
-
content: "
|
|
4765
|
+
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.`
|
|
4745
4766
|
},
|
|
4746
4767
|
{
|
|
4747
|
-
title: "MCP tools \u2014
|
|
4768
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4748
4769
|
domain: "tool-use",
|
|
4749
4770
|
priority: "p1",
|
|
4750
|
-
content: "
|
|
4771
|
+
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.'
|
|
4751
4772
|
},
|
|
4752
4773
|
{
|
|
4753
|
-
title: "MCP tools \u2014
|
|
4774
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4754
4775
|
domain: "tool-use",
|
|
4755
4776
|
priority: "p1",
|
|
4756
|
-
content: "
|
|
4777
|
+
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.'
|
|
4757
4778
|
},
|
|
4758
4779
|
{
|
|
4759
|
-
title: "MCP tools \u2014
|
|
4780
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4760
4781
|
domain: "tool-use",
|
|
4761
4782
|
priority: "p1",
|
|
4762
|
-
content: "
|
|
4783
|
+
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.`
|
|
4763
4784
|
},
|
|
4764
4785
|
{
|
|
4765
|
-
title: "MCP tools \u2014
|
|
4786
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4766
4787
|
domain: "tool-use",
|
|
4767
4788
|
priority: "p1",
|
|
4768
|
-
content: "
|
|
4789
|
+
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.'
|
|
4769
4790
|
},
|
|
4770
4791
|
{
|
|
4771
|
-
title: "MCP tools \u2014
|
|
4792
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4772
4793
|
domain: "tool-use",
|
|
4773
4794
|
priority: "p1",
|
|
4774
|
-
content: "
|
|
4795
|
+
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.'
|
|
4775
4796
|
},
|
|
4776
4797
|
{
|
|
4777
|
-
title: "MCP tools \u2014
|
|
4798
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4778
4799
|
domain: "tool-use",
|
|
4779
4800
|
priority: "p1",
|
|
4780
|
-
content: "
|
|
4801
|
+
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.'
|
|
4781
4802
|
}
|
|
4782
4803
|
];
|
|
4783
4804
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
|
@@ -4560,6 +4560,19 @@ var init_platform_procedures = __esm({
|
|
|
4560
4560
|
priority: "p1",
|
|
4561
4561
|
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."
|
|
4562
4562
|
},
|
|
4563
|
+
// --- Updates and deployment ---
|
|
4564
|
+
{
|
|
4565
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4566
|
+
domain: "operations",
|
|
4567
|
+
priority: "p0",
|
|
4568
|
+
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.'
|
|
4569
|
+
},
|
|
4570
|
+
{
|
|
4571
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4572
|
+
domain: "operations",
|
|
4573
|
+
priority: "p1",
|
|
4574
|
+
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."
|
|
4575
|
+
},
|
|
4563
4576
|
// --- Hierarchy and dispatch ---
|
|
4564
4577
|
{
|
|
4565
4578
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4630,6 +4643,20 @@ var init_platform_procedures = __esm({
|
|
|
4630
4643
|
priority: "p1",
|
|
4631
4644
|
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."
|
|
4632
4645
|
},
|
|
4646
|
+
// --- Platform vs Customer ownership ---
|
|
4647
|
+
{
|
|
4648
|
+
title: "What the platform provides vs what you customize",
|
|
4649
|
+
domain: "architecture",
|
|
4650
|
+
priority: "p0",
|
|
4651
|
+
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."
|
|
4652
|
+
},
|
|
4653
|
+
// --- Updates ---
|
|
4654
|
+
{
|
|
4655
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4656
|
+
domain: "operations",
|
|
4657
|
+
priority: "p0",
|
|
4658
|
+
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."
|
|
4659
|
+
},
|
|
4633
4660
|
// --- Operations ---
|
|
4634
4661
|
{
|
|
4635
4662
|
title: "Managers must supervise deployed workers",
|
|
@@ -4689,58 +4716,52 @@ var init_platform_procedures = __esm({
|
|
|
4689
4716
|
},
|
|
4690
4717
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4691
4718
|
{
|
|
4692
|
-
title: "MCP
|
|
4719
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4693
4720
|
domain: "tool-use",
|
|
4694
|
-
priority: "
|
|
4695
|
-
content:
|
|
4696
|
-
},
|
|
4697
|
-
{
|
|
4698
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4699
|
-
domain: "tool-use",
|
|
4700
|
-
priority: "p1",
|
|
4701
|
-
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."
|
|
4721
|
+
priority: "p0",
|
|
4722
|
+
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.'
|
|
4702
4723
|
},
|
|
4703
4724
|
{
|
|
4704
|
-
title: "MCP tools \u2014
|
|
4725
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4705
4726
|
domain: "tool-use",
|
|
4706
4727
|
priority: "p1",
|
|
4707
|
-
content: "
|
|
4728
|
+
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.`
|
|
4708
4729
|
},
|
|
4709
4730
|
{
|
|
4710
|
-
title: "MCP tools \u2014
|
|
4731
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4711
4732
|
domain: "tool-use",
|
|
4712
4733
|
priority: "p1",
|
|
4713
|
-
content: "
|
|
4734
|
+
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.'
|
|
4714
4735
|
},
|
|
4715
4736
|
{
|
|
4716
|
-
title: "MCP tools \u2014
|
|
4737
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4717
4738
|
domain: "tool-use",
|
|
4718
4739
|
priority: "p1",
|
|
4719
|
-
content: "
|
|
4740
|
+
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.'
|
|
4720
4741
|
},
|
|
4721
4742
|
{
|
|
4722
|
-
title: "MCP tools \u2014
|
|
4743
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4723
4744
|
domain: "tool-use",
|
|
4724
4745
|
priority: "p1",
|
|
4725
|
-
content: "
|
|
4746
|
+
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.`
|
|
4726
4747
|
},
|
|
4727
4748
|
{
|
|
4728
|
-
title: "MCP tools \u2014
|
|
4749
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4729
4750
|
domain: "tool-use",
|
|
4730
4751
|
priority: "p1",
|
|
4731
|
-
content: "
|
|
4752
|
+
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.'
|
|
4732
4753
|
},
|
|
4733
4754
|
{
|
|
4734
|
-
title: "MCP tools \u2014
|
|
4755
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4735
4756
|
domain: "tool-use",
|
|
4736
4757
|
priority: "p1",
|
|
4737
|
-
content: "
|
|
4758
|
+
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.'
|
|
4738
4759
|
},
|
|
4739
4760
|
{
|
|
4740
|
-
title: "MCP tools \u2014
|
|
4761
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4741
4762
|
domain: "tool-use",
|
|
4742
4763
|
priority: "p1",
|
|
4743
|
-
content: "
|
|
4764
|
+
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.'
|
|
4744
4765
|
}
|
|
4745
4766
|
];
|
|
4746
4767
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
|
@@ -4159,6 +4159,19 @@ var init_platform_procedures = __esm({
|
|
|
4159
4159
|
priority: "p1",
|
|
4160
4160
|
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."
|
|
4161
4161
|
},
|
|
4162
|
+
// --- Updates and deployment ---
|
|
4163
|
+
{
|
|
4164
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4165
|
+
domain: "operations",
|
|
4166
|
+
priority: "p0",
|
|
4167
|
+
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.'
|
|
4168
|
+
},
|
|
4169
|
+
{
|
|
4170
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4171
|
+
domain: "operations",
|
|
4172
|
+
priority: "p1",
|
|
4173
|
+
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."
|
|
4174
|
+
},
|
|
4162
4175
|
// --- Hierarchy and dispatch ---
|
|
4163
4176
|
{
|
|
4164
4177
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4229,6 +4242,20 @@ var init_platform_procedures = __esm({
|
|
|
4229
4242
|
priority: "p1",
|
|
4230
4243
|
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."
|
|
4231
4244
|
},
|
|
4245
|
+
// --- Platform vs Customer ownership ---
|
|
4246
|
+
{
|
|
4247
|
+
title: "What the platform provides vs what you customize",
|
|
4248
|
+
domain: "architecture",
|
|
4249
|
+
priority: "p0",
|
|
4250
|
+
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."
|
|
4251
|
+
},
|
|
4252
|
+
// --- Updates ---
|
|
4253
|
+
{
|
|
4254
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4255
|
+
domain: "operations",
|
|
4256
|
+
priority: "p0",
|
|
4257
|
+
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."
|
|
4258
|
+
},
|
|
4232
4259
|
// --- Operations ---
|
|
4233
4260
|
{
|
|
4234
4261
|
title: "Managers must supervise deployed workers",
|
|
@@ -4288,58 +4315,52 @@ var init_platform_procedures = __esm({
|
|
|
4288
4315
|
},
|
|
4289
4316
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4290
4317
|
{
|
|
4291
|
-
title: "MCP
|
|
4318
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4292
4319
|
domain: "tool-use",
|
|
4293
|
-
priority: "
|
|
4294
|
-
content:
|
|
4295
|
-
},
|
|
4296
|
-
{
|
|
4297
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4298
|
-
domain: "tool-use",
|
|
4299
|
-
priority: "p1",
|
|
4300
|
-
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."
|
|
4320
|
+
priority: "p0",
|
|
4321
|
+
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.'
|
|
4301
4322
|
},
|
|
4302
4323
|
{
|
|
4303
|
-
title: "MCP tools \u2014
|
|
4324
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4304
4325
|
domain: "tool-use",
|
|
4305
4326
|
priority: "p1",
|
|
4306
|
-
content: "
|
|
4327
|
+
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.`
|
|
4307
4328
|
},
|
|
4308
4329
|
{
|
|
4309
|
-
title: "MCP tools \u2014
|
|
4330
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4310
4331
|
domain: "tool-use",
|
|
4311
4332
|
priority: "p1",
|
|
4312
|
-
content: "
|
|
4333
|
+
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.'
|
|
4313
4334
|
},
|
|
4314
4335
|
{
|
|
4315
|
-
title: "MCP tools \u2014
|
|
4336
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4316
4337
|
domain: "tool-use",
|
|
4317
4338
|
priority: "p1",
|
|
4318
|
-
content: "
|
|
4339
|
+
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.'
|
|
4319
4340
|
},
|
|
4320
4341
|
{
|
|
4321
|
-
title: "MCP tools \u2014
|
|
4342
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4322
4343
|
domain: "tool-use",
|
|
4323
4344
|
priority: "p1",
|
|
4324
|
-
content: "
|
|
4345
|
+
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.`
|
|
4325
4346
|
},
|
|
4326
4347
|
{
|
|
4327
|
-
title: "MCP tools \u2014
|
|
4348
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4328
4349
|
domain: "tool-use",
|
|
4329
4350
|
priority: "p1",
|
|
4330
|
-
content: "
|
|
4351
|
+
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.'
|
|
4331
4352
|
},
|
|
4332
4353
|
{
|
|
4333
|
-
title: "MCP tools \u2014
|
|
4354
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4334
4355
|
domain: "tool-use",
|
|
4335
4356
|
priority: "p1",
|
|
4336
|
-
content: "
|
|
4357
|
+
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.'
|
|
4337
4358
|
},
|
|
4338
4359
|
{
|
|
4339
|
-
title: "MCP tools \u2014
|
|
4360
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4340
4361
|
domain: "tool-use",
|
|
4341
4362
|
priority: "p1",
|
|
4342
|
-
content: "
|
|
4363
|
+
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.'
|
|
4343
4364
|
}
|
|
4344
4365
|
];
|
|
4345
4366
|
PLATFORM_PROCEDURE_TITLES = new Set(
|