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.
Files changed (32) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +8 -1
  2. package/bundled-skills/ad-campaign-analyzer/SKILL.md +382 -0
  3. package/bundled-skills/anywrite/SKILL.md +106 -0
  4. package/bundled-skills/competitor-ad-intelligence/SKILL.md +394 -0
  5. package/bundled-skills/diagnose-android-overheating/SKILL.md +198 -0
  6. package/bundled-skills/diagnose-android-overheating/agents/openai.yaml +4 -0
  7. package/bundled-skills/diagnose-android-overheating/references/evidence-and-interpretation.md +168 -0
  8. package/bundled-skills/ditto/SKILL.md +173 -0
  9. package/bundled-skills/docs/contributors/quality-bar.md +1 -1
  10. package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
  11. package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
  12. package/bundled-skills/docs/maintainers/merge-batch.md +6 -5
  13. package/bundled-skills/docs/maintainers/pr-autonomy.md +4 -2
  14. package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
  15. package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
  16. package/bundled-skills/docs/users/bundles.md +1 -1
  17. package/bundled-skills/docs/users/claude-code-skills.md +1 -1
  18. package/bundled-skills/docs/users/faq.md +1 -1
  19. package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
  20. package/bundled-skills/docs/users/getting-started.md +1 -1
  21. package/bundled-skills/docs/users/kiro-integration.md +1 -1
  22. package/bundled-skills/docs/users/usage.md +4 -4
  23. package/bundled-skills/docs/users/visual-guide.md +4 -4
  24. package/bundled-skills/finishing-a-development-branch/SKILL.md +7 -1
  25. package/bundled-skills/git-pr-workflows-git-workflow/SKILL.md +87 -111
  26. package/bundled-skills/git-pushing/SKILL.md +3 -1
  27. package/bundled-skills/github-automation/SKILL.md +76 -218
  28. package/bundled-skills/optim-agent/SKILL.md +78 -0
  29. package/bundled-skills/repo-maintainer/SKILL.md +67 -426
  30. package/bundled-skills/sshepherd/SKILL.md +107 -0
  31. package/package.json +2 -2
  32. package/skills_index.json +235 -4
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: sshepherd
3
+ description: "Zero-knowledge SSH ops CLI — server health checks, docker/systemd control, log tailing, Postgres introspection, and declarative deploys, without ever exposing credentials to the agent."
4
+ category: devops
5
+ risk: critical
6
+ source: community
7
+ source_repo: Antheurus/sshepherd
8
+ source_type: community
9
+ date_added: "2026-07-15"
10
+ author: Antheurus
11
+ tags: [ssh, devops, cli, server-ops, postgres, deploy, zero-knowledge]
12
+ tools: [claude, cursor, gemini, codex]
13
+ license: "MIT"
14
+ license_source: "https://github.com/Antheurus/sshepherd/blob/main/LICENSE"
15
+ ---
16
+
17
+ # sshepherd
18
+
19
+ ## Overview
20
+
21
+ `sshepherd` is a compiled Bun/TypeScript CLI that lets an agent operate a real remote server over SSH — health checks, docker/systemd service control, log tailing, config file edits, read-only Postgres introspection, and declarative deploys — without ever seeing a password, private key, hostname, username, or port. Every operation shells out to the system `ssh` binary through a single transport path and returns the same typed `Envelope<T>` (`ok`, `alias`, `data`, `error`), never a raw terminal dump. The agent passes only a *name* — an ssh alias, a Postgres target, or a deploy recipe — that resolves entirely outside the process.
22
+
23
+ ## When to Use This Skill
24
+
25
+ - Use when you need to check a remote server's health (disk, memory, CPU, ports, OOM history) without handing the agent SSH credentials.
26
+ - Use when working with remote docker or systemd services — listing, inspecting, or restarting them — or tailing their logs.
27
+ - Use when the user asks to read or edit a remote config file, run a declarative deploy from a named recipe, introspect a remote Postgres database read-only, or audit SSH/security posture on a box.
28
+
29
+ ## How It Works
30
+
31
+ ### Step 1: Declare targets once, outside any prompt
32
+
33
+ Every connection detail is declared ahead of time and never appears on the command line: ssh aliases in `~/.ssh/config`, Postgres targets in `~/.config/sshepherd/targets.toml`, deploy recipes in recipe TOML files. OpenSSH resolves the real `HostName`/`User`/`Port`/`IdentityFile` internally.
34
+
35
+ ### Step 2: Invoke a group + action by name
36
+
37
+ ```
38
+ sshepherd <group> <action> [positionals...] [--flag value]
39
+ ```
40
+
41
+ Nine command groups — `hosts`, `check`, `logs`, `services`, `deploy`, `config`, `db`, `files`, `security` — 52 ops total. Output is JSON to stdout by default; add `--pretty` for a human-readable table/key-value view. The response only ever echoes back the `alias` it was given — there is no host/user/port/ip field anywhere in the response type, structurally.
42
+
43
+ ### Step 3: Discover the command surface
44
+
45
+ ```bash
46
+ ./dist/sshepherd --help # list groups
47
+ ./dist/sshepherd check --help # list actions + flags for one group
48
+ ```
49
+
50
+ ## Examples
51
+
52
+ ### Example 1: Server health overview
53
+
54
+ ```bash
55
+ ./dist/sshepherd check overview lms-server
56
+ ```
57
+
58
+ Returns a JSON envelope with disk, memory, CPU, listening ports, and OOM history for the host behind the `lms-server` alias — the agent never learns the host's address.
59
+
60
+ ### Example 2: Restart a docker service and tail its logs
61
+
62
+ ```bash
63
+ ./dist/sshepherd services restart lms-server --name api
64
+ ./dist/sshepherd logs tail lms-server --name api --lines 100
65
+ ```
66
+
67
+ ### Example 3: Read-only Postgres introspection
68
+
69
+ ```bash
70
+ ./dist/sshepherd db tables prod
71
+ ```
72
+
73
+ `prod` is a pg-target name that resolves to *how* to reach `psql` on a host — never a database password. `psql` runs inside the target container, authenticated by peer/trust/`.pgpass` already on the remote.
74
+
75
+ ## Best Practices
76
+
77
+ - ✅ Declare every alias/target/recipe ahead of time in `~/.ssh/config` / `targets.toml` / recipe TOML — never inline connection details.
78
+ - ✅ Pass only names (alias, pg-target, recipe) to the CLI; let OpenSSH own authentication.
79
+ - ✅ Use `--pretty` for human review and default JSON output for machine parsing.
80
+ - ❌ Don't try to inject a hostname, user, port, or password into a command — the CLI has no field for them.
81
+ - ❌ Don't reach for the `ssh2` npm library or hand-rolled SSH; the whole point is delegating to the trusted system `ssh` binary.
82
+
83
+ ## Limitations
84
+
85
+ - This skill does not replace environment-specific validation, testing, or expert review.
86
+ - Stop and ask for clarification if required inputs, permissions, or safety boundaries are missing.
87
+ - Requires the system OpenSSH client and pre-declared aliases/targets/recipes; it cannot connect to a host that has not been configured outside the agent.
88
+ - Postgres access is read-only introspection by design.
89
+
90
+ ## Security & Safety Notes
91
+
92
+ - **Zero-knowledge credential model:** the agent never sees a password, private key, hostname, username, or port. It only ever passes an ssh alias, a pg-target name, or a recipe name; the real connection tuple is resolved by OpenSSH outside the process, and every response echoes back only the alias.
93
+ - **Never reads private key material.** Authentication happens entirely inside OpenSSH's own trusted code path.
94
+ - **Confirmation gate on mutations:** destructive/mutating actions (service restart, config write, deploy) require an explicit `--yes` confirm flag.
95
+ - **Human-only credential entry:** the separate `setup ssh-alias install` action opens a one-shot local browser form that only a human can type a password into — the agent can trigger and wait on it but never sees, logs, or relays the password.
96
+ - Environment expectation: run against hosts you are authorized to operate.
97
+
98
+ ## Common Pitfalls
99
+
100
+ - **Problem:** Trying to pass a hostname or password directly to a command.
101
+ **Solution:** Register the target first (`setup ssh-alias register` / `setup db-target`), then reference it only by name.
102
+ - **Problem:** A mutating action returns without doing anything.
103
+ **Solution:** Add the `--yes` confirm flag — mutations are gated by design.
104
+
105
+ ## Related Skills
106
+
107
+ - `@devops-automation` - When you need broader CI/CD or infrastructure-as-code automation beyond SSH ops.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-skills-collection",
3
- "version": "4.0.1",
3
+ "version": "4.0.3",
4
4
  "description": "OpenCode CLI plugin that automatically downloads and keeps skills up to date.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -46,6 +46,6 @@
