omgkit 2.1.1 → 2.2.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.
- package/package.json +1 -1
- package/plugin/skills/SKILL_STANDARDS.md +743 -0
- package/plugin/skills/databases/mongodb/SKILL.md +797 -28
- package/plugin/skills/databases/prisma/SKILL.md +776 -30
- package/plugin/skills/databases/redis/SKILL.md +885 -25
- package/plugin/skills/devops/aws/SKILL.md +686 -28
- package/plugin/skills/devops/github-actions/SKILL.md +684 -29
- package/plugin/skills/devops/kubernetes/SKILL.md +621 -24
- package/plugin/skills/frameworks/django/SKILL.md +920 -20
- package/plugin/skills/frameworks/express/SKILL.md +1361 -35
- package/plugin/skills/frameworks/fastapi/SKILL.md +1260 -33
- package/plugin/skills/frameworks/laravel/SKILL.md +1244 -31
- package/plugin/skills/frameworks/nestjs/SKILL.md +1005 -26
- package/plugin/skills/frameworks/rails/SKILL.md +594 -28
- package/plugin/skills/frameworks/spring/SKILL.md +528 -35
- package/plugin/skills/frameworks/vue/SKILL.md +1296 -27
- package/plugin/skills/frontend/accessibility/SKILL.md +1108 -34
- package/plugin/skills/frontend/frontend-design/SKILL.md +1304 -26
- package/plugin/skills/frontend/responsive/SKILL.md +847 -21
- package/plugin/skills/frontend/shadcn-ui/SKILL.md +976 -38
- package/plugin/skills/frontend/tailwindcss/SKILL.md +831 -35
- package/plugin/skills/frontend/threejs/SKILL.md +1298 -29
- package/plugin/skills/languages/javascript/SKILL.md +935 -31
- package/plugin/skills/methodology/brainstorming/SKILL.md +597 -23
- package/plugin/skills/methodology/defense-in-depth/SKILL.md +832 -34
- package/plugin/skills/methodology/dispatching-parallel-agents/SKILL.md +665 -31
- package/plugin/skills/methodology/executing-plans/SKILL.md +556 -24
- package/plugin/skills/methodology/finishing-development-branch/SKILL.md +595 -25
- package/plugin/skills/methodology/problem-solving/SKILL.md +429 -61
- package/plugin/skills/methodology/receiving-code-review/SKILL.md +536 -24
- package/plugin/skills/methodology/requesting-code-review/SKILL.md +632 -21
- package/plugin/skills/methodology/root-cause-tracing/SKILL.md +641 -30
- package/plugin/skills/methodology/sequential-thinking/SKILL.md +262 -3
- package/plugin/skills/methodology/systematic-debugging/SKILL.md +571 -32
- package/plugin/skills/methodology/test-driven-development/SKILL.md +779 -24
- package/plugin/skills/methodology/testing-anti-patterns/SKILL.md +691 -29
- package/plugin/skills/methodology/token-optimization/SKILL.md +598 -29
- package/plugin/skills/methodology/verification-before-completion/SKILL.md +543 -22
- package/plugin/skills/methodology/writing-plans/SKILL.md +590 -18
- package/plugin/skills/omega/omega-architecture/SKILL.md +838 -39
- package/plugin/skills/omega/omega-coding/SKILL.md +636 -39
- package/plugin/skills/omega/omega-sprint/SKILL.md +855 -48
- package/plugin/skills/omega/omega-testing/SKILL.md +940 -41
- package/plugin/skills/omega/omega-thinking/SKILL.md +703 -50
- package/plugin/skills/security/better-auth/SKILL.md +1065 -28
- package/plugin/skills/security/oauth/SKILL.md +968 -31
- package/plugin/skills/security/owasp/SKILL.md +894 -33
- package/plugin/skills/testing/playwright/SKILL.md +764 -38
- package/plugin/skills/testing/pytest/SKILL.md +873 -36
- package/plugin/skills/testing/vitest/SKILL.md +980 -35
|
@@ -8,6 +8,8 @@ triggers:
|
|
|
8
8
|
- think through
|
|
9
9
|
- reasoning chain
|
|
10
10
|
- decompose
|
|
11
|
+
- thought process
|
|
12
|
+
- break down problem
|
|
11
13
|
---
|
|
12
14
|
|
|
13
15
|
# Sequential Thinking
|
|
@@ -23,10 +25,15 @@ Sequential thinking transforms chaotic problem-solving into organized, traceable
|
|
|
23
25
|
- Team communication needs clear reasoning trails
|
|
24
26
|
- Debugging requires systematic elimination
|
|
25
27
|
- Decisions need documented justification
|
|
28
|
+
- Complex architectures require step-by-step design
|
|
29
|
+
- AI agents need to show their work transparently
|
|
26
30
|
|
|
27
31
|
## Features
|
|
28
32
|
|
|
29
33
|
### 1. Numbered Thought Chains
|
|
34
|
+
|
|
35
|
+
The foundation of sequential thinking is explicit numbering with clear dependencies:
|
|
36
|
+
|
|
30
37
|
```
|
|
31
38
|
THOUGHT 1: Identify the core problem
|
|
32
39
|
- What exactly is failing?
|
|
@@ -43,6 +50,7 @@ THOUGHT 3: Generate hypotheses (depends on THOUGHT 1, 2)
|
|
|
43
50
|
```
|
|
44
51
|
|
|
45
52
|
### 2. Dependency Tracking
|
|
53
|
+
|
|
46
54
|
```
|
|
47
55
|
[THOUGHT 4] ← depends on [THOUGHT 2, 3]
|
|
48
56
|
This ensures we don't proceed without establishing prerequisites.
|
|
@@ -52,7 +60,144 @@ Mark dependencies explicitly to enable:
|
|
|
52
60
|
- Better collaboration handoffs
|
|
53
61
|
```
|
|
54
62
|
|
|
55
|
-
### 3.
|
|
63
|
+
### 3. TypeScript Implementation
|
|
64
|
+
|
|
65
|
+
```typescript
|
|
66
|
+
interface Thought {
|
|
67
|
+
id: number;
|
|
68
|
+
content: string;
|
|
69
|
+
dependencies: number[];
|
|
70
|
+
status: 'active' | 'revised' | 'invalidated';
|
|
71
|
+
evidence: Evidence[];
|
|
72
|
+
conclusions: string[];
|
|
73
|
+
timestamp: Date;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
interface ThoughtChain {
|
|
77
|
+
thoughts: Map<number, Thought>;
|
|
78
|
+
checkpoints: Checkpoint[];
|
|
79
|
+
currentBranch: string;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
interface Evidence {
|
|
83
|
+
type: 'observation' | 'data' | 'assumption' | 'external';
|
|
84
|
+
content: string;
|
|
85
|
+
confidence: number; // 0-100
|
|
86
|
+
source?: string;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
interface Checkpoint {
|
|
90
|
+
afterThought: number;
|
|
91
|
+
keyFindings: string[];
|
|
92
|
+
openQuestions: string[];
|
|
93
|
+
nextSteps: string[];
|
|
94
|
+
branchPoint?: boolean;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
class SequentialThinkingEngine {
|
|
98
|
+
private chain: ThoughtChain;
|
|
99
|
+
private thoughtCounter: number = 0;
|
|
100
|
+
|
|
101
|
+
constructor() {
|
|
102
|
+
this.chain = {
|
|
103
|
+
thoughts: new Map(),
|
|
104
|
+
checkpoints: [],
|
|
105
|
+
currentBranch: 'main'
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
addThought(
|
|
110
|
+
content: string,
|
|
111
|
+
dependencies: number[] = []
|
|
112
|
+
): Thought {
|
|
113
|
+
// Validate dependencies exist
|
|
114
|
+
for (const depId of dependencies) {
|
|
115
|
+
if (!this.chain.thoughts.has(depId)) {
|
|
116
|
+
throw new Error(`Dependency THOUGHT ${depId} not found`);
|
|
117
|
+
}
|
|
118
|
+
const dep = this.chain.thoughts.get(depId)!;
|
|
119
|
+
if (dep.status === 'invalidated') {
|
|
120
|
+
throw new Error(`Cannot depend on invalidated THOUGHT ${depId}`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const thought: Thought = {
|
|
125
|
+
id: ++this.thoughtCounter,
|
|
126
|
+
content,
|
|
127
|
+
dependencies,
|
|
128
|
+
status: 'active',
|
|
129
|
+
evidence: [],
|
|
130
|
+
conclusions: [],
|
|
131
|
+
timestamp: new Date()
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
this.chain.thoughts.set(thought.id, thought);
|
|
135
|
+
return thought;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
reviseThought(
|
|
139
|
+
id: number,
|
|
140
|
+
newContent: string,
|
|
141
|
+
reason: string
|
|
142
|
+
): void {
|
|
143
|
+
const thought = this.chain.thoughts.get(id);
|
|
144
|
+
if (!thought) throw new Error(`THOUGHT ${id} not found`);
|
|
145
|
+
|
|
146
|
+
// Mark original as revised
|
|
147
|
+
thought.status = 'revised';
|
|
148
|
+
|
|
149
|
+
// Create revision thought
|
|
150
|
+
this.addThought(
|
|
151
|
+
`REVISION of THOUGHT ${id}: ${newContent}\nReason: ${reason}`,
|
|
152
|
+
[id]
|
|
153
|
+
);
|
|
154
|
+
|
|
155
|
+
// Invalidate dependent thoughts
|
|
156
|
+
this.invalidateDependents(id);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
private invalidateDependents(thoughtId: number): void {
|
|
160
|
+
for (const [id, thought] of this.chain.thoughts) {
|
|
161
|
+
if (thought.dependencies.includes(thoughtId)) {
|
|
162
|
+
thought.status = 'invalidated';
|
|
163
|
+
this.invalidateDependents(id);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
createCheckpoint(): Checkpoint {
|
|
169
|
+
const activeThoughts = Array.from(this.chain.thoughts.values())
|
|
170
|
+
.filter(t => t.status === 'active');
|
|
171
|
+
|
|
172
|
+
const checkpoint: Checkpoint = {
|
|
173
|
+
afterThought: this.thoughtCounter,
|
|
174
|
+
keyFindings: activeThoughts.flatMap(t => t.conclusions),
|
|
175
|
+
openQuestions: [],
|
|
176
|
+
nextSteps: []
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
this.chain.checkpoints.push(checkpoint);
|
|
180
|
+
return checkpoint;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
getDependencyGraph(): string {
|
|
184
|
+
let graph = 'DEPENDENCY GRAPH:\n';
|
|
185
|
+
for (const [id, thought] of this.chain.thoughts) {
|
|
186
|
+
const deps = thought.dependencies.length > 0
|
|
187
|
+
? ` ← [${thought.dependencies.join(', ')}]`
|
|
188
|
+
: ' (root)';
|
|
189
|
+
const status = thought.status !== 'active'
|
|
190
|
+
? ` [${thought.status}]`
|
|
191
|
+
: '';
|
|
192
|
+
graph += ` THOUGHT ${id}${deps}${status}\n`;
|
|
193
|
+
}
|
|
194
|
+
return graph;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### 4. Revision and Backtracking
|
|
200
|
+
|
|
56
201
|
```
|
|
57
202
|
REVISION: Updating THOUGHT 3 based on new evidence
|
|
58
203
|
- Original: Assumed single-threaded execution
|
|
@@ -64,7 +209,8 @@ BACKTRACK: Returning to THOUGHT 2
|
|
|
64
209
|
- This invalidates THOUGHT 5-7, need to restart from here
|
|
65
210
|
```
|
|
66
211
|
|
|
67
|
-
###
|
|
212
|
+
### 5. Checkpoint Summaries
|
|
213
|
+
|
|
68
214
|
```
|
|
69
215
|
=== CHECKPOINT after THOUGHT 10 ===
|
|
70
216
|
KEY FINDINGS:
|
|
@@ -82,7 +228,8 @@ NEXT STEPS:
|
|
|
82
228
|
===================================
|
|
83
229
|
```
|
|
84
230
|
|
|
85
|
-
###
|
|
231
|
+
### 6. Visual Thought Mapping
|
|
232
|
+
|
|
86
233
|
```
|
|
87
234
|
[THOUGHT 1: Problem Definition]
|
|
88
235
|
|
|
|
@@ -100,9 +247,76 @@ NEXT STEPS:
|
|
|
100
247
|
[THOUGHT 8: Solution]
|
|
101
248
|
```
|
|
102
249
|
|
|
250
|
+
### 7. Branching Strategy
|
|
251
|
+
|
|
252
|
+
```typescript
|
|
253
|
+
interface Branch {
|
|
254
|
+
name: string;
|
|
255
|
+
parentThought: number;
|
|
256
|
+
thoughts: number[];
|
|
257
|
+
status: 'exploring' | 'selected' | 'abandoned';
|
|
258
|
+
mergeResult?: string;
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
class BranchingThoughtEngine extends SequentialThinkingEngine {
|
|
262
|
+
private branches: Map<string, Branch> = new Map();
|
|
263
|
+
|
|
264
|
+
createBranch(name: string, parentThoughtId: number): void {
|
|
265
|
+
this.branches.set(name, {
|
|
266
|
+
name,
|
|
267
|
+
parentThought: parentThoughtId,
|
|
268
|
+
thoughts: [],
|
|
269
|
+
status: 'exploring'
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
exploreBranches(
|
|
274
|
+
hypotheses: string[]
|
|
275
|
+
): Map<string, number[]> {
|
|
276
|
+
const results = new Map<string, number[]>();
|
|
277
|
+
|
|
278
|
+
for (let i = 0; i < hypotheses.length; i++) {
|
|
279
|
+
const branchName = `hypothesis-${i + 1}`;
|
|
280
|
+
this.createBranch(branchName, this.thoughtCounter);
|
|
281
|
+
|
|
282
|
+
// Add exploration thoughts for this hypothesis
|
|
283
|
+
const thought = this.addThought(
|
|
284
|
+
`Exploring: ${hypotheses[i]}`,
|
|
285
|
+
[this.thoughtCounter]
|
|
286
|
+
);
|
|
287
|
+
|
|
288
|
+
results.set(branchName, [thought.id]);
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
return results;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
selectBranch(name: string, reason: string): void {
|
|
295
|
+
const branch = this.branches.get(name);
|
|
296
|
+
if (!branch) throw new Error(`Branch ${name} not found`);
|
|
297
|
+
|
|
298
|
+
branch.status = 'selected';
|
|
299
|
+
|
|
300
|
+
// Abandon other branches
|
|
301
|
+
for (const [branchName, b] of this.branches) {
|
|
302
|
+
if (branchName !== name && b.status === 'exploring') {
|
|
303
|
+
b.status = 'abandoned';
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
// Document decision
|
|
308
|
+
this.addThought(
|
|
309
|
+
`BRANCH SELECTION: Chose ${name}\nReason: ${reason}`,
|
|
310
|
+
branch.thoughts
|
|
311
|
+
);
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
```
|
|
315
|
+
|
|
103
316
|
## Use Cases
|
|
104
317
|
|
|
105
318
|
### Complex Algorithm Design
|
|
319
|
+
|
|
106
320
|
```
|
|
107
321
|
THOUGHT 1: Define the problem space
|
|
108
322
|
- Input: Unsorted array of N integers
|
|
@@ -125,6 +339,7 @@ THOUGHT 4: Design implementation (depends on THOUGHT 3)
|
|
|
125
339
|
```
|
|
126
340
|
|
|
127
341
|
### System Architecture Decisions
|
|
342
|
+
|
|
128
343
|
```
|
|
129
344
|
THOUGHT 1: Identify scaling bottleneck
|
|
130
345
|
- Database reads: 10,000 QPS
|
|
@@ -152,6 +367,7 @@ THOUGHT 4: Recommendation
|
|
|
152
367
|
```
|
|
153
368
|
|
|
154
369
|
### Debugging Multi-Component Issues
|
|
370
|
+
|
|
155
371
|
```
|
|
156
372
|
THOUGHT 1: Reproduce the issue
|
|
157
373
|
- Steps: Login → Dashboard → Click "Export"
|
|
@@ -181,6 +397,34 @@ THOUGHT 4: Root cause analysis (depends on THOUGHT 3)
|
|
|
181
397
|
ROOT CAUSE: Cross-region upload with large file
|
|
182
398
|
```
|
|
183
399
|
|
|
400
|
+
### AI Agent Task Decomposition
|
|
401
|
+
|
|
402
|
+
```
|
|
403
|
+
THOUGHT 1: Parse user request
|
|
404
|
+
- Goal: "Build a user authentication system"
|
|
405
|
+
- Implicit requirements: Security, scalability, UX
|
|
406
|
+
- Constraints: Existing tech stack (Next.js, PostgreSQL)
|
|
407
|
+
|
|
408
|
+
THOUGHT 2: Identify subtasks (depends on THOUGHT 1)
|
|
409
|
+
1. Database schema for users/sessions
|
|
410
|
+
2. Authentication API endpoints
|
|
411
|
+
3. Password hashing implementation
|
|
412
|
+
4. Session management
|
|
413
|
+
5. Frontend login/signup forms
|
|
414
|
+
6. Password reset flow
|
|
415
|
+
|
|
416
|
+
THOUGHT 3: Determine execution order (depends on THOUGHT 2)
|
|
417
|
+
- Sequential: 1 → 2 → 4 → 6 (data dependencies)
|
|
418
|
+
- Parallel: 3 can be done independently
|
|
419
|
+
- Parallel: 5 can start after 2 is defined
|
|
420
|
+
|
|
421
|
+
THOUGHT 4: Dispatch to specialized agents
|
|
422
|
+
- Database Agent → Subtask 1
|
|
423
|
+
- API Agent → Subtasks 2, 4, 6
|
|
424
|
+
- Security Agent → Subtask 3
|
|
425
|
+
- Frontend Agent → Subtask 5 (waits for 2)
|
|
426
|
+
```
|
|
427
|
+
|
|
184
428
|
## Best Practices
|
|
185
429
|
|
|
186
430
|
### Do's
|
|
@@ -189,6 +433,8 @@ THOUGHT 4: Root cause analysis (depends on THOUGHT 3)
|
|
|
189
433
|
- **Allow revision** - "REVISION: Updating THOUGHT 2 based on..."
|
|
190
434
|
- **Summarize at checkpoints** - Every 5-10 thoughts
|
|
191
435
|
- **Time-box thoughts** - Prevent infinite exploration
|
|
436
|
+
- **Validate assumptions early** - Mark assumptions and test them
|
|
437
|
+
- **Branch for exploration** - Create separate paths for different hypotheses
|
|
192
438
|
|
|
193
439
|
### Don'ts
|
|
194
440
|
- Don't skip numbering for "obvious" thoughts
|
|
@@ -196,6 +442,8 @@ THOUGHT 4: Root cause analysis (depends on THOUGHT 3)
|
|
|
196
442
|
- Don't delete invalid thoughts (strike through instead)
|
|
197
443
|
- Don't exceed 20 thoughts without a checkpoint
|
|
198
444
|
- Don't branch more than 3 levels deep
|
|
445
|
+
- Don't ignore contradictory evidence
|
|
446
|
+
- Don't proceed with invalidated dependencies
|
|
199
447
|
|
|
200
448
|
### Templates
|
|
201
449
|
|
|
@@ -218,6 +466,16 @@ THOUGHT N+1: Comparison matrix
|
|
|
218
466
|
THOUGHT N+2: Recommendation with rationale
|
|
219
467
|
```
|
|
220
468
|
|
|
469
|
+
**Investigation Template:**
|
|
470
|
+
```
|
|
471
|
+
THOUGHT 1: What we observed
|
|
472
|
+
THOUGHT 2: What we expected
|
|
473
|
+
THOUGHT 3: Gap analysis
|
|
474
|
+
THOUGHT 4-N: Hypothesis generation and testing
|
|
475
|
+
CHECKPOINT: Root cause identified
|
|
476
|
+
THOUGHT N+1: Solution design
|
|
477
|
+
```
|
|
478
|
+
|
|
221
479
|
## Related Skills
|
|
222
480
|
|
|
223
481
|
- **writing-plans** - Use sequential thinking to create detailed plans
|
|
@@ -225,6 +483,7 @@ THOUGHT N+2: Recommendation with rationale
|
|
|
225
483
|
- **problem-solving** - Apply systematic approaches
|
|
226
484
|
- **root-cause-tracing** - Use numbered investigation steps
|
|
227
485
|
- **systematic-debugging** - Structure debugging as thought chain
|
|
486
|
+
- **dispatching-parallel-agents** - Coordinate parallel exploration branches
|
|
228
487
|
|
|
229
488
|
## Integration Example
|
|
230
489
|
|