@monoes/monomindcli 1.9.10 → 1.9.11
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.
|
@@ -81,8 +81,8 @@ space_id=$(monotask space list 2>/dev/null | awk -F' \| ' -v n="$project_name" '
|
|
|
81
81
|
**Memory-first board lookup:** Check memory for `"mastermind-idea board_id"` in namespace `monomind`. If a board ID is returned, use it as `BOARD_ID` and look up the existing column IDs. Otherwise, create the board:
|
|
82
82
|
|
|
83
83
|
```bash
|
|
84
|
-
BOARD_ID=$(monotask board create "
|
|
85
|
-
[ -z "$BOARD_ID" ] && { echo "ERROR: Failed to create
|
|
84
|
+
BOARD_ID=$(monotask board create "Ideas & Innovation" --json | jq -r '.id // empty')
|
|
85
|
+
[ -z "$BOARD_ID" ] && { echo "ERROR: Failed to create Ideas & Innovation board"; exit 1; }
|
|
86
86
|
monotask space boards add "$space_id" "$BOARD_ID" >/dev/null 2>&1 || true
|
|
87
87
|
npx monomind@latest memory store --key "mastermind-idea board_id" --value "$BOARD_ID" --namespace monomind
|
|
88
88
|
|
|
@@ -107,6 +107,26 @@ COL_ICED=$(echo "$columns" | jq -r '.[] | select(.title == "Iced") |
|
|
|
107
107
|
COL_REJECTED=$(echo "$columns" | jq -r '.[] | select(.title == "Rejected") | .id' | head -1)
|
|
108
108
|
```
|
|
109
109
|
|
|
110
|
+
**After either branch above, validate and echo all values.** This is the canonical source for Step 4 Task construction.
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
# Validate BOARD_ID looks like a UUID before proceeding
|
|
114
|
+
[[ ! "$BOARD_ID" =~ ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ ]] && \
|
|
115
|
+
{ echo "ERROR: BOARD_ID '$BOARD_ID' is not a valid UUID — aborting to prevent board name corruption"; exit 1; }
|
|
116
|
+
|
|
117
|
+
# Echo literal values — READ THESE and embed them as string literals in the Step 4 Task prompt.
|
|
118
|
+
# These are shell variables; they DO NOT survive into the Task agent's context.
|
|
119
|
+
echo "=== IDEA BOARD LITERAL VALUES ==="
|
|
120
|
+
echo "BOARD_ID=$BOARD_ID"
|
|
121
|
+
echo "COL_NEW=$COL_NEW"
|
|
122
|
+
echo "COL_EVALUATED=$COL_EVALUATED"
|
|
123
|
+
echo "COL_ELABORATED=$COL_ELABORATED"
|
|
124
|
+
echo "COL_TASKED=$COL_TASKED"
|
|
125
|
+
echo "COL_ICED=$COL_ICED"
|
|
126
|
+
echo "COL_REJECTED=$COL_REJECTED"
|
|
127
|
+
echo "==================================="
|
|
128
|
+
```
|
|
129
|
+
|
|
110
130
|
---
|
|
111
131
|
|
|
112
132
|
### Step 4 — Idea Manager Agent (Divergent Thinking)
|
|
@@ -152,7 +172,8 @@ specialist_list=$(echo "$user_market_agents $tech_agents" | jq -Rs \
|
|
|
152
172
|
echo "Selected specialists: $specialist_list"
|
|
153
173
|
```
|
|
154
174
|
|
|
155
|
-
|
|
175
|
+
**CRITICAL — Variable substitution required before constructing the Task call:**
|
|
176
|
+
The Task agent runs in an isolated context and cannot inherit shell variables. Before writing the Task prompt below, read the literal UUID values from the `=== IDEA BOARD LITERAL VALUES ===` echo block above and embed them as **hard-coded strings** in the prompt. Do NOT write `${BOARD_ID}`, `${COL_NEW}`, etc. in the prompt — the agent will receive those as literal dollar-sign strings and its `monotask card create` calls will fail, causing it to improvise with `monotask board create` and corrupt board names. Replace every `${BOARD_ID}`, `${COL_NEW}`, `${project_name}`, `${brain_context}`, `${prompt}`, `${date}`, and `${specialist_list}` with the actual value before calling Task.
|
|
156
177
|
|
|
157
178
|
Spawn the Idea Manager with `run_in_background: false` so its output is available for Step 5.
|
|
158
179
|
|
|
@@ -161,7 +182,9 @@ Task({
|
|
|
161
182
|
subagent_type: "coordinator",
|
|
162
183
|
description: "Idea Manager for project " + project_name,
|
|
163
184
|
run_in_background: false,
|
|
164
|
-
prompt: `
|
|
185
|
+
prompt: `SAFETY CHECK: Before doing anything else, verify that the BOARD_ID you received matches UUID format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12 hex chars). If it does not, STOP immediately and report "ERROR: BOARD_ID was not substituted — received: <value>". Do NOT call monotask board create, monotask space create, or any board/space/column creation commands. Your only job is creating CARDS on the board you were given.
|
|
186
|
+
|
|
187
|
+
You are the Idea Manager for project "${project_name}".
|
|
165
188
|
|
|
166
189
|
CONTEXT: ${date} | Project: ${project_name} | Spawned by: mastermind:idea
|
|
167
190
|
|
|
@@ -495,14 +518,14 @@ END_TASKS_OUTPUT
|
|
|
495
518
|
|
|
496
519
|
---
|
|
497
520
|
|
|
498
|
-
**Dev task board** (`feature` / `technical-baseline` → `
|
|
521
|
+
**Dev task board** (`feature` / `technical-baseline` → `Implementation Tasks`):
|
|
499
522
|
|
|
500
|
-
Check memory for `"
|
|
523
|
+
Check memory for `"implementation-tasks board_id"` in namespace `monomind`. If found, use it as `TASK_BOARD_ID`. Otherwise create it:
|
|
501
524
|
|
|
502
525
|
```bash
|
|
503
|
-
TASK_BOARD_ID=$(monotask board create "
|
|
526
|
+
TASK_BOARD_ID=$(monotask board create "Implementation Tasks" --json | jq -r '.id // empty')
|
|
504
527
|
monotask space boards add "$space_id" "$TASK_BOARD_ID" >/dev/null 2>&1 || true
|
|
505
|
-
npx monomind@latest memory store --key "
|
|
528
|
+
npx monomind@latest memory store --key "implementation-tasks board_id" --value "$TASK_BOARD_ID" --namespace monomind
|
|
506
529
|
monotask column create "$TASK_BOARD_ID" "Backlog" --json >/dev/null
|
|
507
530
|
monotask column create "$TASK_BOARD_ID" "Todo" --json >/dev/null
|
|
508
531
|
monotask column create "$TASK_BOARD_ID" "In Progress" --json >/dev/null
|
|
@@ -520,14 +543,14 @@ TASK_COL_BACKLOG=$(echo "$task_columns" | jq -r '.[] | select(.title == "Backlog
|
|
|
520
543
|
|
|
521
544
|
---
|
|
522
545
|
|
|
523
|
-
**Ops task board** (`business-operation` → `
|
|
546
|
+
**Ops task board** (`business-operation` → `Operations Tasks`):
|
|
524
547
|
|
|
525
|
-
Check memory for `"
|
|
548
|
+
Check memory for `"operations-tasks board_id"` in namespace `monomind`. If found, use it as `OPS_BOARD_ID`. Otherwise create it:
|
|
526
549
|
|
|
527
550
|
```bash
|
|
528
|
-
OPS_BOARD_ID=$(monotask board create "
|
|
551
|
+
OPS_BOARD_ID=$(monotask board create "Operations Tasks" --json | jq -r '.id // empty')
|
|
529
552
|
monotask space boards add "$space_id" "$OPS_BOARD_ID" >/dev/null 2>&1 || true
|
|
530
|
-
npx monomind@latest memory store --key "
|
|
553
|
+
npx monomind@latest memory store --key "operations-tasks board_id" --value "$OPS_BOARD_ID" --namespace monomind
|
|
531
554
|
monotask column create "$OPS_BOARD_ID" "Backlog" --json >/dev/null
|
|
532
555
|
monotask column create "$OPS_BOARD_ID" "Todo" --json >/dev/null
|
|
533
556
|
monotask column create "$OPS_BOARD_ID" "In Progress" --json >/dev/null
|
|
@@ -551,11 +574,11 @@ OPS_COL_BACKLOG=$(echo "$ops_columns" | jq -r '.[] | select(.title == "Backlog")
|
|
|
551
574
|
if [ "$category" = "business-operation" ]; then
|
|
552
575
|
TARGET_BOARD="$OPS_BOARD_ID"
|
|
553
576
|
COL_TARGET=$([ "$has_prerequisites" = "true" ] && echo "$OPS_COL_BACKLOG" || echo "$OPS_COL_TODO")
|
|
554
|
-
BOARD_LABEL="
|
|
577
|
+
BOARD_LABEL="Operations Tasks"
|
|
555
578
|
else
|
|
556
579
|
TARGET_BOARD="$TASK_BOARD_ID"
|
|
557
580
|
COL_TARGET=$([ "$has_prerequisites" = "true" ] && echo "$TASK_COL_BACKLOG" || echo "$TASK_COL_TODO")
|
|
558
|
-
BOARD_LABEL="
|
|
581
|
+
BOARD_LABEL="Implementation Tasks"
|
|
559
582
|
fi
|
|
560
583
|
|
|
561
584
|
TASK_CARD_ID=$(monotask card create "$TARGET_BOARD" "$COL_TARGET" "<task title>" --json | jq -r '.id')
|
|
@@ -609,9 +632,9 @@ lessons:
|
|
|
609
632
|
next_actions:
|
|
610
633
|
- <e.g. "run mastermind:build to prototype chosen direction">
|
|
611
634
|
- <e.g. "run mastermind:research to validate top idea">
|
|
612
|
-
board_url: "monotask://<project_name>/
|
|
613
|
-
task_board_url: "monotask://<project_name>/
|
|
614
|
-
ops_task_board_url: "monotask://<project_name>/
|
|
635
|
+
board_url: "monotask://<project_name>/Ideas & Innovation"
|
|
636
|
+
task_board_url: "monotask://<project_name>/Implementation Tasks"
|
|
637
|
+
ops_task_board_url: "monotask://<project_name>/Operations Tasks"
|
|
615
638
|
run_id: <ISO8601-timestamp>
|
|
616
639
|
summary:
|
|
617
640
|
ideas_generated: N
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@monoes/monomindcli",
|
|
3
|
-
"version": "1.9.
|
|
3
|
+
"version": "1.9.11",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Monomind CLI - Enterprise AI agent orchestration with 60+ specialized agents, swarm coordination, MCP server, self-learning hooks, and vector memory for Claude Code",
|
|
6
6
|
"main": "dist/src/index.js",
|