46
46
  "@types/bun": "*",
47
47
  "@types/node": "^26.0.0",
48
48
  "@types/strip-json-comments": "^3.0.0",
49
- "typescript": "^6.0.2"
49
+ "typescript": "^7.0.2"
50
50
  }
51
51
  }
package/skills_index.json CHANGED
@@ -498,6 +498,39 @@
498
498
  "reasons": []
499
499
  }
500
500
  },
501
+ {
502
+ "id": "ad-campaign-analyzer",
503
+ "path": "skills/ad-campaign-analyzer",
504
+ "category": "marketing",
505
+ "name": "ad-campaign-analyzer",
506
+ "description": "Analyze cross-channel campaign data, quantify uncertainty, and propose evidence-labeled budget tests without overstating causality.",
507
+ "risk": "critical",
508
+ "source": "community",
509
+ "date_added": "2026-07-16",
510
+ "plugin": {
511
+ "targets": {
512
+ "codex": "supported",
513
+ "claude": "supported"
514
+ },
515
+ "setup": {
516
+ "type": "none",
517
+ "summary": "",
518
+ "docs": null
519
+ },
520
+ "reasons": []
521
+ },
522
+ "source_type": "community",
523
+ "source_repo": "gooseworks-ai/goose-skills",
524
+ "license": "MIT",
525
+ "license_source": "https://github.com/gooseworks-ai/goose-skills/blob/main/LICENSE",
526
+ "tags": [
527
+ "ads",
528
+ "analytics",
529
+ "budget-optimization",
530
+ "roas",
531
+ "marketing"
532
+ ]
533
+ },
501
534
  {
502
535
  "id": "ad-creative",
503
536
  "path": "skills/ad-creative",
@@ -2388,6 +2421,41 @@
2388
2421
  "reasons": []
2389
2422
  }
