vstack 0.0.0__py3-none-any.whl

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.
Files changed (119) hide show
  1. vstack/__init__.py +5 -0
  2. vstack/__main__.py +5 -0
  3. vstack/_templates/agents/_partials/agent-skill-boundary.md +5 -0
  4. vstack/_templates/agents/architect/config.yaml +38 -0
  5. vstack/_templates/agents/architect/template.md +84 -0
  6. vstack/_templates/agents/designer/config.yaml +36 -0
  7. vstack/_templates/agents/designer/template.md +99 -0
  8. vstack/_templates/agents/engineer/config.yaml +36 -0
  9. vstack/_templates/agents/engineer/template.md +88 -0
  10. vstack/_templates/agents/product/config.yaml +37 -0
  11. vstack/_templates/agents/product/template.md +87 -0
  12. vstack/_templates/agents/release/config.yaml +35 -0
  13. vstack/_templates/agents/release/template.md +86 -0
  14. vstack/_templates/agents/tester/config.yaml +41 -0
  15. vstack/_templates/agents/tester/template.md +90 -0
  16. vstack/_templates/instructions/git/config.yaml +4 -0
  17. vstack/_templates/instructions/git/template.md +36 -0
  18. vstack/_templates/instructions/python/config.yaml +4 -0
  19. vstack/_templates/instructions/python/template.md +37 -0
  20. vstack/_templates/prompts/code-review/config.yaml +10 -0
  21. vstack/_templates/prompts/code-review/template.md +39 -0
  22. vstack/_templates/skills/_partials/base-branch.md +8 -0
  23. vstack/_templates/skills/_partials/observability-checklist.md +36 -0
  24. vstack/_templates/skills/_partials/run-tests.md +22 -0
  25. vstack/_templates/skills/_partials/skill-context.md +21 -0
  26. vstack/_templates/skills/adr/config.yaml +17 -0
  27. vstack/_templates/skills/adr/template.md +167 -0
  28. vstack/_templates/skills/analyse/config.yaml +16 -0
  29. vstack/_templates/skills/analyse/template.md +188 -0
  30. vstack/_templates/skills/architecture/config.yaml +18 -0
  31. vstack/_templates/skills/architecture/template.md +213 -0
  32. vstack/_templates/skills/cicd/config.yaml +16 -0
  33. vstack/_templates/skills/cicd/template.md +169 -0
  34. vstack/_templates/skills/code-review/config.yaml +16 -0
  35. vstack/_templates/skills/code-review/template.md +180 -0
  36. vstack/_templates/skills/concise/config.yaml +16 -0
  37. vstack/_templates/skills/concise/template.md +128 -0
  38. vstack/_templates/skills/consult/config.yaml +18 -0
  39. vstack/_templates/skills/consult/template.md +195 -0
  40. vstack/_templates/skills/container/config.yaml +17 -0
  41. vstack/_templates/skills/container/template.md +122 -0
  42. vstack/_templates/skills/debug/config.yaml +16 -0
  43. vstack/_templates/skills/debug/template.md +247 -0
  44. vstack/_templates/skills/dependency/config.yaml +18 -0
  45. vstack/_templates/skills/dependency/template.md +293 -0
  46. vstack/_templates/skills/design/config.yaml +16 -0
  47. vstack/_templates/skills/design/template.md +231 -0
  48. vstack/_templates/skills/docs/config.yaml +17 -0
  49. vstack/_templates/skills/docs/template.md +128 -0
  50. vstack/_templates/skills/explore/config.yaml +17 -0
  51. vstack/_templates/skills/explore/template.md +188 -0
  52. vstack/_templates/skills/guardrails/config.yaml +16 -0
  53. vstack/_templates/skills/guardrails/template.md +45 -0
  54. vstack/_templates/skills/incident/config.yaml +17 -0
  55. vstack/_templates/skills/incident/template.md +293 -0
  56. vstack/_templates/skills/inspect/config.yaml +16 -0
  57. vstack/_templates/skills/inspect/template.md +105 -0
  58. vstack/_templates/skills/migrate/config.yaml +17 -0
  59. vstack/_templates/skills/migrate/template.md +298 -0
  60. vstack/_templates/skills/onboard/config.yaml +18 -0
  61. vstack/_templates/skills/onboard/template.md +289 -0
  62. vstack/_templates/skills/openapi/config.yaml +17 -0
  63. vstack/_templates/skills/openapi/template.md +382 -0
  64. vstack/_templates/skills/performance/config.yaml +15 -0
  65. vstack/_templates/skills/performance/template.md +198 -0
  66. vstack/_templates/skills/pr/config.yaml +15 -0
  67. vstack/_templates/skills/pr/template.md +108 -0
  68. vstack/_templates/skills/refactor/config.yaml +18 -0
  69. vstack/_templates/skills/refactor/template.md +283 -0
  70. vstack/_templates/skills/release-notes/config.yaml +16 -0
  71. vstack/_templates/skills/release-notes/template.md +127 -0
  72. vstack/_templates/skills/requirements/config.yaml +17 -0
  73. vstack/_templates/skills/requirements/template.md +187 -0
  74. vstack/_templates/skills/security/config.yaml +17 -0
  75. vstack/_templates/skills/security/template.md +256 -0
  76. vstack/_templates/skills/verify/config.yaml +17 -0
  77. vstack/_templates/skills/verify/template.md +201 -0
  78. vstack/_templates/skills/vision/config.yaml +19 -0
  79. vstack/_templates/skills/vision/template.md +169 -0
  80. vstack/agents/__init__.py +5 -0
  81. vstack/agents/config.py +67 -0
  82. vstack/agents/constants.py +14 -0
  83. vstack/agents/generator.py +20 -0
  84. vstack/artifacts/__init__.py +17 -0
  85. vstack/artifacts/config.py +111 -0
  86. vstack/artifacts/constants.py +6 -0
  87. vstack/artifacts/generator.py +406 -0
  88. vstack/artifacts/models.py +55 -0
  89. vstack/artifacts/protocol.py +50 -0
  90. vstack/cli/__init__.py +3 -0
  91. vstack/cli/commands.py +596 -0
  92. vstack/cli/constants.py +33 -0
  93. vstack/cli/manifest.py +166 -0
  94. vstack/cli/parser.py +156 -0
  95. vstack/constants.py +84 -0
  96. vstack/frontmatter/__init__.py +8 -0
  97. vstack/frontmatter/parser.py +272 -0
  98. vstack/frontmatter/schema.py +142 -0
  99. vstack/frontmatter/serializer.py +208 -0
  100. vstack/instructions/__init__.py +5 -0
  101. vstack/instructions/config.py +21 -0
  102. vstack/instructions/constants.py +9 -0
  103. vstack/instructions/generator.py +13 -0
  104. vstack/main.py +71 -0
  105. vstack/models.py +35 -0
  106. vstack/prompts/__init__.py +5 -0
  107. vstack/prompts/config.py +21 -0
  108. vstack/prompts/constants.py +9 -0
  109. vstack/prompts/generator.py +13 -0
  110. vstack/skills/__init__.py +5 -0
  111. vstack/skills/config.py +58 -0
  112. vstack/skills/constants.py +17 -0
  113. vstack/skills/generator.py +20 -0
  114. vstack/skills/models.py +15 -0
  115. vstack-0.0.0.dist-info/METADATA +725 -0
  116. vstack-0.0.0.dist-info/RECORD +119 -0
  117. vstack-0.0.0.dist-info/WHEEL +4 -0
  118. vstack-0.0.0.dist-info/entry_points.txt +3 -0
  119. vstack-0.0.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,293 @@
