@askexenow/exe-os 0.9.65 → 0.9.66
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 +4 -4
- package/dist/bin/backfill-conversations.js +22 -0
- package/dist/bin/backfill-responses.js +22 -0
- package/dist/bin/backfill-vectors.js +22 -0
- package/dist/bin/cleanup-stale-review-tasks.js +22 -0
- package/dist/bin/cli.js +2263 -1203
- package/dist/bin/exe-agent-config.js +4 -0
- package/dist/bin/exe-agent.js +16 -0
- package/dist/bin/exe-assign.js +22 -0
- package/dist/bin/exe-boot.js +93 -5
- package/dist/bin/exe-call.js +16 -0
- package/dist/bin/exe-cloud.js +6671 -464
- package/dist/bin/exe-dispatch.js +24 -0
- package/dist/bin/exe-doctor.js +2845 -1223
- package/dist/bin/exe-export-behaviors.js +24 -0
- package/dist/bin/exe-forget.js +22 -0
- package/dist/bin/exe-gateway.js +24 -0
- package/dist/bin/exe-heartbeat.js +23 -0
- package/dist/bin/exe-kill.js +22 -0
- package/dist/bin/exe-launch-agent.js +24 -0
- package/dist/bin/exe-link.js +287 -176
- package/dist/bin/exe-new-employee.js +127 -1
- package/dist/bin/exe-pending-messages.js +22 -0
- package/dist/bin/exe-pending-notifications.js +22 -0
- package/dist/bin/exe-pending-reviews.js +22 -0
- package/dist/bin/exe-rename.js +22 -0
- package/dist/bin/exe-review.js +22 -0
- package/dist/bin/exe-search.js +24 -0
- package/dist/bin/exe-session-cleanup.js +24 -0
- package/dist/bin/exe-settings.js +10 -0
- package/dist/bin/exe-start-codex.js +135 -1
- package/dist/bin/exe-start-opencode.js +149 -1
- package/dist/bin/exe-status.js +22 -0
- package/dist/bin/exe-team.js +22 -0
- package/dist/bin/git-sweep.js +24 -0
- package/dist/bin/graph-backfill.js +22 -0
- package/dist/bin/graph-export.js +22 -0
- package/dist/bin/install.js +115 -1
- package/dist/bin/intercom-check.js +24 -0
- package/dist/bin/scan-tasks.js +24 -0
- package/dist/bin/setup.js +389 -155
- package/dist/bin/shard-migrate.js +22 -0
- package/dist/bin/update.js +4 -0
- package/dist/gateway/index.js +24 -0
- package/dist/hooks/bug-report-worker.js +135 -42
- package/dist/hooks/codex-stop-task-finalizer.js +24 -0
- package/dist/hooks/commit-complete.js +24 -0
- package/dist/hooks/error-recall.js +24 -0
- package/dist/hooks/exe-heartbeat-hook.js +4 -0
- package/dist/hooks/ingest-worker.js +4 -0
- package/dist/hooks/ingest.js +23 -0
- package/dist/hooks/instructions-loaded.js +22 -0
- package/dist/hooks/notification.js +22 -0
- package/dist/hooks/post-compact.js +22 -0
- package/dist/hooks/post-tool-combined.js +24 -0
- package/dist/hooks/pre-compact.js +260 -109
- package/dist/hooks/pre-tool-use.js +22 -0
- package/dist/hooks/prompt-submit.js +24 -0
- package/dist/hooks/session-end.js +161 -122
- package/dist/hooks/session-start.js +142 -0
- package/dist/hooks/stop.js +23 -0
- package/dist/hooks/subagent-stop.js +22 -0
- package/dist/hooks/summary-worker.js +172 -77
- package/dist/index.js +24 -0
- package/dist/lib/agent-config.js +4 -0
- package/dist/lib/cloud-sync.js +27 -4
- package/dist/lib/config.js +12 -0
- package/dist/lib/consolidation.js +4 -0
- package/dist/lib/database.js +4 -0
- package/dist/lib/db-daemon-client.js +4 -0
- package/dist/lib/db.js +4 -0
- package/dist/lib/device-registry.js +4 -0
- package/dist/lib/embedder.js +12 -0
- package/dist/lib/employee-templates.js +16 -0
- package/dist/lib/employees.js +4 -0
- package/dist/lib/exe-daemon-client.js +4 -0
- package/dist/lib/exe-daemon.js +1058 -453
- package/dist/lib/hybrid-search.js +24 -0
- package/dist/lib/identity.js +4 -0
- package/dist/lib/license.js +4 -0
- package/dist/lib/messaging.js +4 -0
- package/dist/lib/reminders.js +4 -0
- package/dist/lib/schedules.js +22 -0
- package/dist/lib/skill-learning.js +12 -0
- package/dist/lib/status-brief.js +39 -0
- package/dist/lib/store.js +22 -0
- package/dist/lib/task-router.js +4 -0
- package/dist/lib/tasks.js +12 -0
- package/dist/lib/tmux-routing.js +12 -0
- package/dist/lib/token-spend.js +4 -0
- package/dist/mcp/server.js +1022 -425
- package/dist/mcp/tools/complete-reminder.js +4 -0
- package/dist/mcp/tools/create-reminder.js +4 -0
- package/dist/mcp/tools/create-task.js +12 -0
- package/dist/mcp/tools/deactivate-behavior.js +4 -0
- package/dist/mcp/tools/list-reminders.js +4 -0
- package/dist/mcp/tools/list-tasks.js +4 -0
- package/dist/mcp/tools/send-message.js +4 -0
- package/dist/mcp/tools/update-task.js +12 -0
- package/dist/runtime/index.js +24 -0
- package/dist/tui/App.js +24 -0
- package/package.json +3 -2
- package/src/commands/exe/cloud.md +15 -8
- package/src/commands/exe/link.md +7 -6
- package/stack.release.json +2 -2
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
},
|
|
30
30
|
"exed": {
|
|
31
31
|
"env": "EXED_IMAGE_TAG",
|
|
32
|
-
"image": "ghcr.io/askexe/exed:v0.9.
|
|
32
|
+
"image": "ghcr.io/askexe/exed:v0.9.65",
|
|
33
33
|
"healthUrl": "http://127.0.0.1:8765/health"
|
|
34
34
|
},
|
|
35
35
|
"gateway": {
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
45
|
"releaseDescriptors": {
|
|
46
|
-
"exed": "AskExe/exe-os@0.9.
|
|
46
|
+
"exed": "AskExe/exe-os@0.9.65:stack.release.json",
|
|
47
47
|
"crm": "AskExe/exe-crm@0.9.0:stack.release.json",
|
|
48
48
|
"wiki": "AskExe/exe-wiki@0.9.0:stack.release.json",
|
|
49
49
|
"gateway": "AskExe/exe-gateway@0.9.0:stack.release.json",
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
},
|
|
79
79
|
"exed": {
|
|
80
80
|
"env": "EXED_IMAGE_TAG",
|
|
81
|
-
"image": "ghcr.io/askexe/exed:v0.9.
|
|
81
|
+
"image": "ghcr.io/askexe/exed:v0.9.65",
|
|
82
82
|
"healthUrl": "http://127.0.0.1:8765/health"
|
|
83
83
|
},
|
|
84
84
|
"gateway": {
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
}
|
|
93
93
|
},
|
|
94
94
|
"releaseDescriptors": {
|
|
95
|
-
"exed": "AskExe/exe-os@0.9.
|
|
95
|
+
"exed": "AskExe/exe-os@0.9.65:stack.release.json",
|
|
96
96
|
"crm": "AskExe/exe-crm@0.9.1:stack.release.json",
|
|
97
97
|
"wiki": "AskExe/exe-wiki@0.9.1:stack.release.json",
|
|
98
98
|
"gateway": "AskExe/exe-gateway@0.9.1:stack.release.json",
|
|
@@ -188,6 +188,11 @@ function normalizeAutoUpdate(raw) {
|
|
|
188
188
|
const userAU = raw.autoUpdate ?? {};
|
|
189
189
|
raw.autoUpdate = { ...defaultAU, ...userAU };
|
|
190
190
|
}
|
|
191
|
+
function normalizeOrchestration(raw) {
|
|
192
|
+
const defaultOrg = DEFAULT_CONFIG.orchestration;
|
|
193
|
+
const userOrg = raw.orchestration ?? {};
|
|
194
|
+
raw.orchestration = { ...defaultOrg, ...userOrg };
|
|
195
|
+
}
|
|
191
196
|
async function loadConfig() {
|
|
192
197
|
const dir = process.env.EXE_OS_DIR ?? process.env.EXE_MEM_DIR ?? EXE_AI_DIR;
|
|
193
198
|
await ensurePrivateDir(dir);
|
|
@@ -212,6 +217,7 @@ async function loadConfig() {
|
|
|
212
217
|
normalizeScalingRoadmap(migratedCfg);
|
|
213
218
|
normalizeSessionLifecycle(migratedCfg);
|
|
214
219
|
normalizeAutoUpdate(migratedCfg);
|
|
220
|
+
normalizeOrchestration(migratedCfg);
|
|
215
221
|
const config = { ...DEFAULT_CONFIG, dbPath: path.join(dir, "memories.db"), ...migratedCfg };
|
|
216
222
|
if (config.dbPath.startsWith("~")) {
|
|
217
223
|
config.dbPath = config.dbPath.replace(/^~/, os.homedir());
|
|
@@ -287,6 +293,10 @@ var init_config = __esm({
|
|
|
287
293
|
checkOnBoot: true,
|
|
288
294
|
autoInstall: false,
|
|
289
295
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
296
|
+
},
|
|
297
|
+
orchestration: {
|
|
298
|
+
phase: "phase_1_coo",
|
|
299
|
+
phaseSetBy: "default"
|
|
290
300
|
}
|
|
291
301
|
};
|
|
292
302
|
CONFIG_MIGRATIONS = [
|
|
@@ -3291,6 +3301,12 @@ var init_platform_procedures = __esm({
|
|
|
3291
3301
|
priority: "p0",
|
|
3292
3302
|
content: "Founder -> coordinator (the executive agent, internally routed as 'COO') -> CTO/CMO. CTO -> engineers. CMO -> content production. Never skip levels: the coordinator does not bypass managers for specialist work. Specialists report to their manager. If you need cross-team info, use ask_team_memory \u2014 don't read other agents' task folders. Each level owns dispatch downward and review upward."
|
|
3293
3303
|
},
|
|
3304
|
+
{
|
|
3305
|
+
title: "Customer orchestration maturity \u2014 recommend, never trap",
|
|
3306
|
+
domain: "workflow",
|
|
3307
|
+
priority: "p1",
|
|
3308
|
+
content: "New customers start best in Phase 1: founder \u2194 coordinator/Chief of Staff, building company context. Suggest Phase 2 executives when domain work repeats; suggest Phase 3 parallel execution only when review/permission gates are ready. This is guidance, not a blocker: users may jump phases anytime. Never overwrite their phase, role titles, identities, or custom org design."
|
|
3309
|
+
},
|
|
3294
3310
|
{
|
|
3295
3311
|
title: "Single dispatch path \u2014 create_task only",
|
|
3296
3312
|
domain: "workflow",
|
|
@@ -3349,6 +3365,12 @@ var init_platform_procedures = __esm({
|
|
|
3349
3365
|
priority: "p0",
|
|
3350
3366
|
content: "exe-build-adv is MANDATORY for ALL work touching 3+ files. Run /exe-build-adv --auto BEFORE implementation. Pipeline: Spec \u2192 AC \u2192 Tests \u2192 Evaluate \u2192 Fix. No multi-file feature ships without pipeline artifacts. No exceptions \u2014 managers reject work without them."
|
|
3351
3367
|
},
|
|
3368
|
+
{
|
|
3369
|
+
title: "Commit discipline \u2014 never leave verified work floating",
|
|
3370
|
+
domain: "workflow",
|
|
3371
|
+
priority: "p1",
|
|
3372
|
+
content: "After any code-change batch passes typecheck/tests/build, run git status, summarize changed files, and commit with a clear message before ending the session. If work must remain uncommitted for review/dogfood, explicitly say so, list the files, and state the blocker. Never imply work is complete while verified changes are still floating locally."
|
|
3373
|
+
},
|
|
3352
3374
|
{
|
|
3353
3375
|
title: "Desktop and TUI are the same product",
|
|
3354
3376
|
domain: "architecture",
|
|
@@ -188,6 +188,11 @@ function normalizeAutoUpdate(raw) {
|
|
|
188
188
|
const userAU = raw.autoUpdate ?? {};
|
|
189
189
|
raw.autoUpdate = { ...defaultAU, ...userAU };
|
|
190
190
|
}
|
|
191
|
+
function normalizeOrchestration(raw) {
|
|
192
|
+
const defaultOrg = DEFAULT_CONFIG.orchestration;
|
|
193
|
+
const userOrg = raw.orchestration ?? {};
|
|
194
|
+
raw.orchestration = { ...defaultOrg, ...userOrg };
|
|
195
|
+
}
|
|
191
196
|
async function loadConfig() {
|
|
192
197
|
const dir = process.env.EXE_OS_DIR ?? process.env.EXE_MEM_DIR ?? EXE_AI_DIR;
|
|
193
198
|
await ensurePrivateDir(dir);
|
|
@@ -212,6 +217,7 @@ async function loadConfig() {
|
|
|
212
217
|
normalizeScalingRoadmap(migratedCfg);
|
|
213
218
|
normalizeSessionLifecycle(migratedCfg);
|
|
214
219
|
normalizeAutoUpdate(migratedCfg);
|
|
220
|
+
normalizeOrchestration(migratedCfg);
|
|
215
221
|
const config = { ...DEFAULT_CONFIG, dbPath: path.join(dir, "memories.db"), ...migratedCfg };
|
|
216
222
|
if (config.dbPath.startsWith("~")) {
|
|
217
223
|
config.dbPath = config.dbPath.replace(/^~/, os.homedir());
|
|
@@ -287,6 +293,10 @@ var init_config = __esm({
|
|
|
287
293
|
checkOnBoot: true,
|
|
288
294
|
autoInstall: false,
|
|
289
295
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
296
|
+
},
|
|
297
|
+
orchestration: {
|
|
298
|
+
phase: "phase_1_coo",
|
|
299
|
+
phaseSetBy: "default"
|
|
290
300
|
}
|
|
291
301
|
};
|
|
292
302
|
CONFIG_MIGRATIONS = [
|
|
@@ -3291,6 +3301,12 @@ var init_platform_procedures = __esm({
|
|
|
3291
3301
|
priority: "p0",
|
|
3292
3302
|
content: "Founder -> coordinator (the executive agent, internally routed as 'COO') -> CTO/CMO. CTO -> engineers. CMO -> content production. Never skip levels: the coordinator does not bypass managers for specialist work. Specialists report to their manager. If you need cross-team info, use ask_team_memory \u2014 don't read other agents' task folders. Each level owns dispatch downward and review upward."
|
|
3293
3303
|
},
|
|
3304
|
+
{
|
|
3305
|
+
title: "Customer orchestration maturity \u2014 recommend, never trap",
|
|
3306
|
+
domain: "workflow",
|
|
3307
|
+
priority: "p1",
|
|
3308
|
+
content: "New customers start best in Phase 1: founder \u2194 coordinator/Chief of Staff, building company context. Suggest Phase 2 executives when domain work repeats; suggest Phase 3 parallel execution only when review/permission gates are ready. This is guidance, not a blocker: users may jump phases anytime. Never overwrite their phase, role titles, identities, or custom org design."
|
|
3309
|
+
},
|
|
3294
3310
|
{
|
|
3295
3311
|
title: "Single dispatch path \u2014 create_task only",
|
|
3296
3312
|
domain: "workflow",
|
|
@@ -3349,6 +3365,12 @@ var init_platform_procedures = __esm({
|
|
|
3349
3365
|
priority: "p0",
|
|
3350
3366
|
content: "exe-build-adv is MANDATORY for ALL work touching 3+ files. Run /exe-build-adv --auto BEFORE implementation. Pipeline: Spec \u2192 AC \u2192 Tests \u2192 Evaluate \u2192 Fix. No multi-file feature ships without pipeline artifacts. No exceptions \u2014 managers reject work without them."
|
|
3351
3367
|
},
|
|
3368
|
+
{
|
|
3369
|
+
title: "Commit discipline \u2014 never leave verified work floating",
|
|
3370
|
+
domain: "workflow",
|
|
3371
|
+
priority: "p1",
|
|
3372
|
+
content: "After any code-change batch passes typecheck/tests/build, run git status, summarize changed files, and commit with a clear message before ending the session. If work must remain uncommitted for review/dogfood, explicitly say so, list the files, and state the blocker. Never imply work is complete while verified changes are still floating locally."
|
|
3373
|
+
},
|
|
3352
3374
|
{
|
|
3353
3375
|
title: "Desktop and TUI are the same product",
|
|
3354
3376
|
domain: "architecture",
|
|
@@ -188,6 +188,11 @@ function normalizeAutoUpdate(raw) {
|
|
|
188
188
|
const userAU = raw.autoUpdate ?? {};
|
|
189
189
|
raw.autoUpdate = { ...defaultAU, ...userAU };
|
|
190
190
|
}
|
|
191
|
+
function normalizeOrchestration(raw) {
|
|
192
|
+
const defaultOrg = DEFAULT_CONFIG.orchestration;
|
|
193
|
+
const userOrg = raw.orchestration ?? {};
|
|
194
|
+
raw.orchestration = { ...defaultOrg, ...userOrg };
|
|
195
|
+
}
|
|
191
196
|
async function loadConfig() {
|
|
192
197
|
const dir = process.env.EXE_OS_DIR ?? process.env.EXE_MEM_DIR ?? EXE_AI_DIR;
|
|
193
198
|
await ensurePrivateDir(dir);
|
|
@@ -212,6 +217,7 @@ async function loadConfig() {
|
|
|
212
217
|
normalizeScalingRoadmap(migratedCfg);
|
|
213
218
|
normalizeSessionLifecycle(migratedCfg);
|
|
214
219
|
normalizeAutoUpdate(migratedCfg);
|
|
220
|
+
normalizeOrchestration(migratedCfg);
|
|
215
221
|
const config = { ...DEFAULT_CONFIG, dbPath: path.join(dir, "memories.db"), ...migratedCfg };
|
|
216
222
|
if (config.dbPath.startsWith("~")) {
|
|
217
223
|
config.dbPath = config.dbPath.replace(/^~/, os.homedir());
|
|
@@ -287,6 +293,10 @@ var init_config = __esm({
|
|
|
287
293
|
checkOnBoot: true,
|
|
288
294
|
autoInstall: false,
|
|
289
295
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
296
|
+
},
|
|
297
|
+
orchestration: {
|
|
298
|
+
phase: "phase_1_coo",
|
|
299
|
+
phaseSetBy: "default"
|
|
290
300
|
}
|
|
291
301
|
};
|
|
292
302
|
CONFIG_MIGRATIONS = [
|
|
@@ -3287,6 +3297,12 @@ var init_platform_procedures = __esm({
|
|
|
3287
3297
|
priority: "p0",
|
|
3288
3298
|
content: "Founder -> coordinator (the executive agent, internally routed as 'COO') -> CTO/CMO. CTO -> engineers. CMO -> content production. Never skip levels: the coordinator does not bypass managers for specialist work. Specialists report to their manager. If you need cross-team info, use ask_team_memory \u2014 don't read other agents' task folders. Each level owns dispatch downward and review upward."
|
|
3289
3299
|
},
|
|
3300
|
+
{
|
|
3301
|
+
title: "Customer orchestration maturity \u2014 recommend, never trap",
|
|
3302
|
+
domain: "workflow",
|
|
3303
|
+
priority: "p1",
|
|
3304
|
+
content: "New customers start best in Phase 1: founder \u2194 coordinator/Chief of Staff, building company context. Suggest Phase 2 executives when domain work repeats; suggest Phase 3 parallel execution only when review/permission gates are ready. This is guidance, not a blocker: users may jump phases anytime. Never overwrite their phase, role titles, identities, or custom org design."
|
|
3305
|
+
},
|
|
3290
3306
|
{
|
|
3291
3307
|
title: "Single dispatch path \u2014 create_task only",
|
|
3292
3308
|
domain: "workflow",
|
|
@@ -3345,6 +3361,12 @@ var init_platform_procedures = __esm({
|
|
|
3345
3361
|
priority: "p0",
|
|
3346
3362
|
content: "exe-build-adv is MANDATORY for ALL work touching 3+ files. Run /exe-build-adv --auto BEFORE implementation. Pipeline: Spec \u2192 AC \u2192 Tests \u2192 Evaluate \u2192 Fix. No multi-file feature ships without pipeline artifacts. No exceptions \u2014 managers reject work without them."
|
|
3347
3363
|
},
|
|
3364
|
+
{
|
|
3365
|
+
title: "Commit discipline \u2014 never leave verified work floating",
|
|
3366
|
+
domain: "workflow",
|
|
3367
|
+
priority: "p1",
|
|
3368
|
+
content: "After any code-change batch passes typecheck/tests/build, run git status, summarize changed files, and commit with a clear message before ending the session. If work must remain uncommitted for review/dogfood, explicitly say so, list the files, and state the blocker. Never imply work is complete while verified changes are still floating locally."
|
|
3369
|
+
},
|
|
3348
3370
|
{
|
|
3349
3371
|
title: "Desktop and TUI are the same product",
|
|
3350
3372
|
domain: "architecture",
|
|
@@ -190,6 +190,11 @@ function normalizeAutoUpdate(raw) {
|
|
|
190
190
|
const userAU = raw.autoUpdate ?? {};
|
|
191
191
|
raw.autoUpdate = { ...defaultAU, ...userAU };
|
|
192
192
|
}
|
|
193
|
+
function normalizeOrchestration(raw) {
|
|
194
|
+
const defaultOrg = DEFAULT_CONFIG.orchestration;
|
|
195
|
+
const userOrg = raw.orchestration ?? {};
|
|
196
|
+
raw.orchestration = { ...defaultOrg, ...userOrg };
|
|
197
|
+
}
|
|
193
198
|
async function loadConfig() {
|
|
194
199
|
const dir = process.env.EXE_OS_DIR ?? process.env.EXE_MEM_DIR ?? EXE_AI_DIR;
|
|
195
200
|
await ensurePrivateDir(dir);
|
|
@@ -214,6 +219,7 @@ async function loadConfig() {
|
|
|
214
219
|
normalizeScalingRoadmap(migratedCfg);
|
|
215
220
|
normalizeSessionLifecycle(migratedCfg);
|
|
216
221
|
normalizeAutoUpdate(migratedCfg);
|
|
222
|
+
normalizeOrchestration(migratedCfg);
|
|
217
223
|
const config = { ...DEFAULT_CONFIG, dbPath: path.join(dir, "memories.db"), ...migratedCfg };
|
|
218
224
|
if (config.dbPath.startsWith("~")) {
|
|
219
225
|
config.dbPath = config.dbPath.replace(/^~/, os.homedir());
|
|
@@ -289,6 +295,10 @@ var init_config = __esm({
|
|
|
289
295
|
checkOnBoot: true,
|
|
290
296
|
autoInstall: false,
|
|
291
297
|
checkIntervalMs: 24 * 60 * 60 * 1e3
|
|
298
|
+
},
|
|
299
|
+
orchestration: {
|
|
300
|
+
phase: "phase_1_coo",
|
|
301
|
+
phaseSetBy: "default"
|
|
292
302
|
}
|
|
293
303
|
};
|
|
294
304
|
CONFIG_MIGRATIONS = [
|
|
@@ -3849,6 +3859,12 @@ var init_platform_procedures = __esm({
|
|
|
3849
3859
|
priority: "p0",
|
|
3850
3860
|
content: "Founder -> coordinator (the executive agent, internally routed as 'COO') -> CTO/CMO. CTO -> engineers. CMO -> content production. Never skip levels: the coordinator does not bypass managers for specialist work. Specialists report to their manager. If you need cross-team info, use ask_team_memory \u2014 don't read other agents' task folders. Each level owns dispatch downward and review upward."
|
|
3851
3861
|
},
|
|
3862
|
+
{
|
|
3863
|
+
title: "Customer orchestration maturity \u2014 recommend, never trap",
|
|
3864
|
+
domain: "workflow",
|
|
3865
|
+
priority: "p1",
|
|
3866
|
+
content: "New customers start best in Phase 1: founder \u2194 coordinator/Chief of Staff, building company context. Suggest Phase 2 executives when domain work repeats; suggest Phase 3 parallel execution only when review/permission gates are ready. This is guidance, not a blocker: users may jump phases anytime. Never overwrite their phase, role titles, identities, or custom org design."
|
|
3867
|
+
},
|
|
3852
3868
|
{
|
|
3853
3869
|
title: "Single dispatch path \u2014 create_task only",
|
|
3854
3870
|
domain: "workflow",
|
|
@@ -3907,6 +3923,12 @@ var init_platform_procedures = __esm({
|
|
|
3907
3923
|
priority: "p0",
|
|
3908
3924
|
content: "exe-build-adv is MANDATORY for ALL work touching 3+ files. Run /exe-build-adv --auto BEFORE implementation. Pipeline: Spec \u2192 AC \u2192 Tests \u2192 Evaluate \u2192 Fix. No multi-file feature ships without pipeline artifacts. No exceptions \u2014 managers reject work without them."
|
|
3909
3925
|
},
|
|
3926
|
+
{
|
|
3927
|
+
title: "Commit discipline \u2014 never leave verified work floating",
|
|
3928
|
+
domain: "workflow",
|
|
3929
|
+
priority: "p1",
|
|
3930
|
+
content: "After any code-change batch passes typecheck/tests/build, run git status, summarize changed files, and commit with a clear message before ending the session. If work must remain uncommitted for review/dogfood, explicitly say so, list the files, and state the blocker. Never imply work is complete while verified changes are still floating locally."
|
|
3931
|
+
},
|
|
3910
3932
|
{
|
|
3911
3933
|
title: "Desktop and TUI are the same product",
|
|
3912
3934
|
domain: "architecture",
|