@olegkoval/agent-skills 1.33.0 → 1.34.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/.claude-plugin/plugin.json +2 -1
- package/.cursor-plugin/index.json +5 -0
- package/.grok-plugin/index.json +5 -0
- package/.kiro/steering/retro-analysis.md +186 -0
- package/.windsurf/rules/retro-analysis.md +185 -0
- package/README.md +5 -4
- package/catalog/skills.json +25 -0
- package/collections/software-development.json +1 -0
- package/package.json +1 -1
- package/packages/software-development/retro-analysis/SKILL.md +195 -0
- package/packages/software-development/retro-analysis/adapters/claude/plugin.json +5 -0
- package/packages/software-development/retro-analysis/adapters/claude/skills/retro-analysis/SKILL.md +196 -0
- package/packages/software-development/retro-analysis/adapters/codex/README.md +16 -0
- package/packages/software-development/retro-analysis/adapters/cursor/plugin.json +6 -0
- package/packages/software-development/retro-analysis/adapters/cursor/skills/retro-analysis/SKILL.md +197 -0
- package/packages/software-development/retro-analysis/adapters/grok/plugin.json +6 -0
- package/packages/software-development/retro-analysis/adapters/grok/skills/retro-analysis/SKILL.md +196 -0
- package/packages/software-development/retro-analysis/adapters/kiro/steering/retro-analysis.md +186 -0
- package/packages/software-development/retro-analysis/adapters/windsurf/rules/retro-analysis.md +185 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "olko-agent-skills",
|
|
3
3
|
"description": "Agent-agnostic skill catalog for Codex, Claude, Cursor, Grok, Copilot, Windsurf, Kiro, and other skill-aware tools.",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.33.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Oleg Koval"
|
|
7
7
|
},
|
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
"./packages/software-development/geminiloop",
|
|
44
44
|
"./packages/software-development/add-to-my-skills",
|
|
45
45
|
"./packages/software-development/wrap-up",
|
|
46
|
+
"./packages/software-development/retro-analysis",
|
|
46
47
|
"./packages/software-development/ai-tools-setup",
|
|
47
48
|
"./packages/software-development/changelog-generator",
|
|
48
49
|
"./packages/software-development/wikipedia-uk-editor",
|
|
@@ -156,6 +156,11 @@
|
|
|
156
156
|
"source": "./packages/software-development/wrap-up/adapters/cursor",
|
|
157
157
|
"description": "Verify a completed task against its original objective, confirm applicable checks, and safely tidy task-owned artifacts, worktrees, and local branches."
|
|
158
158
|
},
|
|
159
|
+
{
|
|
160
|
+
"name": "olko:retro-analysis",
|
|
161
|
+
"source": "./packages/software-development/retro-analysis/adapters/cursor",
|
|
162
|
+
"description": "Produce repository, comparison, and cross-project engineering retrospectives from delivery, code-quality, work-pattern, and trend evidence."
|
|
163
|
+
},
|
|
159
164
|
{
|
|
160
165
|
"name": "olko:ai-tools-setup",
|
|
161
166
|
"source": "./packages/software-development/ai-tools-setup/adapters/cursor",
|
package/.grok-plugin/index.json
CHANGED
|
@@ -166,6 +166,11 @@
|
|
|
166
166
|
"source": "./packages/software-development/wrap-up/adapters/grok",
|
|
167
167
|
"description": "Verify a completed task against its original objective, confirm applicable checks, and safely tidy task-owned artifacts, worktrees, and local branches."
|
|
168
168
|
},
|
|
169
|
+
{
|
|
170
|
+
"name": "olko:retro-analysis",
|
|
171
|
+
"source": "./packages/software-development/retro-analysis/adapters/grok",
|
|
172
|
+
"description": "Produce repository, comparison, and cross-project engineering retrospectives from delivery, code-quality, work-pattern, and trend evidence."
|
|
173
|
+
},
|
|
169
174
|
{
|
|
170
175
|
"name": "olko:ai-tools-setup",
|
|
171
176
|
"source": "./packages/software-development/ai-tools-setup/adapters/grok",
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
inclusion: manual
|
|
5
|
+
description: "Produce repository, comparison, and cross-project engineering retrospectives from delivery, code-quality, work-pattern, and trend evidence."
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Retro Analysis
|
|
9
|
+
|
|
10
|
+
Run a factual engineering retrospective over a defined time window. The purpose is to explain what changed, how the work happened, what quality signals say, what was learned, and what should improve next. This is an analysis workflow, not a performance-ranking or blame exercise.
|
|
11
|
+
|
|
12
|
+
Use it manually at the end of a day, week, sprint, or release; on a recurring schedule; or when asked what was shipped, where time went, or how delivery quality is trending. When a specific implementation has just reached its goal, run this analysis before or alongside `olko:wrap-up` so the delivery audit and the broader retrospective remain distinct.
|
|
13
|
+
|
|
14
|
+
## Invocation
|
|
15
|
+
|
|
16
|
+
Accept one of these arguments:
|
|
17
|
+
|
|
18
|
+
- no argument or `7d`: the previous seven calendar days
|
|
19
|
+
- `24h`: the previous 24 hours
|
|
20
|
+
- `14d` or `30d`: the previous N calendar days
|
|
21
|
+
- `compare` or `compare 14d`: compare the selected window with the immediately preceding window of equal length
|
|
22
|
+
- `global`, `global 14d`: aggregate across discoverable repositories and agent sessions
|
|
23
|
+
|
|
24
|
+
If the argument is invalid, print the accepted forms and stop. Do not silently choose a different window.
|
|
25
|
+
|
|
26
|
+
Calendar windows are aligned to midnight in the operator's local timezone. A short hourly window may use a relative timestamp. State the resolved start, end, timezone, scope, and comparison window at the beginning of the report.
|
|
27
|
+
|
|
28
|
+
## Safety and evidence rules
|
|
29
|
+
|
|
30
|
+
- Be read-only by default. Do not push, merge, deploy, close issues, edit source, or rewrite history.
|
|
31
|
+
- A local retro may write one task-owned snapshot under `.context/retros/` when that directory exists or when persistence is explicitly requested. Never overwrite an existing snapshot; use a date and window-specific filename.
|
|
32
|
+
- Do not fetch or refresh remote refs unless the user or the surrounding workflow authorized that read-side state change. If refs may be stale, say so and use the available evidence.
|
|
33
|
+
- Preserve dirty work, untracked files, existing snapshots, credentials, and unrelated temporary artifacts.
|
|
34
|
+
- Never infer delivery from a local commit. Treat local Git, remote/PR state, CI, deployment, and device or human QA as separate evidence gates.
|
|
35
|
+
- Do not expose secrets, tokens, private prompts, or raw session content. Use aggregate counts and redacted references only.
|
|
36
|
+
- Missing data is `UNKNOWN`, not zero. Distinguish “none found” from “not available”.
|
|
37
|
+
- Do not turn commit count, lines changed, hours, or AI-assisted activity into a simplistic productivity score. Use them as context for the narrative.
|
|
38
|
+
|
|
39
|
+
## 1. Establish scope and baseline
|
|
40
|
+
|
|
41
|
+
For repository mode:
|
|
42
|
+
|
|
43
|
+
1. Identify the repository, current branch, `HEAD`, configured author, base branch, and working-tree state.
|
|
44
|
+
2. Preserve and report pre-existing dirty paths; do not include their changes as delivered work unless the evidence links them to the window.
|
|
45
|
+
3. Use the repository's local timezone for calendar boundaries. Use UTC timestamps in stored machine-readable data.
|
|
46
|
+
4. Read only relevant project documentation and task artifacts needed to interpret the changes. Do not invent milestones, objectives, or acceptance criteria.
|
|
47
|
+
5. Locate prior snapshots in `.context/retros/` and load the immediately preceding comparable snapshot when available.
|
|
48
|
+
|
|
49
|
+
For global mode:
|
|
50
|
+
|
|
51
|
+
1. Discover repositories from the configured workspace locations or an existing discovery tool. If discovery is unavailable, report that limitation and continue with explicitly supplied paths.
|
|
52
|
+
2. For each repository, collect the same bounded evidence as repository mode and skip missing, inaccessible, or non-Git directories.
|
|
53
|
+
3. Optionally include available agent/session summaries or tool telemetry, but only as aggregate, redacted evidence. Do not require a specific agent vendor, plugin, or telemetry format.
|
|
54
|
+
4. Keep per-project results separate before producing cross-project totals. Never hide a repository-level failure in an aggregate.
|
|
55
|
+
|
|
56
|
+
## 2. Collect raw evidence
|
|
57
|
+
|
|
58
|
+
Capture enough raw data to reproduce the analysis. Prefer stable Git/provider CLIs already present in the environment. Save only the normalized snapshot unless raw artifacts were explicitly requested.
|
|
59
|
+
|
|
60
|
+
### Repository history
|
|
61
|
+
|
|
62
|
+
Collect, bounded to the resolved window and scope:
|
|
63
|
+
|
|
64
|
+
- commit hash, author, timestamp, subject, body, and parent information
|
|
65
|
+
- insertions, deletions, files changed, and test-file versus production-file changes
|
|
66
|
+
- commit type signals from Conventional Commit prefixes, labels, or equivalent repository conventions
|
|
67
|
+
- pull request or merge request references present in commits, and provider state when a provider CLI is available
|
|
68
|
+
- changed-file frequency, churn, and hotspots; distinguish generated, vendored, lockfile, and source files when possible
|
|
69
|
+
- per-author commit and file ownership signals, including co-authors and AI-assisted markers only when explicitly present
|
|
70
|
+
|
|
71
|
+
Use `git log --shortstat` or equivalent for commit-level change counts and `git diff --numstat` or equivalent for test/source proportions. If a command cannot run, record the command and reason; do not substitute invented values.
|
|
72
|
+
|
|
73
|
+
### Delivery and quality signals
|
|
74
|
+
|
|
75
|
+
Inspect only signals that exist in the repository or authorized provider tooling:
|
|
76
|
+
|
|
77
|
+
- branch and remote tracking state, current PR title/body, review state, and current-head checks
|
|
78
|
+
- test files, test commands, recent test-related commits, and known failing or skipped checks
|
|
79
|
+
- changelog, release notes, issue/task references, and plan artifacts when present
|
|
80
|
+
- TODO/backlog markers when a project-maintained backlog exists
|
|
81
|
+
- regression fixes, reverted changes, follow-up fixes, and repeated failure patterns
|
|
82
|
+
- optional review or static-analysis summaries, clearly labeling unavailable or rate-limited providers
|
|
83
|
+
|
|
84
|
+
Never call an absent test suite “healthy”; report `NOT_AVAILABLE`. Never call a skipped check green.
|
|
85
|
+
|
|
86
|
+
### Work-pattern signals
|
|
87
|
+
|
|
88
|
+
When timestamps are available:
|
|
89
|
+
|
|
90
|
+
- build an hour-of-day histogram in local time
|
|
91
|
+
- group commits or activity into sessions separated by at least 45 minutes of inactivity
|
|
92
|
+
- classify sessions as deep (3+ hours), medium (1–3 hours), or micro (<1 hour)
|
|
93
|
+
- count active days, longest streak, and context switches between repositories or work areas
|
|
94
|
+
|
|
95
|
+
Treat commit timestamps as a proxy, not proof of keyboard time. If session telemetry exists, prefer it and name the source.
|
|
96
|
+
|
|
97
|
+
## 3. Compute the analysis
|
|
98
|
+
|
|
99
|
+
Use the evidence to calculate, or explicitly mark unavailable, the following dimensions:
|
|
100
|
+
|
|
101
|
+
### Shipping and scope
|
|
102
|
+
|
|
103
|
+
- features, fixes, refactors, docs, tests, chores, and releases shipped
|
|
104
|
+
- commits, weighted commits, active days, contributors, and referenced PRs
|
|
105
|
+
- version range or release identifiers when the repository exposes them
|
|
106
|
+
- logical lines changed and raw lines changed, reported separately
|
|
107
|
+
- plan or objective items completed, deferred, or still open when a plan is available
|
|
108
|
+
|
|
109
|
+
### Quality and maintainability
|
|
110
|
+
|
|
111
|
+
- test lines or test files changed relative to production changes
|
|
112
|
+
- test commands run and their current result
|
|
113
|
+
- regressions, reverts, repeated fixes, and hotspots with high churn
|
|
114
|
+
- type, lint, build, security, review, and release signals when available
|
|
115
|
+
- backlog/TODO health only when there is a maintained source to inspect
|
|
116
|
+
|
|
117
|
+
Do not reward large diffs or penalize small ones without explaining their context. A small change that closes a high-value objective can be the most important shipment.
|
|
118
|
+
|
|
119
|
+
### Focus and delivery flow
|
|
120
|
+
|
|
121
|
+
- commit-type mix and fix ratio; flag a high fix ratio as a signal for investigation, not a diagnosis
|
|
122
|
+
- PR/MR size buckets and time-to-merge when provider data is available
|
|
123
|
+
- work sessions, time-of-day distribution, context switching, and focus patterns
|
|
124
|
+
- planned versus unplanned work, if the plan and change evidence support the comparison
|
|
125
|
+
- the single most consequential shipment or decision, with evidence and caveats
|
|
126
|
+
|
|
127
|
+
### People and collaboration
|
|
128
|
+
|
|
129
|
+
For multi-author work, provide a factual per-author view of commits, change volume, areas touched, review or PR participation, and notable contributions. Include a team view of ownership concentration, cross-review, handoffs, and shared hotspots. Avoid ranking people by raw LOC or commit count.
|
|
130
|
+
|
|
131
|
+
Use the configured Git author as the personal focus only when it is unambiguous. Otherwise produce a team report and state that no personal identity was selected.
|
|
132
|
+
|
|
133
|
+
## 4. Compare and track trends
|
|
134
|
+
|
|
135
|
+
For `compare` or any window with a prior snapshot:
|
|
136
|
+
|
|
137
|
+
- compare features/fixes, commits, active days, contributors, PRs, change volume, test signals, regressions, and backlog movement
|
|
138
|
+
- identify meaningful directional changes and explain whether the evidence is strong, weak, or incomplete
|
|
139
|
+
- preserve the same metric definitions between periods; do not compare a repository window to a global window as if they were equivalent
|
|
140
|
+
- report streaks, recurring hotspots, repeated failure modes, and unresolved improvements only when snapshots support them
|
|
141
|
+
|
|
142
|
+
Store a JSON snapshot with stable keys, UTC timestamps, resolved window, scope, repository identity, commit/PR identifiers, metric values, evidence limitations, and a short list of findings. Keep narrative prose out of fields intended for machine comparison. A snapshot is an aid to future analysis, not a source of truth that overrides current evidence.
|
|
143
|
+
|
|
144
|
+
## 5. Produce the report
|
|
145
|
+
|
|
146
|
+
Lead with a concise, shareable summary of the period. Then use this order:
|
|
147
|
+
|
|
148
|
+
1. **Scope and evidence** — window, timezone, repositories, branch/base, sources, and limitations.
|
|
149
|
+
2. **Summary table** — shipping, activity, quality, and delivery metrics with `UNKNOWN` where needed.
|
|
150
|
+
3. **What shipped** — the most important features, fixes, releases, or decisions, tied to commits/PRs.
|
|
151
|
+
4. **Trends** — comparison with the previous period, if available.
|
|
152
|
+
5. **Time and sessions** — active days, session shape, time distribution, and context switching.
|
|
153
|
+
6. **Quality and test health** — checks, regressions, churn hotspots, review signals, and open risks.
|
|
154
|
+
7. **Plan completion** — objective items completed, deferred, or missing evidence.
|
|
155
|
+
8. **Focus and collaboration** — personal or team analysis with fair context.
|
|
156
|
+
9. **Top wins** — three evidence-backed wins when enough evidence exists.
|
|
157
|
+
10. **Improvements** — three concrete, small, actionable improvements; fewer is fine when evidence is limited.
|
|
158
|
+
11. **Next-period habits** — explicit habits or experiments with an owner or trigger when known.
|
|
159
|
+
12. **Limitations** — missing refs, unavailable provider data, stale telemetry, dirty work, or ambiguous attribution.
|
|
160
|
+
|
|
161
|
+
Use compact tables for exact metrics and prose for interpretation. Label inference as inference. Link or name evidence paths/commit IDs where useful, but never paste private content.
|
|
162
|
+
|
|
163
|
+
## 6. End-of-task handoff
|
|
164
|
+
|
|
165
|
+
If this run is explicitly closing a completed implementation, continue with `olko:wrap-up`:
|
|
166
|
+
|
|
167
|
+
- use the retro to check that the delivered work matches the original idea and to capture follow-up items
|
|
168
|
+
- let `wrap-up` perform the separate local/remote/PR/CI/deployment/QA gates and task-owned cleanup
|
|
169
|
+
- preserve the retro snapshot and report any limitation instead of deleting evidence
|
|
170
|
+
|
|
171
|
+
For a periodic or global retrospective, do not clean worktrees, branches, logs, or temporary files unless the user explicitly asks for that separate cleanup. Analysis alone must not alter delivery state.
|
|
172
|
+
|
|
173
|
+
## Minimal final status
|
|
174
|
+
|
|
175
|
+
End every run with:
|
|
176
|
+
|
|
177
|
+
```text
|
|
178
|
+
RETRO_STATUS: DONE | DONE_WITH_LIMITATIONS | BLOCKED
|
|
179
|
+
WINDOW: <resolved window and timezone>
|
|
180
|
+
SCOPE: <repository or repositories>
|
|
181
|
+
SNAPSHOT: <path, NOT_WRITTEN, or NOT_AVAILABLE>
|
|
182
|
+
TOP_FINDINGS: <short summary>
|
|
183
|
+
NEXT_ACTIONS: <short actionable list>
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
Use `BLOCKED` only when the requested scope cannot be analyzed safely or the required evidence is inaccessible. A partial but clearly labeled report is `DONE_WITH_LIMITATIONS`.
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
description: "Produce repository, comparison, and cross-project engineering retrospectives from delivery, code-quality, work-pattern, and trend evidence."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Retro Analysis
|
|
8
|
+
|
|
9
|
+
Run a factual engineering retrospective over a defined time window. The purpose is to explain what changed, how the work happened, what quality signals say, what was learned, and what should improve next. This is an analysis workflow, not a performance-ranking or blame exercise.
|
|
10
|
+
|
|
11
|
+
Use it manually at the end of a day, week, sprint, or release; on a recurring schedule; or when asked what was shipped, where time went, or how delivery quality is trending. When a specific implementation has just reached its goal, run this analysis before or alongside `olko:wrap-up` so the delivery audit and the broader retrospective remain distinct.
|
|
12
|
+
|
|
13
|
+
## Invocation
|
|
14
|
+
|
|
15
|
+
Accept one of these arguments:
|
|
16
|
+
|
|
17
|
+
- no argument or `7d`: the previous seven calendar days
|
|
18
|
+
- `24h`: the previous 24 hours
|
|
19
|
+
- `14d` or `30d`: the previous N calendar days
|
|
20
|
+
- `compare` or `compare 14d`: compare the selected window with the immediately preceding window of equal length
|
|
21
|
+
- `global`, `global 14d`: aggregate across discoverable repositories and agent sessions
|
|
22
|
+
|
|
23
|
+
If the argument is invalid, print the accepted forms and stop. Do not silently choose a different window.
|
|
24
|
+
|
|
25
|
+
Calendar windows are aligned to midnight in the operator's local timezone. A short hourly window may use a relative timestamp. State the resolved start, end, timezone, scope, and comparison window at the beginning of the report.
|
|
26
|
+
|
|
27
|
+
## Safety and evidence rules
|
|
28
|
+
|
|
29
|
+
- Be read-only by default. Do not push, merge, deploy, close issues, edit source, or rewrite history.
|
|
30
|
+
- A local retro may write one task-owned snapshot under `.context/retros/` when that directory exists or when persistence is explicitly requested. Never overwrite an existing snapshot; use a date and window-specific filename.
|
|
31
|
+
- Do not fetch or refresh remote refs unless the user or the surrounding workflow authorized that read-side state change. If refs may be stale, say so and use the available evidence.
|
|
32
|
+
- Preserve dirty work, untracked files, existing snapshots, credentials, and unrelated temporary artifacts.
|
|
33
|
+
- Never infer delivery from a local commit. Treat local Git, remote/PR state, CI, deployment, and device or human QA as separate evidence gates.
|
|
34
|
+
- Do not expose secrets, tokens, private prompts, or raw session content. Use aggregate counts and redacted references only.
|
|
35
|
+
- Missing data is `UNKNOWN`, not zero. Distinguish “none found” from “not available”.
|
|
36
|
+
- Do not turn commit count, lines changed, hours, or AI-assisted activity into a simplistic productivity score. Use them as context for the narrative.
|
|
37
|
+
|
|
38
|
+
## 1. Establish scope and baseline
|
|
39
|
+
|
|
40
|
+
For repository mode:
|
|
41
|
+
|
|
42
|
+
1. Identify the repository, current branch, `HEAD`, configured author, base branch, and working-tree state.
|
|
43
|
+
2. Preserve and report pre-existing dirty paths; do not include their changes as delivered work unless the evidence links them to the window.
|
|
44
|
+
3. Use the repository's local timezone for calendar boundaries. Use UTC timestamps in stored machine-readable data.
|
|
45
|
+
4. Read only relevant project documentation and task artifacts needed to interpret the changes. Do not invent milestones, objectives, or acceptance criteria.
|
|
46
|
+
5. Locate prior snapshots in `.context/retros/` and load the immediately preceding comparable snapshot when available.
|
|
47
|
+
|
|
48
|
+
For global mode:
|
|
49
|
+
|
|
50
|
+
1. Discover repositories from the configured workspace locations or an existing discovery tool. If discovery is unavailable, report that limitation and continue with explicitly supplied paths.
|
|
51
|
+
2. For each repository, collect the same bounded evidence as repository mode and skip missing, inaccessible, or non-Git directories.
|
|
52
|
+
3. Optionally include available agent/session summaries or tool telemetry, but only as aggregate, redacted evidence. Do not require a specific agent vendor, plugin, or telemetry format.
|
|
53
|
+
4. Keep per-project results separate before producing cross-project totals. Never hide a repository-level failure in an aggregate.
|
|
54
|
+
|
|
55
|
+
## 2. Collect raw evidence
|
|
56
|
+
|
|
57
|
+
Capture enough raw data to reproduce the analysis. Prefer stable Git/provider CLIs already present in the environment. Save only the normalized snapshot unless raw artifacts were explicitly requested.
|
|
58
|
+
|
|
59
|
+
### Repository history
|
|
60
|
+
|
|
61
|
+
Collect, bounded to the resolved window and scope:
|
|
62
|
+
|
|
63
|
+
- commit hash, author, timestamp, subject, body, and parent information
|
|
64
|
+
- insertions, deletions, files changed, and test-file versus production-file changes
|
|
65
|
+
- commit type signals from Conventional Commit prefixes, labels, or equivalent repository conventions
|
|
66
|
+
- pull request or merge request references present in commits, and provider state when a provider CLI is available
|
|
67
|
+
- changed-file frequency, churn, and hotspots; distinguish generated, vendored, lockfile, and source files when possible
|
|
68
|
+
- per-author commit and file ownership signals, including co-authors and AI-assisted markers only when explicitly present
|
|
69
|
+
|
|
70
|
+
Use `git log --shortstat` or equivalent for commit-level change counts and `git diff --numstat` or equivalent for test/source proportions. If a command cannot run, record the command and reason; do not substitute invented values.
|
|
71
|
+
|
|
72
|
+
### Delivery and quality signals
|
|
73
|
+
|
|
74
|
+
Inspect only signals that exist in the repository or authorized provider tooling:
|
|
75
|
+
|
|
76
|
+
- branch and remote tracking state, current PR title/body, review state, and current-head checks
|
|
77
|
+
- test files, test commands, recent test-related commits, and known failing or skipped checks
|
|
78
|
+
- changelog, release notes, issue/task references, and plan artifacts when present
|
|
79
|
+
- TODO/backlog markers when a project-maintained backlog exists
|
|
80
|
+
- regression fixes, reverted changes, follow-up fixes, and repeated failure patterns
|
|
81
|
+
- optional review or static-analysis summaries, clearly labeling unavailable or rate-limited providers
|
|
82
|
+
|
|
83
|
+
Never call an absent test suite “healthy”; report `NOT_AVAILABLE`. Never call a skipped check green.
|
|
84
|
+
|
|
85
|
+
### Work-pattern signals
|
|
86
|
+
|
|
87
|
+
When timestamps are available:
|
|
88
|
+
|
|
89
|
+
- build an hour-of-day histogram in local time
|
|
90
|
+
- group commits or activity into sessions separated by at least 45 minutes of inactivity
|
|
91
|
+
- classify sessions as deep (3+ hours), medium (1–3 hours), or micro (<1 hour)
|
|
92
|
+
- count active days, longest streak, and context switches between repositories or work areas
|
|
93
|
+
|
|
94
|
+
Treat commit timestamps as a proxy, not proof of keyboard time. If session telemetry exists, prefer it and name the source.
|
|
95
|
+
|
|
96
|
+
## 3. Compute the analysis
|
|
97
|
+
|
|
98
|
+
Use the evidence to calculate, or explicitly mark unavailable, the following dimensions:
|
|
99
|
+
|
|
100
|
+
### Shipping and scope
|
|
101
|
+
|
|
102
|
+
- features, fixes, refactors, docs, tests, chores, and releases shipped
|
|
103
|
+
- commits, weighted commits, active days, contributors, and referenced PRs
|
|
104
|
+
- version range or release identifiers when the repository exposes them
|
|
105
|
+
- logical lines changed and raw lines changed, reported separately
|
|
106
|
+
- plan or objective items completed, deferred, or still open when a plan is available
|
|
107
|
+
|
|
108
|
+
### Quality and maintainability
|
|
109
|
+
|
|
110
|
+
- test lines or test files changed relative to production changes
|
|
111
|
+
- test commands run and their current result
|
|
112
|
+
- regressions, reverts, repeated fixes, and hotspots with high churn
|
|
113
|
+
- type, lint, build, security, review, and release signals when available
|
|
114
|
+
- backlog/TODO health only when there is a maintained source to inspect
|
|
115
|
+
|
|
116
|
+
Do not reward large diffs or penalize small ones without explaining their context. A small change that closes a high-value objective can be the most important shipment.
|
|
117
|
+
|
|
118
|
+
### Focus and delivery flow
|
|
119
|
+
|
|
120
|
+
- commit-type mix and fix ratio; flag a high fix ratio as a signal for investigation, not a diagnosis
|
|
121
|
+
- PR/MR size buckets and time-to-merge when provider data is available
|
|
122
|
+
- work sessions, time-of-day distribution, context switching, and focus patterns
|
|
123
|
+
- planned versus unplanned work, if the plan and change evidence support the comparison
|
|
124
|
+
- the single most consequential shipment or decision, with evidence and caveats
|
|
125
|
+
|
|
126
|
+
### People and collaboration
|
|
127
|
+
|
|
128
|
+
For multi-author work, provide a factual per-author view of commits, change volume, areas touched, review or PR participation, and notable contributions. Include a team view of ownership concentration, cross-review, handoffs, and shared hotspots. Avoid ranking people by raw LOC or commit count.
|
|
129
|
+
|
|
130
|
+
Use the configured Git author as the personal focus only when it is unambiguous. Otherwise produce a team report and state that no personal identity was selected.
|
|
131
|
+
|
|
132
|
+
## 4. Compare and track trends
|
|
133
|
+
|
|
134
|
+
For `compare` or any window with a prior snapshot:
|
|
135
|
+
|
|
136
|
+
- compare features/fixes, commits, active days, contributors, PRs, change volume, test signals, regressions, and backlog movement
|
|
137
|
+
- identify meaningful directional changes and explain whether the evidence is strong, weak, or incomplete
|
|
138
|
+
- preserve the same metric definitions between periods; do not compare a repository window to a global window as if they were equivalent
|
|
139
|
+
- report streaks, recurring hotspots, repeated failure modes, and unresolved improvements only when snapshots support them
|
|
140
|
+
|
|
141
|
+
Store a JSON snapshot with stable keys, UTC timestamps, resolved window, scope, repository identity, commit/PR identifiers, metric values, evidence limitations, and a short list of findings. Keep narrative prose out of fields intended for machine comparison. A snapshot is an aid to future analysis, not a source of truth that overrides current evidence.
|
|
142
|
+
|
|
143
|
+
## 5. Produce the report
|
|
144
|
+
|
|
145
|
+
Lead with a concise, shareable summary of the period. Then use this order:
|
|
146
|
+
|
|
147
|
+
1. **Scope and evidence** — window, timezone, repositories, branch/base, sources, and limitations.
|
|
148
|
+
2. **Summary table** — shipping, activity, quality, and delivery metrics with `UNKNOWN` where needed.
|
|
149
|
+
3. **What shipped** — the most important features, fixes, releases, or decisions, tied to commits/PRs.
|
|
150
|
+
4. **Trends** — comparison with the previous period, if available.
|
|
151
|
+
5. **Time and sessions** — active days, session shape, time distribution, and context switching.
|
|
152
|
+
6. **Quality and test health** — checks, regressions, churn hotspots, review signals, and open risks.
|
|
153
|
+
7. **Plan completion** — objective items completed, deferred, or missing evidence.
|
|
154
|
+
8. **Focus and collaboration** — personal or team analysis with fair context.
|
|
155
|
+
9. **Top wins** — three evidence-backed wins when enough evidence exists.
|
|
156
|
+
10. **Improvements** — three concrete, small, actionable improvements; fewer is fine when evidence is limited.
|
|
157
|
+
11. **Next-period habits** — explicit habits or experiments with an owner or trigger when known.
|
|
158
|
+
12. **Limitations** — missing refs, unavailable provider data, stale telemetry, dirty work, or ambiguous attribution.
|
|
159
|
+
|
|
160
|
+
Use compact tables for exact metrics and prose for interpretation. Label inference as inference. Link or name evidence paths/commit IDs where useful, but never paste private content.
|
|
161
|
+
|
|
162
|
+
## 6. End-of-task handoff
|
|
163
|
+
|
|
164
|
+
If this run is explicitly closing a completed implementation, continue with `olko:wrap-up`:
|
|
165
|
+
|
|
166
|
+
- use the retro to check that the delivered work matches the original idea and to capture follow-up items
|
|
167
|
+
- let `wrap-up` perform the separate local/remote/PR/CI/deployment/QA gates and task-owned cleanup
|
|
168
|
+
- preserve the retro snapshot and report any limitation instead of deleting evidence
|
|
169
|
+
|
|
170
|
+
For a periodic or global retrospective, do not clean worktrees, branches, logs, or temporary files unless the user explicitly asks for that separate cleanup. Analysis alone must not alter delivery state.
|
|
171
|
+
|
|
172
|
+
## Minimal final status
|
|
173
|
+
|
|
174
|
+
End every run with:
|
|
175
|
+
|
|
176
|
+
```text
|
|
177
|
+
RETRO_STATUS: DONE | DONE_WITH_LIMITATIONS | BLOCKED
|
|
178
|
+
WINDOW: <resolved window and timezone>
|
|
179
|
+
SCOPE: <repository or repositories>
|
|
180
|
+
SNAPSHOT: <path, NOT_WRITTEN, or NOT_AVAILABLE>
|
|
181
|
+
TOP_FINDINGS: <short summary>
|
|
182
|
+
NEXT_ACTIONS: <short actionable list>
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Use `BLOCKED` only when the requested scope cannot be analyzed safely or the required evidence is inaccessible. A partial but clearly labeled report is `DONE_WITH_LIMITATIONS`.
|
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<p><strong>Agent-agnostic skill catalog for Codex, Claude, Cursor, Grok, Copilot, Windsurf, Kiro, and other skill-aware tools.</strong></p>
|
|
4
4
|
<p>
|
|
5
5
|
<img src="https://img.shields.io/badge/license-MIT-16a34a" alt="MIT license">
|
|
6
|
-
<img src="https://img.shields.io/badge/skills-
|
|
6
|
+
<img src="https://img.shields.io/badge/skills-49-2563eb" alt="49 skills">
|
|
7
7
|
<img src="https://img.shields.io/badge/platforms-Codex%20%7C%20Claude%20%7C%20Cursor%20%7C%20Grok%20%7C%20Copilot%20%7C%20Windsurf%20%7C%20Kiro-111827" alt="Codex Claude Cursor Grok Copilot Windsurf Kiro">
|
|
8
8
|
<img src="https://img.shields.io/badge/status-public%20catalog-16a34a" alt="Public catalog">
|
|
9
9
|
</p>
|
|
@@ -139,16 +139,17 @@ packages/{category}/{skill}/SKILL.md
|
|
|
139
139
|
|
|
140
140
|
</details>
|
|
141
141
|
|
|
142
|
-
## All
|
|
142
|
+
## All 49 Skills
|
|
143
143
|
|
|
144
144
|
Each entry links to its `SKILL.md`. Reference any skill by its `olko:*` lookup name in a new agent session.
|
|
145
145
|
|
|
146
|
-
### Software development (
|
|
146
|
+
### Software development (43)
|
|
147
147
|
|
|
148
148
|
| Skill | What it does | Use when |
|
|
149
149
|
|-------|-------------|----------|
|
|
150
150
|
| [add-to-my-skills](packages/software-development/add-to-my-skills/SKILL.md) | Copies a newly created skill from another repo into this catalog, refreshes the README and generated manifests, then commits and pushes | Adding a skill you wrote elsewhere into this catalog |
|
|
151
151
|
| [wrap-up](packages/software-development/wrap-up/SKILL.md) | Verifies a completed task against its original objective, confirms applicable checks, and safely tidies task-owned artifacts, worktrees, and local branches | Periodic or end-of-task delivery and cleanup review |
|
|
152
|
+
| [retro-analysis](packages/software-development/retro-analysis/SKILL.md) | Produces repository, comparison, and cross-project retrospectives from delivery, code-quality, work-pattern, and trend evidence | Recurring engineering retrospective or “what did we ship?” analysis |
|
|
152
153
|
| [ai-tools-setup](packages/software-development/ai-tools-setup/SKILL.md) | Sets up, repairs, and reports on the RTK + ICM + Vox AI development toolkit — installs missing tools, fixes broken hooks and MCP config | Bootstrapping AI dev tools on a new machine or diagnosing broken integrations |
|
|
153
154
|
| [apple-store-submit](packages/software-development/apple-store-submit/SKILL.md) | Handles App Store rejection emails end-to-end — parses rejection reasons, creates a fix plan, implements code changes, and prepares resubmission | Responding to App Store rejections for privacy strings, entitlements, or guideline violations |
|
|
154
155
|
| [changelog-generator](packages/software-development/changelog-generator/SKILL.md) | Transforms git commits into polished user-facing changelogs by categorising changes and rewriting technical commit messages | Preparing release notes, app store update descriptions, or a public changelog |
|
|
@@ -295,7 +296,7 @@ See [docs/skill-anatomy.md](docs/skill-anatomy.md) for the package format.
|
|
|
295
296
|
```text
|
|
296
297
|
agent-skills/
|
|
297
298
|
├── packages/
|
|
298
|
-
│ ├── software-development/ (
|
|
299
|
+
│ ├── software-development/ (43 skills)
|
|
299
300
|
│ ├── marketing/ (3 skills)
|
|
300
301
|
│ ├── music/ (1 skill)
|
|
301
302
|
│ └── photography/ (1 skill)
|
package/catalog/skills.json
CHANGED
|
@@ -790,6 +790,31 @@
|
|
|
790
790
|
"grok"
|
|
791
791
|
]
|
|
792
792
|
},
|
|
793
|
+
{
|
|
794
|
+
"name": "retro-analysis",
|
|
795
|
+
"lookupName": "olko:retro-analysis",
|
|
796
|
+
"category": "software-development",
|
|
797
|
+
"path": "packages/software-development/retro-analysis",
|
|
798
|
+
"description": "Produce repository, comparison, and cross-project engineering retrospectives from delivery, code-quality, work-pattern, and trend evidence.",
|
|
799
|
+
"tags": [
|
|
800
|
+
"retrospective",
|
|
801
|
+
"metrics",
|
|
802
|
+
"git",
|
|
803
|
+
"productivity",
|
|
804
|
+
"code-quality",
|
|
805
|
+
"trends",
|
|
806
|
+
"planning"
|
|
807
|
+
],
|
|
808
|
+
"adapters": [
|
|
809
|
+
"codex",
|
|
810
|
+
"claude",
|
|
811
|
+
"cursor",
|
|
812
|
+
"copilot",
|
|
813
|
+
"windsurf",
|
|
814
|
+
"kiro",
|
|
815
|
+
"grok"
|
|
816
|
+
]
|
|
817
|
+
},
|
|
793
818
|
{
|
|
794
819
|
"name": "ai-tools-setup",
|
|
795
820
|
"lookupName": "olko:ai-tools-setup",
|