1
+ {{SKILL_CONTEXT}}
2
+
3
+ # incident — Incident Analysis & Post-Mortem
4
+
5
+ Guide a structured incident investigation and produce a blameless post-mortem
6
+ document. The goal is learning and prevention — not blame.
7
+
8
+ ## Out of scope
9
+
10
+ - Live incident response / on-call triage (this skill is for retrospective analysis)
11
+ - Root-cause debugging of code bugs (use `debug`)
12
+ - Security audit of vulnerabilities (use `security`)
13
+ - Performance benchmarking (use `performance`)
14
+
15
+ **Golden rule: Incidents are system failures, not human failures. Every finding
16
+ must be framed as a system improvement opportunity, never as individual blame.**
17
+
18
+ ______________________________________________________________________
19
+
20
+ ## Step 0: Gather Incident Context
21
+
22
+ Before analysis, collect all available evidence:
23
+
24
+ > **Questions to answer:**
25
+ >
26
+ > - When did the incident start and end? (UTC timestamps)
27
+ > - What was the user-visible impact? (errors, latency, data loss, downtime)
28
+ > - What services were affected?
29
+ > - Who detected it and how? (alert, user report, monitoring)
30
+ > - What was done to resolve it?
31
+ > - Is there a severity classification? (P0/P1/P2 or SEV1/SEV2/SEV3)
32
+
33
+ ```bash
34
+ # Gather git history around the incident window
35
+ git log --oneline --since="YYYY-MM-DD" --until="YYYY-MM-DD" 2>/dev/null | head -30
36
+
37
+ # Check recent deploys
38
+ git log --oneline --merges --since="YYYY-MM-DD" 2>/dev/null | head -20
39
+
40
+ # Find relevant config or infra changes
41
+ git log --oneline --since="YYYY-MM-DD" -- '*.yaml' '*.yml' '*.toml' '*.env*' 2>/dev/null | head -20
42
+ ```
43
+
44
+ Document:
45
+
46
+ ```text
47
+ Incident ID: [INC-NNNN or date-slug]
48
+ Severity: [P0 | P1 | P2 | SEV1 | SEV2 | SEV3]
49
+ Start: [YYYY-MM-DD HH:MM UTC]
50
+ End: [YYYY-MM-DD HH:MM UTC]
51
+ Duration: [N hours N minutes]
52
+ Detected by: [alert | user report | manual check]
53
+ Services: [list of affected services]
54
+ Impact: [user-facing description]
55
+ ```
56
+
57
+ ______________________________________________________________________
58
+
59
+ ## Step 1: Reconstruct the Timeline
60
+
61
+ Build a precise, chronological timeline of events. Include:
62
+
63
+ - System events (deploys, config changes, traffic spikes)
64
+ - Detection events (alerts fired, pages sent)
65
+ - Response actions (who did what, when)
66
+ - Resolution events (rollback, fix deployed, service restored)
67
+
68
+ ```text
69
+ Timeline (all times UTC):
70
+
71
+ HH:MM — [event description] — [who / what system]
72
+ HH:MM — [event description] — [who / what system]
73
+ ...
74
+
75
+ Key markers:
76
+ Impact start: HH:MM
77
+ Detection: HH:MM (+N min after impact start)
78
+ Response start: HH:MM (+N min after detection)
79
+ Mitigation: HH:MM (+N min after response)
80
+ Full resolution: HH:MM
81
+ Total duration: N hours N minutes
82
+ ```
83
+
84
+ ______________________________________________________________________
85
+
86
+ ## Step 2: Identify Contributing Factors
87
+
88
+ List ALL factors that contributed to the incident — not just the "trigger".
89
+ Incidents are never caused by a single thing. Use the 5-Whys technique:
90
+
91
+ **5-Whys template:**
92
+
93
+ ```text
94
+ Why did [impact] happen?
95
+ Because [immediate cause].
96
+
97
+ Why did [immediate cause] happen?
98
+ Because [contributing factor 1].
99
+
100
+ Why did [contributing factor 1] exist?
101
+ Because [deeper cause].
102
+
103
+ Why did [deeper cause] exist?
104
+ Because [systemic gap].
105
+
106
+ Why did [systemic gap] exist?
107
+ Because [root systemic condition].
108
+ ```
109
+
110
+ Categorize contributing factors:
111
+
112
+ | Category | Factor |
113
+ | ------------- | -------------------------------------------------------- |
114
+ | Code / logic | [e.g. missing error handling, race condition] |
115
+ | Configuration | [e.g. incorrect timeout, missing feature flag] |
116
+ | Deployment | [e.g. no canary, missing rollback plan] |
117
+ | Monitoring | [e.g. alert threshold too high, missing metric] |
118
+ | Process | [e.g. no review for config changes, unclear runbook] |
119
+ | External | [e.g. upstream dependency failure, cloud provider issue] |
120
+ | Knowledge | [e.g. undocumented behaviour, tribal knowledge gap] |
121
+
122
+ ______________________________________________________________________
123
+
124
+ ## Step 3: Determine Root Cause
125
+
126
+ The root cause is the deepest systemic condition that, if addressed, would
127
+ prevent this class of incident from recurring.
128
+
129
+ **Root cause is NOT:**
130
+
131
+ - "Human error" (humans make mistakes — the system must be resilient to them)
132
+ - "We forgot to test X" (why was it possible to ship without testing X?)
133
+ - The deployment that triggered it (that is the trigger, not the cause)
134
+
135
+ ```text
136
+ Root cause:
137
+ [One clear, specific statement of the systemic condition]
138
+
139
+ Evidence:
140
+ [What evidence supports this conclusion]
141
+
142
+ Class of incident:
143
+ [Deploy regression | Configuration drift | Dependency failure |
144
+ Capacity / traffic | Data corruption | Security breach | Other]
145
+ ```
146
+
147
+ ______________________________________________________________________
148
+
149
+ ## Step 4: Assess Impact
150
+
151
+ Quantify the impact precisely:
152
+
153
+ ```text
154
+ User impact:
155
+ Affected users: [N users | N% of traffic | all users]
156
+ Error rate: [N% of requests returned errors]
157
+ Latency increase: [p99 increased from Nms to Nms]
158
+ Data loss: [none | N records | describe scope]
159
+ Feature unavailable:[list features]
160
+
161
+ Business impact:
162
+ Revenue: [estimated impact if known]
163
+ SLA breach: [yes — N minutes over limit | no]
164
+ Customer comms: [status page update | direct notification | none]
165
+
166
+ Detection gap:
167
+ Time to detect: [N minutes]
168
+ How detected: [alert | user complaint | manual]
169
+ Why not faster: [threshold too high | missing alert | other]
170
+ ```
171
+
172
+ ______________________________________________________________________
173
+
174
+ ## Step 5: Write Action Items
175
+
176
+ Action items must be:
177
+
178
+ - **Specific** — not "improve monitoring" but "add alert on p99 > 500ms for /checkout"
179
+ - **Owned** — assigned to a person or team
180
+ - **Time-bound** — target date or sprint
181
+ - **Categorized** — prevention, detection, or response improvement
182
+
183
+ ```text
184
+ Action items:
185
+
186
+ Prevention (stop this from happening again):
187
+ [ ] [specific action] — owner: [name/team] — due: [date/sprint]
188
+
189
+ Detection (catch it faster next time):
190
+ [ ] [specific action] — owner: [name/team] — due: [date/sprint]
191
+
192
+ Response (resolve it faster next time):
193
+ [ ] [specific action] — owner: [name/team] — due: [date/sprint]
194
+ [ ] Write or update runbook for this failure class — owner: [name/team] — due: [date/sprint]
195
+
196
+ Process (improve how we handle incidents):
197
+ [ ] [specific action] — owner: [name/team] — due: [date/sprint]
198
+ ```
199
+
200
+ ______________________________________________________________________
201
+
202
+ ## Step 6: Produce the Post-Mortem Document
203
+
204
+ Write the post-mortem to `docs/postmortems/YYYY-MM-DD-<slug>.md`:
205
+
206
+ ```markdown
207
+ # Post-Mortem: [Short Title]
208
+
209
+ **Date:** YYYY-MM-DD
210
+ **Severity:** [P0 | P1 | P2]
211
+ **Duration:** N hours N minutes
212
+ **Status:** [Draft | In Review | Closed]
213
+ **Author(s):** [names]
214
+
215
+ ---
216
+
217
+ ## Summary
218
+
219
+ [2–3 sentences: what happened, what was the impact, how was it resolved.
220
+ Written for a non-technical audience.]
221
+
222
+ ## Impact
223
+
224
+ | Dimension | Details |
225
+ |---|---|
226
+ | Duration | N hours N minutes (HH:MM–HH:MM UTC) |
227
+ | Users affected | [N users / N% of traffic] |
228
+ | Error rate | [N%] |
229
+ | SLA breach | [yes / no] |
230
+ | Data loss | [none / description] |
231
+
232
+ ## Timeline
233
+
234
+ | Time (UTC) | Event |
235
+ |---|---|
236
+ | HH:MM | [event] |
237
+ | HH:MM | [event] |
238
+ | ... | ... |
239
+
240
+ ## Root Cause
241
+
242
+ [One paragraph. Specific, systemic, blameless.]
243
+
244
+ ## Contributing Factors
245
+
246
+ - [factor 1]
247
+ - [factor 2]
248
+ - [factor 3]
249
+
250
+ ## What Went Well
251
+
252
+ - [thing 1 — e.g. alert fired within 2 minutes]
253
+ - [thing 2 — e.g. rollback completed in 4 minutes]
254
+ - [thing 3]
255
+
256
+ ## What Went Poorly
257
+
258
+ - [thing 1 — e.g. no runbook for this failure mode]
259
+ - [thing 2]
260
+
261
+ ## Action Items
262
+
263
+ | # | Action | Category | Owner | Due |
264
+ |---|---|---|---|---|
265
+ | 1 | [action] | Prevention | [owner] | [date] |
266
+ | 2 | [action] | Detection | [owner] | [date] |
267
+ | 3 | [action] | Response | [owner] | [date] |
268
+
269
+ ## Lessons Learned
270
+
271
+ [2–4 sentences summarizing the key takeaways for the team and organization.
272
+ What does this incident teach us about our system, processes, or culture?]
273
+ ```
274
+
275
+ ______________________________________________________________________
276
+
277
+ ## Output
278
+
279
+ ```text
280
+ Incident Analysis Complete
281
+ ══════════════════════════
282
+
283
+ Incident: [ID / title]
284
+ Severity: [P0 | P1 | P2]
285
+ Duration: [N hours N minutes]
286
+ Root cause: [one-line summary]
287
+
288
+ Contributing factors: [N identified]
289
+ Action items: [N total — N prevention, N detection, N response]
290
+
291
+ Post-mortem written: docs/postmortems/YYYY-MM-DD-<slug>.md
292
+ Status: [Draft — ready for team review]
293
+ ```
@@ -0,0 +1,16 @@
1
+ name: inspect
2
+ version: 1.0.2
3
+ description: |
4
+ Read-only verification audit. Runs baseline plus optional extended checks,
5
+ produces severity-ranked findings, and makes no code or commit changes.
6
+ Use when asked to "inspect", "assess", "check without fixing", or
7
+ "what's wrong with this" before deciding whether to run verify fix loops.
8
+ argument-hint: '[component or service to inspect]'
9
+
10
+ license: MIT
11
+ compatibility: Requires a skills-compatible agent with repository file access and terminal command execution when needed.
12
+ metadata:
13
+ owner: vstack
14
+ maturity: stable
15
+ user-invocable: true
16
+ disable-model-invocation: false
@@ -0,0 +1,105 @@
1
+ {{SKILL_CONTEXT}}
2
+
3
+ {{BASE_BRANCH}}
4
+
5
+ # inspect - Read-Only Verification Audit
6
+
7
+ Run verification checks and report findings. Do not edit code, do not commit,
8
+ and do not fix anything.
9
+
10
+ Use `verify` when a fix loop is required.
11
+
12
+ ## Out of scope
13
+
14
+ - Fixing issues (use `verify`)
15
+ - Architecture decisions (use `architecture`)
16
+ - Full security audit (use `security`)
17
+ - Performance profiling (use `performance`)
18
+
19
+ ## Deliverable and artifact policy
20
+
21
+ - Primary deliverable: `docs/test-report.md`
22
+ - Baseline-first default: write final findings directly to `docs/test-report.md` on the feature branch.
23
+ - Optional WIP area for complex/uncertain efforts: `docs/delta/{id}/TESTING_DELTA.md`
24
+ - Before merge: consolidate any blocking findings and final verdict into baseline reports.
25
+
26
+ ______________________________________________________________________
27
+
28
+ ## Step 0: Scope
29
+
30
+ ```text
31
+ Report only. No edits. No commits.
32
+ If critical issues are found, recommend `verify`.
33
+ ```
34
+
35
+ ______________________________________________________________________
36
+
37
+ ## Step 1: Baseline Checks
38
+
39
+ ```bash
40
+ [ -f package.json ] && (npm run lint 2>/dev/null || true)
41
+ [ -f tsconfig.json ] && npx tsc --noEmit 2>/dev/null || true
42
+ [ -f pyproject.toml ] && (ruff check . 2>/dev/null || true)
43
+ [ -f pyproject.toml ] && (mypy . 2>/dev/null || pyright . 2>/dev/null || true)
44
+ [ -f go.mod ] && (go vet ./... 2>/dev/null || true)
45
+ ```
46
+
47
+ {{RUN_TESTS}}
48
+
49
+ ______________________________________________________________________
50
+
51
+ ## Step 2: Extended Checks (when present)
52
+
53
+ ```bash
54
+ # Integration
55
+ [ -f package.json ] && npm run test:integration 2>/dev/null || true
56
+ [ -f pyproject.toml ] && python -m pytest -m integration -v 2>/dev/null || true
57
+ [ -f go.mod ] && go test -run Integration ./... 2>/dev/null || true
58
+
59
+ # Contract
60
+ [ -f openapi.yaml ] && npx @redocly/cli lint openapi.yaml 2>/dev/null || true
61
+ [ -n "$(find . -name '*.proto' 2>/dev/null | head -1)" ] && buf lint 2>/dev/null || true
62
+
63
+ # Lightweight vulnerability gate
64
+ [ -f package.json ] && npm audit --audit-level=high 2>/dev/null || true
65
+ [ -f pyproject.toml ] && pip-audit 2>/dev/null || true
66
+ [ -f go.mod ] && govulncheck ./... 2>/dev/null || true
67
+ ```
68
+
69
+ ### 2.1 Observability & Reliability Checks
70
+
71
+ Confirm for changed paths:
72
+
73
+ - Structured logs exist for key state transitions and failures.
74
+ - Metrics cover latency, error rate, and saturation for impacted services.
75
+ - Trace propagation exists across service boundaries where applicable.
76
+ - Alerts/runbooks exist for high-severity failure modes.
77
+
78
+ ______________________________________________________________________
79
+
80
+ ## Step 3: Report
81
+
82
+ ```text
83
+ ## Inspection Report - [component/repo] - [date]
84
+
85
+ ### Summary
86
+ - tests: [X pass / Y fail / Z skip]
87
+ - issues: [N critical / N high / N medium / N low]
88
+
89
+ ### Critical
90
+ 1. [issue] - [file:line] - [evidence]
91
+
92
+ ### High
93
+ 1. [issue] - [file:line] - [recommended fix]
94
+
95
+ ### Medium
96
+ 1. [issue] - [file:line] - [recommended fix]
97
+
98
+ ### Low
99
+ 1. [issue] - [notes]
100
+
101
+ ### Recommendation
102
+ [SHIP-READY | USE VERIFY FIX LOOP | NEEDS ARCH/DESIGN REVIEW]
103
+ ```
104
+
105
+ ______________________________________________________________________
@@ -0,0 +1,17 @@
1
+ name: migrate
2
+ version: 1.0.1
3
+ description: |
4
+ Database migration review and authoring. Covers forwards/backwards compatibility,
5
+ zero-downtime strategies, rollback plans, data integrity, and index safety.
6
+ Use when asked to "write a migration", "review this migration", "is this
7
+ migration safe?", or "zero-downtime schema change". Proactively suggest before
8
+ any DDL change ships to production.
9
+ argument-hint: '[migration file or schema change to review]'
10
+
11
+ license: MIT
12
+ compatibility: Requires a skills-compatible agent with repository file access and terminal command execution when needed.
13
+ metadata:
14
+ owner: vstack
15
+ maturity: stable
16
+ user-invocable: true
17
+ disable-model-invocation: false