vibe-learning-opencode 0.1.5 → 0.1.6
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/dist/index.js +42 -10
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -97,6 +97,14 @@ Flow:
|
|
|
97
97
|
})
|
|
98
98
|
DO NOT say "Implementing now" until record_learning is called.
|
|
99
99
|
|
|
100
|
+
After implementation, record 1-2 unknown unknowns:
|
|
101
|
+
mcp__vibe-learning__record_unknown_unknown({
|
|
102
|
+
concept_id: "related-concept",
|
|
103
|
+
related_to: "main-concept",
|
|
104
|
+
context: "brief context",
|
|
105
|
+
why_important: "why important"
|
|
106
|
+
})
|
|
107
|
+
|
|
100
108
|
ONE question per message. Wait for answer.`,
|
|
101
109
|
"senior-light": `Execute NOW: Call mcp__vibe-learning__set_mode with mode="senior_light". Confirm mode changed.
|
|
102
110
|
|
|
@@ -125,6 +133,14 @@ Flow:
|
|
|
125
133
|
})
|
|
126
134
|
DO NOT say "Implementing now" until record_learning is called.
|
|
127
135
|
|
|
136
|
+
After implementation, record 1-2 unknown unknowns:
|
|
137
|
+
mcp__vibe-learning__record_unknown_unknown({
|
|
138
|
+
concept_id: "related-concept",
|
|
139
|
+
related_to: "main-concept",
|
|
140
|
+
context: "brief context",
|
|
141
|
+
why_important: "why important"
|
|
142
|
+
})
|
|
143
|
+
|
|
128
144
|
ONE question per round. Be strict like a real senior.`,
|
|
129
145
|
before: `[VibeLearning - Before Mode]
|
|
130
146
|
|
|
@@ -135,18 +151,34 @@ Then proceed regardless of answer.`,
|
|
|
135
151
|
Briefly mention one alternative while implementing.
|
|
136
152
|
Example: "Using X, but Y is also an option if you need Z."`
|
|
137
153
|
};
|
|
138
|
-
var AUTO_LEARNING_PROMPT = `[VibeLearning -
|
|
154
|
+
var AUTO_LEARNING_PROMPT = `[VibeLearning - Task Completion]
|
|
155
|
+
|
|
156
|
+
Task completed. Execute these steps NOW (in order):
|
|
157
|
+
|
|
158
|
+
**STEP 1: Identify Concepts (ALWAYS DO THIS)**
|
|
159
|
+
Identify 1-3 key concepts used in this task. Use kebab-case (e.g., "redis-caching", "jwt-auth", "react-hooks").
|
|
160
|
+
|
|
161
|
+
**STEP 2: Record Unknown Unknowns (ALWAYS DO THIS)**
|
|
162
|
+
For each concept, think of 1-2 related concepts the user might not know.
|
|
163
|
+
Call mcp__vibe-learning__record_unknown_unknown for each:
|
|
164
|
+
- concept_id: the unknown concept (e.g., "cache-stampede")
|
|
165
|
+
- related_to: the concept from the task (e.g., "redis-caching")
|
|
166
|
+
- context: brief context of how it relates
|
|
167
|
+
- why_important: why they should learn it
|
|
168
|
+
|
|
169
|
+
Example: Task used JWT auth \u2192 record "refresh-token-rotation", "token-revocation"
|
|
139
170
|
|
|
140
|
-
|
|
171
|
+
**STEP 3: Register Main Concept (ALWAYS DO THIS)**
|
|
172
|
+
Call mcp__vibe-learning__get_concept_level for the main concept to register it in the learning system.
|
|
141
173
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
174
|
+
**STEP 4: Ask Learning Question (CONDITIONAL)**
|
|
175
|
+
Call mcp__vibe-learning__should_ask_question to check.
|
|
176
|
+
- If shouldAsk is true AND mode is not "off":
|
|
177
|
+
- Ask a level-appropriate question (L1-L5)
|
|
178
|
+
- After user answers, call mcp__vibe-learning__record_learning
|
|
179
|
+
- If shouldAsk is false: briefly mention cooldown status
|
|
148
180
|
|
|
149
|
-
Ask naturally, like conversation.`;
|
|
181
|
+
Ask naturally, like conversation. Keep it brief.`;
|
|
150
182
|
function parseLearnCommand(text) {
|
|
151
183
|
const lower = text.toLowerCase().trim();
|
|
152
184
|
if (lower === "/learn" || lower === "/learn status")
|
|
@@ -211,7 +243,7 @@ var VibeLearningPlugin = (ctx) => {
|
|
|
211
243
|
const concept = extractConceptFromPath(filePath);
|
|
212
244
|
if (concept)
|
|
213
245
|
addConcept(concept);
|
|
214
|
-
if (toolCount >= CONFIG.TOOL_THRESHOLD
|
|
246
|
+
if (toolCount >= CONFIG.TOOL_THRESHOLD) {
|
|
215
247
|
const now = Date.now();
|
|
216
248
|
if (now - lastLearningPrompt >= CONFIG.COOLDOWN_MS) {
|
|
217
249
|
toolCount = 0;
|