@techwavedev/agi-agent-kit 1.1.7 → 1.2.1

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.

Potentially problematic release.


This version of @techwavedev/agi-agent-kit might be problematic. Click here for more details.

Files changed (111) hide show
  1. package/CHANGELOG.md +82 -1
  2. package/README.md +190 -12
  3. package/bin/init.js +30 -2
  4. package/package.json +6 -3
  5. package/templates/base/AGENTS.md +54 -23
  6. package/templates/base/README.md +325 -0
  7. package/templates/base/directives/memory_integration.md +95 -0
  8. package/templates/base/execution/memory_manager.py +309 -0
  9. package/templates/base/execution/session_boot.py +218 -0
  10. package/templates/base/execution/session_init.py +320 -0
  11. package/templates/base/skill-creator/SKILL_skillcreator.md +23 -36
  12. package/templates/base/skill-creator/scripts/init_skill.py +18 -135
  13. package/templates/skills/ec/README.md +31 -0
  14. package/templates/skills/ec/aws/SKILL.md +1020 -0
  15. package/templates/skills/ec/aws/defaults.yaml +13 -0
  16. package/templates/skills/ec/aws/references/common_patterns.md +80 -0
  17. package/templates/skills/ec/aws/references/mcp_servers.md +98 -0
  18. package/templates/skills/ec/aws-terraform/SKILL.md +349 -0
  19. package/templates/skills/ec/aws-terraform/references/best_practices.md +394 -0
  20. package/templates/skills/ec/aws-terraform/references/checkov_reference.md +337 -0
  21. package/templates/skills/ec/aws-terraform/scripts/configure_mcp.py +150 -0
  22. package/templates/skills/ec/confluent-kafka/SKILL.md +655 -0
  23. package/templates/skills/ec/confluent-kafka/references/ansible_playbooks.md +792 -0
  24. package/templates/skills/ec/confluent-kafka/references/ec_deployment.md +579 -0
  25. package/templates/skills/ec/confluent-kafka/references/kraft_migration.md +490 -0
  26. package/templates/skills/ec/confluent-kafka/references/troubleshooting.md +778 -0
  27. package/templates/skills/ec/confluent-kafka/references/upgrade_7x_to_8x.md +488 -0
  28. package/templates/skills/ec/confluent-kafka/scripts/kafka_health_check.py +435 -0
  29. package/templates/skills/ec/confluent-kafka/scripts/upgrade_preflight.py +568 -0
  30. package/templates/skills/ec/confluent-kafka/scripts/validate_config.py +455 -0
  31. package/templates/skills/ec/consul/SKILL.md +427 -0
  32. package/templates/skills/ec/consul/references/acl_setup.md +168 -0
  33. package/templates/skills/ec/consul/references/ha_config.md +196 -0
  34. package/templates/skills/ec/consul/references/troubleshooting.md +267 -0
  35. package/templates/skills/ec/consul/references/upgrades.md +213 -0
  36. package/templates/skills/ec/consul/scripts/consul_health_report.py +530 -0
  37. package/templates/skills/ec/consul/scripts/consul_status.py +264 -0
  38. package/templates/skills/ec/consul/scripts/generate_values.py +170 -0
  39. package/templates/skills/ec/documentation/SKILL.md +351 -0
  40. package/templates/skills/ec/documentation/references/best_practices.md +201 -0
  41. package/templates/skills/ec/documentation/scripts/analyze_code.py +307 -0
  42. package/templates/skills/ec/documentation/scripts/detect_changes.py +460 -0
  43. package/templates/skills/ec/documentation/scripts/generate_changelog.py +312 -0
  44. package/templates/skills/ec/documentation/scripts/sync_docs.py +272 -0
  45. package/templates/skills/ec/documentation/scripts/update_skill_docs.py +366 -0
  46. package/templates/skills/ec/gitlab/SKILL.md +529 -0
  47. package/templates/skills/ec/gitlab/references/agent_installation.md +416 -0
  48. package/templates/skills/ec/gitlab/references/api_reference.md +508 -0
  49. package/templates/skills/ec/gitlab/references/gitops_flux.md +465 -0
  50. package/templates/skills/ec/gitlab/references/troubleshooting.md +518 -0
  51. package/templates/skills/ec/gitlab/scripts/generate_agent_values.py +329 -0
  52. package/templates/skills/ec/gitlab/scripts/gitlab_agent_status.py +414 -0
  53. package/templates/skills/ec/jira/SKILL.md +484 -0
  54. package/templates/skills/ec/jira/references/jql_reference.md +148 -0
  55. package/templates/skills/ec/jira/scripts/add_comment.py +91 -0
  56. package/templates/skills/ec/jira/scripts/bulk_log_work.py +124 -0
  57. package/templates/skills/ec/jira/scripts/create_ticket.py +162 -0
  58. package/templates/skills/ec/jira/scripts/get_ticket.py +191 -0
  59. package/templates/skills/ec/jira/scripts/jira_client.py +383 -0
  60. package/templates/skills/ec/jira/scripts/log_work.py +154 -0
  61. package/templates/skills/ec/jira/scripts/search_tickets.py +104 -0
  62. package/templates/skills/ec/jira/scripts/update_comment.py +67 -0
  63. package/templates/skills/ec/jira/scripts/update_ticket.py +161 -0
  64. package/templates/skills/ec/karpenter/SKILL.md +301 -0
  65. package/templates/skills/ec/karpenter/references/ec2nodeclasses.md +421 -0
  66. package/templates/skills/ec/karpenter/references/migration.md +396 -0
  67. package/templates/skills/ec/karpenter/references/nodepools.md +400 -0
  68. package/templates/skills/ec/karpenter/references/troubleshooting.md +359 -0
  69. package/templates/skills/ec/karpenter/scripts/generate_ec2nodeclass.py +187 -0
  70. package/templates/skills/ec/karpenter/scripts/generate_nodepool.py +245 -0
  71. package/templates/skills/ec/karpenter/scripts/karpenter_status.py +359 -0
  72. package/templates/skills/ec/opensearch/SKILL.md +720 -0
  73. package/templates/skills/ec/opensearch/references/ml_neural_search.md +576 -0
  74. package/templates/skills/ec/opensearch/references/operator.md +532 -0
  75. package/templates/skills/ec/opensearch/references/query_dsl.md +532 -0
  76. package/templates/skills/ec/opensearch/scripts/configure_mcp.py +148 -0
  77. package/templates/skills/ec/victoriametrics/SKILL.md +598 -0
  78. package/templates/skills/ec/victoriametrics/references/kubernetes.md +531 -0
  79. package/templates/skills/ec/victoriametrics/references/prometheus_migration.md +333 -0
  80. package/templates/skills/ec/victoriametrics/references/troubleshooting.md +442 -0
  81. package/templates/skills/knowledge/SKILLS_CATALOG.md +274 -4
  82. package/templates/skills/knowledge/intelligent-routing/SKILL.md +237 -164
  83. package/templates/skills/knowledge/parallel-agents/SKILL.md +345 -73
  84. package/templates/skills/knowledge/plugin-discovery/SKILL.md +582 -0
  85. package/templates/skills/knowledge/plugin-discovery/scripts/platform_setup.py +1083 -0
  86. package/templates/skills/knowledge/design-md/README.md +0 -34
  87. package/templates/skills/knowledge/design-md/SKILL.md +0 -193
  88. package/templates/skills/knowledge/design-md/examples/DESIGN.md +0 -154
  89. package/templates/skills/knowledge/notebooklm-mcp/SKILL.md +0 -71
  90. package/templates/skills/knowledge/notebooklm-mcp/assets/example_asset.txt +0 -24
  91. package/templates/skills/knowledge/notebooklm-mcp/references/api_reference.md +0 -34
  92. package/templates/skills/knowledge/notebooklm-mcp/scripts/example.py +0 -19
  93. package/templates/skills/knowledge/react-components/README.md +0 -36
  94. package/templates/skills/knowledge/react-components/SKILL.md +0 -53
  95. package/templates/skills/knowledge/react-components/examples/gold-standard-card.tsx +0 -80
  96. package/templates/skills/knowledge/react-components/package-lock.json +0 -231
  97. package/templates/skills/knowledge/react-components/package.json +0 -16
  98. package/templates/skills/knowledge/react-components/resources/architecture-checklist.md +0 -15
  99. package/templates/skills/knowledge/react-components/resources/component-template.tsx +0 -37
  100. package/templates/skills/knowledge/react-components/resources/stitch-api-reference.md +0 -14
  101. package/templates/skills/knowledge/react-components/resources/style-guide.json +0 -27
  102. package/templates/skills/knowledge/react-components/scripts/fetch-stitch.sh +0 -30
  103. package/templates/skills/knowledge/react-components/scripts/validate.js +0 -68
  104. package/templates/skills/knowledge/self-update/SKILL.md +0 -60
  105. package/templates/skills/knowledge/self-update/scripts/update_kit.py +0 -103
  106. package/templates/skills/knowledge/stitch-loop/README.md +0 -54
  107. package/templates/skills/knowledge/stitch-loop/SKILL.md +0 -235
  108. package/templates/skills/knowledge/stitch-loop/examples/SITE.md +0 -73
  109. package/templates/skills/knowledge/stitch-loop/examples/next-prompt.md +0 -25
  110. package/templates/skills/knowledge/stitch-loop/resources/baton-schema.md +0 -61
  111. package/templates/skills/knowledge/stitch-loop/resources/site-template.md +0 -104
