@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.
- package/CHANGELOG.md +82 -1
- package/README.md +190 -12
- package/bin/init.js +30 -2
- package/package.json +6 -3
- package/templates/base/AGENTS.md +54 -23
- package/templates/base/README.md +325 -0
- package/templates/base/directives/memory_integration.md +95 -0
- package/templates/base/execution/memory_manager.py +309 -0
- package/templates/base/execution/session_boot.py +218 -0
- package/templates/base/execution/session_init.py +320 -0
- package/templates/base/skill-creator/SKILL_skillcreator.md +23 -36
- package/templates/base/skill-creator/scripts/init_skill.py +18 -135
- package/templates/skills/ec/README.md +31 -0
- package/templates/skills/ec/aws/SKILL.md +1020 -0
- package/templates/skills/ec/aws/defaults.yaml +13 -0
- package/templates/skills/ec/aws/references/common_patterns.md +80 -0
- package/templates/skills/ec/aws/references/mcp_servers.md +98 -0
- package/templates/skills/ec/aws-terraform/SKILL.md +349 -0
- package/templates/skills/ec/aws-terraform/references/best_practices.md +394 -0
- package/templates/skills/ec/aws-terraform/references/checkov_reference.md +337 -0
- package/templates/skills/ec/aws-terraform/scripts/configure_mcp.py +150 -0
- package/templates/skills/ec/confluent-kafka/SKILL.md +655 -0
- package/templates/skills/ec/confluent-kafka/references/ansible_playbooks.md +792 -0
- package/templates/skills/ec/confluent-kafka/references/ec_deployment.md +579 -0
- package/templates/skills/ec/confluent-kafka/references/kraft_migration.md +490 -0
- package/templates/skills/ec/confluent-kafka/references/troubleshooting.md +778 -0
- package/templates/skills/ec/confluent-kafka/references/upgrade_7x_to_8x.md +488 -0
- package/templates/skills/ec/confluent-kafka/scripts/kafka_health_check.py +435 -0
- package/templates/skills/ec/confluent-kafka/scripts/upgrade_preflight.py +568 -0
- package/templates/skills/ec/confluent-kafka/scripts/validate_config.py +455 -0
- package/templates/skills/ec/consul/SKILL.md +427 -0
- package/templates/skills/ec/consul/references/acl_setup.md +168 -0
- package/templates/skills/ec/consul/references/ha_config.md +196 -0
- package/templates/skills/ec/consul/references/troubleshooting.md +267 -0
- package/templates/skills/ec/consul/references/upgrades.md +213 -0
- package/templates/skills/ec/consul/scripts/consul_health_report.py +530 -0
- package/templates/skills/ec/consul/scripts/consul_status.py +264 -0
- package/templates/skills/ec/consul/scripts/generate_values.py +170 -0
- package/templates/skills/ec/documentation/SKILL.md +351 -0
- package/templates/skills/ec/documentation/references/best_practices.md +201 -0
- package/templates/skills/ec/documentation/scripts/analyze_code.py +307 -0
- package/templates/skills/ec/documentation/scripts/detect_changes.py +460 -0
- package/templates/skills/ec/documentation/scripts/generate_changelog.py +312 -0
- package/templates/skills/ec/documentation/scripts/sync_docs.py +272 -0
- package/templates/skills/ec/documentation/scripts/update_skill_docs.py +366 -0
- package/templates/skills/ec/gitlab/SKILL.md +529 -0
- package/templates/skills/ec/gitlab/references/agent_installation.md +416 -0
- package/templates/skills/ec/gitlab/references/api_reference.md +508 -0
- package/templates/skills/ec/gitlab/references/gitops_flux.md +465 -0
- package/templates/skills/ec/gitlab/references/troubleshooting.md +518 -0
- package/templates/skills/ec/gitlab/scripts/generate_agent_values.py +329 -0
- package/templates/skills/ec/gitlab/scripts/gitlab_agent_status.py +414 -0
- package/templates/skills/ec/jira/SKILL.md +484 -0
- package/templates/skills/ec/jira/references/jql_reference.md +148 -0
- package/templates/skills/ec/jira/scripts/add_comment.py +91 -0
- package/templates/skills/ec/jira/scripts/bulk_log_work.py +124 -0
- package/templates/skills/ec/jira/scripts/create_ticket.py +162 -0
- package/templates/skills/ec/jira/scripts/get_ticket.py +191 -0
- package/templates/skills/ec/jira/scripts/jira_client.py +383 -0
- package/templates/skills/ec/jira/scripts/log_work.py +154 -0
- package/templates/skills/ec/jira/scripts/search_tickets.py +104 -0
- package/templates/skills/ec/jira/scripts/update_comment.py +67 -0
- package/templates/skills/ec/jira/scripts/update_ticket.py +161 -0
- package/templates/skills/ec/karpenter/SKILL.md +301 -0
- package/templates/skills/ec/karpenter/references/ec2nodeclasses.md +421 -0
- package/templates/skills/ec/karpenter/references/migration.md +396 -0
- package/templates/skills/ec/karpenter/references/nodepools.md +400 -0
- package/templates/skills/ec/karpenter/references/troubleshooting.md +359 -0
- package/templates/skills/ec/karpenter/scripts/generate_ec2nodeclass.py +187 -0
- package/templates/skills/ec/karpenter/scripts/generate_nodepool.py +245 -0
- package/templates/skills/ec/karpenter/scripts/karpenter_status.py +359 -0
- package/templates/skills/ec/opensearch/SKILL.md +720 -0
- package/templates/skills/ec/opensearch/references/ml_neural_search.md +576 -0
- package/templates/skills/ec/opensearch/references/operator.md +532 -0
- package/templates/skills/ec/opensearch/references/query_dsl.md +532 -0
- package/templates/skills/ec/opensearch/scripts/configure_mcp.py +148 -0
- package/templates/skills/ec/victoriametrics/SKILL.md +598 -0
- package/templates/skills/ec/victoriametrics/references/kubernetes.md +531 -0
- package/templates/skills/ec/victoriametrics/references/prometheus_migration.md +333 -0
- package/templates/skills/ec/victoriametrics/references/troubleshooting.md +442 -0
- package/templates/skills/knowledge/SKILLS_CATALOG.md +274 -4
- package/templates/skills/knowledge/intelligent-routing/SKILL.md +237 -164
- package/templates/skills/knowledge/parallel-agents/SKILL.md +345 -73
- package/templates/skills/knowledge/plugin-discovery/SKILL.md +582 -0
- package/templates/skills/knowledge/plugin-discovery/scripts/platform_setup.py +1083 -0
- package/templates/skills/knowledge/design-md/README.md +0 -34
- package/templates/skills/knowledge/design-md/SKILL.md +0 -193
- package/templates/skills/knowledge/design-md/examples/DESIGN.md +0 -154
- package/templates/skills/knowledge/notebooklm-mcp/SKILL.md +0 -71
- package/templates/skills/knowledge/notebooklm-mcp/assets/example_asset.txt +0 -24
- package/templates/skills/knowledge/notebooklm-mcp/references/api_reference.md +0 -34
- package/templates/skills/knowledge/notebooklm-mcp/scripts/example.py +0 -19
- package/templates/skills/knowledge/react-components/README.md +0 -36
- package/templates/skills/knowledge/react-components/SKILL.md +0 -53
- package/templates/skills/knowledge/react-components/examples/gold-standard-card.tsx +0 -80
- package/templates/skills/knowledge/react-components/package-lock.json +0 -231
- package/templates/skills/knowledge/react-components/package.json +0 -16
- package/templates/skills/knowledge/react-components/resources/architecture-checklist.md +0 -15
- package/templates/skills/knowledge/react-components/resources/component-template.tsx +0 -37
- package/templates/skills/knowledge/react-components/resources/stitch-api-reference.md +0 -14
- package/templates/skills/knowledge/react-components/resources/style-guide.json +0 -27
- package/templates/skills/knowledge/react-components/scripts/fetch-stitch.sh +0 -30
- package/templates/skills/knowledge/react-components/scripts/validate.js +0 -68
- package/templates/skills/knowledge/self-update/SKILL.md +0 -60
- package/templates/skills/knowledge/self-update/scripts/update_kit.py +0 -103
- package/templates/skills/knowledge/stitch-loop/README.md +0 -54
- package/templates/skills/knowledge/stitch-loop/SKILL.md +0 -235
- package/templates/skills/knowledge/stitch-loop/examples/SITE.md +0 -73
- package/templates/skills/knowledge/stitch-loop/examples/next-prompt.md +0 -25
- package/templates/skills/knowledge/stitch-loop/resources/baton-schema.md +0 -61
- package/templates/skills/knowledge/stitch-loop/resources/site-template.md +0 -104
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
# Prometheus Migration Reference
|
|
2
|
+
|
|
3
|
+
Complete guide for migrating from Prometheus to VictoriaMetrics.
|
|
4
|
+
|
|
5
|
+
## Migration Approaches
|
|
6
|
+
|
|
7
|
+
### 1. Dual-Write (Recommended)
|
|
8
|
+
|
|
9
|
+
Run Prometheus and VictoriaMetrics in parallel during migration.
|
|
10
|
+
|
|
11
|
+
```yaml
|
|
12
|
+
# prometheus.yml - Add remote_write
|
|
13
|
+
remote_write:
|
|
14
|
+
- url: http://victoriametrics:8428/api/v1/write
|
|
15
|
+
queue_config:
|
|
16
|
+
max_samples_per_send: 10000
|
|
17
|
+
capacity: 20000
|
|
18
|
+
max_shards: 30
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### 2. Replace Prometheus with vmagent
|
|
22
|
+
|
|
23
|
+
vmagent is a drop-in replacement for Prometheus scraping.
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# vmagent uses same prometheus.yml format
|
|
27
|
+
vmagent \
|
|
28
|
+
-promscrape.config=/etc/prometheus/prometheus.yml \
|
|
29
|
+
-remoteWrite.url=http://victoriametrics:8428/api/v1/write
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### 3. Historical Data Migration
|
|
33
|
+
|
|
34
|
+
Use vmctl to migrate existing data.
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# From Prometheus snapshot
|
|
38
|
+
vmctl prometheus \
|
|
39
|
+
--prom-snapshot=/var/lib/prometheus/data \
|
|
40
|
+
--vm-addr=http://victoriametrics:8428 \
|
|
41
|
+
--vm-concurrency=8 \
|
|
42
|
+
--vm-batch-size=200000
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## vmctl Migration Tool
|
|
48
|
+
|
|
49
|
+
### From Prometheus
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# Step 1: Create Prometheus snapshot
|
|
53
|
+
curl -X POST http://prometheus:9090/api/v1/admin/tsdb/snapshot
|
|
54
|
+
|
|
55
|
+
# Step 2: Migrate snapshot
|
|
56
|
+
vmctl prometheus \
|
|
57
|
+
--prom-snapshot=/var/lib/prometheus/snapshots/20240120T000000Z-xxx \
|
|
58
|
+
--vm-addr=http://victoriametrics:8428 \
|
|
59
|
+
--vm-concurrency=8
|
|
60
|
+
|
|
61
|
+
# With time filter
|
|
62
|
+
vmctl prometheus \
|
|
63
|
+
--prom-snapshot=/path/to/snapshot \
|
|
64
|
+
--vm-addr=http://victoriametrics:8428 \
|
|
65
|
+
--prom-filter-time-start='2024-01-01T00:00:00Z' \
|
|
66
|
+
--prom-filter-time-end='2024-01-31T23:59:59Z'
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### From InfluxDB
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
vmctl influx \
|
|
73
|
+
--influx-addr=http://influxdb:8086 \
|
|
74
|
+
--influx-database=metrics \
|
|
75
|
+
--influx-retention-policy=autogen \
|
|
76
|
+
--vm-addr=http://victoriametrics:8428 \
|
|
77
|
+
--vm-concurrency=8
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### From Thanos
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
# Export from Thanos to Prometheus format, then use vmctl
|
|
84
|
+
thanos tools bucket replicate \
|
|
85
|
+
--objstore.config-file=bucket.yml \
|
|
86
|
+
--output-dir=/tmp/thanos-export
|
|
87
|
+
|
|
88
|
+
# Then migrate as Prometheus
|
|
89
|
+
vmctl prometheus \
|
|
90
|
+
--prom-snapshot=/tmp/thanos-export \
|
|
91
|
+
--vm-addr=http://victoriametrics:8428
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Between VictoriaMetrics Instances
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
# Native migration (fastest)
|
|
98
|
+
vmctl vm-native \
|
|
99
|
+
--vm-native-src-addr=http://source-vm:8428 \
|
|
100
|
+
--vm-native-dst-addr=http://dest-vm:8428 \
|
|
101
|
+
--vm-native-filter-match='{__name__=~".*"}' \
|
|
102
|
+
--vm-native-filter-time-start='2024-01-01T00:00:00Z' \
|
|
103
|
+
--vm-concurrency=8
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## Configuration Mapping
|
|
109
|
+
|
|
110
|
+
### Prometheus to VictoriaMetrics Flags
|
|
111
|
+
|
|
112
|
+
| Prometheus | VictoriaMetrics |
|
|
113
|
+
| ------------------------------------ | ------------------------------- |
|
|
114
|
+
| `--storage.tsdb.path` | `-storageDataPath` |
|
|
115
|
+
| `--storage.tsdb.retention.time` | `-retentionPeriod` |
|
|
116
|
+
| `--web.listen-address` | `-httpListenAddr` |
|
|
117
|
+
| `--query.timeout` | `-search.maxQueryDuration` |
|
|
118
|
+
| `--query.max-concurrency` | `-search.maxConcurrentRequests` |
|
|
119
|
+
| `--web.enable-remote-write-receiver` | (enabled by default) |
|
|
120
|
+
|
|
121
|
+
### Prometheus to vmagent Flags
|
|
122
|
+
|
|
123
|
+
| Prometheus | vmagent |
|
|
124
|
+
| ---------------------- | -------------------------- |
|
|
125
|
+
| `--config.file` | `-promscrape.config` |
|
|
126
|
+
| `--web.listen-address` | `-httpListenAddr` |
|
|
127
|
+
| N/A | `-remoteWrite.url` |
|
|
128
|
+
| N/A | `-remoteWrite.tmpDataPath` |
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Query Migration
|
|
133
|
+
|
|
134
|
+
### PromQL to MetricsQL
|
|
135
|
+
|
|
136
|
+
Most PromQL queries work unchanged. Key differences:
|
|
137
|
+
|
|
138
|
+
| Feature | PromQL | MetricsQL |
|
|
139
|
+
| ------------------ | --------------- | ---------------------------- |
|
|
140
|
+
| Rate detection | Manual interval | Auto detection |
|
|
141
|
+
| Subqueries | Limited | Extended support |
|
|
142
|
+
| Label manipulation | Limited | `label_set()`, `label_del()` |
|
|
143
|
+
| Rollups | Single function | Multi-function `rollup()` |
|
|
144
|
+
|
|
145
|
+
### Query Examples
|
|
146
|
+
|
|
147
|
+
```promql
|
|
148
|
+
# PromQL
|
|
149
|
+
rate(http_requests_total[5m])
|
|
150
|
+
|
|
151
|
+
# MetricsQL (same, or use default auto-interval)
|
|
152
|
+
rate(http_requests_total)
|
|
153
|
+
|
|
154
|
+
# MetricsQL extras
|
|
155
|
+
rollup(http_requests_total) # Returns min, max, avg
|
|
156
|
+
range_quantile(0.95, http_requests_total[1h])
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Grafana Migration
|
|
162
|
+
|
|
163
|
+
### Change Data Source
|
|
164
|
+
|
|
165
|
+
```yaml
|
|
166
|
+
# Grafana datasource config
|
|
167
|
+
apiVersion: 1
|
|
168
|
+
datasources:
|
|
169
|
+
- name: VictoriaMetrics
|
|
170
|
+
type: prometheus # Same type!
|
|
171
|
+
url: http://victoriametrics:8428
|
|
172
|
+
access: proxy
|
|
173
|
+
isDefault: true
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### Dashboard Compatibility
|
|
177
|
+
|
|
178
|
+
Most Prometheus dashboards work without changes. Adjust for:
|
|
179
|
+
|
|
180
|
+
1. **Rate intervals**: MetricsQL auto-detects, remove `[5m]` if needed
|
|
181
|
+
2. **Recording rules**: Migrate to vmalert format
|
|
182
|
+
3. **Alerting rules**: Migrate to vmalert format
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
## Recording Rules Migration
|
|
187
|
+
|
|
188
|
+
### Prometheus Format
|
|
189
|
+
|
|
190
|
+
```yaml
|
|
191
|
+
# prometheus-rules.yml
|
|
192
|
+
groups:
|
|
193
|
+
- name: example
|
|
194
|
+
rules:
|
|
195
|
+
- record: job:http_requests:rate5m
|
|
196
|
+
expr: rate(http_requests_total[5m])
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### vmalert Format
|
|
200
|
+
|
|
201
|
+
```yaml
|
|
202
|
+
# Same format works!
|
|
203
|
+
groups:
|
|
204
|
+
- name: example
|
|
205
|
+
rules:
|
|
206
|
+
- record: job:http_requests:rate5m
|
|
207
|
+
expr: rate(http_requests_total[5m])
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
Deploy with vmalert:
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
vmalert \
|
|
214
|
+
-rule=/etc/vmalert/rules/*.yml \
|
|
215
|
+
-datasource.url=http://victoriametrics:8428 \
|
|
216
|
+
-remoteWrite.url=http://victoriametrics:8428/api/v1/write
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
## Alerting Rules Migration
|
|
222
|
+
|
|
223
|
+
### Prometheus Format
|
|
224
|
+
|
|
225
|
+
```yaml
|
|
226
|
+
groups:
|
|
227
|
+
- name: alerts
|
|
228
|
+
rules:
|
|
229
|
+
- alert: HighRequestLatency
|
|
230
|
+
expr: http_request_duration_seconds{quantile="0.9"} > 1
|
|
231
|
+
for: 10m
|
|
232
|
+
labels:
|
|
233
|
+
severity: critical
|
|
234
|
+
annotations:
|
|
235
|
+
summary: High request latency
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### vmalert (Same Format)
|
|
239
|
+
|
|
240
|
+
```yaml
|
|
241
|
+
# vmalert uses identical format
|
|
242
|
+
groups:
|
|
243
|
+
- name: alerts
|
|
244
|
+
rules:
|
|
245
|
+
- alert: HighRequestLatency
|
|
246
|
+
expr: http_request_duration_seconds{quantile="0.9"} > 1
|
|
247
|
+
for: 10m
|
|
248
|
+
labels:
|
|
249
|
+
severity: critical
|
|
250
|
+
annotations:
|
|
251
|
+
summary: High request latency
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Federation Migration
|
|
257
|
+
|
|
258
|
+
### Prometheus Federation
|
|
259
|
+
|
|
260
|
+
```yaml
|
|
261
|
+
# prometheus.yml
|
|
262
|
+
scrape_configs:
|
|
263
|
+
- job_name: "federate"
|
|
264
|
+
honor_labels: true
|
|
265
|
+
metrics_path: "/federate"
|
|
266
|
+
params:
|
|
267
|
+
"match[]":
|
|
268
|
+
- '{job="prometheus"}'
|
|
269
|
+
static_configs:
|
|
270
|
+
- targets: ["prometheus:9090"]
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### VictoriaMetrics Alternative
|
|
274
|
+
|
|
275
|
+
Use vmagent with multiple remote_write targets:
|
|
276
|
+
|
|
277
|
+
```yaml
|
|
278
|
+
global:
|
|
279
|
+
external_labels:
|
|
280
|
+
cluster: source
|
|
281
|
+
|
|
282
|
+
scrape_configs:
|
|
283
|
+
- job_name: "local"
|
|
284
|
+
static_configs:
|
|
285
|
+
- targets: ["localhost:9100"]
|
|
286
|
+
|
|
287
|
+
# vmagent sends to central VM
|
|
288
|
+
# No federation needed - direct remote_write
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
---
|
|
292
|
+
|
|
293
|
+
## Multi-Tenant Migration
|
|
294
|
+
|
|
295
|
+
### Prometheus + Thanos Multi-Tenancy
|
|
296
|
+
|
|
297
|
+
Thanos uses external labels for tenancy.
|
|
298
|
+
|
|
299
|
+
### VictoriaMetrics Cluster Multi-Tenancy
|
|
300
|
+
|
|
301
|
+
```bash
|
|
302
|
+
# Write to tenant 123
|
|
303
|
+
curl -X POST 'http://vminsert:8480/insert/123/prometheus/api/v1/write' \
|
|
304
|
+
--data-binary @metrics.txt
|
|
305
|
+
|
|
306
|
+
# Query tenant 123
|
|
307
|
+
curl 'http://vmselect:8481/select/123/prometheus/api/v1/query?query=up'
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
---
|
|
311
|
+
|
|
312
|
+
## Validation Checklist
|
|
313
|
+
|
|
314
|
+
After migration, verify:
|
|
315
|
+
|
|
316
|
+
- [ ] All metrics visible in VictoriaMetrics
|
|
317
|
+
- [ ] Grafana dashboards loading correctly
|
|
318
|
+
- [ ] Alerting rules firing as expected
|
|
319
|
+
- [ ] Historical data queryable
|
|
320
|
+
- [ ] Recording rules generating data
|
|
321
|
+
- [ ] Scrape targets healthy
|
|
322
|
+
- [ ] No duplicate data sources in Grafana
|
|
323
|
+
|
|
324
|
+
---
|
|
325
|
+
|
|
326
|
+
## Rollback Plan
|
|
327
|
+
|
|
328
|
+
If issues occur:
|
|
329
|
+
|
|
330
|
+
1. Keep Prometheus running in parallel
|
|
331
|
+
2. Switch Grafana back to Prometheus datasource
|
|
332
|
+
3. Re-enable Prometheus alerting
|
|
333
|
+
4. Investigate VictoriaMetrics logs
|