@contextium/cli 1.0.60 → 1.0.64

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contextium/cli",
3
- "version": "1.0.60",
3
+ "version": "1.0.64",
4
4
  "description": "Command-line tool for managing Contextium documentation, agents, skills, and workflows — pipe context to AI coding assistants",
5
5
  "keywords": [
6
6
  "contextium",
@@ -104,7 +104,7 @@ Workflow loaded. What would you like to do?
104
104
 
105
105
  - If there are **in_progress** tasks: note the first one as the active task and ask if the user wants to resume it.
106
106
  - If there are only **not_started** tasks: note the first one as the suggested next action. Do not auto-start — let the user direct the session.
107
- - If you create new action items during the session: call `add_task` to record them for the team.
107
+ - If you create new action items during the session: call `add_task` to record them for the team. For project workflows these are stored as phase files in the Project Library — no separate "plan" step needed.
108
108
  - When a task is complete: call `update_task_status(taskId, 'done')`.
109
109
  - Do not work on multiple tasks simultaneously.
110
110
 
@@ -112,6 +112,57 @@ If a workflow name was specified directly in the user's message, skip step 1 and
112
112
  If no workspace is specified, use the default from .contextiumrc or ask the user.
113
113
  </process>
114
114
 
115
+ <auto-planning>
116
+ ## Auto-planning — triggered on first user goal after loading
117
+
118
+ Once the workflow is loaded and the user states what they want to do, apply this logic **before starting any work**:
119
+
120
+ **First check: does this workflow have a Project Library?**
121
+ - Look for `projectConfig.contextLibraryId` in the loaded workflow data.
122
+ - If it is missing or null: this is a legacy knowledge workflow with no project tracking. **Skip all auto-planning entirely** — just help the user with their request directly as you normally would.
123
+ - Only proceed with auto-planning if `contextLibraryId` is set.
124
+
125
+ **If `phaseCount === 0` (no phases set up yet) AND `contextLibraryId` exists:**
126
+
127
+ Assess the scope of the request silently, then act accordingly:
128
+
129
+ **Simple / single task** (one clear, bounded piece of work — e.g. "fix this bug", "write a readme", "add a button"):
130
+ - Create 1 phase file in the Project Library
131
+ - Call `update_workflow` with `projectConfig: { phaseCount: 1, completedCount: 0, contextLibraryId: "<projectLibraryId>" }`
132
+ - Say: "Added as 1 phase. Starting now." — then proceed immediately as the Builder
133
+
134
+ **Complex / multi-part ask** (a feature, a new system, multiple steps — e.g. "build an onboarding flow", "add payments", "create the admin panel"):
135
+ - Break the work down into logical phases (DB migrations first, then API, then MCP/CLI, then UI — in dependency order)
136
+ - Aim for 3–10 phases. Each phase = one coherent unit of work that can be built and reviewed independently
137
+ - Create one phase file per phase in the Project Library using `contextium new "<project-library>" -w <workspace> --stdin`
138
+ Each file must include: phase ID (e.g. `phase-001`), title, layer, status (`pending`), and a brief implementation spec
139
+ - Call `update_workflow` with `projectConfig: { phaseCount: <N>, completedCount: 0, contextLibraryId: "<projectLibraryId>" }`
140
+ - Show the user the phase breakdown:
141
+ ```
142
+ Planned X phases:
143
+ 1. <title>
144
+ 2. <title>
145
+ ...
146
+ Starting phase 1 now.
147
+ ```
148
+ - Then immediately start the first phase as the Builder
149
+
150
+ **If `phaseCount > 0` (phases already exist):**
151
+ - Do NOT re-plan. Go straight to the next pending phase.
152
+ - If the user's request is new work unrelated to existing phases: create a new phase file, increment `phaseCount` via `update_workflow`, and begin it.
153
+
154
+ **Completing phases:**
155
+ - When a phase is done, call `mark_phase_complete` (MCP) or `update_workflow` with `completedCount` incremented
156
+ - Announce progress: "Phase 2 of 5 complete." then ask if the user wants to continue to the next phase
157
+ - Do not auto-start the next phase without confirmation
158
+
159
+ **Rules:**
160
+ - Never ask the user "should I plan this?" — just assess and act
161
+ - Never show raw file creation output — only the phase list summary
162
+ - Phase files go in the Project Library (the library whose name contains "Project Library")
163
+ - Keep phase titles short and action-oriented (e.g. "Add payments table migration", "Build checkout API endpoint")
164
+ </auto-planning>
165
+
115
166
  <session-rules>
116
167
  Once the session context block has been output, these rules apply for the rest of the conversation:
117
168