opencode-skills-collection 3.1.0 → 3.1.2
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 +84 -1
- package/bundled-skills/2slides-ppt-generator/SKILL.md +8 -7
- package/bundled-skills/android-cli/SKILL.md +19 -7
- package/bundled-skills/android-ui-journey-testing/SKILL.md +191 -0
- package/bundled-skills/apple-notes-search/SKILL.md +12 -2
- package/bundled-skills/ask-matt/SKILL.md +92 -0
- package/bundled-skills/atlas-ledger/SKILL.md +8 -0
- package/bundled-skills/bugs-are-annoying/SKILL.md +137 -0
- package/bundled-skills/codebase-design/DEEPENING.md +37 -0
- package/bundled-skills/codebase-design/DESIGN-IT-TWICE.md +44 -0
- package/bundled-skills/codebase-design/SKILL.md +145 -0
- package/bundled-skills/codex-fable5/SKILL.md +10 -2
- package/bundled-skills/competitor-analysis/LICENSE.txt +21 -0
- package/bundled-skills/competitor-analysis/SKILL.md +434 -0
- package/bundled-skills/competitor-analysis/references/battle-card-subagent.md +127 -0
- package/bundled-skills/competitor-analysis/references/battle-card.md +91 -0
- package/bundled-skills/competitor-analysis/references/example-research.md +130 -0
- package/bundled-skills/competitor-analysis/references/report-template.html +127 -0
- package/bundled-skills/competitor-analysis/references/research-patterns.md +217 -0
- package/bundled-skills/competitor-analysis/references/workflow.md +434 -0
- package/bundled-skills/competitor-analysis/scripts/capture_screenshots.mjs +142 -0
- package/bundled-skills/competitor-analysis/scripts/compile_report.mjs +929 -0
- package/bundled-skills/competitor-analysis/scripts/extract_vs_names.mjs +140 -0
- package/bundled-skills/competitor-analysis/scripts/gate_candidates.mjs +224 -0
- package/bundled-skills/competitor-analysis/scripts/list_urls.mjs +90 -0
- package/bundled-skills/competitor-analysis/scripts/md_utils.mjs +50 -0
- package/bundled-skills/competitor-analysis/scripts/merge_partials.mjs +291 -0
- package/bundled-skills/competitor-analysis/scripts/package.json +6 -0
- package/bundled-skills/design-it/3d-ui/SKILL.md +259 -0
- package/bundled-skills/design-it/SKILL.md +170 -0
- package/bundled-skills/design-it/ai-native-ui/SKILL.md +295 -0
- package/bundled-skills/design-it/aurora-ui/SKILL.md +307 -0
- package/bundled-skills/design-it/bento-ui/SKILL.md +314 -0
- package/bundled-skills/design-it/brutalism/SKILL.md +270 -0
- package/bundled-skills/design-it/brutalist-typography/SKILL.md +287 -0
- package/bundled-skills/design-it/card-based-design/SKILL.md +262 -0
- package/bundled-skills/design-it/claymorphism/SKILL.md +287 -0
- package/bundled-skills/design-it/color-blocking/SKILL.md +278 -0
- package/bundled-skills/design-it/command-center-ui/SKILL.md +345 -0
- package/bundled-skills/design-it/cyber-y2k/SKILL.md +312 -0
- package/bundled-skills/design-it/cyberpunk-ui/SKILL.md +262 -0
- package/bundled-skills/design-it/dark-mode/SKILL.md +289 -0
- package/bundled-skills/design-it/dashboard-design/SKILL.md +331 -0
- package/bundled-skills/design-it/data-dense-design/SKILL.md +322 -0
- package/bundled-skills/design-it/duotone-design/SKILL.md +248 -0
- package/bundled-skills/design-it/editorial-design/SKILL.md +328 -0
- package/bundled-skills/design-it/flat-design/SKILL.md +221 -0
- package/bundled-skills/design-it/flat-design-2/SKILL.md +240 -0
- package/bundled-skills/design-it/floating-ui/SKILL.md +299 -0
- package/bundled-skills/design-it/frutiger-aero/SKILL.md +274 -0
- package/bundled-skills/design-it/glassmorphism/SKILL.md +272 -0
- package/bundled-skills/design-it/gradient-design/SKILL.md +309 -0
- package/bundled-skills/design-it/high-contrast/SKILL.md +288 -0
- package/bundled-skills/design-it/holographic-ui/SKILL.md +310 -0
- package/bundled-skills/design-it/isometric-design/SKILL.md +228 -0
- package/bundled-skills/design-it/layered-design/SKILL.md +247 -0
- package/bundled-skills/design-it/material-design/SKILL.md +275 -0
- package/bundled-skills/design-it/maximalism/SKILL.md +297 -0
- package/bundled-skills/design-it/minimalism/SKILL.md +267 -0
- package/bundled-skills/design-it/monochromatic-ui/SKILL.md +296 -0
- package/bundled-skills/design-it/neo-brutalism/SKILL.md +270 -0
- package/bundled-skills/design-it/neumorphism/SKILL.md +248 -0
- package/bundled-skills/design-it/retro-design/SKILL.md +283 -0
- package/bundled-skills/design-it/retro-futurism/SKILL.md +259 -0
- package/bundled-skills/design-it/sci-fi-interface/SKILL.md +309 -0
- package/bundled-skills/design-it/skeuomorphism/SKILL.md +280 -0
- package/bundled-skills/design-it/soft-pastel/SKILL.md +307 -0
- package/bundled-skills/design-it/spatial-computing-ui/SKILL.md +300 -0
- package/bundled-skills/design-it/spatial-design/SKILL.md +268 -0
- package/bundled-skills/design-it/swiss-design/SKILL.md +293 -0
- package/bundled-skills/design-it/synthwave/SKILL.md +257 -0
- package/bundled-skills/design-it/tile-design/SKILL.md +297 -0
- package/bundled-skills/design-it/typography-first/SKILL.md +247 -0
- package/bundled-skills/design-it/vaporwave/SKILL.md +331 -0
- package/bundled-skills/design-it/vibrant-maximalism/SKILL.md +291 -0
- package/bundled-skills/design-it/widget-based-design/SKILL.md +274 -0
- package/bundled-skills/design-it/y2k-design/SKILL.md +268 -0
- package/bundled-skills/diagnosing-bugs/SKILL.md +165 -0
- package/bundled-skills/diagnosing-bugs/scripts/hitl-loop.template.sh +41 -0
- package/bundled-skills/docs/contributors/skill-scoring.md +235 -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 +145 -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/specialized-plugin-roadmap.md +11 -4
- package/bundled-skills/docs/users/usage.md +4 -4
- package/bundled-skills/docs/users/visual-guide.md +4 -4
- package/bundled-skills/domain-modeling/ADR-FORMAT.md +47 -0
- package/bundled-skills/domain-modeling/CONTEXT-FORMAT.md +60 -0
- package/bundled-skills/domain-modeling/SKILL.md +105 -0
- package/bundled-skills/dos-verify-done-claims/SKILL.md +16 -4
- package/bundled-skills/ecl-harness-engineer/agents/creator-config.md +1 -1
- package/bundled-skills/ecl-harness-engineer/references/environment-config-guide.md +2 -2
- package/bundled-skills/ecl-harness-engineer/references/environment-detection-guide.md +4 -4
- package/bundled-skills/event-staffing-ordering/SKILL.md +4 -0
- package/bundled-skills/grill-me/SKILL.md +36 -0
- package/bundled-skills/grill-with-docs/SKILL.md +36 -0
- package/bundled-skills/grilling/SKILL.md +39 -0
- package/bundled-skills/handoff/SKILL.md +45 -0
- package/bundled-skills/image-generator/.env.example +7 -0
- package/bundled-skills/image-generator/SKILL.md +509 -0
- package/bundled-skills/improve-codebase-architecture/HTML-REPORT.md +123 -0
- package/bundled-skills/improve-codebase-architecture/SKILL.md +97 -0
- package/bundled-skills/learn/SKILL.md +156 -0
- package/bundled-skills/lesson-generator/SKILL.md +90 -0
- package/bundled-skills/llm-council/.env.example +7 -0
- package/bundled-skills/llm-council/SKILL.md +602 -0
- package/bundled-skills/loop-library/SKILL.md +208 -0
- package/bundled-skills/loop-library/agents/openai.yaml +4 -0
- package/bundled-skills/loop-library/references/catalog.md +270 -0
- package/bundled-skills/lovable-cleanup/SKILL.md +9 -7
- package/bundled-skills/macos-screen-recorder/SKILL.md +9 -1
- package/bundled-skills/mailtrap-managing-contacts/SKILL.md +112 -0
- package/bundled-skills/mailtrap-sending-emails/SKILL.md +167 -0
- package/bundled-skills/mailtrap-setting-up-sending-domain/SKILL.md +77 -0
- package/bundled-skills/mailtrap-testing-with-sandbox/SKILL.md +110 -0
- package/bundled-skills/prototype/LOGIC.md +79 -0
- package/bundled-skills/prototype/SKILL.md +62 -0
- package/bundled-skills/prototype/UI.md +112 -0
- package/bundled-skills/screenstudio-alt/SKILL.md +9 -1
- package/bundled-skills/setup-matt-pocock-skills/SKILL.md +158 -0
- package/bundled-skills/setup-matt-pocock-skills/domain.md +51 -0
- package/bundled-skills/setup-matt-pocock-skills/issue-tracker-github.md +34 -0
- package/bundled-skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +35 -0
- package/bundled-skills/setup-matt-pocock-skills/issue-tracker-local.md +19 -0
- package/bundled-skills/setup-matt-pocock-skills/triage-labels.md +15 -0
- package/bundled-skills/survey-generator/LICENSE +21 -0
- package/bundled-skills/survey-generator/SKILL.md +143 -0
- package/bundled-skills/survey-generator/build_artifact.py +208 -0
- package/bundled-skills/survey-generator/examples/agentic-engineering/research_bundle.json +1196 -0
- package/bundled-skills/survey-generator/examples/agentic-engineering/survey.html +706 -0
- package/bundled-skills/survey-generator/style_spec.json +85 -0
- package/bundled-skills/survey-generator/templates/research_bundle_template.json +69 -0
- package/bundled-skills/tdd/SKILL.md +139 -0
- package/bundled-skills/tdd/mocking.md +59 -0
- package/bundled-skills/tdd/refactoring.md +10 -0
- package/bundled-skills/tdd/tests.md +61 -0
- package/bundled-skills/teach/GLOSSARY-FORMAT.md +35 -0
- package/bundled-skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
- package/bundled-skills/teach/MISSION-FORMAT.md +31 -0
- package/bundled-skills/teach/RESOURCES-FORMAT.md +32 -0
- package/bundled-skills/teach/SKILL.md +169 -0
- package/bundled-skills/to-issues/SKILL.md +115 -0
- package/bundled-skills/to-prd/SKILL.md +104 -0
- package/bundled-skills/tools-page-seo-optimizer/SKILL.md +616 -0
- package/bundled-skills/triage/AGENT-BRIEF.md +207 -0
- package/bundled-skills/triage/OUT-OF-SCOPE.md +105 -0
- package/bundled-skills/triage/SKILL.md +143 -0
- package/bundled-skills/vibecode-production-qa-validator/SKILL.md +371 -141
- package/bundled-skills/wiki-builder/SKILL.md +157 -0
- package/bundled-skills/wiki-builder/agents/openai.yaml +5 -0
- package/bundled-skills/wiki-builder/references/wiki-flavors.md +98 -0
- package/bundled-skills/wiki-builder/scripts/init_wiki.sh +105 -0
- package/bundled-skills/wiki-builder/templates/index.md +20 -0
- package/bundled-skills/wiki-builder/templates/maintenance-log.md +7 -0
- package/bundled-skills/wiki-builder/templates/prompts/compile-concept-page.md +12 -0
- package/bundled-skills/wiki-builder/templates/prompts/compile-index.md +11 -0
- package/bundled-skills/wiki-builder/templates/prompts/compile-source-page.md +12 -0
- package/bundled-skills/wiki-builder/templates/prompts/lint-wiki.md +10 -0
- package/bundled-skills/wiki-builder/templates/prompts/query-and-file.md +11 -0
- package/bundled-skills/wiki-builder/templates/sources.md +9 -0
- package/bundled-skills/wiki-builder/templates/wiki.config.md +53 -0
- package/bundled-skills/writing-great-skills/GLOSSARY.md +181 -0
- package/bundled-skills/writing-great-skills/SKILL.md +111 -0
- package/bundled-skills/yao-meta-skill/SKILL.md +86 -0
- package/bundled-skills/yao-meta-skill/agents/interface.yaml +26 -0
- package/bundled-skills/yao-meta-skill/manifest.json +24 -0
- package/bundled-skills/yao-meta-skill/references/artifact-design-doctrine.md +49 -0
- package/bundled-skills/yao-meta-skill/references/authoring-discipline.md +78 -0
- package/bundled-skills/yao-meta-skill/references/autonomous-adaptation.md +65 -0
- package/bundled-skills/yao-meta-skill/references/distribution-registry-method.md +60 -0
- package/bundled-skills/yao-meta-skill/references/eval-playbook.md +69 -0
- package/bundled-skills/yao-meta-skill/references/gate-selection.md +68 -0
- package/bundled-skills/yao-meta-skill/references/governance.md +134 -0
- package/bundled-skills/yao-meta-skill/references/human-review-template.md +54 -0
- package/bundled-skills/yao-meta-skill/references/intent-dialogue.md +138 -0
- package/bundled-skills/yao-meta-skill/references/iteration-philosophy.md +30 -0
- package/bundled-skills/yao-meta-skill/references/non-skill-decision-tree.md +39 -0
- package/bundled-skills/yao-meta-skill/references/operating-modes.md +107 -0
- package/bundled-skills/yao-meta-skill/references/output-eval-method.md +113 -0
- package/bundled-skills/yao-meta-skill/references/output-quality-risk.md +41 -0
- package/bundled-skills/yao-meta-skill/references/output-visual-quality.md +53 -0
- package/bundled-skills/yao-meta-skill/references/packaging-contracts.md +70 -0
- package/bundled-skills/yao-meta-skill/references/pattern-extraction-doctrine.md +76 -0
- package/bundled-skills/yao-meta-skill/references/platform-capability-matrix.md +49 -0
- package/bundled-skills/yao-meta-skill/references/prompt-engineering-doctrine.md +76 -0
- package/bundled-skills/yao-meta-skill/references/qa-ladder.md +57 -0
- package/bundled-skills/yao-meta-skill/references/reference-scan.md +126 -0
- package/bundled-skills/yao-meta-skill/references/regression-cause-taxonomy.md +80 -0
- package/bundled-skills/yao-meta-skill/references/resource-boundaries.md +120 -0
- package/bundled-skills/yao-meta-skill/references/review-studio-method.md +87 -0
- package/bundled-skills/yao-meta-skill/references/review-waiver-method.md +76 -0
- package/bundled-skills/yao-meta-skill/references/runtime-conformance-method.md +21 -0
- package/bundled-skills/yao-meta-skill/references/skill-archetypes.md +86 -0
- package/bundled-skills/yao-meta-skill/references/skill-atlas-method.md +35 -0
- package/bundled-skills/yao-meta-skill/references/skill-engineering-method.md +210 -0
- package/bundled-skills/yao-meta-skill/references/skill-ir-method.md +41 -0
- package/bundled-skills/yao-meta-skill/references/skillops-decision-policy.md +53 -0
- package/bundled-skills/yao-meta-skill/references/systems-thinking-doctrine.md +75 -0
- package/bundled-skills/yao-meta-skill/references/telemetry-drift-method.md +182 -0
- package/bundled-skills/yao-meta-skill/references/trust-security-method.md +79 -0
- package/bundled-skills/yao-meta-skill/references/user-memory-policy.md +35 -0
- package/bundled-skills/youtube-notetaker/SKILL.md +209 -0
- package/bundled-skills/youtube-notetaker/reference/artifact.html +269 -0
- package/bundled-skills/youtube-notetaker/scripts/contact_sheet.py +53 -0
- package/bundled-skills/youtube-notetaker/scripts/detect_slides.sh +19 -0
- package/bundled-skills/youtube-notetaker/scripts/download.sh +24 -0
- package/bundled-skills/youtube-notetaker/scripts/extract_slides.py +43 -0
- package/bundled-skills/youtube-notetaker/scripts/serve.py +222 -0
- package/bundled-skills/youtube-notetaker/scripts/setup.sh +27 -0
- package/bundled-skills/youtube-notetaker/scripts/verify.sh +31 -0
- package/bundled-skills/youtube-notetaker/scripts/vtt_to_transcript.py +59 -0
- package/bundled-skills/youtube-notetaker/scripts/write_library_item.py +69 -0
- package/package.json +1 -1
- package/skills_index.json +2013 -330
- package/bundled-skills/ai-md/SKILL.md +0 -523
- package/bundled-skills/atlas-contract/SKILL.md +0 -650
- package/bundled-skills/busybox-on-windows/SKILL.md +0 -40
- package/bundled-skills/monte-carlo-prevent/SKILL.md +0 -257
- package/bundled-skills/monte-carlo-prevent/references/TROUBLESHOOTING.md +0 -23
- package/bundled-skills/monte-carlo-prevent/references/parameters.md +0 -32
- package/bundled-skills/monte-carlo-prevent/references/workflows.md +0 -478
- package/bundled-skills/monte-carlo-push-ingestion/SKILL.md +0 -372
- package/bundled-skills/monte-carlo-push-ingestion/references/anomaly-detection.md +0 -87
- package/bundled-skills/monte-carlo-push-ingestion/references/custom-lineage.md +0 -203
- package/bundled-skills/monte-carlo-push-ingestion/references/direct-http-api.md +0 -207
- package/bundled-skills/monte-carlo-push-ingestion/references/prerequisites.md +0 -150
- package/bundled-skills/monte-carlo-push-ingestion/references/push-lineage.md +0 -160
- package/bundled-skills/monte-carlo-push-ingestion/references/push-metadata.md +0 -158
- package/bundled-skills/monte-carlo-push-ingestion/references/push-query-logs.md +0 -219
- package/bundled-skills/monte-carlo-push-ingestion/references/validation.md +0 -257
- package/bundled-skills/monte-carlo-push-ingestion/scripts/sample_verify.py +0 -357
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_and_push_lineage.py +0 -70
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_and_push_metadata.py +0 -65
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_and_push_query_logs.py +0 -70
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_lineage.py +0 -214
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_metadata.py +0 -160
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_query_logs.py +0 -164
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/push_lineage.py +0 -198
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/push_metadata.py +0 -193
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/push_query_logs.py +0 -207
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_and_push_metadata.py +0 -71
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_and_push_query_logs.py +0 -64
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_metadata.py +0 -253
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_query_logs.py +0 -149
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/push_metadata.py +0 -190
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/push_query_logs.py +0 -208
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_and_push_lineage.py +0 -83
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_and_push_metadata.py +0 -77
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_and_push_query_logs.py +0 -83
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_lineage.py +0 -240
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_metadata.py +0 -212
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_query_logs.py +0 -204
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/push_lineage.py +0 -192
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/push_metadata.py +0 -178
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/push_query_logs.py +0 -200
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_and_push_lineage.py +0 -119
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_and_push_metadata.py +0 -119
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_and_push_query_logs.py +0 -117
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_lineage.py +0 -265
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_metadata.py +0 -313
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_query_logs.py +0 -284
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/push_lineage.py +0 -309
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/push_metadata.py +0 -245
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/push_query_logs.py +0 -255
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_and_push_lineage.py +0 -78
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_and_push_metadata.py +0 -80
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_and_push_query_logs.py +0 -88
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_lineage.py +0 -235
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_metadata.py +0 -219
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_query_logs.py +0 -239
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/push_lineage.py +0 -178
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/push_metadata.py +0 -178
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/push_query_logs.py +0 -196
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_and_push_lineage.py +0 -154
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_and_push_metadata.py +0 -137
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_and_push_query_logs.py +0 -137
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_lineage.py +0 -349
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_metadata.py +0 -329
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_query_logs.py +0 -254
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/push_lineage.py +0 -307
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/push_metadata.py +0 -228
- package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/push_query_logs.py +0 -248
- package/bundled-skills/monte-carlo-push-ingestion/scripts/test_template_sdk_usage.py +0 -340
- package/bundled-skills/skill-optimizer/SKILL.md +0 -271
- package/bundled-skills/using-superpowers/SKILL.md +0 -98
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
# Skill Engineering Method
|
|
2
|
+
|
|
3
|
+
This doctrine defines the default method for turning messy workflow material into a reusable skill without bloating the entrypoint.
|
|
4
|
+
|
|
5
|
+
## Core Loop
|
|
6
|
+
|
|
7
|
+
1. Decide whether the request should become a skill at all.
|
|
8
|
+
2. Run a short intent dialogue to capture the real job, outputs, exclusions, and constraints.
|
|
9
|
+
3. Choose the smallest viable archetype.
|
|
10
|
+
4. Set one clear capability boundary.
|
|
11
|
+
5. Write and test the trigger description before expanding the body.
|
|
12
|
+
6. Apply authoring discipline: name unresolved assumptions, keep scope small, and tie meaningful changes to checks.
|
|
13
|
+
7. Add an output risk profile for user-facing artifacts.
|
|
14
|
+
8. Add an artifact design profile for reports, tutorials, viewers, dashboards, screenshots, and visual pages.
|
|
15
|
+
9. Add only the gates that match the risk.
|
|
16
|
+
10. Ship the first routeable package, then pick the three highest-value next iteration directions.
|
|
17
|
+
11. Package and govern the skill only as far as real reuse demands.
|
|
18
|
+
|
|
19
|
+
## Phase 1: Qualification
|
|
20
|
+
|
|
21
|
+
Promote a request into a skill only when at least one of these is true:
|
|
22
|
+
|
|
23
|
+
- the workflow will be reused
|
|
24
|
+
- the workflow is easy to route incorrectly
|
|
25
|
+
- deterministic scripts reduce repeated effort
|
|
26
|
+
- governance or portability matters
|
|
27
|
+
|
|
28
|
+
Reject skill creation when the request is only:
|
|
29
|
+
|
|
30
|
+
- explanation
|
|
31
|
+
- summary
|
|
32
|
+
- translation
|
|
33
|
+
- brainstorming
|
|
34
|
+
- documentation without agent execution
|
|
35
|
+
- a one-off answer with no reuse value
|
|
36
|
+
|
|
37
|
+
See [Non-Skill Decision Tree](non-skill-decision-tree.md).
|
|
38
|
+
|
|
39
|
+
## Phase 1.5: Authoring Discipline
|
|
40
|
+
|
|
41
|
+
Before expanding the package, apply the execution discipline that keeps the work grounded.
|
|
42
|
+
|
|
43
|
+
- clarify only the assumptions that change the package design
|
|
44
|
+
- do not add speculative features, generic configurability, or decorative structure
|
|
45
|
+
- when editing an existing skill, touch only files that directly serve the requested change
|
|
46
|
+
- connect each meaningful change to a check: route evidence, sample run, resource-boundary check, governance check, or reviewer note
|
|
47
|
+
|
|
48
|
+
See [Authoring Discipline](authoring-discipline.md).
|
|
49
|
+
|
|
50
|
+
## Phase 1.6: Problem Diagnosis
|
|
51
|
+
|
|
52
|
+
When the user gives a fuzzy pain point instead of a clear skill request, diagnose the likely package shape before asking for structure.
|
|
53
|
+
|
|
54
|
+
- infer whether the need is best served by a scaffold, production workflow, library capability, governed asset, or no skill
|
|
55
|
+
- recommend at most three candidate directions
|
|
56
|
+
- explain why each candidate fits, where it is limited, and what the first light version should prove
|
|
57
|
+
- prefer a concrete recommendation over a menu when the intent is clear enough
|
|
58
|
+
|
|
59
|
+
This keeps discovery useful for users who can describe the problem but not the skill architecture.
|
|
60
|
+
|
|
61
|
+
## Phase 2: Intent Dialogue
|
|
62
|
+
|
|
63
|
+
Before deep authoring, ask only the questions that change the package design.
|
|
64
|
+
|
|
65
|
+
- open with a human, teacher-like framing rather than a cold field list
|
|
66
|
+
- let the user answer naturally first; offer a tiny template only as an optional shortcut
|
|
67
|
+
- what recurring job should the skill own
|
|
68
|
+
- what real inputs will users hand to it
|
|
69
|
+
- what outputs must it produce
|
|
70
|
+
- what near-neighbor requests should stay out of scope
|
|
71
|
+
- whether the user has reference systems, repos, or products worth learning from
|
|
72
|
+
- what constraints matter: privacy, naming, portability, governance, or local fit
|
|
73
|
+
|
|
74
|
+
See [Intent Dialogue](intent-dialogue.md).
|
|
75
|
+
|
|
76
|
+
## Phase 3: Archetype Selection
|
|
77
|
+
|
|
78
|
+
Choose the lightest archetype that fits the job.
|
|
79
|
+
|
|
80
|
+
- `Scaffold`: exploratory, personal, or short-lived
|
|
81
|
+
- `Production`: team-reused, quality-sensitive, but still compact
|
|
82
|
+
- `Library`: broad reuse, visible evidence, portability, and maintenance expectations
|
|
83
|
+
- `Governed`: organizationally sensitive or operationally critical; lifecycle and review are explicit
|
|
84
|
+
|
|
85
|
+
See [Skill Archetypes](skill-archetypes.md).
|
|
86
|
+
|
|
87
|
+
## Phase 4: Boundary Design
|
|
88
|
+
|
|
89
|
+
Every skill should answer four questions clearly:
|
|
90
|
+
|
|
91
|
+
- what recurring job does it own
|
|
92
|
+
- what outputs does it produce
|
|
93
|
+
- what near-neighbor requests should not route here
|
|
94
|
+
- what detail belongs outside `SKILL.md`
|
|
95
|
+
|
|
96
|
+
Boundary work comes before polishing prose.
|
|
97
|
+
|
|
98
|
+
## Phase 5: Reference Scan
|
|
99
|
+
|
|
100
|
+
Run a short benchmark pass before deep authoring.
|
|
101
|
+
|
|
102
|
+
- scan `3-5` reference objects at most
|
|
103
|
+
- prioritize high-star external GitHub and official benchmark sources first
|
|
104
|
+
- ask for user-supplied references second, but extract only patterns and standards
|
|
105
|
+
- use local files third, only for fit, privacy, and compatibility calibration
|
|
106
|
+
- choose from method, structure, execution, portability, and domain patterns
|
|
107
|
+
- extract only what passes the pattern test: recurrence, generativity, distinctiveness, and boundary clarity
|
|
108
|
+
- record what not to borrow so the new skill stays light
|
|
109
|
+
|
|
110
|
+
See [Reference Scan Strategy](reference-scan.md) and [Pattern Extraction Doctrine](pattern-extraction-doctrine.md).
|
|
111
|
+
|
|
112
|
+
## Phase 5.5: Output Risk Profiling
|
|
113
|
+
|
|
114
|
+
Before treating the package as usable, predict the likely mistakes in its final user-facing output.
|
|
115
|
+
|
|
116
|
+
- tutorial skills should guard against generic headings, vague examples, and missing success checks
|
|
117
|
+
- report and Markdown skills should guard against weak tables, dense lists, and poor hierarchy
|
|
118
|
+
- screenshot or visual skills should guard against wrong captures, missing assets, and invented visual evidence
|
|
119
|
+
- research or citation-heavy skills should guard against footnote clutter and unsupported claims
|
|
120
|
+
- code or command skills should guard against hidden cwd, input, output, and side-effect assumptions
|
|
121
|
+
|
|
122
|
+
Generate `reports/output-risk-profile.md` and expose it to the reviewer before adding more structure.
|
|
123
|
+
|
|
124
|
+
See [Output Quality Risk](output-quality-risk.md).
|
|
125
|
+
|
|
126
|
+
## Phase 5.6: Artifact Design Profiling
|
|
127
|
+
|
|
128
|
+
Before approving generated reports or visual outputs, define how the artifact should read and scan.
|
|
129
|
+
|
|
130
|
+
- choose the artifact family: tutorial, report, review viewer, dashboard, visual evidence, slide-like narrative, or code/CLI guide
|
|
131
|
+
- let the content choose the visual system instead of copying a fixed house style
|
|
132
|
+
- borrow document discipline from Kami: route by document type, distill content, verify layout-critical assumptions
|
|
133
|
+
- borrow slide discipline from presentation skills: plan hierarchy, density, rhythm, and quality gates before writing HTML
|
|
134
|
+
- reject generic headings, noisy citations, weak tables, wrong screenshots, repeated card grids, and decorative visual defaults
|
|
135
|
+
|
|
136
|
+
Generate `reports/artifact-design-profile.md` and expose it in the overview and review viewer.
|
|
137
|
+
|
|
138
|
+
See [Artifact Design Doctrine](artifact-design-doctrine.md) and [Output Visual Quality](output-visual-quality.md).
|
|
139
|
+
|
|
140
|
+
## Phase 5.7: Prompt Quality Profiling
|
|
141
|
+
|
|
142
|
+
When a skill depends on prompt behavior, role design, dialogue quality, or output contracts, turn prompt methodology into an evidence profile.
|
|
143
|
+
|
|
144
|
+
- identify the explicit need, implicit need, scenario, user level, and success standard
|
|
145
|
+
- map Role, Task, and Format into skill behavior instead of copying a full meta-prompt into `SKILL.md`
|
|
146
|
+
- classify the task family and complexity before adding structure
|
|
147
|
+
- score completeness, clarity, consistency, practicality, and specificity
|
|
148
|
+
- expose the full reasoning to reviewers while keeping the user-facing flow recommendation-led
|
|
149
|
+
|
|
150
|
+
Generate `reports/prompt-quality-profile.md` and expose it in the overview and review viewer.
|
|
151
|
+
|
|
152
|
+
See [Prompt Engineering Doctrine](prompt-engineering-doctrine.md).
|
|
153
|
+
|
|
154
|
+
## Phase 6: Trigger-First Authoring
|
|
155
|
+
|
|
156
|
+
Author the frontmatter `description` before expanding the body.
|
|
157
|
+
|
|
158
|
+
- start with the recurring job
|
|
159
|
+
- include the trigger actions that should route here
|
|
160
|
+
- include exclusions when confusion is plausible
|
|
161
|
+
- test the route before growing the file tree
|
|
162
|
+
|
|
163
|
+
Trigger quality is improved through:
|
|
164
|
+
|
|
165
|
+
- `trigger_eval.py`
|
|
166
|
+
- `optimize_description.py`
|
|
167
|
+
- blind holdout
|
|
168
|
+
- judge-backed blind holdout
|
|
169
|
+
- adversarial holdout
|
|
170
|
+
- route confusion
|
|
171
|
+
|
|
172
|
+
## Phase 7: Gate Selection
|
|
173
|
+
|
|
174
|
+
Add gates by risk, not by habit.
|
|
175
|
+
|
|
176
|
+
- low-risk scaffolds: validate structure and context size
|
|
177
|
+
- production skills: trigger eval plus resource-boundary checks
|
|
178
|
+
- library skills: description optimization, route confusion, packaging checks
|
|
179
|
+
- governed skills: governance scoring, lifecycle metadata, regression history
|
|
180
|
+
|
|
181
|
+
See [Gate Selection](gate-selection.md).
|
|
182
|
+
|
|
183
|
+
## Phase 8: First Iteration Philosophy
|
|
184
|
+
|
|
185
|
+
The first package is a routeable baseline, not the final answer.
|
|
186
|
+
|
|
187
|
+
- improve trigger and exclusions before growing prose
|
|
188
|
+
- add one execution asset before adding many documents
|
|
189
|
+
- surface the three highest-value next moves so authors do not expand in every direction at once
|
|
190
|
+
- prefer the smallest step that increases reliability more than context cost
|
|
191
|
+
- move unverifiable ideas into next-step candidates instead of shipping them as baseline structure
|
|
192
|
+
|
|
193
|
+
See [Iteration Philosophy](iteration-philosophy.md) and [Authoring Discipline](authoring-discipline.md).
|
|
194
|
+
|
|
195
|
+
## Phase 9: Promotion
|
|
196
|
+
|
|
197
|
+
A candidate route or package is promotable only when:
|
|
198
|
+
|
|
199
|
+
- visible holdout does not regress
|
|
200
|
+
- blind holdout does not regress
|
|
201
|
+
- judge-backed blind holdout does not regress
|
|
202
|
+
- adversarial holdout does not regress
|
|
203
|
+
- route confusion stays clean
|
|
204
|
+
- context and governance gates still pass
|
|
205
|
+
|
|
206
|
+
See [Promotion Policy](../evals/promotion_policy.md).
|
|
207
|
+
|
|
208
|
+
## Design Principle
|
|
209
|
+
|
|
210
|
+
The method is only correct if rigor grows faster than context cost. If a new check or document makes the skill heavier without making it more reliable, remove or relocate it.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Skill IR Method
|
|
2
|
+
|
|
3
|
+
Skill IR is the 2.0 layer that separates durable skill meaning from platform packaging.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
Use Skill IR before platform-specific packaging for production, library, governed, or team-distributed skills. The IR should preserve the capability contract even when OpenAI, Claude, Agent Skills, VS Code, or generic adapters differ in folder layout, metadata names, or activation behavior.
|
|
8
|
+
|
|
9
|
+
## What Belongs In IR
|
|
10
|
+
|
|
11
|
+
- the recurring job the skill owns
|
|
12
|
+
- the frontmatter trigger description
|
|
13
|
+
- should-trigger, should-not-trigger, and near-neighbor edge cases
|
|
14
|
+
- workflow steps, decision points, and failure modes
|
|
15
|
+
- references, scripts, assets, and reports used by the package
|
|
16
|
+
- trigger and output eval plans
|
|
17
|
+
- output risk, execution risk, and trust boundary
|
|
18
|
+
- owner, maturity, review cadence, and target platforms
|
|
19
|
+
|
|
20
|
+
## What Does Not Belong In IR
|
|
21
|
+
|
|
22
|
+
- platform-specific file paths that only exist after packaging
|
|
23
|
+
- copied prose from external benchmarks
|
|
24
|
+
- client-specific UI labels
|
|
25
|
+
- local private paths that are not part of the skill package
|
|
26
|
+
- speculative adapters that are not requested or tested
|
|
27
|
+
|
|
28
|
+
## Authoring Rule
|
|
29
|
+
|
|
30
|
+
Export or update Skill IR before adding new adapters, compilers, registries, or conformance checks. If a field cannot be derived from local package evidence, leave it empty or use an explicit low-confidence default instead of inventing detail.
|
|
31
|
+
|
|
32
|
+
## Reviewer Gate
|
|
33
|
+
|
|
34
|
+
A reviewer should be able to answer:
|
|
35
|
+
|
|
36
|
+
1. What does this skill own?
|
|
37
|
+
2. When should it trigger?
|
|
38
|
+
3. When should it not trigger?
|
|
39
|
+
4. Which resources and scripts carry the real behavior?
|
|
40
|
+
5. Which evals prove the contract?
|
|
41
|
+
6. Which targets can consume the skill without semantic loss?
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# SkillOps Decision Policy
|
|
2
|
+
|
|
3
|
+
Use this policy when turning explicit-source conversation evidence into SkillOps opportunities, proposals, or release work. The goal is to make repeated user signals actionable without letting automation write durable instructions, skills, scripts, or evals without review.
|
|
4
|
+
|
|
5
|
+
## Decision Order
|
|
6
|
+
|
|
7
|
+
1. Classify the signal as no action, report only, Memory, AGENTS.md, existing Skill patch, candidate Skill, script, eval, report, merge, split, or archive.
|
|
8
|
+
2. Prefer the smallest durable surface that fixes the repeated friction.
|
|
9
|
+
3. Require evidence for every write action.
|
|
10
|
+
4. Require a proposal or approval ledger entry before any source-file write.
|
|
11
|
+
5. Map every proposed change to at least one verification command.
|
|
12
|
+
|
|
13
|
+
## Score Bands
|
|
14
|
+
|
|
15
|
+
SkillOps opportunities use a `0-100` score. Scores are advisory and never bypass approval.
|
|
16
|
+
|
|
17
|
+
| Score | Decision |
|
|
18
|
+
| ---: | --- |
|
|
19
|
+
| `85-100` | Ready for approval review |
|
|
20
|
+
| `70-84` | Proposal review |
|
|
21
|
+
| `50-69` | Observe more evidence |
|
|
22
|
+
| `0-49` | Report only or no action |
|
|
23
|
+
|
|
24
|
+
High-risk items stay proposal-only even when their score is high.
|
|
25
|
+
|
|
26
|
+
## Action Mapping
|
|
27
|
+
|
|
28
|
+
| Pattern | Default Action | Durable Surface |
|
|
29
|
+
| --- | --- | --- |
|
|
30
|
+
| `language_default` | Patch existing skill | Report template or artifact doctrine |
|
|
31
|
+
| `report_ui` | Patch existing skill | Report renderer, artifact doctrine, visual test |
|
|
32
|
+
| `approval_safety` | AGENTS update | Governance guidance or approval policy |
|
|
33
|
+
| `delivery_format` | Patch existing skill | CLI output, README, generated summary copy |
|
|
34
|
+
| `evidence_testing` | Add eval | Focused regression, report-quality, or release gate |
|
|
35
|
+
| Unknown pattern | Report only | Manual review queue |
|
|
36
|
+
|
|
37
|
+
## Safety Rules
|
|
38
|
+
|
|
39
|
+
- Do not scan private logs implicitly; only use explicit user-supplied sources.
|
|
40
|
+
- Do not store raw conversation content in reports; use redacted excerpts and aggregate counts.
|
|
41
|
+
- Do not write source files from a daily report run.
|
|
42
|
+
- Do not count SkillOps reports as public world-class evidence.
|
|
43
|
+
- Do not treat planned work, draft submissions, or generated proposals as accepted evidence.
|
|
44
|
+
|
|
45
|
+
## Verification
|
|
46
|
+
|
|
47
|
+
Every implementation that changes this policy should run:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
python3 tests/verify_skillops_opportunity.py
|
|
51
|
+
python3 tests/verify_daily_skillops.py
|
|
52
|
+
python3 tests/verify_yao_cli.py
|
|
53
|
+
```
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# Systems Thinking Doctrine
|
|
2
|
+
|
|
3
|
+
Use this doctrine when a skill needs to keep producing good behavior after repeated real use.
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
Structure drives behavior. Improve the system boundary, feedback loops, drift watch, and leverage points before adding more prose, templates, or tools.
|
|
8
|
+
|
|
9
|
+
This is inspired by general systems-thinking practice: recurring failures usually come from structure, incentives, feedback, delays, or boundary mistakes rather than from one isolated bad output.
|
|
10
|
+
|
|
11
|
+
## Apply Silently By Default
|
|
12
|
+
|
|
13
|
+
Use the systems model as author and reviewer evidence. Do not ask the user to choose between system concepts unless there is real uncertainty or a design conflict.
|
|
14
|
+
|
|
15
|
+
The user should usually see a recommendation, not a menu of theory.
|
|
16
|
+
|
|
17
|
+
## Four Questions
|
|
18
|
+
|
|
19
|
+
1. What does this skill own?
|
|
20
|
+
2. What feedback tells us it is improving or drifting?
|
|
21
|
+
3. Which failure will appear only after repeated use?
|
|
22
|
+
4. Where is the smallest change with the largest quality gain?
|
|
23
|
+
|
|
24
|
+
## Boundary Map
|
|
25
|
+
|
|
26
|
+
Define these before expanding the package:
|
|
27
|
+
|
|
28
|
+
- Owned job: the recurring behavior this skill is responsible for.
|
|
29
|
+
- Input boundary: the real material users will provide.
|
|
30
|
+
- Output boundary: the concrete hand-back users need.
|
|
31
|
+
- Non-goals: adjacent requests this skill should refuse or hand off.
|
|
32
|
+
- Human judgment boundary: places where the model should ask, escalate, or disclose uncertainty.
|
|
33
|
+
|
|
34
|
+
## Feedback Loops
|
|
35
|
+
|
|
36
|
+
Every serious skill should have at least one loop:
|
|
37
|
+
|
|
38
|
+
- Intent loop: user clarification changes the boundary.
|
|
39
|
+
- Reference loop: benchmark patterns become borrow or avoid guidance.
|
|
40
|
+
- Output loop: common output failures become self-repair checks.
|
|
41
|
+
- Reviewer loop: human feedback becomes a gate, reference, or regression case.
|
|
42
|
+
- Lifecycle loop: reuse level changes maturity tier and governance.
|
|
43
|
+
|
|
44
|
+
## Delay And Drift
|
|
45
|
+
|
|
46
|
+
Watch for problems that appear after initial success:
|
|
47
|
+
|
|
48
|
+
- Trigger drift: the skill starts activating on adjacent work.
|
|
49
|
+
- Output drift: outputs become generic, cluttered, or misaligned.
|
|
50
|
+
- Reference drift: borrowed patterns add ceremony without payoff.
|
|
51
|
+
- Governance drift: team-critical use grows faster than review discipline.
|
|
52
|
+
|
|
53
|
+
## Leverage Points
|
|
54
|
+
|
|
55
|
+
Prefer changes in this order:
|
|
56
|
+
|
|
57
|
+
1. Clarify the real job boundary.
|
|
58
|
+
2. Tune the frontmatter description.
|
|
59
|
+
3. Add one output self-repair check.
|
|
60
|
+
4. Borrow one external pattern as structure, not surface style.
|
|
61
|
+
5. Close one lifecycle or reviewer feedback loop.
|
|
62
|
+
|
|
63
|
+
Do not add more files if a description, boundary, or feedback-loop change would solve the root cause.
|
|
64
|
+
|
|
65
|
+
## Reviewer Standard
|
|
66
|
+
|
|
67
|
+
A reviewer should ask: will this skill's structure keep producing the desired behavior after repeated use?
|
|
68
|
+
|
|
69
|
+
If the answer is unclear, request one of these before approving:
|
|
70
|
+
|
|
71
|
+
- a sharper boundary
|
|
72
|
+
- a named feedback loop
|
|
73
|
+
- a drift watch
|
|
74
|
+
- a failure pattern
|
|
75
|
+
- a highest-leverage next move
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
# Telemetry And Drift Method
|
|
2
|
+
|
|
3
|
+
Telemetry turns real use into the next iteration queue. It must stay local-first and metadata-only by default.
|
|
4
|
+
|
|
5
|
+
## When To Use
|
|
6
|
+
|
|
7
|
+
Use the telemetry drift loop when a skill is production, library, governed, team-distributed, or repeatedly invoked by more than one workflow.
|
|
8
|
+
|
|
9
|
+
Do not collect raw prompts, model outputs, transcripts, notes, messages, or private files. If a reviewer needs examples, store anonymized fixtures separately and cite them as eval evidence, not telemetry.
|
|
10
|
+
|
|
11
|
+
## Event Contract
|
|
12
|
+
|
|
13
|
+
The local event stream is `reports/telemetry_events.jsonl`. It is intentionally narrow:
|
|
14
|
+
|
|
15
|
+
```json
|
|
16
|
+
{
|
|
17
|
+
"event": "skill_activation",
|
|
18
|
+
"skill": "example-skill",
|
|
19
|
+
"version": "2.0.0",
|
|
20
|
+
"source": "yao_cli",
|
|
21
|
+
"command": "quickstart",
|
|
22
|
+
"activation_type": "implicit",
|
|
23
|
+
"outcome": "accepted",
|
|
24
|
+
"failure_type": "none",
|
|
25
|
+
"timestamp": "2026-06-13T10:00:00Z"
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Allowed events: `skill_activation`, `skill_output`, `script_run`, `review_event`.
|
|
30
|
+
|
|
31
|
+
Allowed sources: `manual`, `yao_cli`, `external`, `unknown`.
|
|
32
|
+
|
|
33
|
+
Allowed outcomes: `accepted`, `edited`, `rejected`, `missed`, `failed`, `reviewed`, `unknown`.
|
|
34
|
+
|
|
35
|
+
Allowed failure types: `wrong_trigger`, `under_trigger`, `bad_output`, `missing_resource`, `script_error`, `review_overdue`, `none`.
|
|
36
|
+
|
|
37
|
+
`source` and `command` are metadata fields. They may identify that `yao.py` ran `quickstart`, `validate`, `output-exec`, or another subcommand, but they must not include arguments, prompt text, file content, model output, transcripts, or reviewer notes.
|
|
38
|
+
|
|
39
|
+
## CLI Capture
|
|
40
|
+
|
|
41
|
+
`scripts/yao.py` can record metadata-only `script_run` events automatically. It is opt-in to keep release evidence reproducible and avoid surprising local writes:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
YAO_CLI_TELEMETRY=1 python3 scripts/yao.py validate .
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Optional destination override:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
YAO_CLI_TELEMETRY=1 \
|
|
51
|
+
YAO_CLI_TELEMETRY_EVENTS=/tmp/yao-telemetry.jsonl \
|
|
52
|
+
python3 scripts/yao.py output-exec
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Equivalent global flags are available before the subcommand:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
python3 scripts/yao.py --record-cli-telemetry validate .
|
|
59
|
+
python3 scripts/yao.py --no-cli-telemetry validate .
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Successful CLI runs record `event=script_run`, `source=yao_cli`, `outcome=accepted`, and `failure_type=none`. Failed CLI runs record `outcome=failed` and `failure_type=script_error`. The command name is normalized to the subcommand only; command arguments are never recorded.
|
|
63
|
+
|
|
64
|
+
## External Client Emit
|
|
65
|
+
|
|
66
|
+
External clients, browser extensions, editor adapters, or wrapper scripts can emit one sanitized event at a time into a local spool before importing it into the aggregate drift report:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
python3 scripts/yao.py telemetry-emit . \
|
|
70
|
+
--event skill_activation \
|
|
71
|
+
--activation-type explicit \
|
|
72
|
+
--outcome accepted \
|
|
73
|
+
--command browser-extension
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
By default this writes to `.yao/telemetry_spool/external_events.jsonl`. Use `--output-jsonl` when a client needs a different local handoff path:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
python3 scripts/yao.py telemetry-emit . \
|
|
80
|
+
--output-jsonl /tmp/external-client-events.jsonl \
|
|
81
|
+
--event skill_output \
|
|
82
|
+
--activation-type manual \
|
|
83
|
+
--outcome edited \
|
|
84
|
+
--command browser-plugin
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Use `--dry-run` to validate a proposed event without writing to the spool. The emitter uses the same metadata-only contract as import: no prompt, input, output, transcript, message, note, raw text, arguments, or unknown fields are accepted.
|
|
88
|
+
|
|
89
|
+
After a client finishes a batch, import the spool:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Client Hook Recipes
|
|
96
|
+
|
|
97
|
+
Use `telemetry-hooks` to generate auditable Browser, Chrome, VS Code, CLI wrapper, and provider-adapter hook recipes:
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
python3 scripts/yao.py telemetry-hooks .
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
The report is written to:
|
|
104
|
+
|
|
105
|
+
- `reports/telemetry_hook_recipes.json`
|
|
106
|
+
- `reports/telemetry_hook_recipes.md`
|
|
107
|
+
|
|
108
|
+
Each recipe includes a dry-run command, an emit command, the target local spool, trigger points, and the privacy contract. The report intentionally sets `native_auto_capture=false`; it proves the local hook contract and metadata-only command shape, not that a host client is already natively integrated.
|
|
109
|
+
|
|
110
|
+
## Browser Native Host
|
|
111
|
+
|
|
112
|
+
`scripts/telemetry_native_host.py` implements the local side of Browser/Chrome Native Messaging. It accepts length-prefixed JSON messages on stdio, validates them with the same metadata-only telemetry contract, appends accepted events to the local spool, and rejects raw prompt/output/transcript/message/note fields.
|
|
113
|
+
|
|
114
|
+
Smoke-test one message without Browser installation:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
python3 scripts/telemetry_native_host.py . \
|
|
118
|
+
--message-json '{"event":"skill_activation","activation_type":"explicit","outcome":"accepted","failure_type":"none","command":"chrome-native-host"}'
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Generate a local launcher and Chrome native messaging manifest for an operator-installed extension:
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
python3 scripts/telemetry_native_host.py . \
|
|
125
|
+
--write-launcher /tmp/yao-telemetry-host.sh \
|
|
126
|
+
--write-manifest /tmp/yao-telemetry-host.json \
|
|
127
|
+
--allowed-origin chrome-extension://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
This is an executable native host bridge and manifest generator. It still does not prove that a specific Browser/Chrome extension is installed or sending events in the user's environment.
|
|
131
|
+
|
|
132
|
+
## External Client Import
|
|
133
|
+
|
|
134
|
+
External clients, browser extensions, editor adapters, or wrapper scripts may hand off already-sanitized JSONL through `telemetry-import`:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
python3 scripts/yao.py telemetry-import . \
|
|
138
|
+
--input-jsonl /tmp/external-client-events.jsonl \
|
|
139
|
+
--command browser-extension
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
The importer defaults missing `source` to `external` and missing `command` to `external-client`. It validates the entire JSONL file before writing anything. If any line includes a raw content field, unsupported source, unsupported outcome, unsupported failure type, unknown field, malformed JSON, or an unsafe command name, the whole import is rejected and the existing local event stream is left untouched.
|
|
143
|
+
|
|
144
|
+
Use `--dry-run` to validate an external batch without writing `reports/telemetry_events.jsonl` or refreshing aggregate reports:
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
python3 scripts/yao.py telemetry-import . --input-jsonl /tmp/external-client-events.jsonl --dry-run
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Privacy Rule
|
|
151
|
+
|
|
152
|
+
The raw JSONL event log is local evidence and should not be distributed in skill packages. The distributable artifact is the aggregate report:
|
|
153
|
+
|
|
154
|
+
- `reports/adoption_drift_report.json`
|
|
155
|
+
- `reports/adoption_drift_report.md`
|
|
156
|
+
|
|
157
|
+
Package builders should exclude `reports/telemetry_events.jsonl`. The root repository also ignores this raw event stream so local usage evidence does not become ordinary source history by accident.
|
|
158
|
+
|
|
159
|
+
## Release Interpretation
|
|
160
|
+
|
|
161
|
+
- `no-data`: acceptable for a first scaffold, but a warning for governed release review.
|
|
162
|
+
- `low`: events exist and no drift failure signal is present.
|
|
163
|
+
- `medium`: at least one missed trigger, wrong trigger, bad output, script error, or overdue review signal exists.
|
|
164
|
+
- `high`: several drift signals are present; convert them into eval cases or governance actions before calling the skill release-ready.
|
|
165
|
+
|
|
166
|
+
## Iteration Loop
|
|
167
|
+
|
|
168
|
+
1. Capture metadata-only events locally, either manually with `adoption-drift --record-event`, automatically with opt-in `yao.py` CLI capture, through `telemetry-emit` client hooks, through generated `telemetry-hooks` client recipes, or through validated external JSONL import.
|
|
169
|
+
2. Render `reports/adoption_drift_report.md`.
|
|
170
|
+
3. Convert missed triggers into trigger eval cases.
|
|
171
|
+
4. Convert bad outputs into Output Eval assertions and failure taxonomy entries.
|
|
172
|
+
5. Convert script errors into non-interactive smoke tests.
|
|
173
|
+
6. Feed review-overdue signals back into Skill Atlas and owner review.
|
|
174
|
+
7. Let Skill Atlas read only `reports/adoption_drift_report.json` and publish portfolio-level `skill_atlas/drift_signals.json`.
|
|
175
|
+
|
|
176
|
+
## Review Studio Role
|
|
177
|
+
|
|
178
|
+
Review Studio should show the aggregate telemetry gate as an operating loop, not as raw logs. A blocker means the telemetry contract was violated. A warning means the evidence is absent or the drift signal needs a follow-up case.
|
|
179
|
+
|
|
180
|
+
## Skill Atlas Role
|
|
181
|
+
|
|
182
|
+
Skill Atlas uses aggregate adoption drift reports to rank portfolio work. It should surface no-data warnings for actionable production/library/governed skills, and drift warnings for missed triggers, wrong triggers, bad outputs, missing resources, script errors, and review-overdue counts. It must not inspect raw JSONL telemetry or use non-actionable example/fixture signals as release blockers.
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Trust Security Method
|
|
2
|
+
|
|
3
|
+
Trust checks make skills safer to install and review, especially when they include scripts or are distributed to a team.
|
|
4
|
+
|
|
5
|
+
## When To Run
|
|
6
|
+
|
|
7
|
+
Run the trust report when:
|
|
8
|
+
|
|
9
|
+
- the skill contains scripts
|
|
10
|
+
- the skill will be shared with a team
|
|
11
|
+
- the package may be installed from a registry or plugin
|
|
12
|
+
- the skill reads external files, uses network access, or shells out
|
|
13
|
+
- the maturity tier is library or governed
|
|
14
|
+
|
|
15
|
+
## V0 Checks
|
|
16
|
+
|
|
17
|
+
- obvious secret patterns
|
|
18
|
+
- script help surface and interactive prompts
|
|
19
|
+
- execution-level `--help` smoke checks
|
|
20
|
+
- dependency pinning
|
|
21
|
+
- runtime trust metadata
|
|
22
|
+
- network-capable scripts
|
|
23
|
+
- bounded host policy for network-capable scripts
|
|
24
|
+
- reviewer-approved permission policy for high-permission capabilities
|
|
25
|
+
- packaged-target runtime permission probes for adapter contracts and metadata fallback limits
|
|
26
|
+
- source-contract integrity digest
|
|
27
|
+
|
|
28
|
+
## Script Interface Rule
|
|
29
|
+
|
|
30
|
+
Every Python file under `scripts/` is reviewed as part of the package trust surface.
|
|
31
|
+
|
|
32
|
+
- CLI scripts should use `argparse` so reviewers and installers can run `python3 scripts/name.py --help` before execution.
|
|
33
|
+
- The trust report executes `python3 scripts/name.py --help` for CLI scripts with `argparse`, with a short timeout, and records pass/fail evidence.
|
|
34
|
+
- Import-only modules should declare `SCRIPT_INTERFACE = "internal-module"` near the top of the file.
|
|
35
|
+
- Internal modules should also declare `SCRIPT_INTERFACE_REASON` with a short explanation of which CLI or renderer imports them.
|
|
36
|
+
- The trust report keeps internal modules in the script inventory, but excludes them from CLI help-surface warnings.
|
|
37
|
+
- A Python file without an explicit internal-module declaration is treated as a CLI script by default.
|
|
38
|
+
- CLI scripts without `argparse` are not smoke-executed; they remain visible as help-surface warnings.
|
|
39
|
+
|
|
40
|
+
## Network Policy Rule
|
|
41
|
+
|
|
42
|
+
Network-capable scripts must be bounded by a machine-readable policy before team distribution.
|
|
43
|
+
|
|
44
|
+
- Put the policy in `security/network_policy.json`.
|
|
45
|
+
- Add one entry per network-capable script under `scripts`.
|
|
46
|
+
- Declare `allowed_hosts`, `allowed_path_prefixes`, purpose, timeout, auth mode, and custom-host behavior.
|
|
47
|
+
- Default to HTTPS-only and deny custom hosts unless a CLI flag or environment variable makes the override explicit.
|
|
48
|
+
- The trust report compares HTTPS URL literals in each script with `allowed_hosts`; missing or mismatched entries remain reviewer-visible warnings.
|
|
49
|
+
|
|
50
|
+
## Permission Approval Rule
|
|
51
|
+
|
|
52
|
+
High-permission capabilities must be approved before governed release.
|
|
53
|
+
|
|
54
|
+
- Put approvals in `security/permission_policy.json`.
|
|
55
|
+
- Cover each required capability detected by the trust report: `network`, `file_write`, `subprocess`, and `interactive` when present.
|
|
56
|
+
- Each approval must include `decision: approved`, `reviewer`, `scope`, `reason`, `expires_at`, `evidence`, and `target_enforcement`.
|
|
57
|
+
- Review Studio surfaces these checks as the `permission-gates` gate.
|
|
58
|
+
- Missing, invalid, or expired approvals block governed mode. They remain visible warnings in lighter modes.
|
|
59
|
+
|
|
60
|
+
## Runtime Permission Probe Rule
|
|
61
|
+
|
|
62
|
+
Permission approval validates reviewer intent. Runtime permission probes validate the generated target adapters after packaging.
|
|
63
|
+
|
|
64
|
+
- Run `python3 scripts/probe_runtime_permissions.py . --package-dir dist` after `cross_packager.py`.
|
|
65
|
+
- The probe writes `reports/runtime_permission_probes.json` and `reports/runtime_permission_probes.md`.
|
|
66
|
+
- A passing probe requires every target adapter to carry `permission_contract`, `target_permission_contract`, declared capabilities, a native-enforcement boolean, representation notes, and operator notes.
|
|
67
|
+
- When `reports/install_simulation.json` matches the same package directory, the probe also reports installer enforcement counts from the install simulation. This proves the local package installer gate is wired, but it does not count as target-client native enforcement.
|
|
68
|
+
- If a target has no native enforcement, the probe must mark an explicit metadata fallback and keep residual risk reviewer-visible.
|
|
69
|
+
- Review Studio surfaces this as the `permission-runtime` gate.
|
|
70
|
+
|
|
71
|
+
## Release Rule
|
|
72
|
+
|
|
73
|
+
High-risk secrets or unrestricted remote inline execution block governed release. Warnings are reviewer-visible but do not block v0 unless the release owner decides the target environment requires stricter policy.
|
|
74
|
+
|
|
75
|
+
## Hash Scope
|
|
76
|
+
|
|
77
|
+
`package_sha256` is a stable source-contract digest, not a generated archive digest. It covers the skill entrypoint, metadata, scripts, references, evals, runtime, templates, security notes, Skill IR, and root control files. It deliberately excludes generated `reports/`, packaged `dist/` archives, and raw local telemetry so a report render or local adoption log cannot mutate the trust fingerprint.
|
|
78
|
+
|
|
79
|
+
Use the package verification or registry audit report for the distributable archive checksum.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# User Memory Policy
|
|
2
|
+
|
|
3
|
+
This skill treats user preference memory as local, explicit, and reviewable.
|
|
4
|
+
|
|
5
|
+
## Principles
|
|
6
|
+
|
|
7
|
+
- **Explicit source only**: adaptive scans require a user-provided file path.
|
|
8
|
+
- **Local first**: no network access is needed for preference extraction.
|
|
9
|
+
- **No implicit private logs**: shell history, browser history, mail, and hidden chat logs are blocked by default.
|
|
10
|
+
- **Repeated signals only**: one-off statements are recorded as discarded signals unless they meet the configured support threshold.
|
|
11
|
+
- **Redacted evidence**: stored excerpts must remove secrets, tokens, email addresses, and local absolute paths.
|
|
12
|
+
- **Proposal before patch**: preference memory can generate proposals, not automatic source edits.
|
|
13
|
+
|
|
14
|
+
## Allowed Inputs
|
|
15
|
+
|
|
16
|
+
Recommended inputs are curated JSONL, Markdown, or text files prepared for review. JSONL records should use a field such as `text`, `message`, `content`, `excerpt`, `prompt`, `note`, or `body`.
|
|
17
|
+
|
|
18
|
+
## Blocked By Default
|
|
19
|
+
|
|
20
|
+
The scanner refuses common shell history files such as `.zsh_history`, `.bash_history`, and `.fish_history` unless an explicit override is added for a controlled test. Even with an override, the output remains redacted and proposal-only.
|
|
21
|
+
|
|
22
|
+
## Retention
|
|
23
|
+
|
|
24
|
+
Generated reports store only summarized patterns and short redacted excerpts. They should not be treated as a full transcript, chat archive, or durable personal memory store.
|
|
25
|
+
|
|
26
|
+
## Upgrade Path
|
|
27
|
+
|
|
28
|
+
A future patch-application stage must add:
|
|
29
|
+
|
|
30
|
+
- human approval ledger;
|
|
31
|
+
- allowlisted target files;
|
|
32
|
+
- dry-run diffs;
|
|
33
|
+
- regression command execution;
|
|
34
|
+
- rollback artifacts;
|
|
35
|
+
- reviewer-visible audit trail.
|