opencode-skills-collection 4.0.1 → 4.0.3
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/bundled-skills/.antigravity-install-manifest.json +8 -1
- package/bundled-skills/ad-campaign-analyzer/SKILL.md +382 -0
- package/bundled-skills/anywrite/SKILL.md +106 -0
- package/bundled-skills/competitor-ad-intelligence/SKILL.md +394 -0
- package/bundled-skills/diagnose-android-overheating/SKILL.md +198 -0
- package/bundled-skills/diagnose-android-overheating/agents/openai.yaml +4 -0
- package/bundled-skills/diagnose-android-overheating/references/evidence-and-interpretation.md +168 -0
- package/bundled-skills/ditto/SKILL.md +173 -0
- package/bundled-skills/docs/contributors/quality-bar.md +1 -1
- package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
- package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
- package/bundled-skills/docs/maintainers/merge-batch.md +6 -5
- package/bundled-skills/docs/maintainers/pr-autonomy.md +4 -2
- package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
- package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
- package/bundled-skills/docs/users/bundles.md +1 -1
- package/bundled-skills/docs/users/claude-code-skills.md +1 -1
- package/bundled-skills/docs/users/faq.md +1 -1
- package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
- package/bundled-skills/docs/users/getting-started.md +1 -1
- package/bundled-skills/docs/users/kiro-integration.md +1 -1
- package/bundled-skills/docs/users/usage.md +4 -4
- package/bundled-skills/docs/users/visual-guide.md +4 -4
- package/bundled-skills/finishing-a-development-branch/SKILL.md +7 -1
- package/bundled-skills/git-pr-workflows-git-workflow/SKILL.md +87 -111
- package/bundled-skills/git-pushing/SKILL.md +3 -1
- package/bundled-skills/github-automation/SKILL.md +76 -218
- package/bundled-skills/optim-agent/SKILL.md +78 -0
- package/bundled-skills/repo-maintainer/SKILL.md +67 -426
- package/bundled-skills/sshepherd/SKILL.md +107 -0
- package/package.json +2 -2
- package/skills_index.json +235 -4
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
# Evidence and Interpretation
|
|
2
|
+
|
|
3
|
+
Use this reference after the core skill has established device authorization, symptom context, and a safety screen. Commands are read-only unless a section explicitly says otherwise.
|
|
4
|
+
|
|
5
|
+
## Contents
|
|
6
|
+
|
|
7
|
+
1. Evidence quality
|
|
8
|
+
2. Thermal and battery baseline
|
|
9
|
+
3. Symptom branches
|
|
10
|
+
4. Correlation guide
|
|
11
|
+
5. Controlled Batterystats capture
|
|
12
|
+
6. Bugreport privacy
|
|
13
|
+
7. Official references
|
|
14
|
+
|
|
15
|
+
## Evidence Quality
|
|
16
|
+
|
|
17
|
+
Prefer evidence in this order:
|
|
18
|
+
|
|
19
|
+
1. a controlled comparison that changes only one plausible cause;
|
|
20
|
+
2. a timestamped trend spanning cool-to-hot or hot-to-cool behavior;
|
|
21
|
+
3. two independent system signals from the same window;
|
|
22
|
+
4. a single system snapshot;
|
|
23
|
+
5. user recollection without device evidence.
|
|
24
|
+
|
|
25
|
+
Do not elevate a lower-quality signal merely because it names an app or subsystem.
|
|
26
|
+
|
|
27
|
+
## Thermal and Battery Baseline
|
|
28
|
+
|
|
29
|
+
Capture the full service outputs before extracting fields:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
adb -s <serial> shell dumpsys battery
|
|
33
|
+
adb -s <serial> shell dumpsys thermalservice
|
|
34
|
+
adb -s <serial> shell dumpsys cpuinfo
|
|
35
|
+
adb -s <serial> shell top -n 1
|
|
36
|
+
adb -s <serial> shell dumpsys power
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Interpretation rules:
|
|
40
|
+
|
|
41
|
+
- `dumpsys battery` describes battery and charging state. Its temperature field is commonly expressed in tenths of a degree Celsius, but verify the device's representation instead of blindly dividing.
|
|
42
|
+
- `dumpsys thermalservice` is most useful on Android 10 and later. Some OEMs omit detailed sensors, expose only severity, or restrict output.
|
|
43
|
+
- Framework thermal status ranges from `0` (none) through `6` (shutdown) on implementations that expose the standard service. `2` means moderate, `3` severe, `4` critical, and `5` emergency thermal stress.
|
|
44
|
+
- Sensor readings are not interchangeable. Battery, skin, CPU, GPU, modem, and USB sensors describe different locations and policies.
|
|
45
|
+
- OEM thresholds differ. Never declare a universal safe temperature from one raw value.
|
|
46
|
+
- Thermal throttling is a response to heat, not automatically its cause.
|
|
47
|
+
|
|
48
|
+
If `top -n 1` is rejected, inspect `adb -s <serial> shell top --help` and use only a syntax supported by that device. Do not install BusyBox or request root as a fallback.
|
|
49
|
+
|
|
50
|
+
## Symptom Branches
|
|
51
|
+
|
|
52
|
+
### Idle or Screen-Off Heat
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
adb -s <serial> shell dumpsys batterystats
|
|
56
|
+
adb -s <serial> shell dumpsys batterystats --history
|
|
57
|
+
adb -s <serial> shell dumpsys power
|
|
58
|
+
adb -s <serial> shell dumpsys alarm
|
|
59
|
+
adb -s <serial> shell dumpsys jobscheduler
|
|
60
|
+
adb -s <serial> shell dumpsys sensorservice
|
|
61
|
+
adb -s <serial> shell dumpsys location
|
|
62
|
+
adb -s <serial> shell dumpsys deviceidle
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Look for duration and recurrence, not merely presence. A scheduled alarm, registered sensor, or listed job can be normal. Correlate it with screen-off time, wakeups, process activity, network traffic, and the heat window.
|
|
66
|
+
|
|
67
|
+
### App-Specific Heat
|
|
68
|
+
|
|
69
|
+
First identify the exact package without guessing from the display name. Then inspect it:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
adb -s <serial> shell dumpsys cpuinfo
|
|
73
|
+
adb -s <serial> shell dumpsys meminfo <package>
|
|
74
|
+
adb -s <serial> shell dumpsys package <package>
|
|
75
|
+
adb -s <serial> shell dumpsys jobscheduler <package>
|
|
76
|
+
adb -s <serial> shell dumpsys gfxinfo <package>
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Package memory is not a heat measurement. High memory can contribute to pressure or churn, but sustained CPU/GPU, radios, camera, sensors, or charging usually provide a stronger causal path.
|
|
80
|
+
|
|
81
|
+
### Cellular, Weak-Signal, or 5G Heat
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
adb -s <serial> shell dumpsys telephony.registry
|
|
85
|
+
adb -s <serial> shell dumpsys connectivity
|
|
86
|
+
adb -s <serial> shell dumpsys wifi
|
|
87
|
+
adb -s <serial> shell dumpsys batterystats
|
|
88
|
+
adb -s <serial> shell getprop | grep -iE 'radio|baseband'
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Redact phone numbers, subscriber identifiers, network names, and addresses. Look for a repeated association among poor signal, handovers or radio activity, higher battery drain, and the heat timeline. Confirm with a same-workload Wi-Fi or airplane-mode window when safe and acceptable to the user.
|
|
92
|
+
|
|
93
|
+
Do not change preferred network type from a copied bitmask. Slot IDs, carrier policy, radio capabilities, and command availability vary by device and Android build.
|
|
94
|
+
|
|
95
|
+
### Charging Heat
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
adb -s <serial> shell dumpsys battery
|
|
99
|
+
adb -s <serial> shell dumpsys usb
|
|
100
|
+
adb -s <serial> shell dumpsys thermalservice
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Record plugged source, charging status, battery level, workload, charger, cable, case, and ambient conditions. A USB debugging cable can itself change the result. Do not simulate unplugging with `dumpsys battery set`; that changes framework state without reproducing the physical charging condition.
|
|
104
|
+
|
|
105
|
+
### Camera, Navigation, Gaming, Video, or Tethering
|
|
106
|
+
|
|
107
|
+
Collect the thermal baseline plus only the relevant services:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
adb -s <serial> shell dumpsys media.camera
|
|
111
|
+
adb -s <serial> shell dumpsys media.metrics
|
|
112
|
+
adb -s <serial> shell dumpsys location
|
|
113
|
+
adb -s <serial> shell dumpsys sensorservice
|
|
114
|
+
adb -s <serial> shell dumpsys connectivity
|
|
115
|
+
adb -s <serial> shell dumpsys wifi
|
|
116
|
+
adb -s <serial> shell dumpsys display
|
|
117
|
+
adb -s <serial> shell dumpsys SurfaceFlinger
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Service names and permissions vary. Record unsupported services rather than replacing them with root-only commands.
|
|
121
|
+
|
|
122
|
+
## Correlation Guide
|
|
123
|
+
|
|
124
|
+
| Observation | Stronger interpretation | Required counter-check |
|
|
125
|
+
| --- | --- | --- |
|
|
126
|
+
| Rising thermal severity and sustained package CPU | App/process workload may drive heat | Repeat sample; compare with app inactive |
|
|
127
|
+
| Heat plus poor signal and mobile-radio activity | Modem/radio loop may contribute | Same workload on stable Wi-Fi or airplane mode |
|
|
128
|
+
| Heat while idle plus long partial wakelock | Background work may prevent sleep | Match wakelock duration to screen-off heat window |
|
|
129
|
+
| Heat only while physically charging | Charging path or charge-plus-load may contribute | Safe unplugged comparison with workload controlled |
|
|
130
|
+
| Severe thermal state but low visible app CPU | GPU, modem, camera, charging, kernel, or hardware remains plausible | Inspect matching subsystem and OEM blind spots |
|
|
131
|
+
| Battery drain without thermal escalation | Energy use may be real but insufficient to cause thermal stress | Compare temperature trend and workload duration |
|
|
132
|
+
| High temperature with no exposed activity | Hardware fault or inaccessible vendor activity remains possible | Safe mode/OEM diagnostics or qualified service |
|
|
133
|
+
|
|
134
|
+
## Controlled Batterystats Capture
|
|
135
|
+
|
|
136
|
+
Resetting Batterystats erases the existing collection window. Do it only after preserving the original output and obtaining approval for a fresh experiment.
|
|
137
|
+
|
|
138
|
+
Official Android guidance uses this sequence:
|
|
139
|
+
|
|
140
|
+
1. save current Batterystats or a bugreport if needed;
|
|
141
|
+
2. reset Batterystats;
|
|
142
|
+
3. disconnect the USB cable so the device runs on battery;
|
|
143
|
+
4. reproduce a defined workload for a defined duration;
|
|
144
|
+
5. reconnect and export Batterystats or a bugreport;
|
|
145
|
+
6. compare the captured window with a control window.
|
|
146
|
+
|
|
147
|
+
Do not run the reset merely to make output shorter. Record that the reset occurred because it changes the evidence base.
|
|
148
|
+
|
|
149
|
+
## Bugreport Privacy
|
|
150
|
+
|
|
151
|
+
`adb bugreport <local-path>.zip` creates a broad diagnostic archive. Before running it:
|
|
152
|
+
|
|
153
|
+
- explain that it may include identifiers, accounts, app usage, notifications, networks, logs, and recent system activity;
|
|
154
|
+
- choose a private local path with the user;
|
|
155
|
+
- do not upload or transmit the archive without separate approval;
|
|
156
|
+
- extract only the evidence needed for the diagnosis;
|
|
157
|
+
- redact sensitive fields before sharing excerpts;
|
|
158
|
+
- follow the user's retention or deletion preference.
|
|
159
|
+
|
|
160
|
+
## Official References
|
|
161
|
+
|
|
162
|
+
- [Android dumpsys documentation](https://developer.android.com/tools/dumpsys)
|
|
163
|
+
- [Profile battery usage with Batterystats and Battery Historian](https://developer.android.com/topic/performance/power/setup-battery-historian)
|
|
164
|
+
- [Analyze power use with Battery Historian](https://developer.android.com/topic/performance/power/battery-historian)
|
|
165
|
+
- [AOSP thermal mitigation](https://source.android.com/docs/core/power/thermal-mitigation)
|
|
166
|
+
- [Android Thermal API](https://developer.android.com/games/optimize/adpf/thermal)
|
|
167
|
+
- [System restrictions on background tasks](https://developer.android.com/develop/background-work/background-tasks/bg-work-restrictions)
|
|
168
|
+
- [Android developer options](https://developer.android.com/studio/debug/dev-options)
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ditto
|
|
3
|
+
description: "Use when a user asks to mine or update a private, evidence-backed work profile from local Claude Code, Codex, Copilot CLI, or OpenCode sessions."
|
|
4
|
+
category: agent-behavior
|
|
5
|
+
risk: critical
|
|
6
|
+
source: community
|
|
7
|
+
source_repo: ohad6k/ditto
|
|
8
|
+
source_type: community
|
|
9
|
+
date_added: "2026-07-14"
|
|
10
|
+
author: ohad6k
|
|
11
|
+
tags: [personalization, context-engineering, session-mining, agent-memory]
|
|
12
|
+
tools: [claude, cursor, gemini, codex-cli]
|
|
13
|
+
license: "MIT"
|
|
14
|
+
license_source: "https://github.com/ohad6k/ditto/blob/v0.3.6/LICENSE"
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Ditto
|
|
18
|
+
|
|
19
|
+
## Overview
|
|
20
|
+
|
|
21
|
+
Ditto mines only the user's words from real local coding-agent session logs and
|
|
22
|
+
turns repeated, supported patterns into private work, design, and writing
|
|
23
|
+
profiles. It keeps dated session receipts, rejects authored rules and memory as
|
|
24
|
+
source evidence, and requires approval before model-backed mining begins.
|
|
25
|
+
|
|
26
|
+
This standalone skill routes a compatible, already-installed Ditto runtime.
|
|
27
|
+
Native namespaced routing is available through the upstream Ditto plugin.
|
|
28
|
+
|
|
29
|
+
## When to Use This Skill
|
|
30
|
+
|
|
31
|
+
- Use when the user explicitly asks to set up, run, update, re-mine, or deepen Ditto.
|
|
32
|
+
- Use when the user wants an agent profile derived from real coding-session history rather than a questionnaire or rules file.
|
|
33
|
+
- Use when native `ditto:mine` is unavailable and the user already has a compatible Ditto runtime installed.
|
|
34
|
+
|
|
35
|
+
Do not trigger this skill merely because personalization might be useful. Mining
|
|
36
|
+
requires an explicit user request.
|
|
37
|
+
|
|
38
|
+
## How It Works
|
|
39
|
+
|
|
40
|
+
### 1. Resolve an installed runtime
|
|
41
|
+
|
|
42
|
+
Ask the user for the path to an existing, trusted Ditto runtime, or use the
|
|
43
|
+
native upstream plugin when it is already installed. Retain the exact Python 3
|
|
44
|
+
executable path as `PYTHON3`, the runtime path as `DITTO_PY`, and its matching
|
|
45
|
+
`MINING_PROMPT.md` path. Confirm the installed version and source before use.
|
|
46
|
+
|
|
47
|
+
Do not download or install executable code as part of this skill. If Ditto is
|
|
48
|
+
not installed, stop and direct the user to the upstream installation guidance;
|
|
49
|
+
installation is a separate, explicit decision.
|
|
50
|
+
|
|
51
|
+
### 2. Show the read-only mining plan
|
|
52
|
+
|
|
53
|
+
Mine only real user-authored sessions. Never synthesize a profile from
|
|
54
|
+
`AGENTS.md`, `CLAUDE.md`, memory files, rules files, or a typed self-description.
|
|
55
|
+
|
|
56
|
+
Run the full-history quality-default preflight:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
"$PYTHON3" "$DITTO_PY" plugin preflight
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Show the user the valid session count, post-dedupe source tokens, selected source
|
|
63
|
+
tokens, cache hits, planned worker calls, and planned reducer calls. Wait for
|
|
64
|
+
explicit approval of this displayed plan before any model-backed work.
|
|
65
|
+
|
|
66
|
+
If the user explicitly asks for a quick preview, add `--preview` and say exactly:
|
|
67
|
+
|
|
68
|
+
> Quick preview creates a starter profile from selected history, not the full profile.
|
|
69
|
+
|
|
70
|
+
Never present preview as the default or as equivalent to the full-history result.
|
|
71
|
+
|
|
72
|
+
### 3. Prepare the approved run
|
|
73
|
+
|
|
74
|
+
Retain the displayed `approval_hash`, then prepare with the exact approved mode.
|
|
75
|
+
For the full-history plan, run:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
"$PYTHON3" "$DITTO_PY" plugin prepare --approved-plan-hash HASH
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
For an approved quick-preview plan, preserve preview mode explicitly:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
"$PYTHON3" "$DITTO_PY" plugin prepare --preview --approved-plan-hash HASH
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
If the hash changes, show the new plan and obtain approval again. Retain the
|
|
88
|
+
returned `run_id`, assigned segment and report paths, and `pack_path`.
|
|
89
|
+
|
|
90
|
+
### 4. Mine and validate evidence
|
|
91
|
+
|
|
92
|
+
For every uncached selected segment, run one worker over only that segment and
|
|
93
|
+
the per-segment contract in the resolved `MINING_PROMPT.md`. Cache each JSON
|
|
94
|
+
report with `plugin cache-report` and stop on rejection.
|
|
95
|
+
|
|
96
|
+
Run one strongest-available reducer over only the validated reports and reducer
|
|
97
|
+
contract. Write the complete pack to `pack_path`, validate it, and activate only
|
|
98
|
+
the validated pack with `plugin activate`.
|
|
99
|
+
|
|
100
|
+
### 5. Verify and report
|
|
101
|
+
|
|
102
|
+
Run `plugin status`, render the profile card, and report:
|
|
103
|
+
|
|
104
|
+
- active version and core profile path
|
|
105
|
+
- active and inactive domains
|
|
106
|
+
- selected source tokens and actual worker/reducer passes
|
|
107
|
+
- cache reuse
|
|
108
|
+
- card path
|
|
109
|
+
- any exact targeted-deepen instruction
|
|
110
|
+
|
|
111
|
+
If the current host already has the native Ditto plugin, do not create a
|
|
112
|
+
competing direct profile installation.
|
|
113
|
+
|
|
114
|
+
## Examples
|
|
115
|
+
|
|
116
|
+
### Full-history setup
|
|
117
|
+
|
|
118
|
+
```text
|
|
119
|
+
User: run ditto on my coding history
|
|
120
|
+
Agent: resolves the pinned runtime, shows the read-only full-history plan, and
|
|
121
|
+
waits for explicit cost approval before starting any mining workers.
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Explicit quick preview
|
|
125
|
+
|
|
126
|
+
```text
|
|
127
|
+
User: give me a cheap ditto preview first
|
|
128
|
+
Agent: runs preflight with --preview, labels it as a starter profile, and waits
|
|
129
|
+
for approval of the displayed preview plan.
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Best Practices
|
|
133
|
+
|
|
134
|
+
- Keep raw sessions, caches, receipts, and generated profiles private by default.
|
|
135
|
+
- Report exact observed counts and paths; never estimate provider billing or coverage.
|
|
136
|
+
- Preserve the approval hash and mode through the complete run.
|
|
137
|
+
- Stop on validation failure instead of activating a partial profile.
|
|
138
|
+
- Share the card or a short trait, not the full private profile or receipt appendix.
|
|
139
|
+
|
|
140
|
+
## Limitations
|
|
141
|
+
|
|
142
|
+
- Ditto models working behavior; it does not make the underlying model smarter.
|
|
143
|
+
- Sparse or repetitive histories can leave design or writing domains inactive.
|
|
144
|
+
- Provider system prompts, tool traffic, and billing overhead are outside Ditto's exact token accounting.
|
|
145
|
+
- Quick preview has lower recall than the full-history quality default.
|
|
146
|
+
- Automatic work, design, and writing routing requires the upstream native plugin.
|
|
147
|
+
|
|
148
|
+
## Security & Safety Notes
|
|
149
|
+
|
|
150
|
+
- This skill does not download executable code; it requires an existing trusted Ditto installation.
|
|
151
|
+
- Extraction, redaction, caches, and generated profiles stay local. Selected redacted text is processed by the model provider the user chooses.
|
|
152
|
+
- Redaction is best-effort. Tell the user to inspect private output before sharing it.
|
|
153
|
+
- Never upload session logs or full profiles to a third party without explicit user approval.
|
|
154
|
+
- Installation itself schedules no mining model calls; every prepared mining mode still requires approval of its displayed plan.
|
|
155
|
+
|
|
156
|
+
## Common Pitfalls
|
|
157
|
+
|
|
158
|
+
- **Problem:** No eligible sessions are found.
|
|
159
|
+
|
|
160
|
+
**Solution:** Report the supported source locations that were checked and ask whether the user has retained or exported session history.
|
|
161
|
+
|
|
162
|
+
- **Problem:** The approval hash changed.
|
|
163
|
+
|
|
164
|
+
**Solution:** Do not reuse the old approval. Show the updated plan and obtain approval again.
|
|
165
|
+
|
|
166
|
+
- **Problem:** A cached or reduced report fails validation.
|
|
167
|
+
|
|
168
|
+
**Solution:** Stop, preserve the failure evidence, and never activate the incomplete pack.
|
|
169
|
+
|
|
170
|
+
## Related Skills
|
|
171
|
+
|
|
172
|
+
- `@agenttrace-session-audit` - Use for cost, latency, failure, and health analysis of coding-agent sessions.
|
|
173
|
+
- `@agent-memory` - Use for explicit persistent knowledge storage rather than evidence-based profile mining.
|
|
@@ -47,7 +47,7 @@ A list of known edge cases or things the skill _cannot_ do.
|
|
|
47
47
|
|
|
48
48
|
If a skill includes command examples, remote fetch steps, secrets, or mutation guidance, the PR must document the risk and pass `npm run security:docs` in addition to normal validation.
|
|
49
49
|
|
|
50
|
-
For pull requests that add or modify `SKILL.md`, GitHub also runs the automated `skill-review` workflow. Treat that review as part of the normal PR quality gate and address any actionable findings before merge.
|
|
50
|
+
For pull requests that add or modify `SKILL.md`, GitHub also runs the automated `skill-review` workflow. Treat that review as part of the normal PR quality gate and address any actionable findings before merge. A successful result is reused when a later push has the identical changed-skill content; if Tessl credits are unavailable, the workflow records `manual-review-required` for exact-head maintainer attestation instead of pretending an automated review passed.
|
|
51
51
|
Automated checks are necessary, but they do **not** replace manual reviewer judgment on logic, safety, and likely failure modes.
|
|
52
52
|
|
|
53
53
|
`npm run security:docs` enforces a repo-wide scan for:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: Jetski/Cortex + Gemini Integration Guide
|
|
3
|
-
description: "Use agentic-awesome-skills with Jetski/Cortex without hitting context-window overflow with 1,
|
|
3
|
+
description: "Use agentic-awesome-skills with Jetski/Cortex without hitting context-window overflow with 1,965+ skills."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Jetski/Cortex + Gemini: safe integration with 1,
|
|
6
|
+
# Jetski/Cortex + Gemini: safe integration with 1,965+ skills
|
|
7
7
|
|
|
8
8
|
This guide shows how to integrate the `agentic-awesome-skills` repository with an agent based on **Jetski/Cortex + Gemini** (or similar frameworks) **without exceeding the model context window**.
|
|
9
9
|
|
|
@@ -23,7 +23,7 @@ Never do:
|
|
|
23
23
|
- concatenate all `SKILL.md` content into a single system prompt;
|
|
24
24
|
- re-inject the entire library for **every** request.
|
|
25
25
|
|
|
26
|
-
With 1,
|
|
26
|
+
With 1,965+ skills, this approach fills the context window before user messages are even added, causing truncation.
|
|
27
27
|
|
|
28
28
|
---
|
|
29
29
|
|
|
@@ -21,7 +21,7 @@ This example shows one way to integrate **agentic-awesome-skills** with a Jetski
|
|
|
21
21
|
- How to enforce a **maximum number of skills per turn** via `maxSkillsPerTurn`.
|
|
22
22
|
- How to choose whether to **truncate or error** when too many skills are requested via `overflowBehavior`.
|
|
23
23
|
|
|
24
|
-
This pattern avoids context overflow when you have 1,
|
|
24
|
+
This pattern avoids context overflow when you have 1,965+ skills installed.
|
|
25
25
|
|
|
26
26
|
Manifest contract references:
|
|
27
27
|
|
|
@@ -31,12 +31,13 @@ Use `--dry-run` to exercise local classification without approving a run or merg
|
|
|
31
31
|
`merge:batch` will:
|
|
32
32
|
|
|
33
33
|
- refresh the PR body when the Quality Bar checklist is missing
|
|
34
|
-
- close and reopen the PR if stale metadata needs a fresh `pull_request` event
|
|
34
|
+
- record the existing workflow-run generation, then close and reopen the PR if stale metadata needs a fresh `pull_request` event
|
|
35
35
|
- fetch the exact base/head objects and classify the complete raw Git diff
|
|
36
36
|
- recompute changed-skill evidence with evaluator code materialized from the trusted `main` commit
|
|
37
37
|
- reject incomplete evidence coverage, deterministic quality/security/provenance regressions, and base/head drift
|
|
38
|
-
-
|
|
39
|
-
-
|
|
38
|
+
- for external PRs, poll for asynchronously-created fork runs and approve only post-reopen runs waiting on `action_required` when every path, mode, object, size, and workflow identity is allowlisted
|
|
39
|
+
- for same-repository maintainer PRs, allow repository-wide source changes while still enforcing trusted changed-skill evidence, exact-head review, required checks, branch protection, and immutable PR identity
|
|
40
|
+
- wait only for check suites belonging to the post-reopen workflow generation; older runs on the same head SHA cannot satisfy or fail the gate
|
|
40
41
|
- call GitHub's immediate squash-merge endpoint and continue only when it reports `merged: true`
|
|
41
42
|
- pull the protected `main`; its trusted workflow opens a canonical-sync bot PR for generated artifacts and contributor credits when needed
|
|
42
43
|
|
|
@@ -44,7 +45,7 @@ Use `--dry-run` to exercise local classification without approving a run or merg
|
|
|
44
45
|
|
|
45
46
|
- PR body normalization against the repository template
|
|
46
47
|
- stale PR metadata refresh
|
|
47
|
-
- required-check polling for the current PR head
|
|
48
|
+
- generation-bound required-check polling for the current PR head
|
|
48
49
|
- handoff of post-merge contributor and artifact drift to the canonical-sync PR lane
|
|
49
50
|
|
|
50
51
|
## What It Does Not Automate
|
|
@@ -64,7 +65,7 @@ Stop and switch to the manual playbook when:
|
|
|
64
65
|
- the PR is `CONFLICTING`
|
|
65
66
|
- `merge:batch` reports a check failure that needs source changes, not maintainer automation
|
|
66
67
|
- the PR needs a manual README credits decision
|
|
67
|
-
-
|
|
68
|
+
- an external PR's local diff contains a symlink, gitlink, executable mode, unknown path/type, oversized blob, or other non-allowlisted change
|
|
68
69
|
- the workflow run cannot be bound to the intended PR number, current head SHA, `pull_request` event, and trusted workflow definition
|
|
69
70
|
- fork approval or branch permissions are missing
|
|
70
71
|
- effective strict protection for `main` cannot be proven
|
|
@@ -51,12 +51,12 @@ A successful `manual-review-required` check means only that the requirement was
|
|
|
51
51
|
|
|
52
52
|
## Maintainer Recalculation
|
|
53
53
|
|
|
54
|
-
`merge:batch` must bind workflow approval and human attestation to one full head SHA. Before approving a waiting fork run, it independently:
|
|
54
|
+
`merge:batch` must bind workflow approval and human attestation to one full head SHA. When it refreshes a PR body by closing and reopening the PR, it also records the pre-refresh workflow-run IDs and accepts checks only from post-refresh check suites. A shared head SHA is not sufficient evidence of freshness because multiple `pull_request` events can exist for the same commit. Before approving a waiting fork run, it independently:
|
|
55
55
|
|
|
56
56
|
1. captures base and head object IDs;
|
|
57
57
|
2. fetches those objects without checking out pull-request code;
|
|
58
58
|
3. computes a complete NUL-delimited raw Git diff with full object IDs and modes;
|
|
59
|
-
4. rejects unsafe paths, modes, symlinks, gitlinks, executable files, unknown types, oversized blobs, incomplete metadata, or non-allowlisted workflows;
|
|
59
|
+
4. for external PRs, rejects unsafe paths, modes, symlinks, gitlinks, executable files, unknown types, oversized blobs, incomplete metadata, or non-allowlisted workflows;
|
|
60
60
|
5. verifies workflow event, workflow identity, pull-request number, and head SHA;
|
|
61
61
|
6. recomputes changed-skill evidence over the exact merge-base-to-head record set and requires one-to-one coverage of every skill-content Git record;
|
|
62
62
|
7. rejects operational errors, malformed evidence, incomplete snapshots, score-component regressions, provenance identity regressions, or any other deterministic blocker;
|
|
@@ -64,6 +64,8 @@ A successful `manual-review-required` check means only that the requirement was
|
|
|
64
64
|
|
|
65
65
|
A real merge also requires effective server-side protection for `main`: the four exact GitHub-Actions-owned checks (`pr-policy`, `pr-evidence`, `source-validation`, and `artifact-preview`), strict up-to-date enforcement, pull-request-only changes, administrator enforcement, no applicable ruleset bypass actors, and no merge queue. If that enforcement cannot be proven, `merge:batch` refuses non-dry-run operation. Base drift is never retried with stale evidence; the batch must be rerun from the new tuple. Pre-existing auto-merge state is rejected, and the immediate GitHub merge endpoint must return `merged: true` before post-merge work begins.
|
|
66
66
|
|
|
67
|
+
Same-repository maintainer PRs may legitimately change repository-wide policy, tooling, workflows, or documentation, so the fork content allowlist does not apply to them. They remain bound to the protected branch, trusted-base evidence evaluator, exact PR/base/head tuple, semantic-review requirements, and required checks. Missing or mismatched head-repository identity is treated as external and therefore fails closed under the fork allowlist.
|
|
68
|
+
|
|
67
69
|
For canonical `SKILL.md` or allowlisted supporting skill-content changes, the maintainer supplies `--reviewed-head <full-sha>`. A stale, abbreviated, or mismatched SHA fails closed. The Skill Review check itself is required only for `SKILL.md` changes because that workflow is path-filtered; support-only changes still require the exact-SHA human attestation.
|
|
68
70
|
|
|
69
71
|
Deletions, copies, ambiguous moves, and all canonical skill-content changes remain manual-only in this stage even when deterministic evidence contains no regression. A passing ratchet is not semantic approval and never makes a skill eligible for automatic merge.
|
|
@@ -6,7 +6,7 @@ This document keeps the repository's GitHub-facing discovery copy aligned with t
|
|
|
6
6
|
|
|
7
7
|
Preferred positioning:
|
|
8
8
|
|
|
9
|
-
> Installable GitHub library of 1,
|
|
9
|
+
> Installable GitHub library of 1,965+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and other AI coding assistants.
|
|
10
10
|
|
|
11
11
|
Key framing:
|
|
12
12
|
|
|
@@ -20,7 +20,7 @@ Key framing:
|
|
|
20
20
|
|
|
21
21
|
Preferred description:
|
|
22
22
|
|
|
23
|
-
> Installable GitHub library of 1,
|
|
23
|
+
> Installable GitHub library of 1,965+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.
|
|
24
24
|
|
|
25
25
|
Preferred homepage:
|
|
26
26
|
|
|
@@ -28,7 +28,7 @@ Preferred homepage:
|
|
|
28
28
|
|
|
29
29
|
Preferred social preview:
|
|
30
30
|
|
|
31
|
-
- use a clean preview image that says `1,
|
|
31
|
+
- use a clean preview image that says `1,965+ Agentic Skills`;
|
|
32
32
|
- mention Claude Code, Cursor, Codex CLI, and Gemini CLI;
|
|
33
33
|
- avoid dense text and tiny logos that disappear in social cards.
|
|
34
34
|
|
|
@@ -72,7 +72,7 @@ The update process refreshes:
|
|
|
72
72
|
- Canonical skills index (`skills_index.json`)
|
|
73
73
|
- Compatibility mirror (`data/skills_index.json`)
|
|
74
74
|
- Web app skills data (`apps\web-app\public\skills.json`)
|
|
75
|
-
- All 1,
|
|
75
|
+
- All 1,965+ skills from the skills directory
|
|
76
76
|
|
|
77
77
|
## When to Update
|
|
78
78
|
|
|
@@ -12,7 +12,7 @@ Install the library into Claude Code, then invoke focused skills directly in the
|
|
|
12
12
|
|
|
13
13
|
## Why use this repo for Claude Code
|
|
14
14
|
|
|
15
|
-
- It includes 1,
|
|
15
|
+
- It includes 1,965+ skills instead of a narrow single-domain starter pack.
|
|
16
16
|
- It supports the standard `.claude/skills/` path and the Claude Code plugin marketplace flow.
|
|
17
17
|
- It also ships generated bundle plugins so teams can install focused packs like `Essentials` or `Security Developer` from the marketplace metadata.
|
|
18
18
|
- It includes onboarding docs, bundles, and workflows so new users do not need to guess where to begin.
|
|
@@ -423,7 +423,7 @@ Common fixes:
|
|
|
423
423
|
|
|
424
424
|
### My PR triggered the `skill-review` automated check. What is it?
|
|
425
425
|
|
|
426
|
-
Since v8.0.0, GitHub automatically runs a `skill-review` workflow on any PR that adds or modifies a `SKILL.md` file. It reviews your skill against the quality bar and flags common issues — missing sections, weak triggers, or risky command patterns. The workflow now uses Tessl Review; fork PRs may need maintainer manual review when GitHub withholds repository secrets.
|
|
426
|
+
Since v8.0.0, GitHub automatically runs a `skill-review` workflow on any PR that adds or modifies a `SKILL.md` file. It reviews your skill against the quality bar and flags common issues — missing sections, weak triggers, or risky command patterns. The workflow now uses Tessl Review; fork PRs may need maintainer manual review when GitHub withholds repository secrets. Successful reviews are keyed to the changed skill content, so unrelated pushes and base-branch refreshes reuse the result without spending more Tessl credits. If the monthly credit quota is unavailable, the workflow requests an exact-head maintainer review rather than returning a false automated pass.
|
|
427
427
|
|
|
428
428
|
**If it reports findings:**
|
|
429
429
|
|
|
@@ -12,7 +12,7 @@ Install into the Gemini skills path, then ask Gemini to apply one skill at a tim
|
|
|
12
12
|
|
|
13
13
|
- It installs directly into the expected Gemini skills path.
|
|
14
14
|
- It includes both core software engineering skills and deeper agent/LLM-oriented skills.
|
|
15
|
-
- It helps new users get started with bundles and workflows rather than forcing a cold start from 1,
|
|
15
|
+
- It helps new users get started with bundles and workflows rather than forcing a cold start from 1,965+ files.
|
|
16
16
|
- It is useful whether you want a broad internal skill library or a single repo to test many workflows quickly.
|
|
17
17
|
|
|
18
18
|
## Install Gemini CLI Skills
|
|
@@ -18,7 +18,7 @@ Kiro is AWS's agentic AI IDE that combines:
|
|
|
18
18
|
|
|
19
19
|
Kiro's agentic capabilities are enhanced by skills that provide:
|
|
20
20
|
|
|
21
|
-
- **Domain expertise** across 1,
|
|
21
|
+
- **Domain expertise** across 1,965+ specialized areas
|
|
22
22
|
- **Best practices** from Anthropic, OpenAI, Google, Microsoft, and AWS
|
|
23
23
|
- **Workflow automation** for common development tasks
|
|
24
24
|
- **AWS-specific patterns** for serverless, infrastructure, and cloud architecture
|
|
@@ -14,7 +14,7 @@ If you came in through a **Claude Code** or **Codex** plugin instead of a full l
|
|
|
14
14
|
|
|
15
15
|
When you ran `npx agentic-awesome-skills` or cloned the repository, you:
|
|
16
16
|
|
|
17
|
-
✅ **Downloaded 1,
|
|
17
|
+
✅ **Downloaded 1,965+ skill files** to your computer (default: `~/.agents/skills/`; or a custom path like `~/.agent/skills/` if you used `--path`)
|
|
18
18
|
✅ **Made them available** to your AI assistant
|
|
19
19
|
❌ **Did NOT enable them all automatically** (they're just sitting there, waiting)
|
|
20
20
|
|
|
@@ -34,7 +34,7 @@ Bundles are **curated groups** of skills organized by role. They help you decide
|
|
|
34
34
|
|
|
35
35
|
**Analogy:**
|
|
36
36
|
|
|
37
|
-
- You installed a toolbox with 1,
|
|
37
|
+
- You installed a toolbox with 1,965+ tools (✅ done)
|
|
38
38
|
- Bundles are like **labeled organizer trays** saying: "If you're a carpenter, start with these 10 tools"
|
|
39
39
|
- You can either **pick skills from the tray** or install that tray as a focused marketplace bundle plugin
|
|
40
40
|
|
|
@@ -212,7 +212,7 @@ Let's actually use a skill right now. Follow these steps:
|
|
|
212
212
|
|
|
213
213
|
## Step 5: Picking Your First Skills (Practical Advice)
|
|
214
214
|
|
|
215
|
-
Don't try to use all 1,
|
|
215
|
+
Don't try to use all 1,965+ skills at once. Here's a sensible approach:
|
|
216
216
|
|
|
217
217
|
If you want a tool-specific starting point before choosing skills, use:
|
|
218
218
|
|
|
@@ -343,7 +343,7 @@ Usually no, but if your AI doesn't recognize a skill:
|
|
|
343
343
|
|
|
344
344
|
### "Can I load all skills into the model at once?"
|
|
345
345
|
|
|
346
|
-
No. Even though you have 1,
|
|
346
|
+
No. Even though you have 1,965+ skills installed locally, you should **not** concatenate every `SKILL.md` into a single system prompt or context block.
|
|
347
347
|
|
|
348
348
|
The intended pattern is:
|
|
349
349
|
|
|
@@ -34,7 +34,7 @@ agentic-awesome-skills/
|
|
|
34
34
|
├── 📄 CONTRIBUTING.md ← Contributor workflow
|
|
35
35
|
├── 📄 CATALOG.md ← Full generated catalog
|
|
36
36
|
│
|
|
37
|
-
├── 📁 skills/ ← 1,
|
|
37
|
+
├── 📁 skills/ ← 1,965+ skills live here
|
|
38
38
|
│ │
|
|
39
39
|
│ ├── 📁 brainstorming/
|
|
40
40
|
│ │ └── 📄 SKILL.md ← Skill definition
|
|
@@ -47,7 +47,7 @@ agentic-awesome-skills/
|
|
|
47
47
|
│ │ └── 📁 2d-games/
|
|
48
48
|
│ │ └── 📄 SKILL.md ← Nested skills also supported
|
|
49
49
|
│ │
|
|
50
|
-
│ └── ... (1,
|
|
50
|
+
│ └── ... (1,965+ total)
|
|
51
51
|
│
|
|
52
52
|
├── 📁 apps/
|
|
53
53
|
│ └── 📁 web-app/ ← Interactive browser
|
|
@@ -100,7 +100,7 @@ agentic-awesome-skills/
|
|
|
100
100
|
|
|
101
101
|
```
|
|
102
102
|
┌─────────────────────────┐
|
|
103
|
-
│ 1,
|
|
103
|
+
│ 1,965+ SKILLS │
|
|
104
104
|
└────────────┬────────────┘
|
|
105
105
|
│
|
|
106
106
|
┌────────────────────────┼────────────────────────┐
|
|
@@ -201,7 +201,7 @@ If you want a workspace-style manual install instead, cloning into `.agent/skill
|
|
|
201
201
|
│ ├── 📁 brainstorming/ │
|
|
202
202
|
│ ├── 📁 stripe-integration/ │
|
|
203
203
|
│ ├── 📁 react-best-practices/ │
|
|
204
|
-
│ └── ... (1,
|
|
204
|
+
│ └── ... (1,965+ total) │
|
|
205
205
|
└─────────────────────────────────────────┘
|
|
206
206
|
```
|
|
207
207
|
|
|
@@ -49,9 +49,11 @@ git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null
|
|
|
49
49
|
|
|
50
50
|
Or ask: "This branch split from main - is that correct?"
|
|
51
51
|
|
|
52
|
+
Read `AGENTS.md` and maintainer documentation, then inspect effective protection for the base branch. If pull requests or required checks are enforced, mark local merge as unavailable and use the repository's guarded PR/merge workflow. In `agentic-awesome-skills`, defer maintainer merges to `antigravity-maintainer-batch-release` and `npm run merge:batch`.
|
|
53
|
+
|
|
52
54
|
### Step 3: Present Options
|
|
53
55
|
|
|
54
|
-
|
|
56
|
+
For an unprotected base branch, present exactly these 4 options:
|
|
55
57
|
|
|
56
58
|
```
|
|
57
59
|
Implementation complete. What would you like to do?
|
|
@@ -66,10 +68,14 @@ Which option?
|
|
|
66
68
|
|
|
67
69
|
**Don't add explanation** - keep options concise.
|
|
68
70
|
|
|
71
|
+
For a protected base branch, do not offer local merge. Present only push/create PR, keep as-is, and discard, while preserving the same confirmation rule for discard.
|
|
72
|
+
|
|
69
73
|
### Step 4: Execute Choice
|
|
70
74
|
|
|
71
75
|
#### Option 1: Merge Locally
|
|
72
76
|
|
|
77
|
+
Use this option only after proving that repository policy and server-side protection permit local integration into the base branch. Otherwise stop and route through Option 2.
|
|
78
|
+
|
|
73
79
|
```bash
|
|
74
80
|
# Switch to base branch
|
|
75
81
|
git checkout <base-branch>
|