2390
2423
  },
2424
+ {
2425
+ "id": "anywrite",
2426
+ "path": "skills/anywrite",
2427
+ "category": "productivity",
2428
+ "name": "anywrite",
2429
+ "description": "Compiled CLI covering all 52 endpoints of the Anytype local API — objects, properties, tags, search, chat, files — one binary, no MCP server needed.",
2430
+ "risk": "critical",
2431
+ "source": "community",
2432
+ "date_added": "2026-07-15",
2433
+ "plugin": {
2434
+ "targets": {
2435
+ "codex": "supported",
2436
+ "claude": "supported"
2437
+ },
2438
+ "setup": {
2439
+ "type": "none",
2440
+ "summary": "",
2441
+ "docs": null
2442
+ },
2443
+ "reasons": []
2444
+ },
2445
+ "source_type": "community",
2446
+ "source_repo": "Antheurus/anywrite",
2447
+ "license": "MIT",
2448
+ "license_source": "https://github.com/Antheurus/anywrite/blob/main/LICENSE",
2449
+ "tags": [
2450
+ "anytype",
2451
+ "cli",
2452
+ "pkm",
2453
+ "notes",
2454
+ "api-integration",
2455
+ "productivity",
2456
+ "knowledge-management"
2457
+ ]
2458
+ },
2391
2459
  {
2392
2460
  "id": "aomi-transact",
2393
2461
  "path": "skills/aomi-transact",
@@ -11221,6 +11289,39 @@
11221
11289
  "reasons": []
11222
11290
  }
11223
11291
  },
11292
+ {
11293
+ "id": "competitor-ad-intelligence",
11294
+ "path": "skills/competitor-ad-intelligence",
11295
+ "category": "marketing",
11296
+ "name": "competitor-ad-intelligence",
11297
+ "description": "Research public competitor ads, analyze creative patterns and landing pages, and produce an evidence-labeled strategic teardown.",
11298
+ "risk": "critical",
11299
+ "source": "community",
11300
+ "date_added": "2026-07-16",
11301
+ "plugin": {
11302
+ "targets": {
11303
+ "codex": "supported",
11304
+ "claude": "supported"
11305
+ },
11306
+ "setup": {
11307
+ "type": "none",
11308
+ "summary": "",
11309
+ "docs": null
11310
+ },
11311
+ "reasons": []
11312
+ },
11313
+ "source_type": "community",
11314
+ "source_repo": "gooseworks-ai/goose-skills",
11315
+ "license": "MIT",
11316
+ "license_source": "https://github.com/gooseworks-ai/goose-skills/blob/main/LICENSE",
11317
+ "tags": [
11318
+ "ads",
11319
+ "competitive-intelligence",
11320
+ "meta-ads",
11321
+ "google-ads",
11322
+ "marketing"
11323
+ ]
11324
+ },
11224
11325
  {
11225
11326
  "id": "competitor-alternatives",
11226
11327
  "path": "skills/competitor-alternatives",
@@ -15188,6 +15289,37 @@
15188
15289
  "license": "MIT",
15189
15290
  "license_source": "https://github.com/jonathimer/devmarketing-skills/blob/main/LICENSE"
15190
15291
  },
