@olegkoval/agent-skills 1.3.2 → 1.5.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.
Files changed (19) hide show
  1. package/.claude-plugin/plugin.json +3 -1
  2. package/.cursor-plugin/index.json +10 -0
  3. package/catalog/skills.json +45 -0
  4. package/package.json +1 -1
  5. package/packages/software-development/ai-tools-setup/SKILL.md +274 -0
  6. package/packages/software-development/ai-tools-setup/adapters/claude/plugin.json +5 -0
  7. package/packages/software-development/ai-tools-setup/adapters/claude/skills/ai-tools-setup/SKILL.md +276 -0
  8. package/packages/software-development/ai-tools-setup/adapters/codex/README.md +3 -0
  9. package/packages/software-development/ai-tools-setup/adapters/cursor/plugin.json +6 -0
  10. package/packages/software-development/ai-tools-setup/adapters/cursor/skills/ai-tools-setup/SKILL.md +276 -0
  11. package/packages/software-development/open-source-publisher/SKILL.md +45 -0
  12. package/packages/software-development/open-source-publisher/adapters/claude/skills/open-source-publisher/SKILL.md +45 -0
  13. package/packages/software-development/open-source-publisher/adapters/cursor/skills/open-source-publisher/SKILL.md +45 -0
  14. package/packages/software-development/starter-rules/SKILL.md +70 -0
  15. package/packages/software-development/starter-rules/adapters/claude/plugin.json +5 -0
  16. package/packages/software-development/starter-rules/adapters/claude/skills/starter-rules/SKILL.md +72 -0
  17. package/packages/software-development/starter-rules/adapters/codex/README.md +16 -0
  18. package/packages/software-development/starter-rules/adapters/cursor/plugin.json +5 -0
  19. package/packages/software-development/starter-rules/adapters/cursor/skills/starter-rules/SKILL.md +72 -0
@@ -0,0 +1,72 @@
1
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
2
+
3
+ ---
4
+ name: starter-rules
5
+ description: Load and enforce the hard rules every oleg-koval/* starter must obey. Use when starting or auditing work in saas-init, ts-npm-starter, go-starter, py-starter, or any future oleg-koval template repo. Covers functional style, 300-line file cap, E2E > unit tests, pre-commit hooks, no-comment policy, KISS/DRY/SOLID, and Vertical Slice as default architecture for SaaS/app starters.
6
+ license: MIT
7
+ compatibility: Codex, Claude Code, Cursor, and other Agent Skills compatible tools.
8
+ metadata:
9
+ author: Oleg Koval
10
+ tags:
11
+ - starters
12
+ - rules
13
+ - architecture
14
+ - vertical-slice
15
+ - linting
16
+ - pre-commit
17
+ ---
18
+
19
+ # Starter Rules
20
+
21
+ ## Overview
22
+
23
+ Load the canonical hard rules for every `oleg-koval/*` starter repo and verify the current repo complies with them. Produces a compliance report and a list of gaps to fix.
24
+
25
+ ## When to Use
26
+
27
+ - Starting a new coding session in any `oleg-koval/*` template repo
28
+ - Auditing an existing starter for rule compliance before a release or PR merge
29
+ - Onboarding a new contributor (human or AI) to a starter
30
+ - After a large refactor, to verify rules have not been silently violated
31
+
32
+ Do not use for repos outside the `oleg-koval` namespace unless they explicitly reference `RULES.md`.
33
+
34
+ ## Workflow
35
+
36
+ 1. **Load the rules** — read `RULES.md` from the repo root. If absent, fetch it from `https://github.com/oleg-koval/starters/blob/main/RULES.md` and note that the starter is missing a local copy.
37
+
38
+ 2. **Apply §2 hard rules** — for the current task or PR diff, verify:
39
+ - No file exceeds 300 lines (`find . -name '*.ts' -o -name '*.py' -o -name '*.go' | xargs wc -l | awk '$1 > 300 && $2 != "total"'`)
40
+ - No functions produce side effects outside of boundary layers
41
+ - New code has no WHAT-comments; WHY-comments are one line max
42
+ - Tests are E2E-first; unit tests only for pure logic with non-trivial branching
43
+
44
+ 3. **Verify hooks and lint** — check that pre-commit hooks are installed and configured:
45
+ - TypeScript: `cat .eslintrc* | grep max-lines` and `cat package.json | grep -A5 '"lint-staged"\|"husky"\|"lefthook"'`
46
+ - Python: `cat .pre-commit-config.yaml` and check for `ruff` + format hooks
47
+ - Go: `cat .golangci.yml` or `.pre-commit-config.yaml` and check for `golangci-lint` + `gofmt`
48
+
49
+ 4. **Check architecture** — for app/SaaS starters: confirm feature code is organized as vertical slices (feature directory contains handler + DTO + service + tests together). For library starters: skip.
50
+
51
+ 5. **Report gaps** — list any violations found in steps 2–4. For each gap:
52
+ - Name the rule (e.g., "§2.2 file length")
53
+ - Name the file and line count or violation
54
+ - Propose the minimal fix
55
+
56
+ 6. **Fix on request** — if the user asks to fix the gaps, apply them one at a time, smallest change first. Do not refactor beyond what the rule requires.
57
+
58
+ ## Reference
59
+
60
+ Full rule details: [`RULES.md`](./RULES.md)
61
+
62
+ Architecture options and future starters: `RULES.md §3`
63
+
64
+ Unix principles: `RULES.md §4`
65
+
66
+ ## Verification
67
+
68
+ - [ ] `RULES.md` was read from the repo root (or fetched and absence noted)
69
+ - [ ] File length check ran with zero violations, or violations were listed
70
+ - [ ] Pre-commit hooks verified as installed and configured
71
+ - [ ] Compliance report produced listing passed checks and gaps
72
+ - [ ] Any fixes applied do not exceed the scope of the violated rule