@elizaos/skills 2.0.0-alpha.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/README.md +126 -0
- package/package.json +53 -0
- package/skills/1password/SKILL.md +70 -0
- package/skills/1password/references/cli-examples.md +29 -0
- package/skills/1password/references/get-started.md +17 -0
- package/skills/apple-notes/SKILL.md +77 -0
- package/skills/apple-reminders/SKILL.md +96 -0
- package/skills/bear-notes/SKILL.md +107 -0
- package/skills/bird/SKILL.md +224 -0
- package/skills/blogwatcher/SKILL.md +69 -0
- package/skills/blucli/SKILL.md +47 -0
- package/skills/bluebubbles/SKILL.md +131 -0
- package/skills/camsnap/SKILL.md +45 -0
- package/skills/canvas/SKILL.md +203 -0
- package/skills/clawhub/SKILL.md +77 -0
- package/skills/coding-agent/SKILL.md +284 -0
- package/skills/discord/SKILL.md +578 -0
- package/skills/eightctl/SKILL.md +50 -0
- package/skills/food-order/SKILL.md +48 -0
- package/skills/gemini/SKILL.md +43 -0
- package/skills/gifgrep/SKILL.md +79 -0
- package/skills/github/SKILL.md +77 -0
- package/skills/gog/SKILL.md +116 -0
- package/skills/goplaces/SKILL.md +52 -0
- package/skills/healthcheck/SKILL.md +245 -0
- package/skills/himalaya/SKILL.md +257 -0
- package/skills/himalaya/references/configuration.md +184 -0
- package/skills/himalaya/references/message-composition.md +199 -0
- package/skills/imsg/SKILL.md +74 -0
- package/skills/local-places/SERVER_README.md +101 -0
- package/skills/local-places/SKILL.md +102 -0
- package/skills/local-places/pyproject.toml +21 -0
- package/skills/local-places/src/local_places/__init__.py +2 -0
- package/skills/local-places/src/local_places/google_places.py +314 -0
- package/skills/local-places/src/local_places/main.py +65 -0
- package/skills/local-places/src/local_places/schemas.py +107 -0
- package/skills/mcporter/SKILL.md +61 -0
- package/skills/model-usage/SKILL.md +69 -0
- package/skills/model-usage/references/codexbar-cli.md +33 -0
- package/skills/model-usage/scripts/model_usage.py +310 -0
- package/skills/nano-banana-pro/SKILL.md +58 -0
- package/skills/nano-banana-pro/scripts/generate_image.py +184 -0
- package/skills/nano-pdf/SKILL.md +38 -0
- package/skills/notion/SKILL.md +172 -0
- package/skills/obsidian/SKILL.md +81 -0
- package/skills/openai-image-gen/SKILL.md +89 -0
- package/skills/openai-image-gen/scripts/gen.py +240 -0
- package/skills/openai-whisper/SKILL.md +38 -0
- package/skills/openai-whisper-api/SKILL.md +52 -0
- package/skills/openai-whisper-api/scripts/transcribe.sh +85 -0
- package/skills/openhue/SKILL.md +51 -0
- package/skills/oracle/SKILL.md +125 -0
- package/skills/ordercli/SKILL.md +78 -0
- package/skills/peekaboo/SKILL.md +190 -0
- package/skills/sag/SKILL.md +87 -0
- package/skills/security-ask-questions-if-underspecified/.claude-plugin/plugin.json +10 -0
- package/skills/security-ask-questions-if-underspecified/README.md +24 -0
- package/skills/security-ask-questions-if-underspecified/skills/ask-questions-if-underspecified/SKILL.md +85 -0
- package/skills/security-audit-context-building/.claude-plugin/plugin.json +10 -0
- package/skills/security-audit-context-building/README.md +58 -0
- package/skills/security-audit-context-building/commands/audit-context.md +21 -0
- package/skills/security-audit-context-building/skills/audit-context-building/SKILL.md +297 -0
- package/skills/security-audit-context-building/skills/audit-context-building/resources/COMPLETENESS_CHECKLIST.md +47 -0
- package/skills/security-audit-context-building/skills/audit-context-building/resources/FUNCTION_MICRO_ANALYSIS_EXAMPLE.md +355 -0
- package/skills/security-audit-context-building/skills/audit-context-building/resources/OUTPUT_REQUIREMENTS.md +71 -0
- package/skills/security-building-secure-contracts/.claude-plugin/plugin.json +10 -0
- package/skills/security-building-secure-contracts/README.md +241 -0
- package/skills/security-building-secure-contracts/skills/algorand-vulnerability-scanner/SKILL.md +284 -0
- package/skills/security-building-secure-contracts/skills/algorand-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +405 -0
- package/skills/security-building-secure-contracts/skills/audit-prep-assistant/SKILL.md +409 -0
- package/skills/security-building-secure-contracts/skills/cairo-vulnerability-scanner/SKILL.md +329 -0
- package/skills/security-building-secure-contracts/skills/cairo-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +722 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/SKILL.md +218 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/ASSESSMENT_CRITERIA.md +355 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/EXAMPLE_REPORT.md +248 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/REPORT_FORMAT.md +33 -0
- package/skills/security-building-secure-contracts/skills/cosmos-vulnerability-scanner/SKILL.md +334 -0
- package/skills/security-building-secure-contracts/skills/cosmos-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +740 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/SKILL.md +252 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/ASSESSMENT_AREAS.md +329 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/DELIVERABLES.md +118 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/EXAMPLE_REPORT.md +298 -0
- package/skills/security-building-secure-contracts/skills/secure-workflow-guide/SKILL.md +161 -0
- package/skills/security-building-secure-contracts/skills/secure-workflow-guide/resources/EXAMPLE_REPORT.md +279 -0
- package/skills/security-building-secure-contracts/skills/secure-workflow-guide/resources/WORKFLOW_STEPS.md +132 -0
- package/skills/security-building-secure-contracts/skills/solana-vulnerability-scanner/SKILL.md +389 -0
- package/skills/security-building-secure-contracts/skills/solana-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +669 -0
- package/skills/security-building-secure-contracts/skills/substrate-vulnerability-scanner/SKILL.md +298 -0
- package/skills/security-building-secure-contracts/skills/substrate-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +791 -0
- package/skills/security-building-secure-contracts/skills/token-integration-analyzer/SKILL.md +362 -0
- package/skills/security-building-secure-contracts/skills/token-integration-analyzer/resources/ASSESSMENT_CATEGORIES.md +571 -0
- package/skills/security-building-secure-contracts/skills/token-integration-analyzer/resources/REPORT_TEMPLATES.md +141 -0
- package/skills/security-building-secure-contracts/skills/ton-vulnerability-scanner/SKILL.md +388 -0
- package/skills/security-building-secure-contracts/skills/ton-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +595 -0
- package/skills/security-burpsuite-project-parser/.claude-plugin/plugin.json +10 -0
- package/skills/security-burpsuite-project-parser/README.md +103 -0
- package/skills/security-burpsuite-project-parser/commands/burp-search.md +18 -0
- package/skills/security-burpsuite-project-parser/skills/SKILL.md +358 -0
- package/skills/security-burpsuite-project-parser/skills/scripts/burp-search.sh +99 -0
- package/skills/security-claude-in-chrome-troubleshooting/.claude-plugin/plugin.json +8 -0
- package/skills/security-claude-in-chrome-troubleshooting/README.md +31 -0
- package/skills/security-claude-in-chrome-troubleshooting/skills/claude-in-chrome-troubleshooting/SKILL.md +251 -0
- package/skills/security-constant-time-analysis/.claude-plugin/plugin.json +9 -0
- package/skills/security-constant-time-analysis/README.md +381 -0
- package/skills/security-constant-time-analysis/commands/ct-check.md +20 -0
- package/skills/security-constant-time-analysis/ct_analyzer/__init__.py +49 -0
- package/skills/security-constant-time-analysis/ct_analyzer/analyzer.py +1284 -0
- package/skills/security-constant-time-analysis/ct_analyzer/script_analyzers.py +3081 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/__init__.py +1 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_analyzer.py +1397 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/bn_excerpt.js +205 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/decompose_constant_time.c +181 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/decompose_vulnerable.c +74 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/decompose_vulnerable.go +78 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/decompose_vulnerable.rs +92 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.cs +174 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.java +161 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.kt +181 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.php +140 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.py +252 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.rb +188 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.swift +199 -0
- package/skills/security-constant-time-analysis/ct_analyzer/tests/test_samples/vulnerable.ts +154 -0
- package/skills/security-constant-time-analysis/pyproject.toml +52 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/README.md +90 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/SKILL.md +219 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/compiled.md +129 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/javascript.md +136 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/kotlin.md +252 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/php.md +172 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/python.md +179 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/ruby.md +198 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/swift.md +288 -0
- package/skills/security-constant-time-analysis/skills/constant-time-analysis/references/vm-compiled.md +354 -0
- package/skills/security-constant-time-analysis/uv.lock +8 -0
- package/skills/security-culture-index/.claude-plugin/plugin.json +8 -0
- package/skills/security-culture-index/README.md +79 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/SKILL.md +293 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/anti-patterns.md +255 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/conversation-starters.md +408 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/interview-trait-signals.md +253 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/motivators.md +158 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/patterns-archetypes.md +147 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/primary-traits.md +307 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/secondary-traits.md +228 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/references/team-composition.md +148 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/check_deps.py +108 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/culture_index/__init__.py +20 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/culture_index/constants.py +122 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/culture_index/extract.py +187 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/culture_index/models.py +16 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/culture_index/opencv_extractor.py +520 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/extract_pdf.py +237 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/scripts/pyproject.toml +18 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/templates/burnout-report.md +113 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/templates/comparison-report.md +103 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/templates/hiring-profile.md +127 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/templates/individual-report.md +85 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/templates/predicted-profile.md +165 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/templates/team-report.md +109 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/analyze-team.md +188 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/coach-manager.md +267 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/compare-profiles.md +188 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/define-hiring-profile.md +220 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/detect-burnout.md +206 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/extract-from-pdf.md +121 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/interpret-individual.md +183 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/interview-debrief.md +234 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/mediate-conflict.md +306 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/plan-onboarding.md +322 -0
- package/skills/security-culture-index/skills/interpreting-culture-index/workflows/predict-from-interview.md +250 -0
- package/skills/security-differential-review/.claude-plugin/plugin.json +10 -0
- package/skills/security-differential-review/README.md +109 -0
- package/skills/security-differential-review/commands/diff-review.md +21 -0
- package/skills/security-differential-review/skills/differential-review/SKILL.md +220 -0
- package/skills/security-differential-review/skills/differential-review/adversarial.md +203 -0
- package/skills/security-differential-review/skills/differential-review/methodology.md +234 -0
- package/skills/security-differential-review/skills/differential-review/patterns.md +300 -0
- package/skills/security-differential-review/skills/differential-review/reporting.md +369 -0
- package/skills/security-dwarf-expert/.claude-plugin/plugin.json +10 -0
- package/skills/security-dwarf-expert/README.md +38 -0
- package/skills/security-dwarf-expert/skills/dwarf-expert/SKILL.md +93 -0
- package/skills/security-dwarf-expert/skills/dwarf-expert/reference/coding.md +31 -0
- package/skills/security-dwarf-expert/skills/dwarf-expert/reference/dwarfdump.md +50 -0
- package/skills/security-dwarf-expert/skills/dwarf-expert/reference/readelf.md +8 -0
- package/skills/security-entry-point-analyzer/.claude-plugin/plugin.json +10 -0
- package/skills/security-entry-point-analyzer/README.md +74 -0
- package/skills/security-entry-point-analyzer/commands/entry-points.md +18 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/SKILL.md +251 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/cosmwasm.md +182 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/move-aptos.md +107 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/move-sui.md +87 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/solana.md +155 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/solidity.md +135 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/ton.md +185 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/vyper.md +141 -0
- package/skills/security-firebase-apk-scanner/.claude-plugin/plugin.json +10 -0
- package/skills/security-firebase-apk-scanner/README.md +85 -0
- package/skills/security-firebase-apk-scanner/commands/scan-apk.md +18 -0
- package/skills/security-firebase-apk-scanner/scanner.sh +1408 -0
- package/skills/security-firebase-apk-scanner/skills/firebase-apk-scanner/SKILL.md +197 -0
- package/skills/security-firebase-apk-scanner/skills/firebase-apk-scanner/references/vulnerabilities.md +803 -0
- package/skills/security-fix-review/.claude-plugin/plugin.json +13 -0
- package/skills/security-fix-review/README.md +118 -0
- package/skills/security-fix-review/commands/fix-review.md +24 -0
- package/skills/security-fix-review/skills/fix-review/SKILL.md +264 -0
- package/skills/security-fix-review/skills/fix-review/references/bug-detection.md +408 -0
- package/skills/security-fix-review/skills/fix-review/references/finding-matching.md +298 -0
- package/skills/security-fix-review/skills/fix-review/references/report-parsing.md +398 -0
- package/skills/security-insecure-defaults/.claude-plugin/plugin.json +10 -0
- package/skills/security-insecure-defaults/README.md +45 -0
- package/skills/security-insecure-defaults/skills/insecure-defaults/SKILL.md +117 -0
- package/skills/security-insecure-defaults/skills/insecure-defaults/references/examples.md +409 -0
- package/skills/security-modern-python/.claude-plugin/plugin.json +10 -0
- package/skills/security-modern-python/README.md +58 -0
- package/skills/security-modern-python/hooks/hooks.json +16 -0
- package/skills/security-modern-python/hooks/intercept-legacy-python.bats +388 -0
- package/skills/security-modern-python/hooks/intercept-legacy-python.sh +109 -0
- package/skills/security-modern-python/hooks/test_helper.bash +75 -0
- package/skills/security-modern-python/skills/modern-python/SKILL.md +333 -0
- package/skills/security-modern-python/skills/modern-python/references/dependabot.md +43 -0
- package/skills/security-modern-python/skills/modern-python/references/migration-checklist.md +141 -0
- package/skills/security-modern-python/skills/modern-python/references/pep723-scripts.md +259 -0
- package/skills/security-modern-python/skills/modern-python/references/prek.md +211 -0
- package/skills/security-modern-python/skills/modern-python/references/pyproject.md +254 -0
- package/skills/security-modern-python/skills/modern-python/references/ruff-config.md +240 -0
- package/skills/security-modern-python/skills/modern-python/references/security-setup.md +255 -0
- package/skills/security-modern-python/skills/modern-python/references/testing.md +284 -0
- package/skills/security-modern-python/skills/modern-python/references/uv-commands.md +200 -0
- package/skills/security-modern-python/skills/modern-python/templates/dependabot.yml +36 -0
- package/skills/security-modern-python/skills/modern-python/templates/pre-commit-config.yaml +66 -0
- package/skills/security-property-based-testing/.claude-plugin/plugin.json +9 -0
- package/skills/security-property-based-testing/README.md +47 -0
- package/skills/security-property-based-testing/skills/property-based-testing/README.md +88 -0
- package/skills/security-property-based-testing/skills/property-based-testing/SKILL.md +109 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/design.md +191 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/generating.md +200 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/libraries.md +130 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/refactoring.md +181 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/reviewing.md +209 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/strategies.md +124 -0
- package/skills/semgrep-rule-creator/.claude-plugin/plugin.json +8 -0
- package/skills/semgrep-rule-creator/README.md +43 -0
- package/skills/semgrep-rule-creator/commands/semgrep-rule.md +26 -0
- package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/SKILL.md +168 -0
- package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/references/quick-reference.md +203 -0
- package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/references/workflow.md +240 -0
- package/skills/semgrep-rule-variant-creator/.claude-plugin/plugin.json +9 -0
- package/skills/semgrep-rule-variant-creator/README.md +86 -0
- package/skills/semgrep-rule-variant-creator/skills/semgrep-rule-variant-creator/SKILL.md +205 -0
- package/skills/semgrep-rule-variant-creator/skills/semgrep-rule-variant-creator/references/applicability-analysis.md +250 -0
- package/skills/semgrep-rule-variant-creator/skills/semgrep-rule-variant-creator/references/language-syntax-guide.md +324 -0
- package/skills/semgrep-rule-variant-creator/skills/semgrep-rule-variant-creator/references/workflow.md +518 -0
- package/skills/session-logs/SKILL.md +115 -0
- package/skills/sharp-edges/.claude-plugin/plugin.json +10 -0
- package/skills/sharp-edges/README.md +48 -0
- package/skills/sharp-edges/skills/sharp-edges/SKILL.md +292 -0
- package/skills/sharp-edges/skills/sharp-edges/references/auth-patterns.md +252 -0
- package/skills/sharp-edges/skills/sharp-edges/references/case-studies.md +274 -0
- package/skills/sharp-edges/skills/sharp-edges/references/config-patterns.md +333 -0
- package/skills/sharp-edges/skills/sharp-edges/references/crypto-apis.md +190 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-c.md +205 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-csharp.md +285 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-go.md +270 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-java.md +263 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-javascript.md +269 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-kotlin.md +265 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-php.md +245 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-python.md +274 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-ruby.md +273 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-rust.md +272 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-swift.md +287 -0
- package/skills/sharp-edges/skills/sharp-edges/references/language-specific.md +588 -0
- package/skills/sherpa-onnx-tts/SKILL.md +103 -0
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
- package/skills/skill-creator/SKILL.md +370 -0
- package/skills/skill-creator/license.txt +202 -0
- package/skills/skill-creator/scripts/init_skill.py +378 -0
- package/skills/skill-creator/scripts/package_skill.py +111 -0
- package/skills/skill-creator/scripts/quick_validate.py +101 -0
- package/skills/slack/SKILL.md +144 -0
- package/skills/songsee/SKILL.md +49 -0
- package/skills/sonoscli/SKILL.md +46 -0
- package/skills/spec-to-code-compliance/.claude-plugin/plugin.json +10 -0
- package/skills/spec-to-code-compliance/README.md +67 -0
- package/skills/spec-to-code-compliance/commands/spec-compliance.md +22 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/SKILL.md +349 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/COMPLETENESS_CHECKLIST.md +69 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/IR_EXAMPLES.md +417 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/OUTPUT_REQUIREMENTS.md +105 -0
- package/skills/spotify-player/SKILL.md +64 -0
- package/skills/static-analysis/.claude-plugin/plugin.json +8 -0
- package/skills/static-analysis/README.md +59 -0
- package/skills/static-analysis/skills/codeql/SKILL.md +315 -0
- package/skills/static-analysis/skills/sarif-parsing/SKILL.md +479 -0
- package/skills/static-analysis/skills/sarif-parsing/resources/jq-queries.md +162 -0
- package/skills/static-analysis/skills/sarif-parsing/resources/sarif_helpers.py +331 -0
- package/skills/static-analysis/skills/semgrep/SKILL.md +337 -0
- package/skills/summarize/SKILL.md +87 -0
- package/skills/testing-handbook-skills/.claude-plugin/plugin.json +8 -0
- package/skills/testing-handbook-skills/README.md +241 -0
- package/skills/testing-handbook-skills/scripts/pyproject.toml +8 -0
- package/skills/testing-handbook-skills/scripts/validate-skills.py +657 -0
- package/skills/testing-handbook-skills/skills/address-sanitizer/SKILL.md +341 -0
- package/skills/testing-handbook-skills/skills/aflpp/SKILL.md +640 -0
- package/skills/testing-handbook-skills/skills/atheris/SKILL.md +515 -0
- package/skills/testing-handbook-skills/skills/cargo-fuzz/SKILL.md +454 -0
- package/skills/testing-handbook-skills/skills/codeql/SKILL.md +549 -0
- package/skills/testing-handbook-skills/skills/constant-time-testing/SKILL.md +507 -0
- package/skills/testing-handbook-skills/skills/coverage-analysis/SKILL.md +607 -0
- package/skills/testing-handbook-skills/skills/fuzzing-dictionary/SKILL.md +297 -0
- package/skills/testing-handbook-skills/skills/fuzzing-obstacles/SKILL.md +426 -0
- package/skills/testing-handbook-skills/skills/harness-writing/SKILL.md +614 -0
- package/skills/testing-handbook-skills/skills/libafl/SKILL.md +625 -0
- package/skills/testing-handbook-skills/skills/libfuzzer/SKILL.md +795 -0
- package/skills/testing-handbook-skills/skills/ossfuzz/SKILL.md +426 -0
- package/skills/testing-handbook-skills/skills/ruzzy/SKILL.md +443 -0
- package/skills/testing-handbook-skills/skills/semgrep/SKILL.md +601 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/SKILL.md +372 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/agent-prompt.md +280 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/discovery.md +452 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/domain-skill.md +504 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/fuzzer-skill.md +454 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/technique-skill.md +527 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/tool-skill.md +366 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/testing.md +482 -0
- package/skills/testing-handbook-skills/skills/wycheproof/SKILL.md +533 -0
- package/skills/things-mac/SKILL.md +86 -0
- package/skills/tmux/SKILL.md +135 -0
- package/skills/tmux/scripts/find-sessions.sh +112 -0
- package/skills/tmux/scripts/wait-for-text.sh +83 -0
- package/skills/trello/SKILL.md +95 -0
- package/skills/variant-analysis/.claude-plugin/plugin.json +8 -0
- package/skills/variant-analysis/README.md +41 -0
- package/skills/variant-analysis/commands/variants.md +23 -0
- package/skills/variant-analysis/skills/variant-analysis/METHODOLOGY.md +327 -0
- package/skills/variant-analysis/skills/variant-analysis/SKILL.md +142 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/cpp.ql +119 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/go.ql +69 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/java.ql +71 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/javascript.ql +63 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/python.ql +80 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/cpp.yaml +98 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/go.yaml +63 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/java.yaml +61 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/javascript.yaml +60 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/python.yaml +72 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/variant-report-template.md +75 -0
- package/skills/video-frames/SKILL.md +46 -0
- package/skills/video-frames/scripts/frame.sh +81 -0
- package/skills/voice-call/SKILL.md +45 -0
- package/skills/wacli/SKILL.md +72 -0
- package/skills/weather/SKILL.md +54 -0
- package/skills/yara-authoring/.claude-plugin/plugin.json +9 -0
- package/skills/yara-authoring/README.md +131 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/SKILL.md +645 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/examples/MAL_Mac_ProtonRAT_Jan25.yar +99 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/examples/MAL_NPM_SupplyChain_Jan25.yar +170 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/examples/MAL_Win_Remcos_Jan25.yar +103 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/examples/SUSP_CRX_SuspiciousPermissions.yar +134 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/examples/SUSP_JS_Obfuscation_Jan25.yar +185 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/references/crx-module.md +214 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/references/dex-module.md +383 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/references/performance.md +333 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/references/strings.md +433 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/references/style-guide.md +257 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/references/testing.md +399 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/scripts/atom_analyzer.py +526 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/scripts/pyproject.toml +25 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/scripts/yara_lint.py +631 -0
- package/skills/yara-authoring/skills/yara-rule-authoring/workflows/rule-development.md +493 -0
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
<overview>
|
|
2
|
+
|
|
3
|
+
Secondary traits (EU, L, I) supplement the primary traits. L and I are unique: they use **absolute values** and CAN be compared directly between people.
|
|
4
|
+
|
|
5
|
+
</overview>
|
|
6
|
+
|
|
7
|
+
<trait name="EU" label="Energy Units">
|
|
8
|
+
|
|
9
|
+
Measures **mental stamina** - how long a person can work before needing a short 5-10 minute mental break to recharge. If they don't take that break, they operate in a mentally fatigued state (frustrated, lacking clarity, missing things).
|
|
10
|
+
|
|
11
|
+
<important_note>
|
|
12
|
+
EU is NOT:
|
|
13
|
+
- Physical energy
|
|
14
|
+
- Work ethic
|
|
15
|
+
- Intelligence or capability
|
|
16
|
+
</important_note>
|
|
17
|
+
|
|
18
|
+
<interpretation>
|
|
19
|
+
|
|
20
|
+
| Range | Label | Management Approach |
|
|
21
|
+
|-------|-------|---------------------|
|
|
22
|
+
| 0-10 | **Potentially avoidant** | Flag for review - may need hand-scoring |
|
|
23
|
+
| 11-19 | Lower EU | Prioritize important work first thing in morning, earlier in week |
|
|
24
|
+
| 20-40 | Most common for executives | Regular short breaks throughout day (4-5 per 10-hour day) |
|
|
25
|
+
| 41-60 | Above average | Longer sustained focus possible |
|
|
26
|
+
| 61-80 | High ("energizer bunnies") | As mentally fresh at 9pm as 9am; watch for late-night emails |
|
|
27
|
+
|
|
28
|
+
</interpretation>
|
|
29
|
+
|
|
30
|
+
<avoidant_responses>
|
|
31
|
+
|
|
32
|
+
If EU is 0-10, flag for review. Common causes:
|
|
33
|
+
1. Didn't read instructions - selected one word per column
|
|
34
|
+
2. Interrupted before completing
|
|
35
|
+
3. Took survey in non-native language
|
|
36
|
+
4. Overly guarded/skeptical - trust issue ("How will this be used against me?")
|
|
37
|
+
5. Below 8th grade reading level
|
|
38
|
+
|
|
39
|
+
**If multiple direct reports return avoidant:** Look at the manager - "Why do you have a culture of fear or mistrust?"
|
|
40
|
+
|
|
41
|
+
</avoidant_responses>
|
|
42
|
+
|
|
43
|
+
<energy_drain>
|
|
44
|
+
|
|
45
|
+
**Critical insight**: Living in your TOP graph (natural traits) does NOT drain EU - it's effortless.
|
|
46
|
+
|
|
47
|
+
What DRAINS EU is behavior modification - when your bottom graph differs from your top graph, you're expending mental energy to "act" differently than you're wired.
|
|
48
|
+
|
|
49
|
+
</energy_drain>
|
|
50
|
+
|
|
51
|
+
<utilization_formula>
|
|
52
|
+
|
|
53
|
+
**Compare EU between Survey and Job using:**
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
Energy Utilization = (Job EU / Survey EU) × 100
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
| Utilization | Signal | Meaning |
|
|
60
|
+
|-------------|--------|---------|
|
|
61
|
+
| 70-130% | Healthy | Sustainable workload alignment |
|
|
62
|
+
| >130% | **STRESS** | Good stress (self-induced caring) OR bad stress (overutilization). Burnout risk. |
|
|
63
|
+
| <70% | **FRUSTRATION** | Disengaged, apathetic, going through motions, underutilized, bored. **Flight risk.** |
|
|
64
|
+
|
|
65
|
+
**Example**: Survey EU = 41, Job EU = 31. Utilization = 31/41 = 75%. Approaching check-engine-light zone for frustration/disengagement.
|
|
66
|
+
|
|
67
|
+
</utilization_formula>
|
|
68
|
+
|
|
69
|
+
<stress_types>
|
|
70
|
+
|
|
71
|
+
**>130% Stress Types:**
|
|
72
|
+
- **Good stress (self-induced)**: "I really care about this company, I love what I do" - but still potential for burnout and health issues if sustained 3-6 months
|
|
73
|
+
- **Bad stress (overutilization)**: Loaded with too much work, or work requires too much behavior modification
|
|
74
|
+
|
|
75
|
+
**<70% Frustration:** Work doesn't quite fit them. Might have a lot to do, but the work doesn't match their traits. Not punching eject yet, but getting close.
|
|
76
|
+
|
|
77
|
+
</stress_types>
|
|
78
|
+
|
|
79
|
+
<resurvey_cadence>
|
|
80
|
+
|
|
81
|
+
Job behaviors should be resurveyed biannually. Don't make decisions on stale data (18+ months old).
|
|
82
|
+
|
|
83
|
+
</resurvey_cadence>
|
|
84
|
+
|
|
85
|
+
</trait>
|
|
86
|
+
|
|
87
|
+
<trait name="L" color="purple" label="Logic">
|
|
88
|
+
|
|
89
|
+
Measures how a person receives and processes new information - the first filter when receiving new information, especially sensitive information. **Also measures self-esteem** - the lower the logic, the lower the self-esteem.
|
|
90
|
+
|
|
91
|
+
<important_note>
|
|
92
|
+
L uses **absolute values**. You CAN compare L scores directly between people.
|
|
93
|
+
Logic 8 means "High Logic" regardless of arrow position.
|
|
94
|
+
</important_note>
|
|
95
|
+
|
|
96
|
+
<interpretation>
|
|
97
|
+
|
|
98
|
+
| Score | Label | Behavior |
|
|
99
|
+
|-------|-------|----------|
|
|
100
|
+
| 0-2 | Low Logic | Emotional, sensitive, heartfelt, passionate; emotions filter information first |
|
|
101
|
+
| 3-7 | Normative | Emotionally available competency - balanced head and heart working in tandem |
|
|
102
|
+
| 8-10 | High Logic | Rational, logical, black/white; high emotional compartmentalization; detach in the moment |
|
|
103
|
+
|
|
104
|
+
</interpretation>
|
|
105
|
+
|
|
106
|
+
<low_logic range="0-2">
|
|
107
|
+
|
|
108
|
+
**Characteristics:**
|
|
109
|
+
- Lack emotional control in the moment - first response may be chemically induced, not fact-based
|
|
110
|
+
- Introduces unpredictability - irrational in-the-moment decision making
|
|
111
|
+
- Can have high self-confidence (A) but low self-esteem simultaneously
|
|
112
|
+
|
|
113
|
+
**Benefit:** Emotional attachment can drive extraordinary results (Olympians, entrepreneurs)
|
|
114
|
+
|
|
115
|
+
**Managing Low Logic:**
|
|
116
|
+
- Don't say "calm down"
|
|
117
|
+
- Create distance - "Let's talk at 4pm today"
|
|
118
|
+
- They'll meet you as an adult once emotions settle
|
|
119
|
+
|
|
120
|
+
</low_logic>
|
|
121
|
+
|
|
122
|
+
<normative_logic range="3-7">
|
|
123
|
+
|
|
124
|
+
- Natural EQ - emotionally available but not governed by emotions
|
|
125
|
+
- 3-4: Lead more heart than head, but not disconnected from rational thought
|
|
126
|
+
- 5: Dead smack in the middle
|
|
127
|
+
- 6-7: Lead more head than heart
|
|
128
|
+
|
|
129
|
+
</normative_logic>
|
|
130
|
+
|
|
131
|
+
<high_logic range="8-10">
|
|
132
|
+
|
|
133
|
+
**Characteristics:**
|
|
134
|
+
- Clear thinking when things are hitting the fan
|
|
135
|
+
- Complete separation from emotions; tough situations don't phase them
|
|
136
|
+
|
|
137
|
+
**Watch:** Can come across cold, detached, insensitive. "Toughens the dots up."
|
|
138
|
+
|
|
139
|
+
**Combination note:** High B + Logic 10 = outgoing but can say insensitive things (a bit of an "ahole factor")
|
|
140
|
+
|
|
141
|
+
**Combination note:** Low B + Logic 10 = "sensitivity is not going to be your strong suit"
|
|
142
|
+
|
|
143
|
+
</high_logic>
|
|
144
|
+
|
|
145
|
+
<job_behavior_signal>
|
|
146
|
+
|
|
147
|
+
When a high logic person (9-10) drops their logic in job behaviors (to 4-5), it's almost always an indication of **people-related challenges**. They're trying to be more emotionally open because they've been told they're too cold/detached.
|
|
148
|
+
|
|
149
|
+
</job_behavior_signal>
|
|
150
|
+
|
|
151
|
+
</trait>
|
|
152
|
+
|
|
153
|
+
<trait name="I" color="cyan" label="Ingenuity">
|
|
154
|
+
|
|
155
|
+
Measures raw inventiveness and spatial reasoning - how detached from reality someone thinks. "Clever or original thinking."
|
|
156
|
+
|
|
157
|
+
<important_note>
|
|
158
|
+
I uses **absolute values**. You CAN compare I scores directly between people.
|
|
159
|
+
Ingenuity 8 means "High Ingenuity" regardless of arrow position.
|
|
160
|
+
</important_note>
|
|
161
|
+
|
|
162
|
+
<interpretation>
|
|
163
|
+
|
|
164
|
+
| Score | Label | Behavior |
|
|
165
|
+
|-------|-------|----------|
|
|
166
|
+
| 0-2 | Low Ingenuity | **Most common score**. Linear, practical, grounded. If it doesn't exist, need to touch/see/feel/experience it. |
|
|
167
|
+
| 3-6 | Occasional | Occasional moments of inspiration - looking at things in a more layered, original way. |
|
|
168
|
+
| 7-10 | High Ingenuity | Ingenious, inventive, eccentric, multidimensional thinkers. Detached from reality. |
|
|
169
|
+
|
|
170
|
+
</interpretation>
|
|
171
|
+
|
|
172
|
+
<the_pen_test>
|
|
173
|
+
|
|
174
|
+
Ask what a pen is:
|
|
175
|
+
- Low ingenuity (0-2): "It's a pen."
|
|
176
|
+
- High ingenuity (9): "It's how we pump oil in Texas. A window into another world. Executive decision-making. A weapon."
|
|
177
|
+
- Low ingenuity response to high ingenuity: "No, moron. It's a freaking pen."
|
|
178
|
+
|
|
179
|
+
</the_pen_test>
|
|
180
|
+
|
|
181
|
+
<high_ingenuity range="7-10">
|
|
182
|
+
|
|
183
|
+
**Where it helps:**
|
|
184
|
+
- New business lines and revenue opportunities
|
|
185
|
+
- Creative proposals
|
|
186
|
+
- R&D
|
|
187
|
+
- Creative marketing
|
|
188
|
+
- Don't see limitations - experimental, try unconventional approaches
|
|
189
|
+
|
|
190
|
+
**Watch for:**
|
|
191
|
+
- Can be distracting with constant weird ideas
|
|
192
|
+
- Not all ideas monetizable - need A trait to commercialize
|
|
193
|
+
- Especially disruptive if in position to initiate ideas
|
|
194
|
+
|
|
195
|
+
</high_ingenuity>
|
|
196
|
+
|
|
197
|
+
<low_ingenuity range="0-2">
|
|
198
|
+
|
|
199
|
+
**Most common score.** Not a negative - indicates practical, grounded thinking.
|
|
200
|
+
|
|
201
|
+
**Note:** Single-tail IQ correlation. High I → likely high IQ. However, low I does NOT mean low IQ - plenty of certified geniuses have low ingenuity scores.
|
|
202
|
+
|
|
203
|
+
</low_ingenuity>
|
|
204
|
+
|
|
205
|
+
<job_behavior_signal>
|
|
206
|
+
|
|
207
|
+
When a low ingenuity person raises their ingenuity in job behaviors, the traditional approach is not working. They're trying to figure out a more inventive way to handle something they're stuck on.
|
|
208
|
+
|
|
209
|
+
</job_behavior_signal>
|
|
210
|
+
|
|
211
|
+
</trait>
|
|
212
|
+
|
|
213
|
+
<confidence_sources>
|
|
214
|
+
|
|
215
|
+
Culture Index identifies three sources of confidence, each tied to a trait:
|
|
216
|
+
|
|
217
|
+
| Trait | Confidence Source | Description |
|
|
218
|
+
|-------|-------------------|-------------|
|
|
219
|
+
| High A | Inner self-confidence | Belief in self regardless of circumstances. "I believe I'll win." Can be in a hitting slump and picks themselves up by bootstraps. |
|
|
220
|
+
| High B | Social confidence | Confidence from ability to influence and connect. If people don't respond, starts questioning self. High A + High B can fall back on A's self-confidence. |
|
|
221
|
+
| High D | Knowledge/Expertise confidence | "If I know it, I know it." Confidence rooted in mastery and competency. Great vetters. |
|
|
222
|
+
|
|
223
|
+
**Confidence recovery:**
|
|
224
|
+
- High A's recover by getting back in the winner's circle (stack easy wins)
|
|
225
|
+
- High B's recover through relationship reconnection
|
|
226
|
+
- High D's recover through acquiring more knowledge/training
|
|
227
|
+
|
|
228
|
+
</confidence_sources>
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
<overview>
|
|
2
|
+
|
|
3
|
+
Every team needs the right mix of Gas, Brake, and Glue for its current needs. The ratio depends on the season of business, the function, and current gaps.
|
|
4
|
+
|
|
5
|
+
</overview>
|
|
6
|
+
|
|
7
|
+
<gas_brake_glue>
|
|
8
|
+
|
|
9
|
+
| Role | Trait | Function | Too Little | Too Much |
|
|
10
|
+
|------|-------|----------|------------|----------|
|
|
11
|
+
| **Gas Pedal** | High A | Growth, risk-taking, innovation, driving results | Stagnation, waiting around, no decisive action | Chaos, recklessness, burnout |
|
|
12
|
+
| **Brake Pedal** | High D | Risk aversion, quality control, compliance, finishing | Erosion, mistakes, lawsuits, quality issues | Paralysis, perfectionism, can't ship |
|
|
13
|
+
| **Glue** | High B | Relationships, morale, optimism, "fun part of the zoo" | Root canal culture, morale problems, no fun | All talk, no action, groupthink |
|
|
14
|
+
|
|
15
|
+
</gas_brake_glue>
|
|
16
|
+
|
|
17
|
+
<diagnostic_questions>
|
|
18
|
+
|
|
19
|
+
| Symptom | Likely Gap |
|
|
20
|
+
|---------|------------|
|
|
21
|
+
| Lacking growth, decisive action, or strategic problem-solving | Not enough high A (Gas) |
|
|
22
|
+
| Morale sucks, culture feels like a root canal, no fun | Not enough high B (Glue) |
|
|
23
|
+
| Quality erosion, mistakes, compliance issues | Not enough high D (Brake) |
|
|
24
|
+
| Chaos, recklessness, burnout, no follow-through | Too much Gas, not enough Brake |
|
|
25
|
+
| Paralysis, perfectionism, can't ship anything | Too much Brake, not enough Gas |
|
|
26
|
+
| All talk, no action, groupthink, avoiding hard decisions | Too much Glue, not enough Gas |
|
|
27
|
+
|
|
28
|
+
</diagnostic_questions>
|
|
29
|
+
|
|
30
|
+
<business_season>
|
|
31
|
+
|
|
32
|
+
The ideal balance depends on what the team/company needs now:
|
|
33
|
+
|
|
34
|
+
| Season | Priority | What You Need |
|
|
35
|
+
|--------|----------|---------------|
|
|
36
|
+
| **High-growth / Turnaround** | Gas | Drivers and risk-takers. High A's who will push through. |
|
|
37
|
+
| **Consolidation / Stability** | Brake | Quality and consistency. High D's who ensure nothing breaks. |
|
|
38
|
+
| **Culture Building** | Glue | Relationship builders. High B's who create positive environment. |
|
|
39
|
+
| **Complex Operations** | Brake + Glue | Precision and collaboration. Need both quality control and team cohesion. |
|
|
40
|
+
| **Innovation / R&D** | Gas + Low D | Risk-takers who experiment. High A + Low D = willingness to fail fast. |
|
|
41
|
+
| **Compliance-Heavy** | Brake | High D's who follow rules precisely. Risk aversion is a feature. |
|
|
42
|
+
|
|
43
|
+
</business_season>
|
|
44
|
+
|
|
45
|
+
<function_needs>
|
|
46
|
+
|
|
47
|
+
Different functions naturally need different balances:
|
|
48
|
+
|
|
49
|
+
| Function | Primary Need | Why |
|
|
50
|
+
|----------|-------------|-----|
|
|
51
|
+
| Sales | Gas (High A) | Drive results, close deals, push through objections |
|
|
52
|
+
| Engineering | Brake (High D) | Quality code, attention to detail, systematic approach |
|
|
53
|
+
| Customer Success | Glue (High B) | Relationships, retention, advocacy |
|
|
54
|
+
| Operations | Brake (High D) | Consistency, reliability, process adherence |
|
|
55
|
+
| Marketing (Creative) | Gas + Low D | Innovation, experimentation, bold ideas |
|
|
56
|
+
| Finance | Brake (High D) | Accuracy, compliance, risk management |
|
|
57
|
+
| HR | Glue (High B) | Culture, relationships, employee advocacy |
|
|
58
|
+
| Executive Team | Balanced | Need all three: drive (Gas), quality (Brake), culture (Glue) |
|
|
59
|
+
|
|
60
|
+
</function_needs>
|
|
61
|
+
|
|
62
|
+
<c_trait_team_impact>
|
|
63
|
+
|
|
64
|
+
C (Pace/Patience) affects team dynamics beyond Gas/Brake/Glue:
|
|
65
|
+
|
|
66
|
+
| Team Pattern | Implication |
|
|
67
|
+
|--------------|-------------|
|
|
68
|
+
| Mostly Low C | Fast-moving, urgent, may create unnecessary chaos. Need someone to slow things down occasionally. |
|
|
69
|
+
| Mostly High C | Steady, patient, but may resist change. Need someone to push urgency when required. |
|
|
70
|
+
| Mixed C | Natural tension between fast and slow movers. Can be healthy friction if managed. |
|
|
71
|
+
|
|
72
|
+
**Considerations:**
|
|
73
|
+
- If major projects require urgent pivots → need some Low C
|
|
74
|
+
- If major projects require sustained focus → need some High C
|
|
75
|
+
- Pairing Low C with High C can create complementary partnerships (one pushes, one steadies)
|
|
76
|
+
|
|
77
|
+
</c_trait_team_impact>
|
|
78
|
+
|
|
79
|
+
<a_vs_b_team_balance>
|
|
80
|
+
|
|
81
|
+
Team-wide task vs people orientation:
|
|
82
|
+
|
|
83
|
+
| Pattern | Implication |
|
|
84
|
+
|---------|-------------|
|
|
85
|
+
| A > B (most people) | Task-focused, results-driven. May neglect relationships and culture. Risk of burnout and turnover. |
|
|
86
|
+
| B > A (most people) | People-focused, harmonious. May avoid tough decisions and underperform on results. |
|
|
87
|
+
| Mixed A/B | Healthy tension. Task drivers balanced by relationship builders. |
|
|
88
|
+
|
|
89
|
+
</a_vs_b_team_balance>
|
|
90
|
+
|
|
91
|
+
<hiring_to_fill_gaps>
|
|
92
|
+
|
|
93
|
+
When hiring to fill a gap, specify the ideal profile:
|
|
94
|
+
|
|
95
|
+
**Gap: Not enough Gas**
|
|
96
|
+
```
|
|
97
|
+
Ideal Hire Pattern:
|
|
98
|
+
- A: High (right of arrow) - drives results, takes initiative
|
|
99
|
+
- B: Any (based on role) - depends on whether role is people-facing
|
|
100
|
+
- C: Low preferred - urgency and pace
|
|
101
|
+
- D: Any (consider existing Brake capacity)
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**Gap: Not enough Brake**
|
|
105
|
+
```
|
|
106
|
+
Ideal Hire Pattern:
|
|
107
|
+
- A: Any - Low A + High D = specialist optimizer
|
|
108
|
+
- B: Any (based on role)
|
|
109
|
+
- C: High preferred - patience for detailed work
|
|
110
|
+
- D: High (right of arrow) - quality focus, follow-through
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Gap: Not enough Glue**
|
|
114
|
+
```
|
|
115
|
+
Ideal Hire Pattern:
|
|
116
|
+
- A: Any - Low A + High B = collaborative culture builder
|
|
117
|
+
- B: High (right of arrow) - relationship builder
|
|
118
|
+
- C: Any (based on role pace)
|
|
119
|
+
- D: Any
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
</hiring_to_fill_gaps>
|
|
123
|
+
|
|
124
|
+
<conflict_pairs>
|
|
125
|
+
|
|
126
|
+
Trait combinations that create friction on teams:
|
|
127
|
+
|
|
128
|
+
| Combination | Friction Point | Mitigation |
|
|
129
|
+
|-------------|----------------|------------|
|
|
130
|
+
| High A vs High A | Power struggles, both want to lead | Clear role delineation, separate domains |
|
|
131
|
+
| High A vs Low A | Independence vs collaboration | High A provides direction, respects Low A's process |
|
|
132
|
+
| High B vs Low B | Social needs mismatch | High B allows Low B alone time; Low B participates minimally |
|
|
133
|
+
| High C vs Low C | Pace/urgency mismatch | Low C respects focus time; High C accepts some urgency |
|
|
134
|
+
| High D vs Low D | Detail orientation clash | High D accepts "good enough"; Low D follows through |
|
|
135
|
+
| High D vs High D | Both perfectionist, both critical | Can be excellent partnership if aligned on standards |
|
|
136
|
+
|
|
137
|
+
</conflict_pairs>
|
|
138
|
+
|
|
139
|
+
<remote_team_considerations>
|
|
140
|
+
|
|
141
|
+
For remote/distributed teams:
|
|
142
|
+
|
|
143
|
+
- **Glue is even more critical** - Without casual office interactions, High B's are essential for maintaining culture
|
|
144
|
+
- **Low B's thrive** - Remote work is natural for those who prefer isolation
|
|
145
|
+
- **Low C's may struggle** - Harder to get immediate responses, may feel urgency isn't matched
|
|
146
|
+
- **High D's need clear processes** - More documentation, explicit SOPs for remote work
|
|
147
|
+
|
|
148
|
+
</remote_team_considerations>
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# /// script
|
|
3
|
+
# requires-python = ">=3.11"
|
|
4
|
+
# dependencies = []
|
|
5
|
+
# ///
|
|
6
|
+
"""Check that all dependencies for Culture Index extraction are installed.
|
|
7
|
+
|
|
8
|
+
Usage:
|
|
9
|
+
uv run check_deps.py
|
|
10
|
+
|
|
11
|
+
Exit codes:
|
|
12
|
+
0 - All dependencies installed
|
|
13
|
+
1 - Missing dependencies (details printed to stderr)
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
18
|
+
import shutil
|
|
19
|
+
import sys
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def check_python_packages() -> list[str]:
|
|
23
|
+
"""Check for required Python packages.
|
|
24
|
+
|
|
25
|
+
Returns:
|
|
26
|
+
List of missing package names.
|
|
27
|
+
"""
|
|
28
|
+
missing = []
|
|
29
|
+
|
|
30
|
+
try:
|
|
31
|
+
import cv2 # noqa: F401
|
|
32
|
+
except ImportError:
|
|
33
|
+
missing.append("opencv-python-headless")
|
|
34
|
+
|
|
35
|
+
try:
|
|
36
|
+
import numpy # noqa: F401
|
|
37
|
+
except ImportError:
|
|
38
|
+
missing.append("numpy")
|
|
39
|
+
|
|
40
|
+
try:
|
|
41
|
+
import pdf2image # noqa: F401
|
|
42
|
+
except ImportError:
|
|
43
|
+
missing.append("pdf2image")
|
|
44
|
+
|
|
45
|
+
try:
|
|
46
|
+
import pytesseract # noqa: F401
|
|
47
|
+
except ImportError:
|
|
48
|
+
missing.append("pytesseract")
|
|
49
|
+
|
|
50
|
+
return missing
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
def check_system_deps() -> list[str]:
|
|
54
|
+
"""Check for required system dependencies.
|
|
55
|
+
|
|
56
|
+
Returns:
|
|
57
|
+
List of missing system dependency names.
|
|
58
|
+
"""
|
|
59
|
+
missing = []
|
|
60
|
+
|
|
61
|
+
# Check for poppler (pdftoppm command)
|
|
62
|
+
if not shutil.which("pdftoppm"):
|
|
63
|
+
missing.append("poppler")
|
|
64
|
+
|
|
65
|
+
# Check for tesseract
|
|
66
|
+
if not shutil.which("tesseract"):
|
|
67
|
+
missing.append("tesseract")
|
|
68
|
+
|
|
69
|
+
return missing
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
def main() -> int:
|
|
73
|
+
"""Check all dependencies and report status.
|
|
74
|
+
|
|
75
|
+
Returns:
|
|
76
|
+
Exit code (0 = success, 1 = missing dependencies).
|
|
77
|
+
"""
|
|
78
|
+
missing_python = check_python_packages()
|
|
79
|
+
missing_system = check_system_deps()
|
|
80
|
+
|
|
81
|
+
if not missing_python and not missing_system:
|
|
82
|
+
print("All dependencies installed.", file=sys.stderr)
|
|
83
|
+
return 0
|
|
84
|
+
|
|
85
|
+
print("Missing dependencies:", file=sys.stderr)
|
|
86
|
+
|
|
87
|
+
if missing_python:
|
|
88
|
+
print(f"\n Python packages: {', '.join(missing_python)}", file=sys.stderr)
|
|
89
|
+
print(" Install with: uv pip install .", file=sys.stderr)
|
|
90
|
+
|
|
91
|
+
if missing_system:
|
|
92
|
+
print(f"\n System tools: {', '.join(missing_system)}", file=sys.stderr)
|
|
93
|
+
if "poppler" in missing_system:
|
|
94
|
+
print(
|
|
95
|
+
" poppler: brew install poppler (macOS) or apt install poppler-utils",
|
|
96
|
+
file=sys.stderr,
|
|
97
|
+
)
|
|
98
|
+
if "tesseract" in missing_system:
|
|
99
|
+
print(
|
|
100
|
+
" tesseract: brew install tesseract (macOS) or apt install tesseract-ocr",
|
|
101
|
+
file=sys.stderr,
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
return 1
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
if __name__ == "__main__":
|
|
108
|
+
sys.exit(main())
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"""Culture Index PDF extraction tools.
|
|
2
|
+
|
|
3
|
+
This package provides tools for extracting Culture Index employee profile
|
|
4
|
+
data from PDF files and converting them to JSON format with interpretations.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from culture_index.constants import ARCHETYPES
|
|
8
|
+
from culture_index.extract import generate_json, process_pdf
|
|
9
|
+
from culture_index.models import ExtractionResult
|
|
10
|
+
from culture_index.opencv_extractor import extract_with_opencv
|
|
11
|
+
|
|
12
|
+
__version__ = "0.1.0"
|
|
13
|
+
|
|
14
|
+
__all__ = [
|
|
15
|
+
"ARCHETYPES",
|
|
16
|
+
"ExtractionResult",
|
|
17
|
+
"extract_with_opencv",
|
|
18
|
+
"generate_json",
|
|
19
|
+
"process_pdf",
|
|
20
|
+
]
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"""Configuration constants for Culture Index extraction.
|
|
2
|
+
|
|
3
|
+
Contains OpenCV calibration values for extracting trait data from PDF charts.
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
# =============================================================================
|
|
7
|
+
# OpenCV Extraction Constants (calibrated for 300 DPI landscape Culture Index PDFs)
|
|
8
|
+
# =============================================================================
|
|
9
|
+
|
|
10
|
+
# Chart region boundaries as percentage of image height
|
|
11
|
+
# Survey Traits chart: ~26-50% of page height
|
|
12
|
+
# Job Behaviors chart: ~63-87% of page height
|
|
13
|
+
OPENCV_SURVEY_Y_START = 0.25
|
|
14
|
+
OPENCV_SURVEY_Y_END = 0.51
|
|
15
|
+
OPENCV_JOB_Y_START = 0.62
|
|
16
|
+
OPENCV_JOB_Y_END = 0.88
|
|
17
|
+
|
|
18
|
+
# X-axis calibration in pixels (at 300 DPI, landscape ~3300px width)
|
|
19
|
+
# Charts occupy left ~60% of page
|
|
20
|
+
# Position 0 is at x=686, position 10 is at x=1994 (130.8 px per unit)
|
|
21
|
+
OPENCV_CHART_X_START = 686
|
|
22
|
+
OPENCV_CHART_X_END = 1994
|
|
23
|
+
|
|
24
|
+
# EU text region: left of chart grid where "EU = XX" appears
|
|
25
|
+
OPENCV_EU_REGION_X_START = 0
|
|
26
|
+
OPENCV_EU_REGION_X_END = 686
|
|
27
|
+
|
|
28
|
+
# Header dots filter: decorative archetype color dots at top (not trait data)
|
|
29
|
+
# Header dots are at ~11% of page height
|
|
30
|
+
OPENCV_HEADER_DOT_Y_MAX = 0.12
|
|
31
|
+
|
|
32
|
+
# Metadata column (right side of page, avoid chart overlap)
|
|
33
|
+
OPENCV_METADATA_X_START = 0.65 # 65% of page width (further right to avoid chart)
|
|
34
|
+
OPENCV_METADATA_Y_START = 0.08
|
|
35
|
+
OPENCV_METADATA_Y_END = 0.55
|
|
36
|
+
|
|
37
|
+
# Header regions (top-left area)
|
|
38
|
+
OPENCV_NAME_REGION_Y_END = 0.06
|
|
39
|
+
OPENCV_COMPANY_REGION_Y_END = 0.10
|
|
40
|
+
OPENCV_ARCHETYPE_REGION_Y_END = 0.18
|
|
41
|
+
|
|
42
|
+
# HSV color detection thresholds
|
|
43
|
+
# Saturation and value must exceed these to be considered a colored element
|
|
44
|
+
OPENCV_SATURATION_MIN = 80
|
|
45
|
+
OPENCV_VALUE_MIN = 80
|
|
46
|
+
|
|
47
|
+
# Arrow detection: bright red with high saturation/value
|
|
48
|
+
# Distinguishes red arrow from dark maroon A-trait dot
|
|
49
|
+
OPENCV_ARROW_SAT_MIN = 150
|
|
50
|
+
OPENCV_ARROW_VAL_MIN = 150
|
|
51
|
+
OPENCV_ARROW_HUE_LOW = 8 # Red wraps around 0/180
|
|
52
|
+
OPENCV_ARROW_HUE_HIGH = 175
|
|
53
|
+
|
|
54
|
+
# Element area thresholds in pixels
|
|
55
|
+
OPENCV_MIN_CONTOUR_AREA = 100 # Ignore tiny noise
|
|
56
|
+
OPENCV_DOT_AREA_MIN = 500 # Trait dots are larger
|
|
57
|
+
OPENCV_DOT_AREA_MAX = 8000
|
|
58
|
+
OPENCV_ARROW_AREA_MIN = 200
|
|
59
|
+
OPENCV_ARROW_AREA_MAX = 5000
|
|
60
|
+
|
|
61
|
+
# Arrow shape: must be tall and thin (width/height < 0.3, height > 50px)
|
|
62
|
+
OPENCV_ARROW_ASPECT_MAX = 0.3
|
|
63
|
+
OPENCV_ARROW_MIN_HEIGHT = 50
|
|
64
|
+
|
|
65
|
+
# Dot shape: roughly circular (aspect ratio between 0.3 and 3.0)
|
|
66
|
+
OPENCV_DOT_ASPECT_MIN = 0.3
|
|
67
|
+
OPENCV_DOT_ASPECT_MAX = 3.0
|
|
68
|
+
|
|
69
|
+
# Hue ranges for trait colors (OpenCV uses 0-180 for hue)
|
|
70
|
+
# A (maroon/dark red): hue >= 165 or hue <= 5 with large area
|
|
71
|
+
OPENCV_HUE_A_HIGH = 165
|
|
72
|
+
OPENCV_HUE_A_LOW = 5
|
|
73
|
+
OPENCV_A_MIN_AREA = 1500 # A dots are larger than noise
|
|
74
|
+
|
|
75
|
+
# B (yellow): hue 15-35
|
|
76
|
+
OPENCV_HUE_B_MIN = 15
|
|
77
|
+
OPENCV_HUE_B_MAX = 35
|
|
78
|
+
|
|
79
|
+
# C (blue): hue 105-115
|
|
80
|
+
OPENCV_HUE_C_MIN = 105
|
|
81
|
+
OPENCV_HUE_C_MAX = 115
|
|
82
|
+
|
|
83
|
+
# D (green): hue 65-85
|
|
84
|
+
OPENCV_HUE_D_MIN = 65
|
|
85
|
+
OPENCV_HUE_D_MAX = 85
|
|
86
|
+
|
|
87
|
+
# L (purple/magenta): hue 135-165
|
|
88
|
+
OPENCV_HUE_L_MIN = 135
|
|
89
|
+
OPENCV_HUE_L_MAX = 165
|
|
90
|
+
|
|
91
|
+
# I (cyan): hue 85 to C_MIN (uses C_MIN as upper bound to avoid overlap)
|
|
92
|
+
OPENCV_HUE_I_MIN = 85
|
|
93
|
+
|
|
94
|
+
# =============================================================================
|
|
95
|
+
# Culture Index Archetypes (known valid values from profiles)
|
|
96
|
+
# =============================================================================
|
|
97
|
+
|
|
98
|
+
# Archetypes observed in actual Culture Index PDFs
|
|
99
|
+
# Used by opencv_extractor.py for OCR matching
|
|
100
|
+
ARCHETYPES = [
|
|
101
|
+
# From actual profiles
|
|
102
|
+
"Administrator",
|
|
103
|
+
"Architect",
|
|
104
|
+
"Chameleon",
|
|
105
|
+
"Coordinator",
|
|
106
|
+
"Craftsman",
|
|
107
|
+
"Debater",
|
|
108
|
+
"Enterpriser",
|
|
109
|
+
"Facilitator",
|
|
110
|
+
"Influencer",
|
|
111
|
+
"Philosopher",
|
|
112
|
+
"Rainmaker",
|
|
113
|
+
"Scholar",
|
|
114
|
+
"Socializer",
|
|
115
|
+
"Specialist",
|
|
116
|
+
"Technical Expert",
|
|
117
|
+
"Traditionalist",
|
|
118
|
+
# From methodology documentation
|
|
119
|
+
"Accommodator",
|
|
120
|
+
"Persuader",
|
|
121
|
+
"Visionary",
|
|
122
|
+
]
|