@@ -0,0 +1,400 @@
1
+ # NodePool Configuration Reference
2
+
3
+ Comprehensive NodePool configuration patterns and examples.
4
+
5
+ ---
6
+
7
+ ## NodePool Structure
8
+
9
+ ```yaml
10
+ apiVersion: karpenter.sh/v1
11
+ kind: NodePool
12
+ metadata:
13
+ name: <name>
14
+ annotations:
15
+ # Optional: Prevent disruption
16
+ karpenter.sh/do-not-disrupt: "true"
17
+ spec:
18
+ template:
19
+ metadata:
20
+ labels: {}
21
+ annotations: {}
22
+ spec:
23
+ nodeClassRef:
24
+ group: karpenter.k8s.aws
25
+ kind: EC2NodeClass
26
+ name: <ec2nodeclass-name>
27
+ requirements: []
28
+ taints: []
29
+ startupTaints: []
30
+ expireAfter: 720h
31
+ terminationGracePeriod: 24h
32
+ limits:
33
+ cpu: 1000
34
+ memory: 1000Gi
35
+ disruption:
36
+ consolidationPolicy: WhenEmptyOrUnderutilized
37
+ consolidateAfter: 1m
38
+ budgets: []
39
+ weight: 10
40
+ ```
41
+
42
+ ---
43
+
44
+ ## Requirement Keys
45
+
46
+ ### Kubernetes Standard Labels
47
+
48
+ | Key | Values | Description |
49
+ | ---------------------------------- | ------------------ | ----------------------- |
50
+ | `kubernetes.io/arch` | `amd64`, `arm64` | CPU architecture |
51
+ | `kubernetes.io/os` | `linux`, `windows` | Operating system |
52
+ | `node.kubernetes.io/instance-type` | EC2 types | Specific instance types |
53
+ | `topology.kubernetes.io/zone` | AZ names | Availability zones |
54
+
55
+ ### Karpenter Labels
56
+
57
+ | Key | Values | Description |
58
+ | --------------------------------------------- | ---------------------------- | ------------------------ |
59
+ | `karpenter.sh/capacity-type` | `spot`, `on-demand` | Capacity type |
60
+ | `karpenter.k8s.aws/instance-category` | `c`, `m`, `r`, `t`, `g`, `p` | Instance family category |
61
+ | `karpenter.k8s.aws/instance-generation` | `5`, `6`, `7` | Instance generation |
62
+ | `karpenter.k8s.aws/instance-size` | `medium`, `large`, `xlarge` | Instance size |
63
+ | `karpenter.k8s.aws/instance-cpu` | Number | vCPU count |
64
+ | `karpenter.k8s.aws/instance-memory` | Number | Memory in Mi |
65
+ | `karpenter.k8s.aws/instance-hypervisor` | `nitro`, `xen` | Hypervisor type |
66
+ | `karpenter.k8s.aws/instance-gpu-count` | Number | GPU count |
67
+ | `karpenter.k8s.aws/instance-gpu-manufacturer` | `nvidia`, `amd` | GPU manufacturer |
68
+ | `karpenter.k8s.aws/instance-local-nvme` | Number | Local NVMe storage in GB |
69
+
70
+ ---
71
+
72
+ ## Example NodePools
73
+
74
+ ### General Purpose (Cost-Optimized)
75
+
76
+ ```yaml
77
+ apiVersion: karpenter.sh/v1
78
+ kind: NodePool
79
+ metadata:
80
+ name: general-purpose
81
+ spec:
82
+ template:
83
+ spec:
84
+ nodeClassRef:
85
+ group: karpenter.k8s.aws
86
+ kind: EC2NodeClass
87
+ name: default
88
+ requirements:
89
+ - key: kubernetes.io/arch
90
+ operator: In
91
+ values: ["amd64"]
92
+ - key: kubernetes.io/os
93
+ operator: In
94
+ values: ["linux"]
95
+ - key: karpenter.sh/capacity-type
96
+ operator: In
97
+ values: ["spot", "on-demand"]
98
+ - key: karpenter.k8s.aws/instance-category
99
+ operator: In
100
+ values: ["c", "m", "r"]
101
+ - key: karpenter.k8s.aws/instance-generation
102
+ operator: Gt
103
+ values: ["5"]
104
+ limits:
105
+ cpu: 1000
106
+ memory: 2000Gi
107
+ disruption:
108
+ consolidationPolicy: WhenEmptyOrUnderutilized
109
+ consolidateAfter: 30s
110
+ ```
111
+
112
+ ### ARM64 Workloads (Graviton)
113
+
114
+ ```yaml
115
+ apiVersion: karpenter.sh/v1
116
+ kind: NodePool
117
+ metadata:
118
+ name: graviton
119
+ spec:
120
+ template:
121
+ spec:
122
+ nodeClassRef:
123
+ group: karpenter.k8s.aws
124
+ kind: EC2NodeClass
125
+ name: graviton
126
+ requirements:
127
+ - key: kubernetes.io/arch
128
+ operator: In
129
+ values: ["arm64"]
130
+ - key: karpenter.sh/capacity-type
131
+ operator: In
132
+ values: ["spot", "on-demand"]
133
+ - key: karpenter.k8s.aws/instance-category
134
+ operator: In
135
+ values: ["c", "m", "r"]
136
+ - key: karpenter.k8s.aws/instance-generation
137
+ operator: Gt
138
+ values: ["6"]
139
+ limits:
140
+ cpu: 500
141
+ disruption:
142
+ consolidationPolicy: WhenEmptyOrUnderutilized
143
+ consolidateAfter: 1m
144
+ weight: 100 # Prefer Graviton over x86
145
+ ```
146
+
147
+ ### GPU Workloads
148
+
149
+ ```yaml
150
+ apiVersion: karpenter.sh/v1
151
+ kind: NodePool
152
+ metadata:
153
+ name: gpu
154
+ spec:
155
+ template:
156
+ metadata:
157
+ labels:
158
+ workload-type: gpu
159
+ spec:
160
+ nodeClassRef:
161
+ group: karpenter.k8s.aws
162
+ kind: EC2NodeClass
163
+ name: gpu
164
+ requirements:
165
+ - key: node.kubernetes.io/instance-type
166
+ operator: In
167
+ values:
168
+ - "p3.2xlarge"
169
+ - "p3.8xlarge"
170
+ - "p3.16xlarge"
171
+ - "g4dn.xlarge"
172
+ - "g4dn.2xlarge"
173
+ - "g5.xlarge"
174
+ - "g5.2xlarge"
175
+ - key: karpenter.sh/capacity-type
176
+ operator: In
177
+ values: ["spot", "on-demand"]
178
+ taints:
179
+ - key: nvidia.com/gpu
180
+ value: "true"
181
+ effect: NoSchedule
182
+ limits:
183
+ nvidia.com/gpu: 20
184
+ disruption:
185
+ consolidationPolicy: WhenEmpty
186
+ consolidateAfter: 5m
187
+ ```
188
+
189
+ ### High-Memory Workloads
190
+
191
+ ```yaml
192
+ apiVersion: karpenter.sh/v1
193
+ kind: NodePool
194
+ metadata:
195
+ name: high-memory
196
+ spec:
197
+ template:
198
+ spec:
199
+ nodeClassRef:
200
+ group: karpenter.k8s.aws
201
+ kind: EC2NodeClass
202
+ name: default
203
+ requirements:
204
+ - key: karpenter.k8s.aws/instance-category
205
+ operator: In
206
+ values: ["r", "x"]
207
+ - key: karpenter.k8s.aws/instance-memory
208
+ operator: Gt
209
+ values: ["65536"] # > 64Gi
210
+ - key: karpenter.sh/capacity-type
211
+ operator: In
212
+ values: ["on-demand"]
213
+ limits:
214
+ memory: 4000Gi
215
+ disruption:
216
+ consolidationPolicy: WhenEmpty
217
+ consolidateAfter: 10m
218
+ ```
219
+
220
+ ### Burst/Ephemeral Workloads
221
+
222
+ ```yaml
223
+ apiVersion: karpenter.sh/v1
224
+ kind: NodePool
225
+ metadata:
226
+ name: burst
227
+ spec:
228
+ template:
229
+ spec:
230
+ nodeClassRef:
231
+ group: karpenter.k8s.aws
232
+ kind: EC2NodeClass
233
+ name: default
234
+ requirements:
235
+ - key: karpenter.k8s.aws/instance-category
236
+ operator: In
237
+ values: ["t"] # Burstable instances
238
+ - key: karpenter.sh/capacity-type
239
+ operator: In
240
+ values: ["spot"]
241
+ expireAfter: 4h # Short-lived nodes
242
+ limits:
243
+ cpu: 200
244
+ disruption:
245
+ consolidationPolicy: WhenEmptyOrUnderutilized
246
+ consolidateAfter: 10s
247
+ ```
248
+
249
+ ### Windows Workloads
250
+
251
+ ```yaml
252
+ apiVersion: karpenter.sh/v1
253
+ kind: NodePool
254
+ metadata:
255
+ name: windows
256
+ spec:
257
+ template:
258
+ spec:
259
+ nodeClassRef:
260
+ group: karpenter.k8s.aws
261
+ kind: EC2NodeClass
262
+ name: windows
263
+ requirements:
264
+ - key: kubernetes.io/os
265
+ operator: In
266
+ values: ["windows"]
267
+ - key: kubernetes.io/arch
268
+ operator: In
269
+ values: ["amd64"]
270
+ - key: karpenter.k8s.aws/instance-category
271
+ operator: In
272
+ values: ["c", "m"]
273
+ limits:
274
+ cpu: 200
275
+ disruption:
276
+ consolidationPolicy: WhenEmpty
277
+ consolidateAfter: 30m
278
+ ```
279
+
280
+ ---
281
+
282
+ ## Disruption Policies
283
+
284
+ ### WhenEmpty
285
+
286
+ Consolidates only when node has no non-DaemonSet pods:
287
+
288
+ ```yaml
289
+ disruption:
290
+ consolidationPolicy: WhenEmpty
291
+ consolidateAfter: 5m
292
+ ```
293
+
294
+ ### WhenEmptyOrUnderutilized
295
+
296
+ Consolidates when empty OR when pods can fit on other nodes:
297
+
298
+ ```yaml
299
+ disruption:
300
+ consolidationPolicy: WhenEmptyOrUnderutilized
301
+ consolidateAfter: 30s
302
+ ```
303
+
304
+ ### Disruption Budgets
305
+
306
+ Limit simultaneous disruptions:
307
+
308
+ ```yaml
309
+ disruption:
310
+ budgets:
311
+ - nodes: "10%"
312
+ - nodes: "0"
313
+ schedule: "0 9 * * 5" # No disruption Friday 9am
314
+ duration: 8h
315
+ ```
316
+
317
+ ---
318
+
319
+ ## Taints and Tolerations
320
+
321
+ ### Dedicated NodePool
322
+
323
+ ```yaml
324
+ spec:
325
+ template:
326
+ spec:
327
+ taints:
328
+ - key: team
329
+ value: data-science
330
+ effect: NoSchedule
331
+ ```
332
+
333
+ Pods must tolerate:
334
+
335
+ ```yaml
336
+ tolerations:
337
+ - key: team
338
+ operator: Equal
339
+ value: data-science
340
+ effect: NoSchedule
341
+ ```
342
+
343
+ ### Startup Taints
344
+
345
+ Temporary taints removed when node is ready:
346
+
347
+ ```yaml
348
+ spec:
349
+ template:
350
+ spec:
351
+ startupTaints:
352
+ - key: node.kubernetes.io/not-ready
353
+ effect: NoSchedule
354
+ ```
355
+
356
+ ---
357
+
358
+ ## Weight-Based Selection
359
+
360
+ Higher weight = higher priority when multiple NodePools match:
361
+
362
+ ```yaml
363
+ # Prefer Graviton (weight 100) over x86 (weight 10)
364
+ ---
365
+ apiVersion: karpenter.sh/v1
366
+ kind: NodePool
367
+ metadata:
368
+ name: graviton
369
+ spec:
370
+ weight: 100
371
+ # ...
372
+ ---
373
+ apiVersion: karpenter.sh/v1
374
+ kind: NodePool
375
+ metadata:
376
+ name: x86
377
+ spec:
378
+ weight: 10
379
+ # ...
380
+ ```
381
+
382
+ ---
383
+
384
+ ## Resource Limits
385
+
386
+ Prevent runaway costs by limiting NodePool resources:
387
+
388
+ ```yaml
389
+ limits:
390
+ cpu: 1000 # Total vCPUs across all nodes
391
+ memory: 2000Gi # Total memory
392
+ nvidia.com/gpu: 10 # Total GPUs
393
+ ```
394
+
395
+ Check current usage:
396
+
397
+ ```bash
398
+ kubectl describe nodepool <name>
399
+ # Status.Resources shows current allocation
400
+ ```