Repository navigation
Expand file tree
/
Copy pathindex.html
More file actions
584 lines (558 loc) · 74 KB
/
Copy pathindex.html
File metadata and controls
584 lines (558 loc) · 74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>cskwork/skills: the skills, system prompt, and toolkit I use every day</title>
<meta name="description" content="31 agent skills, one system prompt (AGENTS.md), and 12 CLIs I run every day with Claude Code and Codex. Install with npx skills@latest add cskwork/skills.">
<meta property="og:title" content="cskwork/skills">
<meta property="og:description" content="31 agent skills, one system prompt, and 12 CLIs. Every skill credited to its author and upstream commit.">
<meta property="og:url" content="https://cskwork.github.io/skills/">
<meta name="theme-color" content="#1f3bd6">
<link rel="preload" href="assets/fonts/archivo-latin.woff2" as="font" type="font/woff2" crossorigin>
<style>
@font-face {
font-family: "Archivo";
src: url("assets/fonts/archivo-latin.woff2") format("woff2");
font-weight: 100 900;
font-stretch: 62% 125%;
font-display: swap;
}
:root {
--blue: #1f3bd6;
--blue-deep: #172ca3;
--blue-ink: #c9d2ff;
--yellow: #ffd23f;
--black: #111114;
--paper: #f7f7f5;
--white: #ffffff;
--rule: #111114;
--muted: #4a4a55;
--mono: ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
--sans: "Archivo", "Helvetica Neue", Arial, sans-serif;
--gutter: clamp(1.25rem, 4vw, 4rem);
--ease: cubic-bezier(.16, 1, .3, 1);
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scrollbar-color: var(--blue) var(--paper); }
body {
margin: 0;
background: var(--paper);
color: var(--black);
font-family: var(--sans);
font-size: 1.0625rem;
line-height: 1.55;
font-stretch: 100%;
-webkit-font-smoothing: antialiased;
caret-color: var(--blue);
}
::selection { background: var(--yellow); color: var(--black); }
a { color: inherit; text-underline-offset: .2em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--yellow); outline-offset: 3px; border-radius: 2px; box-shadow: 0 0 0 6px var(--black); }
code, .mono { font-family: var(--mono); font-size: .9em; font-variant-numeric: tabular-nums; }
.skip { position: absolute; left: -9999px; }
.skip:focus { left: 1rem; top: 1rem; z-index: 10; background: var(--yellow); padding: .5rem 1rem; }
.icon { width: 1em; height: 1em; flex: none; }
/* ---------- Top bar ---------- */
.bar {
display: flex; justify-content: space-between; align-items: center; gap: 1rem;
padding: 1rem var(--gutter);
font-weight: 700; font-stretch: 85%; letter-spacing: .02em; text-transform: uppercase; font-size: .8125rem;
}
.bar nav { display: flex; gap: clamp(.75rem, 2vw, 1.75rem); flex-wrap: wrap; }
.bar a { text-decoration: none; }
.bar a:hover { text-decoration: underline; }
.bar .gh { display: inline-flex; align-items: center; gap: .4rem; }
/* ---------- Hero: sleeve + disc ---------- */
.hero {
display: grid;
grid-template-columns: var(--sleeve) 1fr;
gap: 0;
padding: clamp(.5rem, 2vw, 1.5rem) var(--gutter) clamp(3rem, 7vw, 6rem);
--sleeve: min(76vh, 47vw, 720px);
align-items: center;
}
.deck { position: relative; width: var(--sleeve); aspect-ratio: 1; }
.disc {
position: absolute; inset: 3%;
border-radius: 50%;
background:
radial-gradient(circle at 50% 50%, var(--black) 0 1.6%, var(--yellow) 1.7% 17%, #0b0b0d 17.3% 18.5%, transparent 18.6%),
repeating-radial-gradient(circle at 50% 50%, #18181c 0 1.1px, #0c0c0e 1.2px 2.6px),
#0c0c0e;
box-shadow: 0 18px 40px -12px rgb(0 0 0 / .45);
transform: translateX(44%);
animation: slide 1.6s var(--ease) both .2s;
}
.label {
position: absolute; inset: 0; display: grid; place-items: center;
animation: spin 14s linear infinite;
}
.label span {
position: absolute; top: 37.5%; width: 30%; text-align: center;
font-weight: 800; font-stretch: 70%; font-size: calc(var(--sleeve) * .022); letter-spacing: .08em; text-transform: uppercase; color: var(--black);
}
.label span + span { top: auto; bottom: 37.5%; font-weight: 600; }
@keyframes slide { from { transform: translateX(0); } to { transform: translateX(44%); } }
@keyframes spin { to { transform: rotate(360deg); } }
.sleeve {
position: absolute; inset: 0;
background: var(--blue);
color: var(--white);
display: grid;
grid-template-rows: auto 1fr auto auto;
padding: calc(var(--sleeve) * .06);
box-shadow: 0 24px 50px -20px rgb(17 17 40 / .55), inset 0 0 0 1px rgb(255 255 255 / .06);
overflow: hidden;
}
.sleeve::before { /* printed-board grain */
content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .18; mix-blend-mode: multiply;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.sleeve .artist {
margin: 0; font-weight: 800; font-stretch: 80%; text-transform: uppercase; letter-spacing: .04em;
font-size: max(1rem, calc(var(--sleeve) * .042)); display: flex; justify-content: space-between; align-items: baseline;
}
.sleeve .artist small { font-weight: 600; font-size: max(.6875rem, .5em); letter-spacing: .14em; color: var(--blue-ink); }
.sleeve h1 {
align-self: end; margin: 0;
font-weight: 900; font-stretch: 62%; text-transform: uppercase;
font-size: calc(var(--sleeve) * .372); line-height: .78; letter-spacing: -.03em;
margin-left: -.03em;
}
.sleeve h1 .slash { color: var(--black); }
.sleeve .band {
margin: calc(var(--sleeve) * .03) calc(var(--sleeve) * -.06) 0;
background: var(--black); color: var(--white);
padding: calc(var(--sleeve) * .018) calc(var(--sleeve) * .06);
font-weight: 700; font-stretch: 75%; text-transform: uppercase; letter-spacing: .12em;
font-size: max(.6875rem, calc(var(--sleeve) * .022));
display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem;
}
.sleeve .foot {
margin-top: calc(var(--sleeve) * .03);
font-size: max(.6875rem, calc(var(--sleeve) * .02)); color: var(--blue-ink); font-weight: 500; letter-spacing: .02em;
display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem;
}
.sticker {
position: absolute; z-index: 3;
right: calc(var(--sleeve) * -.1); top: calc(var(--sleeve) * .2);
width: calc(var(--sleeve) * .62); min-width: 15rem;
background: var(--yellow); color: var(--black);
padding: 1rem 1.1rem 1.05rem;
border-radius: 6px;
transform: rotate(-4deg);
box-shadow: 0 10px 24px -8px rgb(0 0 0 / .45);
}
.sticker p { margin: 0 0 .55rem; font-weight: 900; font-stretch: 68%; text-transform: uppercase; font-size: 1.35rem; line-height: .95; letter-spacing: .01em; }
.cmd {
display: flex; align-items: stretch; gap: 0; min-width: 0; max-width: 100%;
background: var(--black); color: var(--white); border-radius: 4px; overflow: hidden;
border: 2px solid var(--black);
}
.cmd code { padding: .6rem .7rem; font-size: .8125rem; white-space: nowrap; overflow-x: auto; flex: 1; min-width: 0; scrollbar-width: thin; scrollbar-color: #55555f transparent; }
.cmd code, .gear dd code { white-space: normal; overflow-wrap: normal; }
code .t { white-space: nowrap; }
.hero > *, .bonus > *, .bonus dd, .bonus dl > div, .signoff > *, .note, .gear dd, .side { min-width: 0; }
.copy {
all: unset; cursor: pointer; display: inline-flex; align-items: center; gap: .35rem;
padding: 0 .75rem; font-family: var(--sans); font-weight: 700; font-stretch: 80%; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em;
background: var(--white); color: var(--black);
transition: background .2s var(--ease);
}
.copy:hover { background: var(--yellow); }
.copy:focus-visible { outline: 3px solid var(--yellow); outline-offset: -3px; box-shadow: none; }
.copy[data-state="done"] { background: var(--yellow); }
.pitch {
padding-left: calc(var(--sleeve) * .5);
max-width: calc(var(--sleeve) * .5 + 30rem);
}
.pitch .lede {
font-weight: 800; font-stretch: 72%; text-transform: uppercase;
font-size: clamp(2rem, 3.6vw, 3.4rem); line-height: .95; letter-spacing: -.01em; margin: 0 0 1.25rem;
}
.pitch p { margin: 0 0 1rem; max-width: 34ch; }
.actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.btn {
display: inline-flex; align-items: center; gap: .5rem;
padding: .8rem 1.1rem; text-decoration: none; border-radius: 3px;
font-weight: 800; font-stretch: 80%; text-transform: uppercase; letter-spacing: .06em; font-size: .875rem;
border: 2px solid var(--black);
transition: background .2s var(--ease), color .2s var(--ease);
}
.btn.primary { background: var(--black); color: var(--white); }
.btn.primary:hover { background: var(--blue); border-color: var(--blue); }
.btn:not(.primary):hover { background: var(--black); color: var(--white); }
/* ---------- Section heads ---------- */
section { padding: clamp(3.5rem, 8vw, 7rem) var(--gutter); }
.head {
display: grid; grid-template-columns: 1fr minmax(0, 30rem); gap: 1rem 3rem; align-items: end;
border-bottom: 3px solid var(--rule); padding-bottom: 1rem; margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
}
.head h2 {
margin: 0; font-weight: 900; font-stretch: 62%; text-transform: uppercase;
font-size: clamp(3rem, 9vw, 6rem); line-height: .82; letter-spacing: -.02em;
}
.head p { margin: 0; color: var(--muted); }
/* ---------- Tracklist ---------- */
.tracklist { background: var(--white); }
.sides { display: grid; grid-template-columns: 1.15fr 1fr; gap: clamp(2rem, 4vw, 4rem); }
.sides .col { display: grid; gap: clamp(2rem, 4vw, 3.25rem); align-content: start; }
.side h3 {
margin: 0 0 .25rem; display: flex; align-items: baseline; gap: .75rem;
font-weight: 800; font-stretch: 75%; text-transform: uppercase; font-size: 1.5rem; letter-spacing: .02em;
}
.side h3 .letter {
display: inline-grid; place-items: center; width: 2.1rem; height: 2.1rem; border-radius: 50%;
background: var(--blue); color: var(--white); font-size: 1.15rem; font-stretch: 70%; transform: translateY(-.1rem);
}
.side h3 small { font-size: .75rem; font-weight: 600; letter-spacing: .1em; color: var(--muted); margin-left: auto; }
.side ol { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--rule); }
.side li { border-bottom: 1px solid #d5d5da; }
.side details > summary {
list-style: none; cursor: pointer;
display: grid; grid-template-columns: 2.6rem 1fr auto 1.25rem; align-items: baseline; gap: .75rem;
padding: .8rem .25rem;
transition: background .2s var(--ease);
}
.side details > summary::-webkit-details-marker { display: none; }
.side summary:hover { background: #eef0fb; }
.side .no { font-family: var(--mono); font-size: .8125rem; color: var(--blue); font-weight: 600; }
.side .title { font-weight: 700; font-size: 1.125rem; font-stretch: 90%; }
.side .by { font-size: .875rem; color: var(--muted); text-align: right; }
.side .by i { font-style: normal; font-family: var(--mono); font-size: .75rem; color: var(--blue); margin-left: .6rem; }
.side .chev { width: 1rem; height: 1rem; align-self: center; transition: transform .35s var(--ease); color: var(--blue); }
.side details[open] .chev { transform: rotate(45deg); }
.note { padding: .25rem .25rem 1.25rem 3.35rem; display: grid; gap: .7rem; }
.note p { margin: 0; max-width: 62ch; }
.note .matrix { font-family: var(--mono); font-size: .8125rem; color: var(--muted); display: flex; flex-wrap: wrap; gap: .25rem 1rem; }
.note .matrix a { color: var(--blue); }
.note .cmd { max-width: 40rem; }
.bonus { margin-top: clamp(2.5rem, 5vw, 4rem); border: 2px dashed var(--black); padding: clamp(1.25rem, 3vw, 2rem); display: grid; grid-template-columns: minmax(0, 16rem) 1fr; gap: 1.5rem 3rem; }
.bonus h3 { margin: 0; font-weight: 900; font-stretch: 65%; text-transform: uppercase; font-size: 2rem; line-height: .95; }
.bonus h3 + p { margin: .5rem 0 0; color: var(--muted); font-size: .9375rem; }
.bonus dl { margin: 0; display: grid; gap: 1.25rem; }
.bonus dt { font-weight: 800; font-size: 1.125rem; font-stretch: 90%; }
.private-badge { display: inline-block; margin-left: .5rem; padding: .1rem .45rem; background: var(--yellow); border: 1px solid var(--black); border-radius: 3px; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; vertical-align: middle; }
.bonus dd { margin: .2rem 0 0; display: grid; gap: .5rem; }
.bonus dd p { margin: 0; }
/* ---------- Liner notes ---------- */
.liner { background: var(--blue); color: var(--white); }
.liner .head { border-color: var(--white); }
.liner .head p { color: var(--blue-ink); }
.liner blockquote {
margin: 0 0 clamp(2rem, 4vw, 3rem); max-width: 22ch;
font-weight: 900; font-stretch: 66%; text-transform: uppercase;
font-size: clamp(2.25rem, 5.4vw, 4.75rem); line-height: .92; letter-spacing: -.01em;
}
.liner blockquote::before { content: "\201C"; color: var(--yellow); margin-right: .05em; }
.liner blockquote::after { content: "\201D"; color: var(--yellow); }
.essay { columns: 3 18rem; column-gap: clamp(1.5rem, 3vw, 3rem); column-rule: 1px solid rgb(255 255 255 / .25); font-size: .9375rem; line-height: 1.6; }
.essay p { margin: 0 0 1rem; break-inside: avoid-column; }
.essay p:first-child::first-letter { float: left; font-weight: 900; font-stretch: 62%; font-size: 4.2rem; line-height: .8; margin: .25rem .4rem 0 0; color: var(--yellow); }
.signoff { margin-top: 2rem; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1.25rem; border-top: 1px solid rgb(255 255 255 / .35); padding-top: 1.5rem; }
.signoff .who { font-weight: 800; font-stretch: 80%; text-transform: uppercase; letter-spacing: .08em; }
.signoff .cmd { flex: 1 1 28rem; max-width: 46rem; }
.liner a { color: var(--white); }
.liner ::selection { background: var(--yellow); color: var(--black); }
/* ---------- Recorded with ---------- */
.gear dl { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(2rem, 5vw, 5rem); }
.gear .row { display: grid; grid-template-columns: 9.5rem 1fr; gap: .25rem 1.25rem; padding: 1.1rem 0; border-bottom: 1px solid #cfcfd6; }
.gear dt { font-weight: 600; font-stretch: 85%; text-transform: uppercase; letter-spacing: .08em; font-size: .75rem; color: var(--muted); padding-top: .35rem; }
.gear dd { margin: 0; }
.gear dd a.name { font-weight: 900; font-stretch: 72%; text-transform: uppercase; font-size: 1.6rem; line-height: 1; text-decoration: none; }
.gear dd a.name:hover { color: var(--blue); }
.gear dd p { margin: .3rem 0 .45rem; font-size: .9375rem; }
.gear dd code { display: block; max-width: 100%; width: fit-content; font-size: .78rem; background: #ececf0; padding: .25rem .5rem; border-radius: 3px; overflow-x: auto; }
/* ---------- Credits ---------- */
.credits { background: var(--black); color: var(--white); }
.credits .head { border-color: var(--white); }
.credits .head p { color: #b5b5c0; }
.credit-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 2rem 3rem; margin: 0; }
.credit-list div { border-top: 1px solid #3a3a44; padding-top: .9rem; }
.credit-list dt { font-weight: 900; font-stretch: 72%; text-transform: uppercase; font-size: 1.5rem; line-height: 1; }
.credit-list dt a { text-decoration: none; }
.credit-list dt a:hover { color: var(--yellow); }
.credit-list dd { margin: .45rem 0 0; color: #c4c4cc; font-size: .9375rem; }
.credit-list dd .lic { display: block; margin-top: .35rem; font-family: var(--mono); font-size: .75rem; color: var(--yellow); }
.runout {
margin-top: clamp(3rem, 6vw, 5rem); padding-top: 1.25rem; border-top: 1px solid #3a3a44;
display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem;
font-family: var(--mono); font-size: .75rem; color: #8d8d99; letter-spacing: .04em;
}
.runout a { color: #c4c4cc; }
.credits ::selection { background: var(--yellow); color: var(--black); }
.sr-live { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
/* ---------- Responsive ---------- */
@media (max-width: 960px) {
.hero { grid-template-columns: 1fr; --sleeve: min(calc(100vw - 2 * var(--gutter) - 12vw), 560px); gap: 3rem; }
.deck { margin-bottom: 1rem; }
.disc { transform: translateX(18%); animation-name: slide-sm; }
@keyframes slide-sm { from { transform: translateX(0); } to { transform: translateX(18%); } }
.sticker { right: auto; left: calc(var(--sleeve) * .42); top: auto; bottom: calc(var(--sleeve) * -.1); }
.pitch { padding-left: 0; padding-top: 2.5rem; max-width: 40rem; }
.sides { grid-template-columns: 1fr; }
.head { grid-template-columns: 1fr; }
.gear dl { grid-template-columns: 1fr; }
.bonus { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
.bar nav a:not(.gh) { display: none; }
.sticker { left: 4%; right: 4%; width: auto; min-width: 0; top: calc(100% - .55rem); bottom: auto; transform: rotate(-2deg); }
.pitch { padding-top: 11.5rem; }
.side details > summary { grid-template-columns: 2.1rem 1fr 1.1rem; }
.side .by { grid-column: 2; grid-row: 2; text-align: left; margin-top: -.5rem; }
.side .chev { grid-column: 3; grid-row: 1; }
.note { padding-left: .25rem; }
.cmd { flex-direction: column; }
.copy { justify-content: center; padding: .6rem .75rem; }
.gear .row { grid-template-columns: 1fr auto; }
.gear dd { display: contents; }
.gear dd > * { grid-column: 1 / -1; }
.gear dd a.name { grid-column: 1; grid-row: 1; }
.gear dt { grid-column: 2; grid-row: 1; padding-top: .4rem; text-align: right; }
.sleeve .band { letter-spacing: .06em; }
.sleeve .foot { display: none; }
}
@media (prefers-reduced-motion: reduce) {
.disc, .label { animation: none; }
html { scroll-behavior: auto; }
}
</style>
</head>
<body>
<a class="skip" href="#tracklist">Skip to the tracklist</a>
<svg width="0" height="0" style="position:absolute" aria-hidden="true">
<symbol id="i-copy" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="12" height="12" rx="2"/><path d="M5 15V5a2 2 0 0 1 2-2h10"/></symbol>
<symbol id="i-check" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M4 12.5l5 5L20 6.5"/></symbol>
<symbol id="i-plus" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round"><path d="M12 4v16M4 12h16"/></symbol>
<symbol id="i-gh" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .5a11.5 11.5 0 0 0-3.64 22.41c.58.1.79-.25.79-.56v-2c-3.2.7-3.88-1.37-3.88-1.37-.52-1.33-1.28-1.69-1.28-1.69-1.04-.71.08-.7.08-.7 1.16.08 1.77 1.19 1.77 1.19 1.03 1.76 2.7 1.25 3.36.96.1-.75.4-1.25.73-1.54-2.56-.29-5.25-1.28-5.25-5.69 0-1.26.45-2.29 1.19-3.1-.12-.29-.52-1.46.11-3.05 0 0 .97-.31 3.17 1.18a11 11 0 0 1 5.77 0c2.2-1.49 3.17-1.18 3.17-1.18.63 1.59.23 2.76.11 3.05.74.81 1.19 1.84 1.19 3.1 0 4.42-2.7 5.39-5.27 5.68.41.36.78 1.06.78 2.14v3.17c0 .31.21.67.8.56A11.5 11.5 0 0 0 12 .5Z"/></symbol>
<symbol id="i-down" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M12 4v16M5 13l7 7 7-7"/></symbol>
</svg>
<header class="bar">
<a href="./" aria-label="cskwork/skills home">cskwork / skills</a>
<nav aria-label="Sections">
<a href="#tracklist">Tracklist</a>
<a href="#liner-notes">Liner notes</a>
<a href="#recorded-with">Recorded with</a>
<a href="#credits">Credits</a>
<a class="gh" href="https://github.com/cskwork/skills"><svg class="icon" aria-hidden="true"><use href="#i-gh"/></svg>GitHub</a>
</nav>
</header>
<main>
<div class="hero">
<div class="deck">
<div class="disc" aria-hidden="true"><div class="label"><span>cskwork</span><span>Skills · Side A</span></div></div>
<div class="sleeve">
<p class="artist">cskwork <small>Daily rotation</small></p>
<h1 aria-label="cskwork/skills">Skills</h1>
<div class="band" aria-hidden="true"><span>31 tracks</span><span>1 system prompt</span><span>12 tools</span></div>
<div class="foot"><span>Claude Code · Codex · any agent</span><span>Sides A–D + bonus</span></div>
</div>
<div class="sticker">
<p>Installs every track you pick</p>
<div class="cmd">
<code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span></code>
<button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills" aria-label="Copy install command"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button>
</div>
</div>
</div>
<div class="pitch">
<p class="lede">The skills, system prompt, and CLIs I run every day.</p>
<p>A working kit for Claude Code, Codex, and other coding agents. Pick the skills you want; the installer asks which agents to put them on.</p>
<p>Every track is credited to the person who wrote it, with the upstream commit it was copied from.</p>
<div class="actions">
<a class="btn primary" href="#tracklist"><svg class="icon" aria-hidden="true"><use href="#i-down"/></svg>See the tracklist</a>
<a class="btn" href="https://github.com/cskwork/skills"><svg class="icon" aria-hidden="true"><use href="#i-gh"/></svg>View on GitHub</a>
</div>
</div>
</div>
<section class="tracklist" id="tracklist" aria-labelledby="tracklist-h">
<div class="head">
<h2 id="tracklist-h">Tracklist</h2>
<p>Open a track for its notes, its source, and a command that installs just that skill.</p>
</div>
<div class="sides" id="sides"><div class="col"><div class="side"><h3><span class="letter" aria-hidden="true">A</span>Side A · Engineering<small>15 tracks</small></h3><ol>
<li><details><summary><span class="no">A1</span><span class="title">sdlc-kit</span><span class="by">cskwork<i>6098242</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Four-phase SDLC loop with human gates: intent, plan, build, evidence. A script scores the proof and sends failures back to plan or build.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/sdlc-kit/commit/6098242">cskwork/sdlc-kit@6098242</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/sdlc-kit">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">sdlc-kit</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill sdlc-kit" aria-label="Copy install command for sdlc-kit"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A2</span><span class="title">verify-app</span><span class="by">cskwork<i>this repo</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Build and run the app to prove a change works end to end. For agents without a built-in verify, such as Codex; in Claude Code use the bundled /verify.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/verify-app">cskwork/skills</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/verify-app">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">verify-app</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill verify-app" aria-label="Copy install command for verify-app"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A3</span><span class="title">db-intelligence</span><span class="by">cskwork<i>d678ccd</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>One skill for PostgreSQL, MySQL, SQLite, and MongoDB: detect the engine, connect credential-safe, read the schema, read before writing, never write to prod.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/pi-setup-public/commit/d678ccd">cskwork/pi-setup-public@d678ccd</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/db-intelligence">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">db-intelligence</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill db-intelligence" aria-label="Copy install command for db-intelligence"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A4</span><span class="title">sql-walkthrough</span><span class="by">cskwork<i>10ac9c7</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Explain SQL and batch logic to a non-expert: numbered source lines, the real rows they read, per-line arithmetic, a results table where only the input changes, and an executed counter-example.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/sql-walkthrough/commit/10ac9c7">cskwork/sql-walkthrough@10ac9c7</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/sql-walkthrough">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">sql-walkthrough</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill sql-walkthrough" aria-label="Copy install command for sql-walkthrough"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A5</span><span class="title">improve-codebase-architecture</span><span class="by">Matt Pocock<i>4588b32</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Find deepening opportunities, show them as an HTML report, then grill through the one you pick.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/4588b32">mattpocock/skills@4588b32</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/improve-codebase-architecture">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">improve-codebase-architecture</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill improve-codebase-architecture" aria-label="Copy install command for improve-codebase-architecture"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A6</span><span class="title">prototype</span><span class="by">Matt Pocock<i>4588b32</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Build a throwaway prototype to answer a design question.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/4588b32">mattpocock/skills@4588b32</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/prototype">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">prototype</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill prototype" aria-label="Copy install command for prototype"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A7</span><span class="title">retro</span><span class="by">Matt Pocock<i>4588b32</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Run a retrospective on a coding session.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/4588b32">mattpocock/skills@4588b32</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/retro">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">retro</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill retro" aria-label="Copy install command for retro"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A8</span><span class="title">jk</span><span class="by">Aviv Sinai & co.<i>ed86f89</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Drive Jenkins from the terminal with the jk CLI: jobs, runs, logs, artifacts, credentials.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/avivsinai/jenkins-cli/commit/ed86f89">avivsinai/jenkins-cli@ed86f89</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/jk">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">jk</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill jk" aria-label="Copy install command for jk"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A9</span><span class="title">bughunt</span><span class="by">cskwork<i>bughunt-skill</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Find and fix interaction bugs with seeded personas, invariant oracles, reproducible failures, and replay. App profiles fit it to games, CRUD apps (double submit, drafts, Korean IME, two sessions), AI chat (streaming, stop, safe rendering), and media (recording, permissions, interruptions). Godot, native iOS, and web adapters.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/bughunt-skill">cskwork/bughunt-skill</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/bughunt">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">bughunt</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill bughunt" aria-label="Copy install command for bughunt"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A10</span><span class="title">swiftui-pro</span><span class="by">Paul Hudson<i>f980071</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Review SwiftUI code for modern API use, data flow, navigation, accessibility, and performance, with before/after fixes. Targets the latest iOS and Swift; respects a project's existing deployment target.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/twostraws/SwiftUI-Agent-Skill/commit/f980071">twostraws/SwiftUI-Agent-Skill@f980071</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/swiftui-pro">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">swiftui-pro</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill swiftui-pro" aria-label="Copy install command for swiftui-pro"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A11</span><span class="title">quality-loop</span><span class="by">cskwork<i>quality-loop-skill</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>One quality bar and improvement loop for apps, sites, and games: four dimensions (experience, function, consumer trust, engineering), hard floors, an independent judge for release candidates, and a ledger where every fix leaves a guard. Every report opens with a quality % (target 90% or higher) and why each point was lost.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/quality-loop-skill">cskwork/quality-loop-skill</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/quality-loop">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">quality-loop</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill quality-loop" aria-label="Copy install command for quality-loop"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A12</span><span class="title">simless</span><span class="by">Abacus.AI<i>676b089</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Default way to test iOS apps: render SwiftUI screens as accessibility trees, hot-reload views and run unit tests on the Mac without booting a simulator. The simulator is kept for the final pass. Modified here with that policy and one-time Mac setup.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/abacusai/simless/commit/676b089">abacusai/simless@676b089</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/simless">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">simless</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill simless" aria-label="Copy install command for simless"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A13</span><span class="title">grill-with-docs</span><span class="by">Matt Pocock<i>49dd158</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Relentless design interview that sharpens a plan while keeping GLOSSARY.md and ADRs updated as decisions settle.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/49dd158">mattpocock/skills@49dd158</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/grill-with-docs">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">grill-with-docs</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill grill-with-docs" aria-label="Copy install command for grill-with-docs"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A14</span><span class="title">domain-modeling</span><span class="by">Matt Pocock<i>49dd158</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Actively build and sharpen a project's domain model: challenge terms, probe edge cases, and keep GLOSSARY.md and ADRs current.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/49dd158">mattpocock/skills@49dd158</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/domain-modeling">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">domain-modeling</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill domain-modeling" aria-label="Copy install command for domain-modeling"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">A15</span><span class="title">research</span><span class="by">Matt Pocock<i>49dd158</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Investigate a question against primary sources in a background agent and record cited findings in Markdown.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/49dd158">mattpocock/skills@49dd158</a><a href="https://github.com/cskwork/skills/tree/main/skills/engineering/research">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">research</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill research" aria-label="Copy install command for research"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
</ol></div></div><div class="col"><div class="side"><h3><span class="letter" aria-hidden="true">B</span>Side B · Productivity<small>7 tracks</small></h3><ol>
<li><details><summary><span class="no">B1</span><span class="title">handoff</span><span class="by">Matt Pocock<i>4588b32</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Compact the conversation into a handoff document for another agent to pick up.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/4588b32">mattpocock/skills@4588b32</a><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/handoff">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">handoff</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill handoff" aria-label="Copy install command for handoff"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">B2</span><span class="title">writing-for-agents</span><span class="by">Matt Pocock<i>4588b32</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>How to write skills, AGENTS.md, and CLAUDE.md that agents follow.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/4588b32">mattpocock/skills@4588b32</a><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/writing-for-agents">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">writing-for-agents</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill writing-for-agents" aria-label="Copy install command for writing-for-agents"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">B3</span><span class="title">ponytail</span><span class="by">DietrichGebert<i>b223500</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Lazy-senior-dev mode: the simplest, shortest solution that actually works.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/DietrichGebert/ponytail/commit/b223500">DietrichGebert/ponytail@b223500</a><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/ponytail">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">ponytail</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill ponytail" aria-label="Copy install command for ponytail"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">B4</span><span class="title">grilling</span><span class="by">Matt Pocock<i>49dd158</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Interview the user relentlessly in frontier rounds until a plan or design tree is settled with nothing silently assumed.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/mattpocock/skills/commit/49dd158">mattpocock/skills@49dd158</a><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/grilling">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">grilling</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill grilling" aria-label="Copy install command for grilling"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">B5</span><span class="title">attention-kind</span><span class="by">alexgreensh<i>f5b6e80</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Answer in the ADHD-friendly Attention-kind style: one-sentence bottom line first, arrow-marked bold points, short by default, expanding only on what is vital while preserving numbers, conditions, and warnings.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/alexgreensh/attention-span/commit/f5b6e80">alexgreensh/attention-span@f5b6e80</a><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/attention-kind">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">attention-kind</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill attention-kind" aria-label="Copy install command for attention-kind"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">B6</span><span class="title">work-status</span><span class="by">cskwork<i>this repo</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Report progress on the current request in numbers: items done, in progress, todo, and blocked, evidence for each done item, and an ETA for the rest.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/work-status">cskwork/skills</a><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/work-status">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">work-status</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill work-status" aria-label="Copy install command for work-status"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">B7</span><span class="title">caveman</span><span class="by">Julius Brussee<i>bad48a0</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Default terse reply style: answer first, preserve every technical fact, number, warning, and exact code payload. Local voice skill only.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/JuliusBrussee/caveman/commit/bad48a0e1df55e05e3f52249afa35ecc1909ee76">JuliusBrussee/caveman@bad48a0</a><a href="https://github.com/cskwork/skills/tree/main/skills/productivity/caveman">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">caveman</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill caveman" aria-label="Copy install command for caveman"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
</ol></div><div class="side"><h3><span class="letter" aria-hidden="true">C</span>Side C · Design<small>6 tracks</small></h3><ol>
<li><details><summary><span class="no">C1</span><span class="title">impeccable</span><span class="by">pbakaus<i>ece38d9</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Design, critique, audit, and polish frontend interfaces.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/pbakaus/impeccable/commit/ece38d9">pbakaus/impeccable@ece38d9</a><a href="https://github.com/cskwork/skills/tree/main/skills/design/impeccable">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">impeccable</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill impeccable" aria-label="Copy install command for impeccable"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">C2</span><span class="title">diagram-design</span><span class="by">cathrynlavery<i>f4547ee</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>44 diagram and chart types (architecture, flowchart, sequence, state, ER, timeline, Sankey, and more) as self-contained HTML/SVG/PNG, with Mermaid, .drawio, and .excalidraw import.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cathrynlavery/diagram-design/commit/f4547ee">cathrynlavery/diagram-design@f4547ee</a><a href="https://github.com/cskwork/skills/tree/main/skills/design/diagram-design">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">diagram-design</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill diagram-design" aria-label="Copy install command for diagram-design"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">C3</span><span class="title">gpt-image-2</span><span class="by">agentspace-so<i>18d6100</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Generate and edit images with ChatGPT's current image model through your ChatGPT plan and the Codex CLI. It never names a model, so a newer ChatGPT image model works without changes. Modified here to keep working on future Codex releases.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/agentspace-so/agent-skills/commit/18d6100">agentspace-so/agent-skills@18d6100</a><a href="https://github.com/cskwork/skills/tree/main/skills/design/gpt-image-2">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">gpt-image-2</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill gpt-image-2" aria-label="Copy install command for gpt-image-2"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">C4</span><span class="title">motion-graphics</span><span class="by">cskwork<i>0a2091d</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Code-driven motion-graphics videos: keynote-style product launch videos built from real captures of your running app, and vertical YouTube Shorts, Reels, and TikTok.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/motion-graphics-skill/commit/0a2091d">cskwork/motion-graphics-skill@0a2091d</a><a href="https://github.com/cskwork/skills/tree/main/skills/design/motion-graphics">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">motion-graphics</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill motion-graphics" aria-label="Copy install command for motion-graphics"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">C5</span><span class="title">mobile-ui-ux</span><span class="by">cskwork<i>this repo</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Measurable UI/UX rules for iPhone apps, mobile web, and mobile games: touch targets, safe areas, contrast, Korean line breaks, HUD and combat readability. Ships a 7-category scoring rubric, an independent-judge prompt, a pre-ship checklist, and per-project overrides. Pairs with impeccable.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/skills/tree/main/skills/design/mobile-ui-ux">cskwork/skills</a><a href="https://github.com/cskwork/skills/tree/main/skills/design/mobile-ui-ux">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">mobile-ui-ux</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill mobile-ui-ux" aria-label="Copy install command for mobile-ui-ux"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">C6</span><span class="title">image-first-ui</span><span class="by">cskwork<i>this repo</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Image-first UI: three UX-distinct interface options generated as images through your ChatGPT plan; the one you pick becomes the reference the real build must match. Adds production sizing, stack choice, a domain pattern list, and a release gate with an independent judge. Admin, web app, landing page, or game screens.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/skills/tree/main/skills/design/image-first-ui">cskwork/skills</a><a href="https://github.com/cskwork/skills/tree/main/skills/design/image-first-ui">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">image-first-ui</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill image-first-ui" aria-label="Copy install command for image-first-ui"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
</ol></div><div class="side"><h3><span class="letter" aria-hidden="true">D</span>Side D · Agents<small>3 tracks</small></h3><ol>
<li><details><summary><span class="no">D1</span><span class="title">call-agent</span><span class="by">cskwork<i>929c15b</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Hand a bounded task to a peer CLI: Codex, Claude, Antigravity, Kiro, NotebookLM, ChatGPT Pro.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/call-agent/commit/929c15b">cskwork/call-agent@929c15b</a><a href="https://github.com/cskwork/skills/tree/main/skills/agents/call-agent">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">call-agent</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill call-agent" aria-label="Copy install command for call-agent"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">D2</span><span class="title">update-all</span><span class="by">cskwork<i>380e7ba</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Update all coding agent harnesses (Codex, Claude Code, pi, Antigravity CLI) in one run and print a before/after version table with exact stderr on failures.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/update-all-skill/commit/380e7ba">cskwork/update-all-skill@380e7ba</a><a href="https://github.com/cskwork/skills/tree/main/skills/agents/update-all">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">update-all</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill update-all" aria-label="Copy install command for update-all"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
<li><details><summary><span class="no">D3</span><span class="title">sol</span><span class="by">cskwork<i>a4cc285</i></span><svg class="chev" aria-hidden="true"><use href="#i-plus"/></svg></summary><div class="note"><p>Orchestrate app work through GPT-6.1 Sol workers: one brief per slice, one git worktree per parallel slice, a sandbox-aware preflight, retries that resume the worker's own session, and acceptance checks the orchestrator runs itself.</p><div class="matrix"><span>Matrix</span><a href="https://github.com/cskwork/sol-skill/commit/a4cc285">cskwork/sol-skill@a4cc285</a><a href="https://github.com/cskwork/skills/tree/main/skills/agents/sol">Read SKILL.md</a></div><div class="cmd"><code><span class="t">npx</span> <span class="t">skills@latest</span> <span class="t">add</span> <span class="t">cskwork/skills</span> <span class="t">--skill</span> <span class="t">sol</span></code><button class="copy" type="button" data-copy="npx skills@latest add cskwork/skills --skill sol" aria-label="Copy install command for sol"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div></div></details></li>
</ol></div></div></div>
<div class="bonus">
<div>
<h3>Bonus tracks</h3>
<p>Available separately. These ship with a tool or a machine setup, so get them from their own home.</p>
</div>
<dl>
<div>
<dt><a href="https://code.claude.com/docs/en/skills#run-and-verify-your-app">verify</a></dt>
<dd>
<p>Claude Code's own <code>/verify</code>: builds and runs your app to confirm a change does what it should. Comes with Claude Code v2.1.200 and later; nothing to install. Type <code>/verify</code> in a session. On Codex, use track A2. <a href="https://code.claude.com/docs/en/skills#run-and-verify-your-app">Docs</a>.</p>
</dd>
</div>
<div>
<dt><a href="https://github.com/citrolabs/ego-lite">ego-browser</a></dt>
<dd>
<p>A browser for agents that shares your logged-in sessions. Comes with the ego lite app; by citrolabs.</p>
<div class="cmd"><code><span class="t">npx</span> <span class="t">skills</span> <span class="t">add</span> <span class="t">citrolabs/ego-lite</span></code><button class="copy" type="button" data-copy="npx skills add citrolabs/ego-lite" aria-label="Copy ego-browser install command"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div>
</dd>
</div>
<div>
<dt><a href="https://github.com/cskwork/hindsight-agent-setup">hindsight</a></dt>
<dd>
<p>One shared long-term memory for Claude Code, Codex, Hermes, and Pi. By cskwork.</p>
<div class="cmd"><code><span class="t">curl</span> <span class="t">-fsSL</span> <span class="t">https://raw.githubusercontent.com</span>/<wbr><span class="t">cskwork</span>/<wbr><span class="t">hindsight-agent-setup</span>/<wbr><span class="t">main</span>/<wbr><span class="t">bootstrap.sh</span> <span class="t">|</span> <span class="t">bash</span></code><button class="copy" type="button" data-copy="curl -fsSL https://raw.githubusercontent.com/cskwork/hindsight-agent-setup/main/bootstrap.sh | bash" aria-label="Copy hindsight install command"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button></div>
</dd>
</div>
<div>
<dt><a href="https://github.com/cskwork/teams-native-chat">teams-native-chat</a></dt>
<dd>
<p>Send messages and clickable links to a selected Teams chat through the signed-in web client's native service, without Microsoft Graph or webhooks. Install from the linked standalone repository.</p>
</dd>
</div>
<div>
<dt><a href="https://github.com/cskwork/jira-comment">jira-comment</a><span class="private-badge">Private</span></dt>
<dd>
<p>Jira Cloud comments with ADF formatting, inline evidence, and saved-content checks. Private repository; access is required. Not included in the public install.</p>
</dd>
</div>
<div>
<dt><a href="https://github.com/cskwork/agent-skills-private/tree/main/skills/aidt-jira-followup">aidt-jira-followup</a><span class="private-badge">Private</span></dt>
<dd>
<p>One weekday schedule that watches Jira for mentions and assigned tickets, acts only when intent is at least 90% clear (sdlc-kit), reproduces as-is and to-be locally, ships to dev with evidence comments, and waits for approval before staging. Private repository; access is required. Not included in the public install.</p>
</dd>
</div>
<div>
<dt><a href="https://github.com/cskwork/ambitious-prompting">ambitious-prompting</a><span class="private-badge">Private</span></dt>
<dd>
<p>Rewrite small task prompts and agent workflows into ambitious ones along altitude (outcomes and ownership loops), depth (expert instruments, raw data, external verifiers), and range (noun-to-verb, borrowed methods, symptom diagnosis). Private repository; access is required. Not included in the public install.</p>
</dd>
</div>
</dl>
</div>
</section>
<section class="liner" id="liner-notes" aria-labelledby="liner-h">
<div class="head">
<h2 id="liner-h">Liner notes</h2>
<p>The system prompt every agent gets: <a href="https://github.com/cskwork/skills/blob/main/system-prompt/AGENTS.md">system-prompt/AGENTS.md</a>, printed here in full.</p>
</div>
<blockquote>Use the simplest existing solution that meets the current requirement.</blockquote>
<div class="essay">
<p>Explore first, and ground decisions in code, real data, authoritative sources, repository instructions, and <code>~/.agents/rules/rules.md</code> when present, including related sources the request does not name; challenge claims the evidence contradicts. Before implementing a new task, restate the outcome, scope, success check, conflicts with the code or data, and questions that change the work, then wait for agreement; for small, reversible changes with clear intent, state your reading and proceed.</p>
<p>After agreement, finish implementation, verification, and delivery without check-ins: put status and recommendations in the same message as the next action, and never end a turn by announcing the next step, offering to continue, or listing decisions that block nothing. Stop when checks pass and the outcome is met. Stop early only when nothing can move without the user, a protected resource blocks you, the agreed scope must materially change, or a step would cause data loss, public API changes, security consequences, or an unapproved migration. When you stop short or a check fails, say so with the evidence and what remains. Merge or publish only when authorized.</p>
<p>Use the simplest existing solution that meets the current requirement; add complexity or test coverage only for a demonstrated gap. Follow local patterns, keep failures explicit, preserve compatibility and unrelated work, and report out-of-scope problems as recommendations instead of fixing them. Fix root causes; never weaken, skip, or delete checks to make them pass. Verify changed behavior, failure cases, and delivery with existing tests first.</p>
<p>Delegate with the least expensive model and reasoning level that meets the task's quality bar: the default in <code>rules.md</code>, or <code>claude-opus-5-5</code> at medium reasoning if none is set. Split work into slices that share no files, state, or ordering, and run them as a parallel agent team when that shortens delivery; keep dependent steps sequential. Brief each delegate cleanly: objective, owned paths, interfaces to honor, constraints, acceptance criteria, verified findings. The coordinator integrates and verifies the whole; it does not redo delegated work, poll, or wait idle.</p>
<p>Write to the user for a reader with limited attention: answer in the first sentence, then say the least that fully answers, in short paragraphs with only the decision or warning in bold. Never cut a warning, exact number, or condition the user needs to act on. Return requested artifacts alone. Ask one question at a time, blocking question last. Use the domain's own terms from schema comments, glossaries, and code instead of coining new ones, and define each on first use with its source. Report causes, incidents, and history as who, what, when, where, why, and how, citing commits or tickets per environment; say "unknown" rather than infer. Before a cause's details, give a first-time reader the background: how the system normally works, the step that broke, and how that step produces the symptom. When code logic is the cause, show the as-is and to-be code, explain it line by line, substitute one real data row, and give a counterexample.</p>
</div>
<div class="signoff">
<span class="who">— cskwork · from <a href="https://github.com/cskwork/THE-SYSTEM-PROMPT">THE-SYSTEM-PROMPT</a></span>
<div class="cmd">
<code><span class="t">mkdir</span> <span class="t">-p</span> <span class="t">~/.agents</span> <span class="t">&&</span> <span class="t">curl</span> <span class="t">-fsSL</span> <span class="t">https://raw.githubusercontent.com</span>/<wbr><span class="t">cskwork</span>/<wbr><span class="t">skills</span>/<wbr><span class="t">main</span>/<wbr><span class="t">system-prompt</span>/<wbr><span class="t">AGENTS.md</span> <span class="t">-o</span> <span class="t">~</span>/<wbr><span class="t">.agents</span>/<wbr><span class="t">AGENTS.md</span></code>
<button class="copy" type="button" data-copy="mkdir -p ~/.agents && curl -fsSL https://raw.githubusercontent.com/cskwork/skills/main/system-prompt/AGENTS.md -o ~/.agents/AGENTS.md" aria-label="Copy system prompt install command"><svg class="icon" aria-hidden="true"><use href="#i-copy"/></svg><span>Copy</span></button>
</div>
</div>
</section>
<section class="gear" id="recorded-with" aria-labelledby="gear-h">
<div class="head">
<h2 id="gear-h">Recorded with</h2>
<p>The CLIs around the agents. Install commands come from each project's README; check upstream before you run one.</p>
</div>
<dl>
<div class="row"><dt>Status line</dt><dd><a class="name" href="https://github.com/jarrodwatts/claude-hud">claude-hud</a><p>Context usage, active tools, running agents, and todos in Claude Code's status line.</p><code><span class="t">claude</span> <span class="t">plugin</span> <span class="t">install</span> <span class="t">claude-hud@claude-hud</span></code></dd></div>
<div class="row"><dt>Safety</dt><dd><a class="name" href="https://github.com/cskwork/claude-code-mods/tree/main/blast-radius">blast-radius</a><p>Dry-runs risky Bash commands (recursive deletes, destructive git, kubectl delete, SQL wipes) and asks Proceed or Cancel first.</p><code><span class="t">/plugin</span> <span class="t">install</span> <span class="t">blast-radius@claude-code-mods</span></code></dd></div>
<div class="row"><dt>Accounts</dt><dd><a class="name" href="https://github.com/realiti4/claude-swap">claude-swap</a><p>Switch Claude Code accounts, with rate-limit rotation and a usage dashboard.</p><code><span class="t">uv</span> <span class="t">tool</span> <span class="t">install</span> <span class="t">claude-swap</span></code></dd></div>
<div class="row"><dt>Accounts</dt><dd><a class="name" href="https://github.com/Loongphy/codex-auth">codex-auth</a><p>Switch and manage Codex CLI accounts.</p><code><span class="t">npm</span> <span class="t">install</span> <span class="t">-g</span> <span class="t">@loongphy/codex-auth</span></code></dd></div>
<div class="row"><dt>Deploy</dt><dd><a class="name" href="https://github.com/firebase/firebase-tools">firebase</a><p>Firebase command-line tools: deploys, emulators, project config.</p><code><span class="t">npm</span> <span class="t">install</span> <span class="t">-g</span> <span class="t">firebase-tools</span></code></dd></div>
<div class="row"><dt>Workspace</dt><dd><a class="name" href="https://github.com/googleworkspace/cli">gws</a><p>Google Workspace from the terminal: Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin.</p><code><span class="t">brew</span> <span class="t">install</span> <span class="t">googleworkspace-cli</span></code></dd></div>
<div class="row"><dt>Runtime</dt><dd><a class="name" href="https://github.com/herdrdev/herdr">herdr</a><p>Terminal workspace manager and runtime for coding agents.</p><code><span class="t">curl</span> <span class="t">-fsSL</span> <span class="t">https://herdr.dev</span>/<wbr><span class="t">install.sh</span> <span class="t">|</span> <span class="t">sh</span></code></dd></div>
<div class="row"><dt>Agent</dt><dd><a class="name" href="https://github.com/NousResearch/hermes-agent">hermes</a><p>Nous Research's self-improving agent: it writes skills from experience and keeps its own memory.</p><code><span class="t">curl</span> <span class="t">-fsSL</span> <span class="t">https://hermes-agent.nousresearch.com</span>/<wbr><span class="t">install.sh</span> <span class="t">|</span> <span class="t">bash</span></code></dd></div>
<div class="row"><dt>Agent</dt><dd><a class="name" href="https://github.com/cskwork/pi-setup-public">pi-setup</a><p>My Pi coding agent setup: this repository as a Pi package, extensions, subagent model routing, a permission policy, and Hindsight memory through pi-hindsight-memory.</p><code><span class="t">git</span> <span class="t">clone</span> <span class="t">https://github.com</span>/<wbr><span class="t">cskwork</span>/<wbr><span class="t">pi-setup-public</span> <span class="t">&&</span> <span class="t">pi-setup-public</span>/<wbr><span class="t">install.sh</span></code></dd></div>
<div class="row"><dt>CI</dt><dd><a class="name" href="https://github.com/avivsinai/jenkins-cli">jk</a><p>GitHub-style CLI for Jenkins: contexts, runs, logs, admin. Pairs with track A7.</p><code><span class="t">brew</span> <span class="t">install</span> <span class="t">avivsinai</span>/<wbr><span class="t">tap</span>/<wbr><span class="t">jk</span></code></dd></div>
<div class="row"><dt>Token usage</dt><dd><a class="name" href="https://github.com/rtk-ai/rtk">rtk</a><p>Compress shell command output before it reaches coding agents.</p><code><span class="t">brew</span> <span class="t">install</span> <span class="t">rtk</span></code></dd></div>
<div class="row"><dt>iOS testing</dt><dd><a class="name" href="https://github.com/abacusai/simless">simless</a><p>Headless, simulator-free SwiftUI checks: accessibility-tree renders, hot reload, and unit tests on the Mac. Pairs with track A12.</p><code><span class="t">git</span> <span class="t">clone</span> <span class="t">https://github.com</span>/<wbr><span class="t">abacusai</span>/<wbr><span class="t">simless</span> <span class="t">&&</span> <span class="t">cd</span> <span class="t">simless</span> <span class="t">&&</span> <span class="t">swift</span> <span class="t">build</span> <span class="t">-c</span> <span class="t">release</span></code></dd></div>
</dl>
</section>
<section class="credits" id="credits" aria-labelledby="credits-h">
<div class="head">
<h2 id="credits-h">Credits</h2>
<p>Borrowed skills keep their own license file in their folder. Sources and exact commits: <a href="https://github.com/cskwork/skills/blob/main/THIRD_PARTY.md">THIRD_PARTY.md</a>.</p>
</div>
<dl class="credit-list">
<div><dt><a href="https://github.com/mattpocock/skills">Matt Pocock</a></dt><dd>improve-codebase-architecture, grill-with-docs, domain-modeling, research, prototype, retro, grilling, handoff, writing-for-agents<span class="lic">MIT · mattpocock/skills@4588b32, 49dd158</span></dd></div>
<div><dt><a href="https://github.com/cskwork">cskwork</a></dt><dd>sdlc-kit, verify-app, bughunt, quality-loop, db-intelligence, sql-walkthrough, work-status, motion-graphics, mobile-ui-ux, image-first-ui, call-agent, update-all, sol, the system prompt, hindsight setup<span class="lic">MIT · this repository</span></dd></div>
<div><dt><a href="https://github.com/pbakaus/impeccable">pbakaus</a></dt><dd>impeccable, which also designed this page<span class="lic">Apache-2.0 · impeccable@ece38d9</span></dd></div>
<div><dt><a href="https://github.com/cathrynlavery/diagram-design">cathrynlavery</a></dt><dd>diagram-design<span class="lic">MIT · diagram-design@f4547ee</span></dd></div>
<div><dt><a href="https://github.com/agentspace-so/agent-skills">agentspace-so</a></dt><dd>gpt-image-2, modified here<span class="lic">MIT · agent-skills@18d6100</span></dd></div>
<div><dt><a href="https://github.com/DietrichGebert/ponytail">DietrichGebert</a></dt><dd>ponytail<span class="lic">MIT · ponytail@b223500</span></dd></div>
<div><dt><a href="https://github.com/alexgreensh/attention-span">alexgreensh</a></dt><dd>attention-kind<span class="lic">AGPL-3.0 · attention-span@f5b6e80</span></dd></div>
<div><dt><a href="https://github.com/twostraws/SwiftUI-Agent-Skill">Paul Hudson</a></dt><dd>swiftui-pro<span class="lic">MIT · SwiftUI-Agent-Skill@f980071</span></dd></div>
<div><dt><a href="https://github.com/abacusai/simless">Abacus.AI</a></dt><dd>simless, modified here<span class="lic">MIT-0 · simless@676b089</span></dd></div>
<div><dt><a href="https://github.com/avivsinai/jenkins-cli">Aviv Sinai & contributors</a></dt><dd>jk<span class="lic">MIT · jenkins-cli@ed86f89</span></dd></div>
</dl>
<div class="runout">
<span>Copied from upstream 2026-10-05 · upstream stays the source of truth</span>
<span>Set in <a href="https://github.com/Omnibus-Type/Archivo">Archivo</a> (OFL) · © cskwork, MIT</span>
</div>
</section>
</main>
<div class="sr-live" aria-live="polite" id="live"></div>
<script>
const live = document.getElementById("live");
const el = (tag) => document.createElement(tag);
async function copyText(text) {
try { await navigator.clipboard.writeText(text); return true; }
catch {
const t = el("textarea"); t.value = text; t.setAttribute("readonly", ""); t.style.position = "absolute"; t.style.left = "-9999px";
document.body.append(t); t.select();
let ok = false; try { ok = document.execCommand("copy"); } catch {}
t.remove(); return ok;
}
}
document.addEventListener("click", async (e) => {
const b = e.target.closest(".copy");
if (!b) return;
const ok = await copyText(b.dataset.copy);
const label = b.querySelector("span");
const use = b.querySelector("use");
b.dataset.state = ok ? "done" : "fail";
label.textContent = ok ? "Copied" : "Select it";
use.setAttribute("href", ok ? "#i-check" : "#i-copy");
live.textContent = ok ? "Command copied to clipboard." : "Copy failed. Select the command and copy it by hand.";
if (!ok) { const r = document.createRange(); r.selectNodeContents(b.previousElementSibling); const s = getSelection(); s.removeAllRanges(); s.addRange(r); }
clearTimeout(b._t);
b._t = setTimeout(() => { b.dataset.state = ""; label.textContent = "Copy"; use.setAttribute("href", "#i-copy"); }, 1800);
});
</script>
</body>
</html>