opencode-skills-collection 3.1.14 → 3.1.16
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 +36 -1
- package/bundled-skills/007/scripts/full_audit.py +34 -22
- package/bundled-skills/007/scripts/quick_scan.py +24 -15
- package/bundled-skills/007/scripts/scanners/dependency_scanner.py +31 -19
- package/bundled-skills/007/scripts/scanners/injection_scanner.py +24 -14
- package/bundled-skills/007/scripts/scanners/secrets_scanner.py +24 -14
- package/bundled-skills/007/scripts/score_calculator.py +25 -13
- package/bundled-skills/2slides-ppt-generator/scripts/download_slides_pages_voices.py +15 -1
- package/bundled-skills/aegisops-ai/SKILL.md +1 -1
- package/bundled-skills/agent-self-scheduling/SKILL.md +88 -0
- package/bundled-skills/alpha-vantage/SKILL.md +3 -1
- package/bundled-skills/anti-sleep/SKILL.md +90 -0
- package/bundled-skills/api-security-best-practices/SKILL.md +1 -1
- package/bundled-skills/app-store-optimization/SKILL.md +7 -0
- package/bundled-skills/audio-transcriber/scripts/transcribe.py +17 -4
- package/bundled-skills/azure-mgmt-botservice-py/SKILL.md +2 -1
- package/bundled-skills/azure-resource-manager-mysql-dotnet/SKILL.md +2 -1
- package/bundled-skills/azure-resource-manager-postgresql-dotnet/SKILL.md +2 -1
- package/bundled-skills/azure-resource-manager-sql-dotnet/SKILL.md +2 -1
- package/bundled-skills/biopython/SKILL.md +2 -1
- package/bundled-skills/brain-to-docs/SKILL.md +54 -0
- package/bundled-skills/browser-harness/SKILL.md +220 -0
- package/bundled-skills/browser-harness/references/install.md +132 -0
- package/bundled-skills/bumblebee/scripts/render_report.py +16 -3
- package/bundled-skills/bun-development/SKILL.md +1 -1
- package/bundled-skills/cc-skill-security-review/SKILL.md +2 -2
- package/bundled-skills/claude-monitor/scripts/monitor.py +15 -2
- package/bundled-skills/cmux/SKILL.md +250 -0
- package/bundled-skills/code-polish/SKILL.md +192 -0
- package/bundled-skills/code-review-checklist/SKILL.md +1 -1
- package/bundled-skills/codex-subagent/SKILL.md +117 -0
- package/bundled-skills/competitor-analysis/scripts/capture_screenshots.mjs +24 -3
- package/bundled-skills/competitor-analysis/scripts/compile_report.mjs +13 -2
- package/bundled-skills/competitor-analysis/scripts/extract_vs_names.mjs +23 -2
- package/bundled-skills/competitor-analysis/scripts/gate_candidates.mjs +21 -0
- package/bundled-skills/competitor-analysis/scripts/list_urls.mjs +23 -2
- package/bundled-skills/competitor-analysis/scripts/merge_partials.mjs +24 -3
- package/bundled-skills/container-security-hardening/SKILL.md +1 -1
- package/bundled-skills/content-creator/scripts/brand_voice_analyzer.py +15 -1
- package/bundled-skills/content-creator/scripts/seo_optimizer.py +15 -1
- package/bundled-skills/context-kit/SKILL.md +135 -0
- package/bundled-skills/cyber-audit/SKILL.md +138 -0
- package/bundled-skills/deepapi/SKILL.md +649 -0
- package/bundled-skills/delegating-to-agents/SKILL.md +64 -0
- package/bundled-skills/developer-signup-flow/SKILL.md +1 -1
- package/bundled-skills/diary/scripts/fetch_diaries.py +14 -1
- package/bundled-skills/diary/scripts/prepare_context.py +15 -2
- package/bundled-skills/diary/scripts/sync_to_notion.py +14 -1
- package/bundled-skills/dispatch/SKILL.md +19 -7
- package/bundled-skills/distribute-skill-to-all-agents/SKILL.md +85 -0
- 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/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/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/docx-official/ooxml/scripts/pack.py +30 -3
- package/bundled-skills/docx-official/ooxml/scripts/unpack.py +16 -3
- package/bundled-skills/drizzle-migration-conflict/scripts/check_drizzle_migrations.py +27 -17
- package/bundled-skills/ecl-harness-engineer/agents/creator-config.md +17 -3
- package/bundled-skills/ecl-harness-engineer/references/environment-detection-guide.md +9 -5
- package/bundled-skills/effective-agent-skills/SKILL.md +333 -0
- package/bundled-skills/electron-development/SKILL.md +6 -2
- package/bundled-skills/environment-setup-guide/SKILL.md +2 -5
- package/bundled-skills/expo-ui/scripts/list-components.js +5 -1
- package/bundled-skills/fable-safe-prompt/SKILL.md +79 -0
- package/bundled-skills/folder-specific-claude-and-agents-md/SKILL.md +96 -0
- package/bundled-skills/frontend-slides/scripts/extract-pptx.py +18 -4
- package/bundled-skills/gcp-cloud-run/SKILL.md +2 -1
- package/bundled-skills/gemini-api-integration/SKILL.md +3 -1
- package/bundled-skills/gemini-live-api-dev/SKILL.md +2 -1
- package/bundled-skills/gemini-omni-flash-api/scripts/video/generate_video.py +49 -14
- package/bundled-skills/goal-loop/SKILL.md +175 -0
- package/bundled-skills/hugging-face-evaluation/SKILL.md +1 -1
- package/bundled-skills/hugging-face-jobs/SKILL.md +1 -1
- package/bundled-skills/hugging-face-jobs/scripts/finepdfs-stats.py +14 -1
- package/bundled-skills/hugging-face-model-trainer/scripts/convert_to_gguf.py +10 -1
- package/bundled-skills/hugo-to-markdown/scripts/inventory_hugo_rules.py +14 -1
- package/bundled-skills/image-generator/SKILL.md +3 -1
- package/bundled-skills/instagram/scripts/export.py +18 -7
- package/bundled-skills/interview-style-doc-building/SKILL.md +86 -0
- package/bundled-skills/junta-leiloeiros/scripts/export.py +19 -10
- package/bundled-skills/landing-page-generator/scripts/landing_page_scaffolder.py +15 -1
- package/bundled-skills/linear-claude-skill/SKILL.md +4 -2
- package/bundled-skills/linkedin-post-writer/SKILL.md +159 -0
- package/bundled-skills/linkedin-post-writer/references/hook-formulas.md +482 -0
- package/bundled-skills/llm-council/SKILL.md +4 -2
- package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +5 -6
- package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package.json +2 -3
- package/bundled-skills/markdown-rendering/SKILL.md +72 -0
- package/bundled-skills/matematico-tao/scripts/complexity_analyzer.py +14 -1
- package/bundled-skills/matematico-tao/scripts/dependency_graph.py +15 -2
- package/bundled-skills/mobile-design/scripts/mobile_audit.py +20 -6
- package/bundled-skills/monte-carlo-validation-notebook/scripts/resolve_dbt_schema.py +15 -2
- package/bundled-skills/multi-agent-architect/SKILL.md +1 -1
- package/bundled-skills/odoo-rpc-api/SKILL.md +2 -1
- package/bundled-skills/pci-compliance/SKILL.md +3 -1
- package/bundled-skills/pdf-official/scripts/create_validation_image.py +17 -3
- package/bundled-skills/pdf-official/scripts/extract_form_field_info.py +1 -1
- package/bundled-skills/personal-tool-builder/SKILL.md +1 -1
- package/bundled-skills/pi-custom-model/SKILL.md +68 -0
- package/bundled-skills/pi-web-search/SKILL.md +74 -0
- package/bundled-skills/playwright-skill/run.js +19 -1
- package/bundled-skills/pptx-official/ooxml/scripts/pack.py +30 -3
- package/bundled-skills/pptx-official/ooxml/scripts/unpack.py +16 -3
- package/bundled-skills/pptx-official/scripts/inventory.py +17 -4
- package/bundled-skills/pptx-official/scripts/rearrange.py +15 -2
- package/bundled-skills/pptx-official/scripts/replace.py +16 -3
- package/bundled-skills/product-manager-toolkit/scripts/customer_interview_analyzer.py +15 -1
- package/bundled-skills/production-code-audit/SKILL.md +1 -1
- package/bundled-skills/push-skill-to-github/SKILL.md +61 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_completion_powershell.md +3 -2
- package/bundled-skills/read-all-adrs/SKILL.md +35 -0
- package/bundled-skills/remote-gpu-trainer/scripts/verify_local.py +14 -1
- package/bundled-skills/research-prompt/SKILL.md +63 -0
- package/bundled-skills/run-deep-swe/SKILL.md +120 -0
- package/bundled-skills/senior-architect/scripts/architecture_diagram_generator.py +15 -2
- package/bundled-skills/senior-architect/scripts/dependency_analyzer.py +15 -2
- package/bundled-skills/senior-architect/scripts/project_architect.py +15 -2
- package/bundled-skills/senior-frontend/scripts/bundle_analyzer.py +14 -1
- package/bundled-skills/senior-frontend/scripts/frontend_scaffolder.py +14 -1
- package/bundled-skills/senior-fullstack/scripts/code_quality_analyzer.py +15 -2
- package/bundled-skills/senior-fullstack/scripts/fullstack_scaffolder.py +15 -2
- package/bundled-skills/senior-fullstack/scripts/project_scaffolder.py +15 -2
- package/bundled-skills/setup-help/SKILL.md +50 -0
- package/bundled-skills/shodan-reconnaissance/SKILL.md +2 -1
- package/bundled-skills/short/SKILL.md +28 -0
- package/bundled-skills/skill-creator/scripts/init_skill.py +15 -2
- package/bundled-skills/skill-creator/scripts/package_skill.py +29 -12
- package/bundled-skills/skill-creator/scripts/quick_validate.py +14 -2
- package/bundled-skills/skill-creator-ms/SKILL.md +1 -1
- package/bundled-skills/skill-installer/scripts/install_skill.py +42 -8
- package/bundled-skills/skill-installer/scripts/package_skill.py +29 -17
- package/bundled-skills/skill-installer/scripts/validate_skill.py +37 -22
- package/bundled-skills/stripe-integration/SKILL.md +7 -3
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xctrace.py +7 -1
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xml_utils.py +7 -1
- package/bundled-skills/taisly-social-media-posting/SKILL.md +79 -0
- package/bundled-skills/technical-tutorials/SKILL.md +1 -1
- package/bundled-skills/telegram/scripts/setup_project.py +17 -2
- package/bundled-skills/time-ledger/SKILL.md +118 -0
- package/bundled-skills/trading-ledger/SKILL.md +121 -0
- package/bundled-skills/videodb/scripts/ws_listener.py +17 -4
- package/bundled-skills/voice-ai-development/SKILL.md +2 -1
- package/bundled-skills/vps-server-management/SKILL.md +72 -0
- package/bundled-skills/weaviate/scripts/weaviate_conn.py +20 -18
- package/bundled-skills/wgm/SKILL.md +137 -0
- package/bundled-skills/whatsapp-cloud-api/scripts/setup_project.py +16 -1
- package/bundled-skills/workorai/SKILL.md +137 -0
- package/bundled-skills/wp-site-health-auditor/SKILL.md +341 -0
- package/bundled-skills/wp-site-health-auditor/references/catalog.md +135 -0
- package/bundled-skills/writing-skills/render-graphs.js +13 -2
- package/bundled-skills/x-twitter-scraper/SKILL.md +3 -1
- package/bundled-skills/youtube-notetaker/scripts/serve.py +41 -31
- package/bundled-skills/youtube-notetaker/scripts/vtt_to_transcript.py +16 -2
- package/bundled-skills/youtube-notetaker/scripts/write_library_item.py +15 -1
- package/bundled-skills/youtube-transcript/SKILL.md +120 -0
- package/package.json +5 -1
- package/skills_index.json +786 -6
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: context-kit
|
|
3
|
+
description: "Evaluate, adapt, and safely install Context Kit personal context artifacts for Claude Code or adjacent agent workflows."
|
|
4
|
+
category: productivity
|
|
5
|
+
risk: critical
|
|
6
|
+
source: community
|
|
7
|
+
source_repo: JDDavenport/context-kit
|
|
8
|
+
source_type: community
|
|
9
|
+
date_added: "2026-07-04"
|
|
10
|
+
author: JDDavenport
|
|
11
|
+
tags: [personal-context, claude-code, memory, knowledge-management, agent-workflows]
|
|
12
|
+
tools: [claude, codex, cursor, gemini]
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Context Kit
|
|
16
|
+
|
|
17
|
+
## When to Use
|
|
18
|
+
|
|
19
|
+
Use this skill when the user wants to:
|
|
20
|
+
|
|
21
|
+
- Set up durable personal context files for Claude Code or another coding agent
|
|
22
|
+
- Compare Context Kit's Personal Context Artifact pattern with an existing memory or project-notes system
|
|
23
|
+
- Adapt a context template structure without copying private details into the chat
|
|
24
|
+
- Review whether a one-line installer or downloaded skill pack is appropriate before running it
|
|
25
|
+
- Create a safer, local-first plan for CRM notes, open loops, session digests, or morning briefings
|
|
26
|
+
|
|
27
|
+
## Overview
|
|
28
|
+
|
|
29
|
+
Context Kit is an external project that organizes personal context into Markdown artifacts and companion
|
|
30
|
+
Claude Code skills. This skill helps the user decide what to adopt, where to store it, and how to avoid
|
|
31
|
+
turning a useful context system into a pile of sensitive data.
|
|
32
|
+
|
|
33
|
+
Treat every personal context file as private by default. These files may contain identity details, family
|
|
34
|
+
context, work history, contact notes, mental models, health constraints, or relationship information. Do
|
|
35
|
+
not paste them into third-party tools, public repositories, issue trackers, or model contexts unless the
|
|
36
|
+
user explicitly approves the exact subset.
|
|
37
|
+
|
|
38
|
+
## Safety Rules
|
|
39
|
+
|
|
40
|
+
1. Do not run a remote install script until the user has seen the command, source repository, and target
|
|
41
|
+
paths it will write to.
|
|
42
|
+
2. Prefer cloning or downloading the repository for inspection before executing any installer:
|
|
43
|
+
```bash
|
|
44
|
+
git clone https://github.com/JDDavenport/context-kit.git
|
|
45
|
+
cd context-kit
|
|
46
|
+
sed -n '1,220p' scripts/install.sh
|
|
47
|
+
```
|
|
48
|
+
3. Never store passwords, API keys, recovery codes, private keys, session tokens, or payment details in
|
|
49
|
+
personal context artifacts.
|
|
50
|
+
4. If the user wants contact notes or CRM files, store only information they are comfortable keeping in
|
|
51
|
+
local plaintext Markdown.
|
|
52
|
+
5. Before adding these files to a repo, confirm `.gitignore` excludes the chosen private context directory.
|
|
53
|
+
6. If adapting Context Kit to a team or company setting, separate personal context from company-confidential
|
|
54
|
+
or customer-confidential information.
|
|
55
|
+
|
|
56
|
+
## Setup Workflow
|
|
57
|
+
|
|
58
|
+
1. Ask what the user wants Context Kit to improve: session startup context, voice consistency, relationship
|
|
59
|
+
memory, open-loop tracking, daily briefings, or handoff summaries.
|
|
60
|
+
2. Inspect the upstream project and installer before running anything.
|
|
61
|
+
3. Choose a storage location:
|
|
62
|
+
- Claude Code default: `~/.claude/context/` and `~/.claude/skills/`
|
|
63
|
+
- Project-local context: `.agent/context/` or another ignored directory
|
|
64
|
+
- Portable setup: a private notes repo with explicit sync rules
|
|
65
|
+
4. Create a minimal starter set before filling everything:
|
|
66
|
+
- `pca-wiki.md` for durable identity and domains
|
|
67
|
+
- `pca-mental-models.md` for decision rules
|
|
68
|
+
- `pca-voice.md` for writing preferences
|
|
69
|
+
- `pca-protocols.md` for hard rules and boundaries
|
|
70
|
+
5. Add only enough detail to make the next agent session useful. Leave sensitive, speculative, or outdated
|
|
71
|
+
details out until there is a clear reason to include them.
|
|
72
|
+
6. Add a recurring review cadence. Personal context goes stale quickly; stale context is worse than no
|
|
73
|
+
context when it drives decisions.
|
|
74
|
+
|
|
75
|
+
## Installation Review Checklist
|
|
76
|
+
|
|
77
|
+
Before running an installer, verify:
|
|
78
|
+
|
|
79
|
+
- The repository URL is exactly the one the user intended
|
|
80
|
+
- The script writes only to expected local directories
|
|
81
|
+
- The script does not upload files, send telemetry, or edit shell startup files unexpectedly
|
|
82
|
+
- The target directories are not inside a public repo
|
|
83
|
+
- The user has a rollback path, such as removing the copied templates and skills
|
|
84
|
+
|
|
85
|
+
If anything is unclear, stop at inspection and provide the user with the exact lines that need review.
|
|
86
|
+
|
|
87
|
+
## Examples
|
|
88
|
+
|
|
89
|
+
### Example: Inspect before installing
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
git clone https://github.com/JDDavenport/context-kit.git
|
|
93
|
+
cd context-kit
|
|
94
|
+
sed -n '1,220p' scripts/install.sh
|
|
95
|
+
find templates skills -maxdepth 2 -type f | sort
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
After inspection, summarize the files that would be installed and ask for confirmation before running the
|
|
99
|
+
installer.
|
|
100
|
+
|
|
101
|
+
### Example: Create a private project-local context directory
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
mkdir -p .agent/context
|
|
105
|
+
printf '.agent/context/\n' >> .gitignore
|
|
106
|
+
cp ~/Downloads/context-kit/templates/pca-wiki.md .agent/context/pca-wiki.md
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Then trim the template to the minimum useful fields for the project instead of filling every personal
|
|
110
|
+
section immediately.
|
|
111
|
+
|
|
112
|
+
## Best Practices
|
|
113
|
+
|
|
114
|
+
- Keep context files short enough that an agent can read them at session start without drowning in stale
|
|
115
|
+
detail.
|
|
116
|
+
- Separate durable facts from temporary state. Use project workplans or task trackers for temporary state.
|
|
117
|
+
- Label assumptions and uncertain memories instead of presenting them as facts.
|
|
118
|
+
- Review personal context after major life, role, health, or project changes.
|
|
119
|
+
- Store voice examples and anti-examples separately from private identity details when possible.
|
|
120
|
+
|
|
121
|
+
## Common Pitfalls
|
|
122
|
+
|
|
123
|
+
- Running a shell installer directly from `curl` without inspecting it first
|
|
124
|
+
- Committing personal context files to a public repository
|
|
125
|
+
- Storing secrets because "the agent needs to know everything"
|
|
126
|
+
- Letting relationship or health notes become outdated and still treating them as current
|
|
127
|
+
- Copying upstream paid or license-unclear content instead of linking to it or writing original local notes
|
|
128
|
+
|
|
129
|
+
## Limitations
|
|
130
|
+
|
|
131
|
+
- This skill does not verify the current upstream license or installer behavior on its own; inspect the live
|
|
132
|
+
repository before running commands.
|
|
133
|
+
- It does not replace a dedicated secrets manager, CRM, password vault, or medical record system.
|
|
134
|
+
- It is for local personal context hygiene, not for collecting private information about other people
|
|
135
|
+
without a legitimate reason.
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cyber-audit
|
|
3
|
+
description: "Run read-only exposure checks for security advisories and write a structured local audit report."
|
|
4
|
+
category: security
|
|
5
|
+
risk: safe
|
|
6
|
+
source: community
|
|
7
|
+
source_repo: davidondrej/skills
|
|
8
|
+
source_type: community
|
|
9
|
+
date_added: "2026-07-07"
|
|
10
|
+
author: davidondrej
|
|
11
|
+
tags: [security, audit, read-only]
|
|
12
|
+
tools: [claude, codex]
|
|
13
|
+
license: "MIT"
|
|
14
|
+
license_source: "https://github.com/davidondrej/skills/blob/main/LICENSE"
|
|
15
|
+
disable-model-invocation: true
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# cyber-audit
|
|
19
|
+
|
|
20
|
+
## When to Use
|
|
21
|
+
|
|
22
|
+
- Use when the user asks whether their machine or projects are affected by a CVE, breach, or package advisory.
|
|
23
|
+
- Use when a read-only local security exposure report is appropriate.
|
|
24
|
+
|
|
25
|
+
## Hard rules
|
|
26
|
+
|
|
27
|
+
- **Read-only.** No installs, removes, upgrades, restarts, network calls, or file modifications outside `~/Documents/security-audits/`.
|
|
28
|
+
- **No `sudo`.** Never.
|
|
29
|
+
- **One report per invocation.** Always end by writing the `.md` file (even if the verdict is "Not affected" — the audit trail matters).
|
|
30
|
+
- If a check requires a state-changing command, **skip it and note "not checked (would require state change)"** in the table. Do not run it.
|
|
31
|
+
|
|
32
|
+
## Workflow
|
|
33
|
+
|
|
34
|
+
1. **Identify scope.** Extract from the advisory: package/binary name, affected versions, platform (macOS / Linux / Windows), attack vector (supply chain / RCE / local / network).
|
|
35
|
+
2. **Run checks in parallel** (Bash tool, multiple calls in one message). Pick relevant checks for the advisory type — don't run all of them.
|
|
36
|
+
3. **Build the table** as you go. Each row = one check + concrete result (version number, path, "None", "N/A").
|
|
37
|
+
4. **Write the report** to `~/Documents/security-audits/YYYY-MM-DD-<short-kebab-slug>.md`. Use today's date from the environment header.
|
|
38
|
+
5. **Tell the user** the verdict in one line + path to the report.
|
|
39
|
+
|
|
40
|
+
## Check menu (pick what's relevant)
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# --- Node / npm ecosystem (supply-chain advisories) ---
|
|
44
|
+
which npm pnpm yarn; npm root -g; pnpm root -g 2>/dev/null
|
|
45
|
+
ls /opt/homebrew/lib/node_modules # global npm
|
|
46
|
+
find ~ -maxdepth 8 -type d -name "<pkg>" 2>/dev/null \
|
|
47
|
+
| grep -v -E "(Library/Caches|\.Trash)" # installed copies
|
|
48
|
+
find ~/Documents ~/Desktop ~/Downloads -maxdepth 8 -type f \
|
|
49
|
+
\( -name "package.json" -o -name "package-lock.json" \
|
|
50
|
+
-o -name "pnpm-lock.yaml" -o -name "yarn.lock" \) 2>/dev/null \
|
|
51
|
+
| xargs grep -l "<pkg>" 2>/dev/null # direct + transitive
|
|
52
|
+
|
|
53
|
+
# --- Python ecosystem ---
|
|
54
|
+
which python3 pip pipx uv
|
|
55
|
+
pip list 2>/dev/null | grep -i "<pkg>"
|
|
56
|
+
find ~/Documents -maxdepth 6 -name "requirements*.txt" -o -name "pyproject.toml" \
|
|
57
|
+
-o -name "poetry.lock" -o -name "uv.lock" 2>/dev/null | xargs grep -l "<pkg>" 2>/dev/null
|
|
58
|
+
|
|
59
|
+
# --- Homebrew / system binaries ---
|
|
60
|
+
brew list --versions <formula> 2>/dev/null
|
|
61
|
+
which <binary>; <binary> --version 2>/dev/null
|
|
62
|
+
|
|
63
|
+
# --- Running processes / listeners (for RCE / network CVEs) ---
|
|
64
|
+
pgrep -lf "<binary>"
|
|
65
|
+
lsof -iTCP -sTCP:LISTEN -P -n 2>/dev/null | grep "<port>"
|
|
66
|
+
|
|
67
|
+
# --- LaunchAgents / LaunchDaemons (persistence / autostart) ---
|
|
68
|
+
ls ~/Library/LaunchAgents /Library/LaunchAgents /Library/LaunchDaemons 2>/dev/null \
|
|
69
|
+
| grep -i "<vendor>"
|
|
70
|
+
|
|
71
|
+
# --- Env vars that change exposure (e.g. OLLAMA_HOST, listening addr) ---
|
|
72
|
+
launchctl getenv <VAR>; grep -r "<VAR>" ~/.zshrc ~/.zprofile ~/.config 2>/dev/null
|
|
73
|
+
|
|
74
|
+
# --- VS Code / browser extensions (for IDE-targeted advisories) ---
|
|
75
|
+
ls ~/.vscode/extensions 2>/dev/null | grep -i "<ext>"
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
If the advisory mentions an ecosystem not above (Rust cargo, Go modules, Ruby gems, Docker images, etc.), apply the same pattern: global install path + manifest grep + running processes.
|
|
79
|
+
|
|
80
|
+
## Report template
|
|
81
|
+
|
|
82
|
+
File: `~/Documents/security-audits/YYYY-MM-DD-<short-kebab-slug>.md`
|
|
83
|
+
|
|
84
|
+
```markdown
|
|
85
|
+
# <Subject> — Audit
|
|
86
|
+
|
|
87
|
+
**Date:** YYYY-MM-DD
|
|
88
|
+
**Host:** the user's Mac
|
|
89
|
+
|
|
90
|
+
## <CVEs | Advisory> in scope
|
|
91
|
+
|
|
92
|
+
- **<ID or source> "<Name>"** — <one-line description>. <Affected versions or scope>.
|
|
93
|
+
|
|
94
|
+
## Audit results
|
|
95
|
+
|
|
96
|
+
| Check | Result |
|
|
97
|
+
|---|---|
|
|
98
|
+
| <Check 1> | <Result> |
|
|
99
|
+
| <Check 2> | <Result> |
|
|
100
|
+
|
|
101
|
+
## Verdict
|
|
102
|
+
|
|
103
|
+
**<Not affected. | Affected. | Partially affected.>**
|
|
104
|
+
|
|
105
|
+
- <Rationale bullet 1>
|
|
106
|
+
- <Rationale bullet 2>
|
|
107
|
+
|
|
108
|
+
## Action taken
|
|
109
|
+
|
|
110
|
+
None — diagnostic only, no files modified, no <packages installed/removed | services started/stopped | firewall rules changed>.
|
|
111
|
+
|
|
112
|
+
## Follow-ups
|
|
113
|
+
|
|
114
|
+
- <Actionable item, or "None" if truly nothing>
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Match the tone of the two existing reports in `~/Documents/security-audits/` — terse, factual, bulleted, no hedging.
|
|
118
|
+
|
|
119
|
+
## Verdict wording
|
|
120
|
+
|
|
121
|
+
- **Not affected.** — package/binary absent, or installed but patched, or not running and not exposed.
|
|
122
|
+
- **Affected.** — vulnerable version present *and* reachable by the attack vector.
|
|
123
|
+
- **Partially affected.** — present but mitigated (e.g. binary installed but service not running, or listener bound to loopback only). Spell out the mitigation in the bullets.
|
|
124
|
+
|
|
125
|
+
## When to break the read-only rule
|
|
126
|
+
|
|
127
|
+
Never on your own. If the verdict is "Affected", list the remediation command in **Follow-ups** and stop. The user runs it.
|
|
128
|
+
|
|
129
|
+
## Reference
|
|
130
|
+
|
|
131
|
+
Two existing reports in `~/Documents/security-audits/` show the expected style:
|
|
132
|
+
- `baseline-audit.md` (long-form baseline audit — different format, do not mimic)
|
|
133
|
+
- `YYYY-MM-DD-example-advisory.md` and any newer `YYYY-MM-DD-*.md` files (this is the format to match)
|
|
134
|
+
|
|
135
|
+
## Limitations
|
|
136
|
+
|
|
137
|
+
- Adapted from `davidondrej/skills`; verify local paths, tools, credentials, and agent features before acting.
|
|
138
|
+
- For commands, remote access, scheduling, browser automation, or file-changing workflows, get explicit user approval and confirm the target environment first.
|