15292
+ {
15293
+ "id": "diagnose-android-overheating",
15294
+ "path": "skills/diagnose-android-overheating",
15295
+ "category": "debugging",
15296
+ "name": "diagnose-android-overheating",
15297
+ "description": "Use when diagnosing Android overheating, idle heat, thermal throttling, charging or radio heat, or abnormal battery drain with read-only ADB evidence and approval gates.",
15298
+ "risk": "critical",
15299
+ "source": "self",
15300
+ "date_added": "2026-07-16",
15301
+ "plugin": {
15302
+ "targets": {
15303
+ "codex": "supported",
15304
+ "claude": "supported"
15305
+ },
15306
+ "setup": {
15307
+ "type": "none",
15308
+ "summary": "",
15309
+ "docs": null
15310
+ },
15311
+ "reasons": []
15312
+ },
15313
+ "source_type": "self",
15314
+ "tags": [
15315
+ "android",
15316
+ "adb",
15317
+ "overheating",
15318
+ "thermal",
15319
+ "battery",
15320
+ "diagnostics"
15321
+ ]
15322
+ },
15191
15323
  {
15192
15324
  "id": "diagnosing-bugs",
15193
15325
  "path": "skills/diagnosing-bugs",
@@ -15445,6 +15577,38 @@
15445
15577
  "reasons": []
15446
15578
  }
15447
15579
  },
15580
+ {
15581
+ "id": "ditto",
15582
+ "path": "skills/ditto",
15583
+ "category": "agent-behavior",
15584
+ "name": "ditto",
15585
+ "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.",
15586
+ "risk": "critical",
15587
+ "source": "community",
15588
+ "date_added": "2026-07-14",
15589
+ "plugin": {
15590
+ "targets": {
15591
+ "codex": "supported",
15592
+ "claude": "supported"
15593
+ },
15594
+ "setup": {
15595
+ "type": "none",
15596
+ "summary": "",
15597
+ "docs": null
15598
+ },
15599
+ "reasons": []
15600
+ },
15601
+ "source_type": "community",
15602
+ "source_repo": "ohad6k/ditto",
15603
+ "license": "MIT",
15604
+ "license_source": "https://github.com/ohad6k/ditto/blob/v0.3.6/LICENSE",
15605
+ "tags": [
15606
+ "personalization",
15607
+ "context-engineering",
15608
+ "session-mining",
15609
+ "agent-memory"
15610
+ ]
15611
+ },
15448
15612
  {
15449
15613
  "id": "django-access-review",
15450
15614
  "path": "skills/django-access-review",
@@ -20197,7 +20361,7 @@
20197
20361
  "path": "skills/git-pr-workflows-git-workflow",
20198
20362
  "category": "workflow",
20199
20363
  "name": "git-pr-workflows-git-workflow",
20200
- "description": "Orchestrate a comprehensive git workflow from code review through PR creation, leveraging specialized agents for quality assurance, testing, and deployment readiness. This workflow implements modern g",
20364
+ "description": "Orchestrate review, tests, commits, branch pushes, and pull-request creation with parallel agents. Use when completed changes must move through validation into a PR or guarded merge.",
20201
20365
  "risk": "critical",
20202
20366
  "source": "community",
20203
20367
  "date_added": "2026-02-27",
@@ -20407,7 +20571,7 @@
20407
20571
  "path": "skills/github-automation",
20408
20572
  "category": "workflow",
20409
20573
  "name": "github-automation",
20410
- "description": "Automate GitHub repositories, issues, pull requests, branches, CI/CD, and permissions via Rube MCP (Composio). Manage code workflows, review PRs, search code, and handle deployments programmatically.",
20574
+ "description": "Operate GitHub issues, pull requests, branches, checks, workflows, and permissions through Rube MCP. Use when GitHub work must be queried or changed programmatically with repository-policy safeguards.",
20411
20575
  "risk": "critical",
20412
20576
  "source": "community",
20413
20577
  "date_added": "2026-02-27",
@@ -31098,6 +31262,38 @@
31098
31262
  "security"
31099
31263
  ]
