@askexenow/exe-os 0.9.89 → 0.9.90
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/deploy/stack-manifests/v0.9.json +48 -9
- package/dist/bin/agentic-ontology-backfill.js +44 -23
- package/dist/bin/agentic-reflection-backfill.js +44 -23
- package/dist/bin/agentic-semantic-label.js +44 -23
- package/dist/bin/backfill-conversations.js +44 -23
- package/dist/bin/backfill-responses.js +44 -23
- package/dist/bin/backfill-vectors.js +44 -23
- package/dist/bin/bulk-sync-postgres.js +44 -23
- package/dist/bin/cleanup-stale-review-tasks.js +44 -23
- package/dist/bin/cli.js +44 -23
- package/dist/bin/exe-agent.js +44 -23
- package/dist/bin/exe-assign.js +44 -23
- package/dist/bin/exe-boot.js +44 -23
- package/dist/bin/exe-call.js +44 -23
- package/dist/bin/exe-cloud.js +44 -23
- package/dist/bin/exe-dispatch.js +44 -23
- package/dist/bin/exe-doctor.js +44 -23
- package/dist/bin/exe-export-behaviors.js +44 -23
- package/dist/bin/exe-forget.js +44 -23
- package/dist/bin/exe-gateway.js +44 -23
- package/dist/bin/exe-heartbeat.js +44 -23
- package/dist/bin/exe-kill.js +44 -23
- package/dist/bin/exe-launch-agent.js +44 -23
- package/dist/bin/exe-new-employee.js +44 -23
- package/dist/bin/exe-pending-messages.js +44 -23
- package/dist/bin/exe-pending-notifications.js +44 -23
- package/dist/bin/exe-pending-reviews.js +44 -23
- package/dist/bin/exe-rename.js +44 -23
- package/dist/bin/exe-review.js +44 -23
- package/dist/bin/exe-search.js +44 -23
- package/dist/bin/exe-session-cleanup.js +44 -23
- package/dist/bin/exe-start-codex.js +44 -23
- package/dist/bin/exe-start-opencode.js +44 -23
- package/dist/bin/exe-status.js +44 -23
- package/dist/bin/exe-team.js +44 -23
- package/dist/bin/git-sweep.js +44 -23
- package/dist/bin/graph-backfill.js +44 -23
- package/dist/bin/graph-export.js +44 -23
- package/dist/bin/intercom-check.js +44 -23
- package/dist/bin/scan-tasks.js +44 -23
- package/dist/bin/setup.js +44 -23
- package/dist/bin/shard-migrate.js +44 -23
- package/dist/gateway/index.js +44 -23
- package/dist/hooks/bug-report-worker.js +44 -23
- package/dist/hooks/codex-stop-task-finalizer.js +44 -23
- package/dist/hooks/commit-complete.js +44 -23
- package/dist/hooks/error-recall.js +44 -23
- package/dist/hooks/ingest.js +44 -23
- package/dist/hooks/instructions-loaded.js +44 -23
- package/dist/hooks/notification.js +44 -23
- package/dist/hooks/post-compact.js +44 -23
- package/dist/hooks/post-tool-combined.js +44 -23
- package/dist/hooks/pre-compact.js +44 -23
- package/dist/hooks/pre-tool-use.js +44 -23
- package/dist/hooks/prompt-submit.js +44 -23
- package/dist/hooks/session-end.js +44 -23
- package/dist/hooks/session-start.js +44 -23
- package/dist/hooks/stop.js +44 -23
- package/dist/hooks/subagent-stop.js +44 -23
- package/dist/hooks/summary-worker.js +44 -23
- package/dist/index.js +44 -23
- package/dist/lib/employee-templates.js +44 -23
- package/dist/lib/exe-daemon.js +44 -23
- package/dist/lib/hybrid-search.js +44 -23
- package/dist/lib/schedules.js +44 -23
- package/dist/lib/store.js +44 -23
- package/dist/mcp/server.js +44 -23
- package/dist/runtime/index.js +44 -23
- package/dist/tui/App.js +44 -23
- package/package.json +1 -1
- package/stack.release.json +4 -4
package/dist/bin/exe-rename.js
CHANGED
|
@@ -2996,6 +2996,19 @@ var init_platform_procedures = __esm({
|
|
|
2996
2996
|
priority: "p1",
|
|
2997
2997
|
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."
|
|
2998
2998
|
},
|
|
2999
|
+
// --- Updates and deployment ---
|
|
3000
|
+
{
|
|
3001
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
3002
|
+
domain: "operations",
|
|
3003
|
+
priority: "p0",
|
|
3004
|
+
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.'
|
|
3005
|
+
},
|
|
3006
|
+
{
|
|
3007
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
3008
|
+
domain: "operations",
|
|
3009
|
+
priority: "p1",
|
|
3010
|
+
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."
|
|
3011
|
+
},
|
|
2999
3012
|
// --- Hierarchy and dispatch ---
|
|
3000
3013
|
{
|
|
3001
3014
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -3066,6 +3079,20 @@ var init_platform_procedures = __esm({
|
|
|
3066
3079
|
priority: "p1",
|
|
3067
3080
|
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."
|
|
3068
3081
|
},
|
|
3082
|
+
// --- Platform vs Customer ownership ---
|
|
3083
|
+
{
|
|
3084
|
+
title: "What the platform provides vs what you customize",
|
|
3085
|
+
domain: "architecture",
|
|
3086
|
+
priority: "p0",
|
|
3087
|
+
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."
|
|
3088
|
+
},
|
|
3089
|
+
// --- Updates ---
|
|
3090
|
+
{
|
|
3091
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
3092
|
+
domain: "operations",
|
|
3093
|
+
priority: "p0",
|
|
3094
|
+
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."
|
|
3095
|
+
},
|
|
3069
3096
|
// --- Operations ---
|
|
3070
3097
|
{
|
|
3071
3098
|
title: "Managers must supervise deployed workers",
|
|
@@ -3125,58 +3152,52 @@ var init_platform_procedures = __esm({
|
|
|
3125
3152
|
},
|
|
3126
3153
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
3127
3154
|
{
|
|
3128
|
-
title: "MCP
|
|
3155
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
3129
3156
|
domain: "tool-use",
|
|
3130
|
-
priority: "
|
|
3131
|
-
content:
|
|
3132
|
-
},
|
|
3133
|
-
{
|
|
3134
|
-
title: "MCP tools \u2014 task orchestration",
|
|
3135
|
-
domain: "tool-use",
|
|
3136
|
-
priority: "p1",
|
|
3137
|
-
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."
|
|
3157
|
+
priority: "p0",
|
|
3158
|
+
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.'
|
|
3138
3159
|
},
|
|
3139
3160
|
{
|
|
3140
|
-
title: "MCP tools \u2014
|
|
3161
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
3141
3162
|
domain: "tool-use",
|
|
3142
3163
|
priority: "p1",
|
|
3143
|
-
content: "
|
|
3164
|
+
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.`
|
|
3144
3165
|
},
|
|
3145
3166
|
{
|
|
3146
|
-
title: "MCP tools \u2014
|
|
3167
|
+
title: "MCP tools \u2014 task orchestration",
|
|
3147
3168
|
domain: "tool-use",
|
|
3148
3169
|
priority: "p1",
|
|
3149
|
-
content: "
|
|
3170
|
+
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.'
|
|
3150
3171
|
},
|
|
3151
3172
|
{
|
|
3152
|
-
title: "MCP tools \u2014
|
|
3173
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
3153
3174
|
domain: "tool-use",
|
|
3154
3175
|
priority: "p1",
|
|
3155
|
-
content: "
|
|
3176
|
+
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.'
|
|
3156
3177
|
},
|
|
3157
3178
|
{
|
|
3158
|
-
title: "MCP tools \u2014
|
|
3179
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
3159
3180
|
domain: "tool-use",
|
|
3160
3181
|
priority: "p1",
|
|
3161
|
-
content: "
|
|
3182
|
+
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.`
|
|
3162
3183
|
},
|
|
3163
3184
|
{
|
|
3164
|
-
title: "MCP tools \u2014
|
|
3185
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
3165
3186
|
domain: "tool-use",
|
|
3166
3187
|
priority: "p1",
|
|
3167
|
-
content: "
|
|
3188
|
+
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.'
|
|
3168
3189
|
},
|
|
3169
3190
|
{
|
|
3170
|
-
title: "MCP tools \u2014
|
|
3191
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
3171
3192
|
domain: "tool-use",
|
|
3172
3193
|
priority: "p1",
|
|
3173
|
-
content: "
|
|
3194
|
+
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.'
|
|
3174
3195
|
},
|
|
3175
3196
|
{
|
|
3176
|
-
title: "MCP tools \u2014
|
|
3197
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
3177
3198
|
domain: "tool-use",
|
|
3178
3199
|
priority: "p1",
|
|
3179
|
-
content: "
|
|
3200
|
+
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.'
|
|
3180
3201
|
}
|
|
3181
3202
|
];
|
|
3182
3203
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
package/dist/bin/exe-review.js
CHANGED
|
@@ -4127,6 +4127,19 @@ var init_platform_procedures = __esm({
|
|
|
4127
4127
|
priority: "p1",
|
|
4128
4128
|
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."
|
|
4129
4129
|
},
|
|
4130
|
+
// --- Updates and deployment ---
|
|
4131
|
+
{
|
|
4132
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4133
|
+
domain: "operations",
|
|
4134
|
+
priority: "p0",
|
|
4135
|
+
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.'
|
|
4136
|
+
},
|
|
4137
|
+
{
|
|
4138
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4139
|
+
domain: "operations",
|
|
4140
|
+
priority: "p1",
|
|
4141
|
+
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."
|
|
4142
|
+
},
|
|
4130
4143
|
// --- Hierarchy and dispatch ---
|
|
4131
4144
|
{
|
|
4132
4145
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4197,6 +4210,20 @@ var init_platform_procedures = __esm({
|
|
|
4197
4210
|
priority: "p1",
|
|
4198
4211
|
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."
|
|
4199
4212
|
},
|
|
4213
|
+
// --- Platform vs Customer ownership ---
|
|
4214
|
+
{
|
|
4215
|
+
title: "What the platform provides vs what you customize",
|
|
4216
|
+
domain: "architecture",
|
|
4217
|
+
priority: "p0",
|
|
4218
|
+
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."
|
|
4219
|
+
},
|
|
4220
|
+
// --- Updates ---
|
|
4221
|
+
{
|
|
4222
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4223
|
+
domain: "operations",
|
|
4224
|
+
priority: "p0",
|
|
4225
|
+
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."
|
|
4226
|
+
},
|
|
4200
4227
|
// --- Operations ---
|
|
4201
4228
|
{
|
|
4202
4229
|
title: "Managers must supervise deployed workers",
|
|
@@ -4256,58 +4283,52 @@ var init_platform_procedures = __esm({
|
|
|
4256
4283
|
},
|
|
4257
4284
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4258
4285
|
{
|
|
4259
|
-
title: "MCP
|
|
4286
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4260
4287
|
domain: "tool-use",
|
|
4261
|
-
priority: "
|
|
4262
|
-
content:
|
|
4263
|
-
},
|
|
4264
|
-
{
|
|
4265
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4266
|
-
domain: "tool-use",
|
|
4267
|
-
priority: "p1",
|
|
4268
|
-
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."
|
|
4288
|
+
priority: "p0",
|
|
4289
|
+
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.'
|
|
4269
4290
|
},
|
|
4270
4291
|
{
|
|
4271
|
-
title: "MCP tools \u2014
|
|
4292
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4272
4293
|
domain: "tool-use",
|
|
4273
4294
|
priority: "p1",
|
|
4274
|
-
content: "
|
|
4295
|
+
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.`
|
|
4275
4296
|
},
|
|
4276
4297
|
{
|
|
4277
|
-
title: "MCP tools \u2014
|
|
4298
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4278
4299
|
domain: "tool-use",
|
|
4279
4300
|
priority: "p1",
|
|
4280
|
-
content: "
|
|
4301
|
+
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.'
|
|
4281
4302
|
},
|
|
4282
4303
|
{
|
|
4283
|
-
title: "MCP tools \u2014
|
|
4304
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4284
4305
|
domain: "tool-use",
|
|
4285
4306
|
priority: "p1",
|
|
4286
|
-
content: "
|
|
4307
|
+
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.'
|
|
4287
4308
|
},
|
|
4288
4309
|
{
|
|
4289
|
-
title: "MCP tools \u2014
|
|
4310
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4290
4311
|
domain: "tool-use",
|
|
4291
4312
|
priority: "p1",
|
|
4292
|
-
content: "
|
|
4313
|
+
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.`
|
|
4293
4314
|
},
|
|
4294
4315
|
{
|
|
4295
|
-
title: "MCP tools \u2014
|
|
4316
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4296
4317
|
domain: "tool-use",
|
|
4297
4318
|
priority: "p1",
|
|
4298
|
-
content: "
|
|
4319
|
+
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.'
|
|
4299
4320
|
},
|
|
4300
4321
|
{
|
|
4301
|
-
title: "MCP tools \u2014
|
|
4322
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4302
4323
|
domain: "tool-use",
|
|
4303
4324
|
priority: "p1",
|
|
4304
|
-
content: "
|
|
4325
|
+
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.'
|
|
4305
4326
|
},
|
|
4306
4327
|
{
|
|
4307
|
-
title: "MCP tools \u2014
|
|
4328
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4308
4329
|
domain: "tool-use",
|
|
4309
4330
|
priority: "p1",
|
|
4310
|
-
content: "
|
|
4331
|
+
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.'
|
|
4311
4332
|
}
|
|
4312
4333
|
];
|
|
4313
4334
|
PLATFORM_PROCEDURE_TITLES = new Set(
|
package/dist/bin/exe-search.js
CHANGED
|
@@ -4112,6 +4112,19 @@ var init_platform_procedures = __esm({
|
|
|
4112
4112
|
priority: "p1",
|
|
4113
4113
|
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."
|
|
4114
4114
|
},
|
|
4115
|
+
// --- Updates and deployment ---
|
|
4116
|
+
{
|
|
4117
|
+
title: "How to update exe-os \u2014 CLI update + stack update (two steps)",
|
|
4118
|
+
domain: "operations",
|
|
4119
|
+
priority: "p0",
|
|
4120
|
+
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.'
|
|
4121
|
+
},
|
|
4122
|
+
{
|
|
4123
|
+
title: "First install \u2014 setup wizard and license activation",
|
|
4124
|
+
domain: "operations",
|
|
4125
|
+
priority: "p1",
|
|
4126
|
+
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."
|
|
4127
|
+
},
|
|
4115
4128
|
// --- Hierarchy and dispatch ---
|
|
4116
4129
|
{
|
|
4117
4130
|
title: "Chain of command \u2014 who talks to whom",
|
|
@@ -4182,6 +4195,20 @@ var init_platform_procedures = __esm({
|
|
|
4182
4195
|
priority: "p1",
|
|
4183
4196
|
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."
|
|
4184
4197
|
},
|
|
4198
|
+
// --- Platform vs Customer ownership ---
|
|
4199
|
+
{
|
|
4200
|
+
title: "What the platform provides vs what you customize",
|
|
4201
|
+
domain: "architecture",
|
|
4202
|
+
priority: "p0",
|
|
4203
|
+
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."
|
|
4204
|
+
},
|
|
4205
|
+
// --- Updates ---
|
|
4206
|
+
{
|
|
4207
|
+
title: "How to update exe-os \u2014 CLI first, then stack",
|
|
4208
|
+
domain: "operations",
|
|
4209
|
+
priority: "p0",
|
|
4210
|
+
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."
|
|
4211
|
+
},
|
|
4185
4212
|
// --- Operations ---
|
|
4186
4213
|
{
|
|
4187
4214
|
title: "Managers must supervise deployed workers",
|
|
@@ -4241,58 +4268,52 @@ var init_platform_procedures = __esm({
|
|
|
4241
4268
|
},
|
|
4242
4269
|
// --- MCP Tool Catalog (Layer 0 — every agent knows what tools exist) ---
|
|
4243
4270
|
{
|
|
4244
|
-
title: "MCP
|
|
4271
|
+
title: "MCP tool dispatch \u2014 all tools use action parameter",
|
|
4245
4272
|
domain: "tool-use",
|
|
4246
|
-
priority: "
|
|
4247
|
-
content:
|
|
4248
|
-
},
|
|
4249
|
-
{
|
|
4250
|
-
title: "MCP tools \u2014 task orchestration",
|
|
4251
|
-
domain: "tool-use",
|
|
4252
|
-
priority: "p1",
|
|
4253
|
-
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."
|
|
4273
|
+
priority: "p0",
|
|
4274
|
+
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.'
|
|
4254
4275
|
},
|
|
4255
4276
|
{
|
|
4256
|
-
title: "MCP tools \u2014
|
|
4277
|
+
title: "MCP tools \u2014 memory, decision, and search",
|
|
4257
4278
|
domain: "tool-use",
|
|
4258
4279
|
priority: "p1",
|
|
4259
|
-
content: "
|
|
4280
|
+
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.`
|
|
4260
4281
|
},
|
|
4261
4282
|
{
|
|
4262
|
-
title: "MCP tools \u2014
|
|
4283
|
+
title: "MCP tools \u2014 task orchestration",
|
|
4263
4284
|
domain: "tool-use",
|
|
4264
4285
|
priority: "p1",
|
|
4265
|
-
content: "
|
|
4286
|
+
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.'
|
|
4266
4287
|
},
|
|
4267
4288
|
{
|
|
4268
|
-
title: "MCP tools \u2014
|
|
4289
|
+
title: "MCP tools \u2014 knowledge graph (GraphRAG)",
|
|
4269
4290
|
domain: "tool-use",
|
|
4270
4291
|
priority: "p1",
|
|
4271
|
-
content: "
|
|
4292
|
+
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.'
|
|
4272
4293
|
},
|
|
4273
4294
|
{
|
|
4274
|
-
title: "MCP tools \u2014
|
|
4295
|
+
title: "MCP tools \u2014 identity, behavior, and support",
|
|
4275
4296
|
domain: "tool-use",
|
|
4276
4297
|
priority: "p1",
|
|
4277
|
-
content: "
|
|
4298
|
+
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.`
|
|
4278
4299
|
},
|
|
4279
4300
|
{
|
|
4280
|
-
title: "MCP tools \u2014
|
|
4301
|
+
title: "MCP tools \u2014 communication and messaging",
|
|
4281
4302
|
domain: "tool-use",
|
|
4282
4303
|
priority: "p1",
|
|
4283
|
-
content: "
|
|
4304
|
+
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.'
|
|
4284
4305
|
},
|
|
4285
4306
|
{
|
|
4286
|
-
title: "MCP tools \u2014
|
|
4307
|
+
title: "MCP tools \u2014 wiki, documents, CRM, and data",
|
|
4287
4308
|
domain: "tool-use",
|
|
4288
4309
|
priority: "p1",
|
|
4289
|
-
content: "
|
|
4310
|
+
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.'
|
|
4290
4311
|
},
|
|
4291
4312
|
{
|
|
4292
|
-
title: "MCP tools \u2014
|
|
4313
|
+
title: "MCP tools \u2014 admin, config, and operations",
|
|
4293
4314
|
domain: "tool-use",
|
|
4294
4315
|
priority: "p1",
|
|
4295
|
-
content: "
|
|
4316
|
+
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.'
|
|
4296
4317
|
}
|
|
4297
4318
|
];
|
|
4298
4319
|
PLATFORM_PROCEDURE_TITLES = new Set(
|