bluekiwi 0.2.4 → 0.3.0

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.
@@ -1,219 +0,0 @@
1
- ---
2
- name: bk-next
3
- description: BlueKiwi next step skill. Completes the current step and executes the next one. This skill should be used when the user says "/bk-next", "next step", "next", "continue", "proceed", or wants to advance to the next step in a running BlueKiwi task.
4
- user_invocable: true
5
- ---
6
-
7
- # BlueKiwi Next Step
8
-
9
- Complete the current step and execute the next one in a running task.
10
-
11
- ## Core Principles
12
-
13
- - **Instructions are internal agent directives. Never expose raw instruction text to the user.**
14
- - Show only execution results (analysis, questions, suggestions) to the user.
15
- - Never use system terms like "node", "node_type" with the user.
16
-
17
- ## Natural Language Triggers
18
-
19
- If the user says "proceed", "next", "continue", "let's go", "OK", "go ahead" — treat it the same as `/bk-next`.
20
-
21
- ## Session Restore (Context Injection)
22
-
23
- The `advance` response includes `task_context`. Use it to resume seamlessly in a new session.
24
-
25
- 1. `task_context.running_context` — Accumulated decisions and project state. Read and internalize it.
26
- 2. `task_context.completed_steps` — Summary of completed steps. Understand where we are.
27
- 3. `task_context.artifacts` — List of available artifacts. Use the Read tool on `file_path` entries when needed.
28
- 4. `task_context.last_session` — Last execution session info. Note if a different session/user progressed it.
29
-
30
- When resuming in a new session (no prior conversation context), use `task_context` to reconstruct the situation before proceeding.
31
-
32
- ## execute_step Required Parameters
33
-
34
- <HARD-RULE>
35
- Always populate these parameters when calling execute_step:
36
- - `context_snapshot`: JSON string. Store decisions made, key findings, and hints for the next step.
37
- Example: `{"decisions":[{"question":"tech stack","chosen":"Next.js","reason":"team experience"}],"key_findings":["RLS required"],"next_step_hint":"write implementation plan"}`
38
- - `session_id`: Current session ID (omit if unknown)
39
- - `agent_id`: Agent identifier (e.g., "claude-code")
40
- - `model_id`: Current LLM model ID (e.g., "claude-opus-4-6", "gpt-5.2"). Check system prompt.
41
- - `user_name`: User name (omit if unknown)
42
-
43
- If files were created or modified, record in the `artifacts` array:
44
-
45
- - File created: `{artifact_type: "file", title: "Design Doc", file_path: "docs/specs/design.md"}`
46
- - Git commit: `{artifact_type: "git_commit", title: "Phase 1 Implementation", git_ref: "<hash>"}`
47
- - URL: `{artifact_type: "url", title: "PR", url: "https://..."}`
48
- </HARD-RULE>
49
-
50
- ## Credential Handling (API Service Nodes)
51
-
52
- If the `advance` response includes a `credentials` field, the node requires external API integration.
53
-
54
- <HARD-RULE>
55
- Use key-value pairs from `credentials.secrets` to make API calls.
56
- Example: `credentials.secrets.ACCESS_TOKEN` → `curl -H "Authorization: Bearer $TOKEN"`
57
- Never include raw secret values (tokens, keys) in `execute_step` output.
58
- Record only results (URL, status code, response summary).
59
- </HARD-RULE>
60
-
61
- ## Execution Loop
62
-
63
- ```
64
- LOOP:
65
- 1. If the current step is pending → extract response from conversation, save with execute_step
66
- → Check execute_step response for next_action field (see HITL section below)
67
- 2. Call advance(peek=false) to fetch the next step
68
- 3. If finished → call complete_task, then end
69
- 4. Execute the next step (see step-type handling below)
70
- 5. Check auto_advance:
71
- - true → show brief inline result, then go back to step 2
72
- - false → HITL pause (see below)
73
- ```
74
-
75
- <HARD-RULE>
76
- After executing an auto_advance=true step, always proceed to the next step automatically.
77
- Do not show "type /bk-next to continue" hint.
78
- Show a brief one-line update: "✅ [{title}] done → continuing to next step..."
79
- Repeat the loop until reaching an auto_advance=false step.
80
- </HARD-RULE>
81
-
82
- ## HITL Pause (auto_advance=false steps)
83
-
84
- <HARD-RULE>
85
- When execute_step returns `next_action: "wait_for_human_approval"`:
86
-
87
- 1. Call `request_approval` with a brief message summarizing what was done.
88
- 2. Show the user:
89
- ```
90
- ⏸ Step [{title}] complete — waiting for approval before proceeding.
91
- A notification has been sent. Use /bk-approve when ready.
92
- ```
93
- 3. STOP. Do NOT call `advance`. Do NOT proceed to the next step.
94
-
95
- The server will reject `advance` with 403 until a human approves via /bk-approve.
96
- </HARD-RULE>
97
-
98
- ## Step-Type Handling
99
-
100
- ### action step
101
-
102
- 1. Read the instruction and execute it. Reference task context.
103
- 2. **Use heartbeat actively**: For tasks taking 30+ seconds, send heartbeat regularly.
104
- Example: "Analyzing architecture section...", "Designing API endpoints...", "Writing design doc line 119..."
105
- 3. Show the result to the user.
106
- 4. Save with `execute_step`.
107
-
108
- ### gate step
109
-
110
- 1. Check `get_web_response` for a web response first.
111
- 2. If none, ask naturally via `AskUserQuestion`.
112
- 3. **Partial edit option**: For approve/modify questions, offer 3 options: "Approve (Recommended)" / "Partial edit" / "Full rewrite".
113
- 4. Save the response with `execute_step`.
114
-
115
- ### loop step
116
-
117
- 1. Execute the instruction.
118
- 2. **Confirm before stopping**: When the stop condition is met, do not auto-stop — ask via AskUserQuestion:
119
- - "Enough information collected. Do you have anything else to add?"
120
- - "That's enough (Recommended)" / "I have more to add"
121
- 3. **Call execute_step once per loop iteration.** Do not merge multiple answers into one. Each iteration is a separate log entry.
122
- 4. Pass `loop_continue` true/false to execute_step.
123
-
124
- ## Progress Display
125
-
126
- Show progress at the start of each step as a single line:
127
-
128
- ```
129
- ✅1 → ✅2 → ✅3 → **4** → 5 → 6 → 7 → 8 → 9 → 10 → 11
130
- ```
131
-
132
- ## When Pausing (auto_advance=false only)
133
-
134
- - **HITL approval required** (execute_step returned `next_action: "wait_for_human_approval"`):
135
- Call `request_approval`, show waiting message, stop. Resume only after `/bk-approve`.
136
- - **Gate step**: Wait for user response via AskUserQuestion.
137
- - **Other action step pausing without HITL**: "Type `/bk-next` to proceed."
138
-
139
- ## Completion Message
140
-
141
- <HARD-RULE>
142
- When the workflow finishes, call `complete_task` with a non-empty `summary`.
143
- The summary must include decisions made, artifact paths, and suggested next actions, formatted in Markdown.
144
- </HARD-RULE>
145
-
146
- ```
147
- complete_task(task_id=N, status="completed", summary="## Decisions\n- Goal: ...\n- Approach: ...\n\n## Artifacts\n- Design doc: `docs/specs/...`\n\n## Next Steps\nStart implementation from Phase 1.")
148
- ```
149
-
150
- Show completion message to user:
151
-
152
- ```
153
- 🎉 Workflow complete!
154
- ━━━━━━━━━━━━━━━━━━━━━━━━━
155
-
156
- ## Summary
157
- [key decisions table]
158
-
159
- ## Artifacts
160
- - 📄 Design doc: `docs/specs/YYYY-MM-DD-xxx-design.md`
161
-
162
- ## Next Steps
163
- Start implementation from Phase 1.
164
- ━━━━━━━━━━━━━━━━━━━━━━━━━
165
- ```
166
-
167
- ## output Format
168
-
169
- <HARD-RULE>
170
- All output must be at least 200 characters. Do not send one-line summaries only.
171
- Always use ## heading structure.
172
- Write in past-tense declarative form ("I analyzed...", "I generated...").
173
- Include absolute paths for any files created.
174
- </HARD-RULE>
175
-
176
- action:
177
-
178
- ```markdown
179
- ## Actions Taken
180
-
181
- Analyzed the project context.
182
-
183
- ## Results
184
-
185
- - **Project name**: recipe-sharing-app
186
- - **Current state**: Initial stage (no code yet)
187
- - **Tech stack**: TBD
188
- - **Key findings**: ...
189
-
190
- ## Artifacts
191
-
192
- Saved design doc to `/tmp/or-test-verify/docs/specs/2026-04-08-recipe-design.md`.
193
- ```
194
-
195
- gate:
196
-
197
- ```markdown
198
- ## Question
199
-
200
- What is the core problem this project management tool aims to solve?
201
-
202
- ## Options
203
-
204
- 1. Personal task management (Recommended)
205
- 2. Team collaboration
206
- 3. Educational use
207
-
208
- ## Response
209
-
210
- Selected "Personal task management" — proceeding as a personal productivity task tracker.
211
- ```
212
-
213
- ## Comment Check
214
-
215
- If comments are present, notify the user before executing and ask how to handle them via AskUserQuestion.
216
-
217
- ## Failure Handling
218
-
219
- Ask via AskUserQuestion: Skip / Retry / Previous step / Abort.