@hybridlabor-api/aos 4.4.1 → 4.4.2-beta.1
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/.agents/skills/firecrawl/SKILL.md +149 -0
- package/.agents/skills/firecrawl/rules/install.md +82 -0
- package/.agents/skills/firecrawl/rules/security.md +26 -0
- package/.agents/skills/firecrawl-agent/SKILL.md +58 -0
- package/.agents/skills/firecrawl-build/SKILL.md +39 -0
- package/.agents/skills/firecrawl-build-interact/SKILL.md +68 -0
- package/.agents/skills/firecrawl-build-onboarding/SKILL.md +103 -0
- package/.agents/skills/firecrawl-build-onboarding/references/auth-flow.md +39 -0
- package/.agents/skills/firecrawl-build-onboarding/references/project-setup.md +20 -0
- package/.agents/skills/firecrawl-build-onboarding/references/sdk-installation.md +17 -0
- package/.agents/skills/firecrawl-build-scrape/SKILL.md +69 -0
- package/.agents/skills/firecrawl-build-search/SKILL.md +69 -0
- package/.agents/skills/firecrawl-crawl/SKILL.md +59 -0
- package/.agents/skills/firecrawl-download/SKILL.md +70 -0
- package/.agents/skills/firecrawl-interact/SKILL.md +84 -0
- package/.agents/skills/firecrawl-map/SKILL.md +51 -0
- package/.agents/skills/firecrawl-scrape/SKILL.md +69 -0
- package/.agents/skills/firecrawl-search/SKILL.md +60 -0
- package/CLAUDE.md +573 -0
- package/README.de.md +0 -8
- package/README.md +0 -8
- package/README.pt.md +0 -8
- package/assets/brand/ao-ant-mark.svg +91 -0
- package/assets/brand/bdb-core-mark.svg +34 -0
- package/assets/brand/heimdall-guardian-mark.svg +16 -0
- package/assets/brand/memb-crystal-mark.svg +18 -0
- package/bin/aos-config.mjs +89 -0
- package/bin/aos-dashboard.mjs +608 -0
- package/bin/aos-uninstall.mjs +227 -0
- package/docs/sessions/audit-2026-09-14-silent-failures.md +114 -0
- package/docs/skills_table.md +0 -3
- package/installer.js +471 -237
- package/mcps/RhinoMCP/cc-plugin/.claude/settings.json +10 -0
- package/mcps/after-effects-mcp/build/index.js +840 -0
- package/mcps/after-effects-mcp/build/scripts/applyEffect.jsx +153 -0
- package/mcps/after-effects-mcp/build/scripts/applyEffectTemplate.jsx +218 -0
- package/mcps/after-effects-mcp/build/scripts/createComposition.jsx +71 -0
- package/mcps/after-effects-mcp/build/scripts/createShapeLayer.jsx +147 -0
- package/mcps/after-effects-mcp/build/scripts/createSolidLayer.jsx +114 -0
- package/mcps/after-effects-mcp/build/scripts/createTextLayer.jsx +115 -0
- package/mcps/after-effects-mcp/build/scripts/getLayerInfo.jsx +192 -0
- package/mcps/after-effects-mcp/build/scripts/getProjectInfo.jsx +90 -0
- package/mcps/after-effects-mcp/build/scripts/listCompositions.jsx +50 -0
- package/mcps/after-effects-mcp/build/scripts/mcp-bridge-auto.jsx +1773 -0
- package/mcps/after-effects-mcp/build/scripts/setLayerProperties.jsx +160 -0
- package/mcps/computer-use-mcp/dist/client.d.ts +150 -0
- package/mcps/computer-use-mcp/dist/client.js +136 -0
- package/mcps/computer-use-mcp/dist/entrypoint.d.ts +16 -0
- package/mcps/computer-use-mcp/dist/entrypoint.js +26 -0
- package/mcps/computer-use-mcp/dist/native.d.ts +212 -0
- package/mcps/computer-use-mcp/dist/native.js +50 -0
- package/mcps/computer-use-mcp/dist/server.d.ts +32 -0
- package/mcps/computer-use-mcp/dist/server.js +342 -0
- package/mcps/computer-use-mcp/dist/session.d.ts +101 -0
- package/mcps/computer-use-mcp/dist/session.js +2372 -0
- package/package.json +13 -4
- package/skills/global_config/aos-project-init/SKILL.md +97 -130
- package/skills/global_config/aos-project-init/assets/openwikiignore.template +62 -0
- package/skills/global_config/aos-project-init/scripts/aos-project-doctor.mjs +38 -1
- package/skills/global_config/aos-setup/SKILL.md +98 -8
- package/skills/global_config/aos-setup/scripts/aos-doctor.mjs +21 -2
- package/skills/global_config/ask-tim/SKILL.md +2 -7
- package/skills/global_config/openwiki-skill/scripts/openwiki_daemon.py +65 -12
- package/bin/setup-saas.mjs +0 -792
- package/mcps/blender-mcp-server/.dockerignore +0 -19
- package/mcps/blender-mcp-server/.github/workflows/ci.yml +0 -67
- package/mcps/blender-mcp-server/.github/workflows/publish-pypi.yml +0 -54
- package/mcps/blender-mcp-server/CHANGELOG.md +0 -64
- package/mcps/blender-mcp-server/CONTRIBUTING.md +0 -107
- package/mcps/blender-mcp-server/Dockerfile +0 -19
- package/mcps/blender-mcp-server/LICENSE +0 -21
- package/mcps/blender-mcp-server/README.md +0 -409
- package/mcps/blender-mcp-server/addon/__init__.py +0 -1440
- package/mcps/blender-mcp-server/addon/models.py +0 -223
- package/mcps/blender-mcp-server/pyproject.toml +0 -120
- package/mcps/blender-mcp-server/scripts/blender_bridge_request.py +0 -71
- package/mcps/blender-mcp-server/scripts/blender_create_test_cube.py +0 -49
- package/mcps/blender-mcp-server/scripts/blender_scene_info.py +0 -38
- package/mcps/blender-mcp-server/scripts/build_addon_zip.sh +0 -29
- package/mcps/blender-mcp-server/scripts/demos/README.md +0 -186
- package/mcps/blender-mcp-server/scripts/demos/dam_break_scene.py +0 -276
- package/mcps/blender-mcp-server/scripts/demos/open_dam_break_gui.py +0 -33
- package/mcps/blender-mcp-server/scripts/demos/pipe_movement_study.py +0 -518
- package/mcps/blender-mcp-server/scripts/demos/pipe_pressure_failure_scene.py +0 -806
- package/mcps/blender-mcp-server/scripts/demos/procedural_dam_break_scene.py +0 -600
- package/mcps/blender-mcp-server/scripts/demos/run_dam_break.py +0 -510
- package/mcps/blender-mcp-server/scripts/launch_blender_gui.py +0 -41
- package/mcps/blender-mcp-server/scripts/library/README.md +0 -64
- package/mcps/blender-mcp-server/scripts/library/apply_transforms.py +0 -46
- package/mcps/blender-mcp-server/scripts/library/camera.py +0 -51
- package/mcps/blender-mcp-server/scripts/library/collections.py +0 -65
- package/mcps/blender-mcp-server/scripts/library/create_mesh.py +0 -41
- package/mcps/blender-mcp-server/scripts/library/effector.py +0 -48
- package/mcps/blender-mcp-server/scripts/library/fluid_domain.py +0 -80
- package/mcps/blender-mcp-server/scripts/library/fluid_inflow.py +0 -98
- package/mcps/blender-mcp-server/scripts/library/frame_range.py +0 -35
- package/mcps/blender-mcp-server/scripts/library/keyframes.py +0 -59
- package/mcps/blender-mcp-server/scripts/library/rigid_body.py +0 -52
- package/mcps/blender-mcp-server/scripts/library/save_blend.py +0 -40
- package/mcps/blender-mcp-server/scripts/server_start.sh +0 -26
- package/mcps/blender-mcp-server/src/blender_mcp_server/__init__.py +0 -3
- package/mcps/blender-mcp-server/src/blender_mcp_server/headless.py +0 -330
- package/mcps/blender-mcp-server/src/blender_mcp_server/server.py +0 -606
- package/mcps/davinci-mcp-professional/.bandit +0 -35
- package/mcps/davinci-mcp-professional/.claude/commands/security-review.md +0 -191
- package/mcps/davinci-mcp-professional/.claude/settings.json +0 -1
- package/mcps/davinci-mcp-professional/.editorconfig +0 -27
- package/mcps/davinci-mcp-professional/.gitattributes +0 -207
- package/mcps/davinci-mcp-professional/.github/CODEOWNERS +0 -2
- package/mcps/davinci-mcp-professional/.github/ISSUE_TEMPLATE/bug_report.md +0 -33
- package/mcps/davinci-mcp-professional/.github/ISSUE_TEMPLATE/feature_request.md +0 -19
- package/mcps/davinci-mcp-professional/.github/PULL_REQUEST_TEMPLATE.md +0 -20
- package/mcps/davinci-mcp-professional/.github/SECURITY.md +0 -97
- package/mcps/davinci-mcp-professional/.github/dependabot.yml +0 -27
- package/mcps/davinci-mcp-professional/.github/workflows/ci.yml +0 -39
- package/mcps/davinci-mcp-professional/ATTRIBUTION.md +0 -4
- package/mcps/davinci-mcp-professional/AUTHORS.md +0 -9
- package/mcps/davinci-mcp-professional/BUGS.md +0 -55
- package/mcps/davinci-mcp-professional/CLAUDE.md +0 -229
- package/mcps/davinci-mcp-professional/CONTRIBUTING.md +0 -51
- package/mcps/davinci-mcp-professional/COPYING.md +0 -228
- package/mcps/davinci-mcp-professional/Doxyfile +0 -379
- package/mcps/davinci-mcp-professional/README.md +0 -143
- package/mcps/davinci-mcp-professional/SECURITY.md +0 -40
- package/mcps/davinci-mcp-professional/USING.md +0 -301
- package/mcps/davinci-mcp-professional/VERSION.md +0 -13
- package/mcps/davinci-mcp-professional/build.py +0 -169
- package/mcps/davinci-mcp-professional/claude_desktop_config_template.json +0 -11
- package/mcps/davinci-mcp-professional/hooks/ci-check.sh +0 -29
- package/mcps/davinci-mcp-professional/hooks/pre-push +0 -46
- package/mcps/davinci-mcp-professional/main.py +0 -40
- package/mcps/davinci-mcp-professional/mcp_server.py +0 -30
- package/mcps/davinci-mcp-professional/pyproject.toml +0 -115
- package/mcps/davinci-mcp-professional/security_audit.py +0 -379
- package/mcps/davinci-mcp-professional/src/davinci_mcp/__init__.py +0 -19
- package/mcps/davinci-mcp-professional/src/davinci_mcp/cli.py +0 -138
- package/mcps/davinci-mcp-professional/src/davinci_mcp/resolve_client.py +0 -342
- package/mcps/davinci-mcp-professional/src/davinci_mcp/resources/__init__.py +0 -60
- package/mcps/davinci-mcp-professional/src/davinci_mcp/server.py +0 -185
- package/mcps/davinci-mcp-professional/src/davinci_mcp/tools/__init__.py +0 -146
- package/mcps/davinci-mcp-professional/src/davinci_mcp/types.py +0 -125
- package/mcps/davinci-mcp-professional/src/davinci_mcp/utils/__init__.py +0 -19
- package/mcps/davinci-mcp-professional/src/davinci_mcp/utils/platform.py +0 -239
- package/mcps/davinci-mcp-professional/test.py +0 -186
- package/mcps/davinci-mcp-professional/uv.lock +0 -2073
- package/mcps/davinci-resolve-mcp/.claude/skills/media-analysis.md +0 -44
- package/mcps/davinci-resolve-mcp/.clinerules +0 -17
- package/mcps/davinci-resolve-mcp/.cursorrules +0 -17
- package/mcps/davinci-resolve-mcp/.github/copilot-instructions.md +0 -17
- package/mcps/davinci-resolve-mcp/.github/workflows/npm-publish.yml +0 -109
- package/mcps/davinci-resolve-mcp/.windsurfrules +0 -17
- package/mcps/davinci-resolve-mcp/AGENTS.md +0 -114
- package/mcps/davinci-resolve-mcp/CHANGELOG.md +0 -2648
- package/mcps/davinci-resolve-mcp/CLAUDE.md +0 -15
- package/mcps/davinci-resolve-mcp/LICENSE +0 -21
- package/mcps/davinci-resolve-mcp/README.md +0 -173
- package/mcps/davinci-resolve-mcp/SECURITY.md +0 -53
- package/mcps/davinci-resolve-mcp/bin/davinci-resolve-mcp.mjs +0 -450
- package/mcps/davinci-resolve-mcp/examples/README.md +0 -53
- package/mcps/davinci-resolve-mcp/examples/markers/README.md +0 -81
- package/mcps/davinci-resolve-mcp/examples/media/README.md +0 -94
- package/mcps/davinci-resolve-mcp/examples/timeline/README.md +0 -98
- package/mcps/davinci-resolve-mcp/install.py +0 -1687
- package/mcps/davinci-resolve-mcp/package.json +0 -52
- package/mcps/davinci-resolve-mcp/release-notes/v2.22.0.md +0 -51
- package/mcps/davinci-resolve-mcp/release-notes/v2.23.0.md +0 -51
- package/mcps/davinci-resolve-mcp/release-notes/v2.23.1.md +0 -35
- package/mcps/davinci-resolve-mcp/release-notes/v2.24.1.md +0 -32
- package/mcps/davinci-resolve-mcp/scripts/audit_api_parity.py +0 -275
- package/mcps/davinci-resolve-mcp/scripts/audit_readwrite_symmetry.py +0 -80
- package/mcps/davinci-resolve-mcp/scripts/doctor.py +0 -227
- package/mcps/davinci-resolve-mcp/scripts/gen_api_limitations.py +0 -144
- package/mcps/davinci-resolve-mcp/scripts/live_media_analysis_polish_probe.py +0 -65
- package/mcps/davinci-resolve-mcp/scripts/measure_bridge_cost.py +0 -65
- package/mcps/davinci-resolve-mcp/scripts/regen_panel_screenshots.py +0 -76
- package/mcps/davinci-resolve-mcp/src/__init__.py +0 -3
- package/mcps/davinci-resolve-mcp/src/analysis_dashboard.py +0 -15505
- package/mcps/davinci-resolve-mcp/src/batch_cli.py +0 -540
- package/mcps/davinci-resolve-mcp/src/control_panel.py +0 -13
- package/mcps/davinci-resolve-mcp/src/granular/__init__.py +0 -17
- package/mcps/davinci-resolve-mcp/src/granular/common.py +0 -741
- package/mcps/davinci-resolve-mcp/src/granular/folder.py +0 -420
- package/mcps/davinci-resolve-mcp/src/granular/gallery.py +0 -306
- package/mcps/davinci-resolve-mcp/src/granular/graph.py +0 -309
- package/mcps/davinci-resolve-mcp/src/granular/media_pool.py +0 -679
- package/mcps/davinci-resolve-mcp/src/granular/media_pool_item.py +0 -1020
- package/mcps/davinci-resolve-mcp/src/granular/media_storage.py +0 -179
- package/mcps/davinci-resolve-mcp/src/granular/project.py +0 -1654
- package/mcps/davinci-resolve-mcp/src/granular/resolve_control.py +0 -538
- package/mcps/davinci-resolve-mcp/src/granular/timeline.py +0 -1075
- package/mcps/davinci-resolve-mcp/src/granular/timeline_item.py +0 -2251
- package/mcps/davinci-resolve-mcp/src/resolve_mcp_server.py +0 -43
- package/mcps/davinci-resolve-mcp/src/server.py +0 -24116
- package/mcps/davinci-resolve-mcp/src/utils/__init__.py +0 -3
- package/mcps/davinci-resolve-mcp/src/utils/actor_identity.py +0 -46
- package/mcps/davinci-resolve-mcp/src/utils/analysis_caps.py +0 -678
- package/mcps/davinci-resolve-mcp/src/utils/analysis_memory.py +0 -755
- package/mcps/davinci-resolve-mcp/src/utils/analysis_runs.py +0 -307
- package/mcps/davinci-resolve-mcp/src/utils/analysis_store.py +0 -945
- package/mcps/davinci-resolve-mcp/src/utils/api_truth.py +0 -525
- package/mcps/davinci-resolve-mcp/src/utils/app_control.py +0 -319
- package/mcps/davinci-resolve-mcp/src/utils/audio_fairlight_live_probe.py +0 -263
- package/mcps/davinci-resolve-mcp/src/utils/brain_edits.py +0 -387
- package/mcps/davinci-resolve-mcp/src/utils/bridge_metrics.py +0 -76
- package/mcps/davinci-resolve-mcp/src/utils/cdl.py +0 -20
- package/mcps/davinci-resolve-mcp/src/utils/clip_query.py +0 -85
- package/mcps/davinci-resolve-mcp/src/utils/cloud_operations.py +0 -192
- package/mcps/davinci-resolve-mcp/src/utils/color_grade_live_probe.py +0 -444
- package/mcps/davinci-resolve-mcp/src/utils/contracts.py +0 -102
- package/mcps/davinci-resolve-mcp/src/utils/cut_ir.py +0 -115
- package/mcps/davinci-resolve-mcp/src/utils/dctl_templates.py +0 -368
- package/mcps/davinci-resolve-mcp/src/utils/deep_vision.py +0 -643
- package/mcps/davinci-resolve-mcp/src/utils/destructive_hook.py +0 -606
- package/mcps/davinci-resolve-mcp/src/utils/edit_engine.py +0 -737
- package/mcps/davinci-resolve-mcp/src/utils/embeddings.py +0 -922
- package/mcps/davinci-resolve-mcp/src/utils/entities.py +0 -579
- package/mcps/davinci-resolve-mcp/src/utils/extension_authoring_live_probe.py +0 -292
- package/mcps/davinci-resolve-mcp/src/utils/failure_tracker.py +0 -119
- package/mcps/davinci-resolve-mcp/src/utils/fuse_templates.py +0 -1968
- package/mcps/davinci-resolve-mcp/src/utils/fusion_composition_live_probe.py +0 -284
- package/mcps/davinci-resolve-mcp/src/utils/fusion_group_settings.py +0 -334
- package/mcps/davinci-resolve-mcp/src/utils/layout_presets.py +0 -333
- package/mcps/davinci-resolve-mcp/src/utils/mcp_stdio.py +0 -32
- package/mcps/davinci-resolve-mcp/src/utils/mcp_transport.py +0 -128
- package/mcps/davinci-resolve-mcp/src/utils/media_analysis.py +0 -7690
- package/mcps/davinci-resolve-mcp/src/utils/media_analysis_jobs.py +0 -805
- package/mcps/davinci-resolve-mcp/src/utils/media_pool_changes.py +0 -121
- package/mcps/davinci-resolve-mcp/src/utils/media_pool_ingest_live_probe.py +0 -592
- package/mcps/davinci-resolve-mcp/src/utils/multicam.py +0 -393
- package/mcps/davinci-resolve-mcp/src/utils/object_inspection.py +0 -301
- package/mcps/davinci-resolve-mcp/src/utils/page_lock.py +0 -75
- package/mcps/davinci-resolve-mcp/src/utils/platform.py +0 -157
- package/mcps/davinci-resolve-mcp/src/utils/proc.py +0 -26
- package/mcps/davinci-resolve-mcp/src/utils/project_cleanup.py +0 -73
- package/mcps/davinci-resolve-mcp/src/utils/project_lifecycle_live_probe.py +0 -376
- package/mcps/davinci-resolve-mcp/src/utils/project_lint.py +0 -131
- package/mcps/davinci-resolve-mcp/src/utils/project_properties.py +0 -601
- package/mcps/davinci-resolve-mcp/src/utils/project_spec.py +0 -459
- package/mcps/davinci-resolve-mcp/src/utils/readback.py +0 -91
- package/mcps/davinci-resolve-mcp/src/utils/render_deliver_live_probe.py +0 -384
- package/mcps/davinci-resolve-mcp/src/utils/resolve_ai_governance.py +0 -214
- package/mcps/davinci-resolve-mcp/src/utils/resolve_ai_ledger.py +0 -244
- package/mcps/davinci-resolve-mcp/src/utils/resolve_busy.py +0 -171
- package/mcps/davinci-resolve-mcp/src/utils/resolve_connection.py +0 -77
- package/mcps/davinci-resolve-mcp/src/utils/review_annotation_live_probe.py +0 -352
- package/mcps/davinci-resolve-mcp/src/utils/script_templates.py +0 -1193
- package/mcps/davinci-resolve-mcp/src/utils/shot_relationships.py +0 -544
- package/mcps/davinci-resolve-mcp/src/utils/structural_diff.py +0 -175
- package/mcps/davinci-resolve-mcp/src/utils/sync_detection.py +0 -889
- package/mcps/davinci-resolve-mcp/src/utils/timeline_brain_db.py +0 -826
- package/mcps/davinci-resolve-mcp/src/utils/timeline_conform_live_probe.py +0 -280
- package/mcps/davinci-resolve-mcp/src/utils/timeline_kernel_live_probe.py +0 -1092
- package/mcps/davinci-resolve-mcp/src/utils/timeline_kernel_probe.py +0 -185
- package/mcps/davinci-resolve-mcp/src/utils/timeline_title_text.py +0 -87
- package/mcps/davinci-resolve-mcp/src/utils/timeline_versioning.py +0 -730
- package/mcps/davinci-resolve-mcp/src/utils/update_check.py +0 -685
- package/mcps/vectorworks-mcp/.dockerignore +0 -8
- package/mcps/vectorworks-mcp/Dockerfile +0 -28
- package/mcps/vectorworks-mcp/README.md +0 -156
- package/mcps/vectorworks-mcp/app/__init__.py +0 -2
- package/mcps/vectorworks-mcp/app/api.py +0 -52
- package/mcps/vectorworks-mcp/app/chunking.py +0 -56
- package/mcps/vectorworks-mcp/app/config.py +0 -29
- package/mcps/vectorworks-mcp/app/embeddings.py +0 -28
- package/mcps/vectorworks-mcp/app/indexer.py +0 -106
- package/mcps/vectorworks-mcp/app/main.py +0 -33
- package/mcps/vectorworks-mcp/app/mcp_server.py +0 -71
- package/mcps/vectorworks-mcp/app/search.py +0 -54
- package/mcps/vectorworks-mcp/app/utils.py +0 -14
- package/mcps/vectorworks-mcp/data/.gitkeep +0 -1
- package/mcps/vectorworks-mcp/data/vw-app-help/VW2022_PluginScript.htm +0 -95
- package/mcps/vectorworks-mcp/data/vw-app-help/VW2022_ScriptEditor.htm +0 -266
- package/mcps/vectorworks-mcp/data/vw-app-help/VW2022_Scripting.htm +0 -106
- package/mcps/vectorworks-mcp/data/vw-app-help/VW2023_CreatingScriptedPlugins.htm +0 -327
- package/mcps/vectorworks-mcp/data/vw-app-help/VW2024_RunningScripts.htm +0 -116
- package/mcps/vectorworks-mcp/data/vw-devwiki/VS_Function_Reference_category.html +0 -2129
- package/mcps/vectorworks-mcp/data/vw-jp-ref/ObjectsSymbols.html +0 -2035
- package/mcps/vectorworks-mcp/data/vw-jp-ref/ScriptFunctionReference.html +0 -29
- package/mcps/vectorworks-mcp/design.md +0 -57
- package/mcps/vectorworks-mcp/docker-compose.yml +0 -18
- package/mcps/vectorworks-mcp/index/.gitkeep +0 -1
- package/mcps/vectorworks-mcp/index/meta.jsonl +0 -3956
- package/mcps/vectorworks-mcp/index/vw.faiss +0 -0
- package/mcps/vectorworks-mcp/requirements.txt +0 -10
- package/mcps/vectorworks-mcp/scripts/fetch_docs_minimal.sh +0 -84
- package/mcps/vectorworks-mcp/scripts/fetch_github_vectorworks.sh +0 -85
- package/mcps/vectorworks-mcp/templates/index.html +0 -40
- package/scripts/ecosystem-health-audit.js +0 -257
- package/skills/bdb-dev-os-skill/SKILL.md +0 -49
- package/skills/bdb-dev-os-skill/package.json +0 -11
- package/skills/bdbsaastraining/SKILL.md +0 -316
- package/skills/bdbsaastraining/references/exam-pool.md +0 -313
- package/skills/bdbsaastraining/references/interaction-modes.md +0 -94
- package/skills/bdbsaastraining/references/track-a-ai-agent.md +0 -111
- package/skills/bdbsaastraining/references/track-b-wordpress.md +0 -111
- package/skills/bdbsaastraining/references/track-c-mailserver.md +0 -107
- package/skills/bdbsaastraining/references/track-d-debian.md +0 -109
- package/skills/bdbsaastraining/references/track-e-custom.md +0 -83
- package/skills/bdbsaastraining/scripts/build_profile.py +0 -529
- package/skills/bdbsaastraining/scripts/generate_certificate.py +0 -161
- package/skills/bdbsaastraining/scripts/preflight_check.sh +0 -150
- package/skills/bdbsaastraining/templates/certificate_template.html +0 -508
- package/skills/global_config/bdb-ecosystem-health/SKILL.md +0 -68
- package/skills/global_config/bdbsaas-ops/SKILL.md +0 -16
- package/skills/global_config/bdbsaashost/SKILL.md +0 -125
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
allowed-tools: Bash(git diff:*), Bash(git status:*), Bash(git log:*), Bash(git show:*), Bash(git remote show:*), Read, Glob, Grep, LS, Task
|
|
3
|
-
description: Complete a security review of the pending changes on the current branch
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
You are a senior security engineer conducting a focused security review of the changes on this branch.
|
|
7
|
-
|
|
8
|
-
GIT STATUS:
|
|
9
|
-
|
|
10
|
-
```
|
|
11
|
-
!`git status`
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
FILES MODIFIED:
|
|
15
|
-
|
|
16
|
-
```
|
|
17
|
-
!`git diff --name-only origin/HEAD...`
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
COMMITS:
|
|
21
|
-
|
|
22
|
-
```
|
|
23
|
-
!`git log --no-decorate origin/HEAD...`
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
DIFF CONTENT:
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
!`git diff --merge-base origin/HEAD`
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
Review the complete diff above. This contains all code changes in the PR.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
OBJECTIVE:
|
|
36
|
-
Perform a security-focused code review to identify HIGH-CONFIDENCE security vulnerabilities that could have real exploitation potential. This is not a general code review - focus ONLY on security implications newly added by this PR. Do not comment on existing security concerns.
|
|
37
|
-
|
|
38
|
-
CRITICAL INSTRUCTIONS:
|
|
39
|
-
1. MINIMIZE FALSE POSITIVES: Only flag issues where you're >80% confident of actual exploitability
|
|
40
|
-
2. AVOID NOISE: Skip theoretical issues, style concerns, or low-impact findings
|
|
41
|
-
3. FOCUS ON IMPACT: Prioritize vulnerabilities that could lead to unauthorized access, data breaches, or system compromise
|
|
42
|
-
4. EXCLUSIONS: Do NOT report the following issue types:
|
|
43
|
-
- Denial of Service (DOS) vulnerabilities, even if they allow service disruption
|
|
44
|
-
- Secrets or sensitive data stored on disk (these are handled by other processes)
|
|
45
|
-
- Rate limiting or resource exhaustion issues
|
|
46
|
-
|
|
47
|
-
SECURITY CATEGORIES TO EXAMINE:
|
|
48
|
-
|
|
49
|
-
**Input Validation Vulnerabilities:**
|
|
50
|
-
- SQL injection via unsanitized user input
|
|
51
|
-
- Command injection in system calls or subprocesses
|
|
52
|
-
- XXE injection in XML parsing
|
|
53
|
-
- Template injection in templating engines
|
|
54
|
-
- NoSQL injection in database queries
|
|
55
|
-
- Path traversal in file operations
|
|
56
|
-
|
|
57
|
-
**Authentication & Authorization Issues:**
|
|
58
|
-
- Authentication bypass logic
|
|
59
|
-
- Privilege escalation paths
|
|
60
|
-
- Session management flaws
|
|
61
|
-
- JWT token vulnerabilities
|
|
62
|
-
- Authorization logic bypasses
|
|
63
|
-
|
|
64
|
-
**Crypto & Secrets Management:**
|
|
65
|
-
- Hardcoded API keys, passwords, or tokens
|
|
66
|
-
- Weak cryptographic algorithms or implementations
|
|
67
|
-
- Improper key storage or management
|
|
68
|
-
- Cryptographic randomness issues
|
|
69
|
-
- Certificate validation bypasses
|
|
70
|
-
|
|
71
|
-
**Injection & Code Execution:**
|
|
72
|
-
- Remote code execution via deseralization
|
|
73
|
-
- Pickle injection in Python
|
|
74
|
-
- YAML deserialization vulnerabilities
|
|
75
|
-
- Eval injection in dynamic code execution
|
|
76
|
-
- XSS vulnerabilities in web applications (reflected, stored, DOM-based)
|
|
77
|
-
|
|
78
|
-
**Data Exposure:**
|
|
79
|
-
- Sensitive data logging or storage
|
|
80
|
-
- PII handling violations
|
|
81
|
-
- API endpoint data leakage
|
|
82
|
-
- Debug information exposure
|
|
83
|
-
|
|
84
|
-
Additional notes:
|
|
85
|
-
- Even if something is only exploitable from the local network, it can still be a HIGH severity issue
|
|
86
|
-
|
|
87
|
-
ANALYSIS METHODOLOGY:
|
|
88
|
-
|
|
89
|
-
Phase 1 - Repository Context Research (Use file search tools):
|
|
90
|
-
- Identify existing security frameworks and libraries in use
|
|
91
|
-
- Look for established secure coding patterns in the codebase
|
|
92
|
-
- Examine existing sanitization and validation patterns
|
|
93
|
-
- Understand the project's security model and threat model
|
|
94
|
-
|
|
95
|
-
Phase 2 - Comparative Analysis:
|
|
96
|
-
- Compare new code changes against existing security patterns
|
|
97
|
-
- Identify deviations from established secure practices
|
|
98
|
-
- Look for inconsistent security implementations
|
|
99
|
-
- Flag code that introduces new attack surfaces
|
|
100
|
-
|
|
101
|
-
Phase 3 - Vulnerability Assessment:
|
|
102
|
-
- Examine each modified file for security implications
|
|
103
|
-
- Trace data flow from user inputs to sensitive operations
|
|
104
|
-
- Look for privilege boundaries being crossed unsafely
|
|
105
|
-
- Identify injection points and unsafe deserialization
|
|
106
|
-
|
|
107
|
-
REQUIRED OUTPUT FORMAT:
|
|
108
|
-
|
|
109
|
-
You MUST output your findings in markdown. The markdown output should contain the file, line number, severity, category (e.g. `sql_injection` or `xss`), description, exploit scenario, and fix recommendation.
|
|
110
|
-
|
|
111
|
-
For example:
|
|
112
|
-
|
|
113
|
-
# Vuln 1: XSS: `foo.py:42`
|
|
114
|
-
|
|
115
|
-
* Severity: High
|
|
116
|
-
* Description: User input from `username` parameter is directly interpolated into HTML without escaping, allowing reflected XSS attacks
|
|
117
|
-
* Exploit Scenario: Attacker crafts URL like /bar?q=<script>alert(document.cookie)</script> to execute JavaScript in victim's browser, enabling session hijacking or data theft
|
|
118
|
-
* Recommendation: Use Flask's escape() function or Jinja2 templates with auto-escaping enabled for all user inputs rendered in HTML
|
|
119
|
-
|
|
120
|
-
SEVERITY GUIDELINES:
|
|
121
|
-
- **HIGH**: Directly exploitable vulnerabilities leading to RCE, data breach, or authentication bypass
|
|
122
|
-
- **MEDIUM**: Vulnerabilities requiring specific conditions but with significant impact
|
|
123
|
-
- **LOW**: Defense-in-depth issues or lower-impact vulnerabilities
|
|
124
|
-
|
|
125
|
-
CONFIDENCE SCORING:
|
|
126
|
-
- 0.9-1.0: Certain exploit path identified, tested if possible
|
|
127
|
-
- 0.8-0.9: Clear vulnerability pattern with known exploitation methods
|
|
128
|
-
- 0.7-0.8: Suspicious pattern requiring specific conditions to exploit
|
|
129
|
-
- Below 0.7: Don't report (too speculative)
|
|
130
|
-
|
|
131
|
-
FINAL REMINDER:
|
|
132
|
-
Focus on HIGH and MEDIUM findings only. Better to miss some theoretical issues than flood the report with false positives. Each finding should be something a security engineer would confidently raise in a PR review.
|
|
133
|
-
|
|
134
|
-
FALSE POSITIVE FILTERING:
|
|
135
|
-
|
|
136
|
-
> You do not need to run commands to reproduce the vulnerability, just read the code to determine if it is a real vulnerability. Do not use the bash tool or write to any files.
|
|
137
|
-
>
|
|
138
|
-
> HARD EXCLUSIONS - Automatically exclude findings matching these patterns:
|
|
139
|
-
> 1. Denial of Service (DOS) vulnerabilities or resource exhaustion attacks.
|
|
140
|
-
> 2. Secrets or credentials stored on disk if they are otherwise secured.
|
|
141
|
-
> 3. Rate limiting concerns or service overload scenarios.
|
|
142
|
-
> 4. Memory consumption or CPU exhaustion issues.
|
|
143
|
-
> 5. Lack of input validation on non-security-critical fields without proven security impact.
|
|
144
|
-
> 6. Input sanitization concerns for GitHub Action workflows unless they are clearly triggerable via untrusted input.
|
|
145
|
-
> 7. A lack of hardening measures. Code is not expected to implement all security best practices, only flag concrete vulnerabilities.
|
|
146
|
-
> 8. Race conditions or timing attacks that are theoretical rather than practical issues. Only report a race condition if it is concretely problematic.
|
|
147
|
-
> 9. Vulnerabilities related to outdated third-party libraries. These are managed separately and should not be reported here.
|
|
148
|
-
> 10. Memory safety issues such as buffer overflows or use-after-free-vulnerabilities are impossible in rust. Do not report memory safety issues in rust or any other memory safe languages.
|
|
149
|
-
> 11. Files that are only unit tests or only used as part of running tests.
|
|
150
|
-
> 12. Log spoofing concerns. Outputting un-sanitized user input to logs is not a vulnerability.
|
|
151
|
-
> 13. SSRF vulnerabilities that only control the path. SSRF is only a concern if it can control the host or protocol.
|
|
152
|
-
> 14. Including user-controlled content in AI system prompts is not a vulnerability.
|
|
153
|
-
> 15. Regex injection. Injecting untrusted content into a regex is not a vulnerability.
|
|
154
|
-
> 16. Regex DOS concerns.
|
|
155
|
-
> 16. Insecure documentation. Do not report any findings in documentation files such as markdown files.
|
|
156
|
-
> 17. A lack of audit logs is not a vulnerability.
|
|
157
|
-
>
|
|
158
|
-
> PRECEDENTS -
|
|
159
|
-
> 1. Logging high value secrets in plaintext is a vulnerability. Logging URLs is assumed to be safe.
|
|
160
|
-
> 2. UUIDs can be assumed to be unguessable and do not need to be validated.
|
|
161
|
-
> 3. Environment variables and CLI flags are trusted values. Attackers are generally not able to modify them in a secure environment. Any attack that relies on controlling an environment variable is invalid.
|
|
162
|
-
> 4. Resource management issues such as memory or file descriptor leaks are not valid.
|
|
163
|
-
> 5. Subtle or low impact web vulnerabilities such as tabnabbing, XS-Leaks, prototype pollution, and open redirects should not be reported unless they are extremely high confidence.
|
|
164
|
-
> 6. React and Angular are generally secure against XSS. These frameworks do not need to sanitize or escape user input unless it is using dangerouslySetInnerHTML, bypassSecurityTrustHtml, or similar methods. Do not report XSS vulnerabilities in React or Angular components or tsx files unless they are using unsafe methods.
|
|
165
|
-
> 7. Most vulnerabilities in github action workflows are not exploitable in practice. Before validating a github action workflow vulnerability ensure it is concrete and has a very specific attack path.
|
|
166
|
-
> 8. A lack of permission checking or authentication in client-side JS/TS code is not a vulnerability. Client-side code is not trusted and does not need to implement these checks, they are handled on the server-side. The same applies to all flows that send untrusted data to the backend, the backend is responsible for validating and sanitizing all inputs.
|
|
167
|
-
> 9. Only include MEDIUM findings if they are obvious and concrete issues.
|
|
168
|
-
> 10. Most vulnerabilities in ipython notebooks (*.ipynb files) are not exploitable in practice. Before validating a notebook vulnerability ensure it is concrete and has a very specific attack path where untrusted input can trigger the vulnerability.
|
|
169
|
-
> 11. Logging non-PII data is not a vulnerability even if the data may be sensitive. Only report logging vulnerabilities if they expose sensitive information such as secrets, passwords, or personally identifiable information (PII).
|
|
170
|
-
> 12. Command injection vulnerabilities in shell scripts are generally not exploitable in practice since shell scripts generally do not run with untrusted user input. Only report command injection vulnerabilities in shell scripts if they are concrete and have a very specific attack path for untrusted input.
|
|
171
|
-
>
|
|
172
|
-
> SIGNAL QUALITY CRITERIA - For remaining findings, assess:
|
|
173
|
-
> 1. Is there a concrete, exploitable vulnerability with a clear attack path?
|
|
174
|
-
> 2. Does this represent a real security risk vs theoretical best practice?
|
|
175
|
-
> 3. Are there specific code locations and reproduction steps?
|
|
176
|
-
> 4. Would this finding be actionable for a security team?
|
|
177
|
-
>
|
|
178
|
-
> For each finding, assign a confidence score from 1-10:
|
|
179
|
-
> - 1-3: Low confidence, likely false positive or noise
|
|
180
|
-
> - 4-6: Medium confidence, needs investigation
|
|
181
|
-
> - 7-10: High confidence, likely true vulnerability
|
|
182
|
-
|
|
183
|
-
START ANALYSIS:
|
|
184
|
-
|
|
185
|
-
Begin your analysis now. Do this in 3 steps:
|
|
186
|
-
|
|
187
|
-
1. Use a sub-task to identify vulnerabilities. Use the repository exploration tools to understand the codebase context, then analyze the PR changes for security implications. In the prompt for this sub-task, include all of the above.
|
|
188
|
-
2. Then for each vulnerability identified by the above sub-task, create a new sub-task to filter out false-positives. Launch these sub-tasks as parallel sub-tasks. In the prompt for these sub-tasks, include everything in the "FALSE POSITIVE FILTERING" instructions.
|
|
189
|
-
3. Filter out any vulnerabilities where the sub-task reported a confidence less than 8.
|
|
190
|
-
|
|
191
|
-
Your final reply must contain the markdown report and nothing else.
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# editorconfig.org
|
|
2
|
-
|
|
3
|
-
root = true
|
|
4
|
-
|
|
5
|
-
[*]
|
|
6
|
-
charset = utf-8
|
|
7
|
-
end_of_line = lf
|
|
8
|
-
indent_size = 4
|
|
9
|
-
indent_style = space
|
|
10
|
-
insert_final_newline = true
|
|
11
|
-
trim_trailing_whitespace = true
|
|
12
|
-
|
|
13
|
-
[*.{c,cpp,h,hpp}]
|
|
14
|
-
indent_size = 4
|
|
15
|
-
|
|
16
|
-
[*.{js,ts,json,yaml,yml}]
|
|
17
|
-
indent_size = 2
|
|
18
|
-
|
|
19
|
-
[Makefile]
|
|
20
|
-
indent_style = tab
|
|
21
|
-
|
|
22
|
-
[*.{md,txt}]
|
|
23
|
-
indent_size = 2
|
|
24
|
-
max_line_length = 79
|
|
25
|
-
|
|
26
|
-
[*.{py,sh,bash}]
|
|
27
|
-
indent_size = 4
|
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
# GIT ATTRIBUTES
|
|
2
|
-
#
|
|
3
|
-
# These settings are for any project.
|
|
4
|
-
#
|
|
5
|
-
# Details per file setting:
|
|
6
|
-
# text: These files should be normalized (i.e. convert CRLF to LF).
|
|
7
|
-
# unless otherwise specified.
|
|
8
|
-
# binary: These files are binary and should be left untouched.
|
|
9
|
-
#
|
|
10
|
-
# * Note that binary is a macro for -text -diff.
|
|
11
|
-
# ---------------------------------------------------------------------
|
|
12
|
-
|
|
13
|
-
# AUTO-DETECT
|
|
14
|
-
# Handle line endings automatically for files detected as
|
|
15
|
-
# text and leave all files detected as binary untouched.
|
|
16
|
-
# This will handle all files NOT defined below.
|
|
17
|
-
* text=auto
|
|
18
|
-
|
|
19
|
-
# SOURCE CODE
|
|
20
|
-
*.{bat,[bB][aA][tT]} text eol=crlf
|
|
21
|
-
*.c text
|
|
22
|
-
*.class binary
|
|
23
|
-
*.{cmd,[cC][mM][dD]} text eol=crlf
|
|
24
|
-
*.coffee text
|
|
25
|
-
*.cpp text
|
|
26
|
-
*.css text
|
|
27
|
-
*.h text
|
|
28
|
-
*.hpp text
|
|
29
|
-
*.htm text
|
|
30
|
-
*.html text
|
|
31
|
-
*.inc text
|
|
32
|
-
*.ini text eol=crlf
|
|
33
|
-
*.java text
|
|
34
|
-
*.js text
|
|
35
|
-
*.json text
|
|
36
|
-
*.jsx text
|
|
37
|
-
*.less text
|
|
38
|
-
*.od text
|
|
39
|
-
*.onlydata text
|
|
40
|
-
*.php text
|
|
41
|
-
*.pl text
|
|
42
|
-
*.properties text
|
|
43
|
-
*.py text
|
|
44
|
-
*.rb text
|
|
45
|
-
*.sass text
|
|
46
|
-
/hooks/* text eol=lf
|
|
47
|
-
*.scm text
|
|
48
|
-
*.scss text
|
|
49
|
-
*.sh text eol=lf
|
|
50
|
-
*.sql text
|
|
51
|
-
*.styl text
|
|
52
|
-
*.tag text
|
|
53
|
-
*.ts text
|
|
54
|
-
*.tsx text
|
|
55
|
-
*.txt text eol=crlf
|
|
56
|
-
*.xml text
|
|
57
|
-
*.xhtml text
|
|
58
|
-
|
|
59
|
-
# DOCKER
|
|
60
|
-
*.dockerignore text
|
|
61
|
-
Dockerfile text
|
|
62
|
-
|
|
63
|
-
# DOCUMENTATION
|
|
64
|
-
*.markdown text
|
|
65
|
-
*.md text
|
|
66
|
-
*.mdwn text
|
|
67
|
-
*.mdown text
|
|
68
|
-
*.mkd text
|
|
69
|
-
*.mkdn text
|
|
70
|
-
*.mdtxt text
|
|
71
|
-
*.mdtext text
|
|
72
|
-
*.rst text
|
|
73
|
-
*.txt text
|
|
74
|
-
AUTHORS text
|
|
75
|
-
CHANGELOG text
|
|
76
|
-
CHANGES text
|
|
77
|
-
CONTRIBUTING text
|
|
78
|
-
COPYING text
|
|
79
|
-
copyright text
|
|
80
|
-
*COPYRIGHT* text
|
|
81
|
-
INSTALL text
|
|
82
|
-
license text
|
|
83
|
-
LICENSE text
|
|
84
|
-
NEWS text
|
|
85
|
-
readme text
|
|
86
|
-
*README* text
|
|
87
|
-
TODO text
|
|
88
|
-
|
|
89
|
-
# TEMPLATES
|
|
90
|
-
*.dot text
|
|
91
|
-
*.ejs text
|
|
92
|
-
*.haml text
|
|
93
|
-
*.handlebars text
|
|
94
|
-
*.hbs text
|
|
95
|
-
*.hbt text
|
|
96
|
-
*.jade text
|
|
97
|
-
*.latte text
|
|
98
|
-
*.mustache text
|
|
99
|
-
*.njk text
|
|
100
|
-
*.phtml text
|
|
101
|
-
*.tmpl text
|
|
102
|
-
*.tpl text
|
|
103
|
-
*.twig text
|
|
104
|
-
|
|
105
|
-
# LINTERS
|
|
106
|
-
.babelrc text
|
|
107
|
-
.csslintrc text
|
|
108
|
-
.eslintrc text
|
|
109
|
-
.htmlhintrc text
|
|
110
|
-
.jscsrc text
|
|
111
|
-
.jshintrc text
|
|
112
|
-
.jshintignore text
|
|
113
|
-
.prettierrc text
|
|
114
|
-
.stylelintrc text
|
|
115
|
-
|
|
116
|
-
# CONFIGS
|
|
117
|
-
*.bowerrc text
|
|
118
|
-
*.cnf text
|
|
119
|
-
*.conf text
|
|
120
|
-
*.config text
|
|
121
|
-
.browserslistrc text
|
|
122
|
-
.editorconfig text
|
|
123
|
-
.gitattributes text
|
|
124
|
-
.gitconfig text
|
|
125
|
-
.gitignore text
|
|
126
|
-
.htaccess text
|
|
127
|
-
*.npmignore text
|
|
128
|
-
*.yaml text
|
|
129
|
-
*.yml text
|
|
130
|
-
browserslist text
|
|
131
|
-
Makefile text
|
|
132
|
-
makefile text
|
|
133
|
-
|
|
134
|
-
# HEROKU
|
|
135
|
-
Procfile text
|
|
136
|
-
.slugignore text
|
|
137
|
-
|
|
138
|
-
# GRAPHICS
|
|
139
|
-
*.ai binary
|
|
140
|
-
*.bmp binary
|
|
141
|
-
*.eps binary
|
|
142
|
-
*.gif binary
|
|
143
|
-
*.ico binary
|
|
144
|
-
*.jng binary
|
|
145
|
-
*.jp2 binary
|
|
146
|
-
*.jpg binary
|
|
147
|
-
*.jpeg binary
|
|
148
|
-
*.jpx binary
|
|
149
|
-
*.jxr binary
|
|
150
|
-
*.pdf binary
|
|
151
|
-
*.png binary
|
|
152
|
-
*.psb binary
|
|
153
|
-
*.psd binary
|
|
154
|
-
*.svg text
|
|
155
|
-
*.svgz binary
|
|
156
|
-
*.tif binary
|
|
157
|
-
*.tiff binary
|
|
158
|
-
*.wbmp binary
|
|
159
|
-
*.webp binary
|
|
160
|
-
|
|
161
|
-
# AUDIO
|
|
162
|
-
*.kar binary
|
|
163
|
-
*.m4a binary
|
|
164
|
-
*.mid binary
|
|
165
|
-
*.midi binary
|
|
166
|
-
*.mp3 binary
|
|
167
|
-
*.ogg binary
|
|
168
|
-
*.ra binary
|
|
169
|
-
|
|
170
|
-
# VIDEO
|
|
171
|
-
*.3gpp binary
|
|
172
|
-
*.3gp binary
|
|
173
|
-
*.as binary
|
|
174
|
-
*.asf binary
|
|
175
|
-
*.asx binary
|
|
176
|
-
*.fla binary
|
|
177
|
-
*.flv binary
|
|
178
|
-
*.m4v binary
|
|
179
|
-
*.mng binary
|
|
180
|
-
*.mov binary
|
|
181
|
-
*.mp4 binary
|
|
182
|
-
*.mpeg binary
|
|
183
|
-
*.mpg binary
|
|
184
|
-
*.ogv binary
|
|
185
|
-
*.swc binary
|
|
186
|
-
*.swf binary
|
|
187
|
-
*.webm binary
|
|
188
|
-
|
|
189
|
-
# ARCHIVES
|
|
190
|
-
*.7z binary
|
|
191
|
-
*.gz binary
|
|
192
|
-
*.jar binary
|
|
193
|
-
*.rar binary
|
|
194
|
-
*.tar binary
|
|
195
|
-
*.tgz binary
|
|
196
|
-
*.zip binary
|
|
197
|
-
|
|
198
|
-
# FONTS
|
|
199
|
-
*.ttf binary
|
|
200
|
-
*.eot binary
|
|
201
|
-
*.otf binary
|
|
202
|
-
*.woff binary
|
|
203
|
-
*.woff2 binary
|
|
204
|
-
|
|
205
|
-
# EXECUTABLES
|
|
206
|
-
*.exe binary
|
|
207
|
-
*.pyc binary
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
name: Bug Report
|
|
2
|
-
description: Report a problem or unexpected behavior
|
|
3
|
-
title: "[BUG] "
|
|
4
|
-
labels: [bug]
|
|
5
|
-
assignees: []
|
|
6
|
-
|
|
7
|
-
body:
|
|
8
|
-
- type: markdown
|
|
9
|
-
attributes:
|
|
10
|
-
value: |
|
|
11
|
-
Please describe the issue clearly and concisely.
|
|
12
|
-
- type: input
|
|
13
|
-
id: version
|
|
14
|
-
attributes:
|
|
15
|
-
label: Software Version
|
|
16
|
-
placeholder: e.g., 2.2.1
|
|
17
|
-
validations:
|
|
18
|
-
required: true
|
|
19
|
-
- type: textarea
|
|
20
|
-
id: what-happened
|
|
21
|
-
attributes:
|
|
22
|
-
label: What happened?
|
|
23
|
-
placeholder: Describe the issue.
|
|
24
|
-
validations:
|
|
25
|
-
required: true
|
|
26
|
-
- type: textarea
|
|
27
|
-
id: steps
|
|
28
|
-
attributes:
|
|
29
|
-
label: Steps to Reproduce
|
|
30
|
-
placeholder: |
|
|
31
|
-
1. Go to '...'
|
|
32
|
-
2. Click on '...'
|
|
33
|
-
3. Observe the behavior
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
name: Feature Request
|
|
2
|
-
description: Suggest an improvement or new idea
|
|
3
|
-
title: "[FEATURE] "
|
|
4
|
-
labels: [enhancement]
|
|
5
|
-
assignees: []
|
|
6
|
-
|
|
7
|
-
body:
|
|
8
|
-
- type: textarea
|
|
9
|
-
id: what-feature
|
|
10
|
-
attributes:
|
|
11
|
-
label: What would you like to see added or changed?
|
|
12
|
-
description: Be as specific as possible.
|
|
13
|
-
validations:
|
|
14
|
-
required: true
|
|
15
|
-
- type: textarea
|
|
16
|
-
id: motivation
|
|
17
|
-
attributes:
|
|
18
|
-
label: Why would this be useful?
|
|
19
|
-
description: Explain how it improves functionality or user experience.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
## Summary
|
|
2
|
-
|
|
3
|
-
Briefly explain what this PR does and why it's needed.
|
|
4
|
-
|
|
5
|
-
## Type of Change
|
|
6
|
-
- [ ] Bug fix
|
|
7
|
-
- [ ] New feature
|
|
8
|
-
- [ ] Documentation update
|
|
9
|
-
- [ ] Refactor or tech debt cleanup
|
|
10
|
-
- [ ] Other (please explain):
|
|
11
|
-
|
|
12
|
-
## Checklist
|
|
13
|
-
- [ ] I've read the CONTRIBUTING.md file
|
|
14
|
-
- [ ] My changes are consistent with the project's style and goals
|
|
15
|
-
- [ ] I’ve tested my changes locally
|
|
16
|
-
- [ ] I’ve updated documentation as needed
|
|
17
|
-
- [ ] This PR is ready for review
|
|
18
|
-
|
|
19
|
-
## Related Issues
|
|
20
|
-
Link to any related issues here (e.g., `Fixes #42`, `Closes #17`)
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
# Security Policy
|
|
2
|
-
|
|
3
|
-
## Supported Versions
|
|
4
|
-
|
|
5
|
-
We actively support the following versions with security updates:
|
|
6
|
-
|
|
7
|
-
| Version | Supported | End of Support |
|
|
8
|
-
| ------- | ------------------ | -------------- |
|
|
9
|
-
| 2.2.x | :white_check_mark: | TBD |
|
|
10
|
-
| 2.1.x | :white_check_mark: | 2025-12-31 |
|
|
11
|
-
| < 2.0 | :x: | 2024-12-31 |
|
|
12
|
-
|
|
13
|
-
## Reporting a Vulnerability
|
|
14
|
-
|
|
15
|
-
### How to Report
|
|
16
|
-
|
|
17
|
-
**For security vulnerabilities, please do NOT create a public GitHub issue.**
|
|
18
|
-
|
|
19
|
-
Instead, please report security vulnerabilities through one of these methods:
|
|
20
|
-
|
|
21
|
-
1. **Private Security Advisory** (Preferred): Use GitHub's private vulnerability reporting feature
|
|
22
|
-
2. **Email**: Send details to `hoyt.harness@gmail.com` with subject line `[SECURITY] DaVinci MCP Professional`
|
|
23
|
-
3. **PGP Encrypted Email**: If you have sensitive information, request our PGP key first
|
|
24
|
-
|
|
25
|
-
### What to Include
|
|
26
|
-
|
|
27
|
-
Please provide as much information as possible:
|
|
28
|
-
|
|
29
|
-
- **Description**: Clear description of the vulnerability
|
|
30
|
-
- **Steps to Reproduce**: Detailed steps to reproduce the issue
|
|
31
|
-
- **Impact Assessment**: Your assessment of the potential impact
|
|
32
|
-
- **Affected Versions**: Which versions are affected
|
|
33
|
-
- **Proof of Concept**: Code or screenshots demonstrating the issue (if applicable)
|
|
34
|
-
- **Suggested Fix**: Any recommendations for fixing the vulnerability (optional)
|
|
35
|
-
|
|
36
|
-
### Response Timeline
|
|
37
|
-
|
|
38
|
-
We are committed to responding to security reports promptly:
|
|
39
|
-
|
|
40
|
-
- **Initial Response**: Within 48-72 hours
|
|
41
|
-
- **Triage Assessment**: Within 5 business days
|
|
42
|
-
- **Fix Development**: Varies by severity (see below)
|
|
43
|
-
- **Public Disclosure**: Coordinated with reporter, typically 30-90 days after fix
|
|
44
|
-
|
|
45
|
-
### Severity Levels
|
|
46
|
-
|
|
47
|
-
| Severity | Response Time | Examples |
|
|
48
|
-
|----------|---------------|----------|
|
|
49
|
-
| **Critical** | 24-48 hours | Remote code execution, authentication bypass |
|
|
50
|
-
| **High** | 3-5 days | Privilege escalation, significant data exposure |
|
|
51
|
-
| **Medium** | 7-14 days | Cross-site scripting, information disclosure |
|
|
52
|
-
| **Low** | 30 days | Minor information leaks, non-exploitable issues |
|
|
53
|
-
|
|
54
|
-
### Security Best Practices
|
|
55
|
-
|
|
56
|
-
When using DaVinci MCP Professional:
|
|
57
|
-
|
|
58
|
-
- **Keep Updated**: Always use the latest version
|
|
59
|
-
- **Secure Environment**: Run in isolated environments when possible
|
|
60
|
-
- **Access Control**: Limit access to DaVinci Resolve API credentials
|
|
61
|
-
- **Monitor Logs**: Regularly review application logs for anomalies
|
|
62
|
-
- **Network Security**: Use encrypted connections when available
|
|
63
|
-
|
|
64
|
-
### Security Features
|
|
65
|
-
|
|
66
|
-
Current security measures in place:
|
|
67
|
-
|
|
68
|
-
- **Dependency Scanning**: Automated dependency vulnerability scanning
|
|
69
|
-
- **Static Analysis**: Code quality and security analysis
|
|
70
|
-
- **Input Validation**: Comprehensive input sanitization
|
|
71
|
-
- **Error Handling**: Secure error messages that don't leak sensitive information
|
|
72
|
-
- **Audit Logging**: Activity logging for forensic analysis
|
|
73
|
-
|
|
74
|
-
### Hall of Fame
|
|
75
|
-
|
|
76
|
-
We appreciate security researchers who help make our project safer:
|
|
77
|
-
|
|
78
|
-
- [Your name could be here!]
|
|
79
|
-
|
|
80
|
-
### Legal
|
|
81
|
-
|
|
82
|
-
This security policy applies to the DaVinci MCP Professional project. By participating in our security program, you agree to:
|
|
83
|
-
|
|
84
|
-
- Make a good faith effort to avoid privacy violations and service disruption
|
|
85
|
-
- Only interact with systems you own or have explicit permission to test
|
|
86
|
-
- Not access or modify user data without explicit permission
|
|
87
|
-
- Follow responsible disclosure practices
|
|
88
|
-
|
|
89
|
-
We commit to:
|
|
90
|
-
|
|
91
|
-
- Respond to your report promptly and work with you to understand the issue
|
|
92
|
-
- Not pursue legal action against researchers who follow this policy
|
|
93
|
-
- Recognize your contribution publicly (if desired) after the issue is resolved
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
**Contact**: For questions about this security policy, contact hoyt.harness@gmail.com
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
version: 2
|
|
2
|
-
updates:
|
|
3
|
-
- package-ecosystem: "pip"
|
|
4
|
-
directory: "/"
|
|
5
|
-
schedule:
|
|
6
|
-
interval: "weekly"
|
|
7
|
-
day: "monday"
|
|
8
|
-
time: "08:00"
|
|
9
|
-
timezone: "America/Chicago"
|
|
10
|
-
open-pull-requests-limit: 3
|
|
11
|
-
rebase-strategy: "auto"
|
|
12
|
-
commit-message:
|
|
13
|
-
prefix: "deps"
|
|
14
|
-
include: "scope"
|
|
15
|
-
# Security-focused configuration
|
|
16
|
-
allow:
|
|
17
|
-
- dependency-type: "security"
|
|
18
|
-
- package-ecosystem: "github-actions"
|
|
19
|
-
directory: "/"
|
|
20
|
-
schedule:
|
|
21
|
-
interval: "weekly"
|
|
22
|
-
day: "monday"
|
|
23
|
-
time: "08:00"
|
|
24
|
-
timezone: "America/Chicago"
|
|
25
|
-
commit-message:
|
|
26
|
-
prefix: "deps"
|
|
27
|
-
include: "scope"
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
name: CI
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ "main" ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ "main" ]
|
|
8
|
-
|
|
9
|
-
permissions:
|
|
10
|
-
contents: read
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
build:
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
|
|
16
|
-
strategy:
|
|
17
|
-
matrix:
|
|
18
|
-
python-version: ['3.10', '3.11', '3.12', '3.13']
|
|
19
|
-
|
|
20
|
-
steps:
|
|
21
|
-
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
22
|
-
|
|
23
|
-
- name: Install uv
|
|
24
|
-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
|
|
25
|
-
with:
|
|
26
|
-
python-version: ${{ matrix.python-version }}
|
|
27
|
-
|
|
28
|
-
- name: Run CI checks
|
|
29
|
-
run: bash hooks/ci-check.sh
|
|
30
|
-
|
|
31
|
-
- name: Upload security artifacts
|
|
32
|
-
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
33
|
-
if: always()
|
|
34
|
-
with:
|
|
35
|
-
name: security-reports-py${{ matrix.python-version }}
|
|
36
|
-
path: |
|
|
37
|
-
bandit-report.json
|
|
38
|
-
licenses.json
|
|
39
|
-
retention-days: 30
|