31100
31264
  },
31265
+ {
31266
+ "id": "optim-agent",
31267
+ "path": "skills/optim-agent",
31268
+ "category": "data",
31269
+ "name": "optim-agent",
31270
+ "description": "Guide agent-driven parameter optimization for configurable systems with measurable objectives. Use for HPO, inference tuning, simulations, or RL/control experiments.",
31271
+ "risk": "safe",
31272
+ "source": "community",
31273
+ "date_added": "2026-07-15",
31274
+ "plugin": {
31275
+ "targets": {
31276
+ "codex": "supported",
31277
+ "claude": "supported"
31278
+ },
31279
+ "setup": {
31280
+ "type": "none",
31281
+ "summary": "",
31282
+ "docs": null
31283
+ },
31284
+ "reasons": []
31285
+ },
31286
+ "source_type": "community",
31287
+ "source_repo": "Optim-Agent/optim-agent",
31288
+ "license": "MIT",
31289
+ "license_source": "https://github.com/Optim-Agent/optim-agent/blob/main/LICENSE",
31290
+ "tags": [
31291
+ "optimization",
31292
+ "hyperparameter-optimization",
31293
+ "experiments",
31294
+ "tuning"
31295
+ ]
31296
+ },
31101
31297
  {
31102
31298
  "id": "options-flow-analyzer",
31103
31299
  "path": "skills/options-flow-analyzer",
@@ -35266,8 +35462,8 @@
35266
35462
  "path": "skills/repo-maintainer",
35267
35463
  "category": "uncategorized",
35268
35464
  "name": "repo-maintainer",
35269
- "description": "Championship-grade repository maintenance. Audits for test artifacts, dependency issues, CI/CD health, documentation sync, and FAF alignment. Generates prioritized cleanup plans. Use when repos need deep cleaning or ongoing maintenance.",
35270
- "risk": "unknown",
35465
+ "description": "Audit and repair repository hygiene across artifacts, dependencies, CI, docs, Git state, and code-quality signals. Use for repository maintenance, cleanup, health checks, or pre-release hardening.",
35466
+ "risk": "critical",
35271
35467
  "source": "https://github.com/Wolfe-Jam/faf-skills/tree/main/skills/repo-maintainer",
35272
35468
  "date_added": "2026-07-01",
35273
35469
  "plugin": {
@@ -40052,6 +40248,41 @@
40052
40248
  "reasons": []
40053
40249
  }
40054
40250
  },
40251
+ {
40252
+ "id": "sshepherd",
40253
+ "path": "skills/sshepherd",
40254
+ "category": "devops",
40255
+ "name": "sshepherd",
40256
+ "description": "Zero-knowledge SSH ops CLI — server health checks, docker/systemd control, log tailing, Postgres introspection, and declarative deploys, without ever exposing credentials to the agent.",
40257
+ "risk": "critical",
40258
+ "source": "community",
40259
+ "date_added": "2026-07-15",
40260
+ "plugin": {
40261
+ "targets": {
40262
+ "codex": "supported",
40263
+ "claude": "supported"
40264
+ },
40265
+ "setup": {
40266
+ "type": "none",
40267
+ "summary": "",
40268
+ "docs": null
40269
+ },
40270
+ "reasons": []
40271
+ },
40272
+ "source_type": "community",
40273
+ "source_repo": "Antheurus/sshepherd",
40274
+ "license": "MIT",
40275
+ "license_source": "https://github.com/Antheurus/sshepherd/blob/main/LICENSE",
40276
+ "tags": [
40277
+ "ssh",
40278
+ "devops",
40279
+ "cli",
40280
+ "server-ops",
40281
+ "postgres",
40282
+ "deploy",
40283
+ "zero-knowledge"
40284
+ ]
40285
+ },
40055
40286
  {
40056
40287
  "id": "stability-ai",
40057
40288
  "path": "skills/stability-ai",