@ngocsangairvds/vsaf 3.1.27 → 3.2.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/package.json +2 -2
- package/src/global.js +65 -39
- package/tools/skills/vds-scripts-skill/.openskills.json +6 -0
- package/tools/skills/vds-scripts-skill/QUALITY.md +44 -0
- package/tools/skills/vds-scripts-skill/SKILL.md +135 -0
- package/tools/skills/vds-scripts-skill/references/audit-commands.md +171 -0
- package/tools/skills/vds-scripts-skill/references/capability-index.md +34 -0
- package/tools/skills/vds-scripts-skill/references/development-commands.md +12 -0
- package/tools/skills/vds-scripts-skill/references/google-sheets.md +73 -0
- package/tools/skills/vds-scripts-skill/references/integration-commands.md +17 -0
- package/tools/skills/vds-scripts-skill/references/platform-bootstrap.md +31 -0
- package/tools/skills/vds-scripts-skill/references/specialist-routing.md +14 -0
- package/tools/skills/vds-scripts-skill/references/validation-commands.md +15 -0
- package/tools/skills/vsaf-build/SKILL.md +32 -2
- package/tools/skills/vsaf-ship/SKILL.md +41 -10
- package/tools/skills/vsaf-test/SKILL.md +8 -0
- package/tools/vds-scripts/.mcp.json +11 -0
- package/tools/vds-scripts/.secrets.baseline +133 -0
- package/tools/vds-scripts/AGENTS.md +152 -0
- package/tools/vds-scripts/CLAUDE.md +101 -0
- package/tools/vds-scripts/CLI_COMMAND_OPTIMIZATION.md +156 -0
- package/tools/vds-scripts/PACKAGE_P125B_IMPLEMENTATION_SUMMARY.md +131 -0
- package/tools/vds-scripts/PROJECT_COMPLETION_SUMMARY.md +45 -0
- package/tools/vds-scripts/README.md +97 -0
- package/tools/vds-scripts/bitbucket_manifest_mapping.toml +34 -0
- package/tools/vds-scripts/bitbucket_orchestrator/ARCHITECTURE_ANALYSIS.md +258 -0
- package/tools/vds-scripts/bitbucket_orchestrator/BITBUCKET_API_PRACTICES.md +393 -0
- package/tools/vds-scripts/bitbucket_orchestrator/EVALUATION_REPORT.md +61 -0
- package/tools/vds-scripts/bitbucket_orchestrator/FEATURES.md +908 -0
- package/tools/vds-scripts/bitbucket_orchestrator/README.md +687 -0
- package/tools/vds-scripts/bitbucket_orchestrator/pyproject.toml +40 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/__init__.py +20 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/async_client.py +657 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/cli.py +2108 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/client.py +2534 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/config.py +171 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/errors.py +67 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/factory.py +185 -0
- package/tools/vds-scripts/bitbucket_orchestrator/src/vds_bitbucket_orchestrator/protocols.py +244 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/__init__.py +8 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/conftest.py +65 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_advanced_search.py +151 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_async_client.py +546 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_branch_permissions.py +145 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_cli.py +115 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client.py +157 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_branch_conditions.py +79 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_code_advanced.py +163 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_code_file.py +32 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_deployment_environments.py +194 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_issues.py +164 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_pipelines_advanced.py +179 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_pr_blockers.py +119 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_client_repository_variables.py +156 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_code.py +98 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_code_advanced.py +282 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_code_insights.py +335 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_conditions.py +147 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_config.py +131 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_deployment_env.py +352 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_factory.py +371 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_fork_operations.py +204 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_issue_cli.py +261 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_pipeline_advanced.py +270 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_pr_blocker.py +204 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_protocols.py +334 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_repo_settings.py +343 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_repo_variables.py +270 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_webhooks.py +189 -0
- package/tools/vds-scripts/bitbucket_orchestrator/tests/test_workspace.py +233 -0
- package/tools/vds-scripts/bitbucket_orchestrator/uv.lock +742 -0
- package/tools/vds-scripts/confluence_orchestrator/Dockerfile +19 -0
- package/tools/vds-scripts/confluence_orchestrator/README.md +412 -0
- package/tools/vds-scripts/confluence_orchestrator/SYNC_SCRIPTS.md +127 -0
- package/tools/vds-scripts/confluence_orchestrator/SYNC_STANDARDIZATION.md +108 -0
- package/tools/vds-scripts/confluence_orchestrator/pyproject.toml +48 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/__init__.py +20 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/cli.py +2532 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/config.py +175 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/content.py +290 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/content_v2.py +94 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/crawl_tree.py +1835 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/errors.py +80 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/eventing.py +109 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/http.py +1114 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/orchestration.py +165 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/reporting.py +78 -0
- package/tools/vds-scripts/confluence_orchestrator/src/confluence_orchestrator/tree.py +121 -0
- package/tools/vds-scripts/confluence_orchestrator/sync_pdfs_from_markdown.py +213 -0
- package/tools/vds-scripts/confluence_orchestrator/sync_pdfs_to_confluence.py +305 -0
- package/tools/vds-scripts/confluence_orchestrator/sync_png_attachments.py +305 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/__init__.py +0 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/conftest.py +8 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_advanced_content.py +224 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_advanced_search.py +188 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_cache_management.py +247 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_cli.py +499 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_config.py +83 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_content.py +186 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_content_flags.py +27 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_crawl_tree.py +2250 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_draft_management.py +223 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_eventing.py +71 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_eventing_chaos.py +37 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_eventing_rate_limit.py +44 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_eventing_timeout.py +49 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_export.py +230 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_history.py +204 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_http.py +117 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_orchestration.py +91 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_reporting.py +24 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_search_cql.py +34 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_space_management.py +237 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_space_permissions.py +332 -0
- package/tools/vds-scripts/confluence_orchestrator/tests/test_user_group_management.py +388 -0
- package/tools/vds-scripts/confluence_orchestrator/uv.lock +1023 -0
- package/tools/vds-scripts/git_orchestrator/ENHANCEMENT_SUMMARY.md +119 -0
- package/tools/vds-scripts/git_orchestrator/README.md +280 -0
- package/tools/vds-scripts/git_orchestrator/VERIFICATION_REPORT.md +152 -0
- package/tools/vds-scripts/git_orchestrator/pyproject.toml +35 -0
- package/tools/vds-scripts/git_orchestrator/src/vds_git_orchestrator/__init__.py +7 -0
- package/tools/vds-scripts/git_orchestrator/src/vds_git_orchestrator/__main__.py +4 -0
- package/tools/vds-scripts/git_orchestrator/src/vds_git_orchestrator/cli.py +847 -0
- package/tools/vds-scripts/git_orchestrator/src/vds_git_orchestrator/logging_config.py +63 -0
- package/tools/vds-scripts/git_orchestrator/src/vds_git_orchestrator/manifest.py +129 -0
- package/tools/vds-scripts/git_orchestrator/src/vds_git_orchestrator/orchestrator.py +819 -0
- package/tools/vds-scripts/git_orchestrator/src/vds_git_orchestrator/reporting.py +53 -0
- package/tools/vds-scripts/git_orchestrator/tests/__init__.py +0 -0
- package/tools/vds-scripts/git_orchestrator/tests/test_cli_settings.py +21 -0
- package/tools/vds-scripts/git_orchestrator/tests/test_integration.py +74 -0
- package/tools/vds-scripts/git_orchestrator/tests/test_manifest.py +79 -0
- package/tools/vds-scripts/git_orchestrator/tests/test_orchestrator.py +204 -0
- package/tools/vds-scripts/git_orchestrator/tests/test_public_api.py +236 -0
- package/tools/vds-scripts/git_orchestrator/tests/test_resilience.py +345 -0
- package/tools/vds-scripts/git_orchestrator/uv.lock +271 -0
- package/tools/vds-scripts/jira_orchestrator/README.md +770 -0
- package/tools/vds-scripts/jira_orchestrator/pyproject.toml +39 -0
- package/tools/vds-scripts/jira_orchestrator/src/vds_jira_orchestrator/__init__.py +1 -0
- package/tools/vds-scripts/jira_orchestrator/src/vds_jira_orchestrator/adapter.py +1320 -0
- package/tools/vds-scripts/jira_orchestrator/src/vds_jira_orchestrator/cli.py +2271 -0
- package/tools/vds-scripts/jira_orchestrator/src/vds_jira_orchestrator/config.py +138 -0
- package/tools/vds-scripts/jira_orchestrator/src/vds_jira_orchestrator/errors.py +67 -0
- package/tools/vds-scripts/jira_orchestrator/src/vds_jira_orchestrator/reporting.py +65 -0
- package/tools/vds-scripts/jira_orchestrator/tests/__init__.py +1 -0
- package/tools/vds-scripts/jira_orchestrator/tests/conftest.py +86 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_agile_list_payloads.py +54 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_bulk_operations.py +69 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_components.py +57 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_createmeta.py +45 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_dashboard.py +117 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_issue_properties.py +54 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_permissions_compat.py +42 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_reindex.py +42 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_remote_links.py +76 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_transitions.py +91 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_user_management.py +110 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_version_management.py +133 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_adapter_watchers.py +41 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_advanced_search.py +164 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_agile.py +256 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_application_properties.py +193 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_backlog.py +91 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_bulk_operations.py +277 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_cli.py +106 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_components.py +106 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_config.py +164 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_dashboard.py +122 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_discover_fields.py +207 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_filter_management.py +333 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_issue_archiving.py +164 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_issue_links.py +257 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_issue_properties.py +171 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_link_types.py +314 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_parse_set.py +37 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_permissions.py +273 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_reindex.py +81 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_remote_links.py +254 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_security_schemes.py +170 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_transitions_changelog.py +114 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_user_management.py +226 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_version_management.py +339 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_watchers.py +101 -0
- package/tools/vds-scripts/jira_orchestrator/tests/test_worklog.py +223 -0
- package/tools/vds-scripts/jira_orchestrator/uv.lock +738 -0
- package/tools/vds-scripts/mcp_server/Dockerfile +34 -0
- package/tools/vds-scripts/mcp_server/README.md +140 -0
- package/tools/vds-scripts/mcp_server/pyproject.toml +42 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/__init__.py +4 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/config.py +36 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/server.py +66 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/tools/__init__.py +14 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/tools/bitbucket_tools.py +47 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/tools/confluence_tools.py +59 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/tools/git_tools.py +71 -0
- package/tools/vds-scripts/mcp_server/src/vds_mcp_server/tools/jira_tools.py +63 -0
- package/tools/vds-scripts/mcp_server/tests/__init__.py +2 -0
- package/tools/vds-scripts/mcp_server/tests/conftest.py +29 -0
- package/tools/vds-scripts/mcp_server/tests/unit/__init__.py +2 -0
- package/tools/vds-scripts/mcp_server/tests/unit/test_bitbucket_tools.py +25 -0
- package/tools/vds-scripts/mcp_server/tests/unit/test_confluence_tools.py +25 -0
- package/tools/vds-scripts/mcp_server/tests/unit/test_git_tools.py +32 -0
- package/tools/vds-scripts/mcp_server/tests/unit/test_jira_tools.py +32 -0
- package/tools/vds-scripts/mcp_server/tests/verification/__init__.py +2 -0
- package/tools/vds-scripts/mcp_server/tests/verification/test_mcp_confluence_tools.py +40 -0
- package/tools/vds-scripts/mcp_server/tests/verification/test_mcp_jira_tools.py +37 -0
- package/tools/vds-scripts/mcp_server/tests/verification/test_mcp_tool_registration.py +47 -0
- package/tools/vds-scripts/mcp_server/uv.lock +1032 -0
- package/tools/vds-scripts/mypy.ini +5 -0
- package/tools/vds-scripts/pyproject.toml +29 -0
- package/tools/vds-scripts/repo-manifest.yaml +273 -0
- package/tools/vds-scripts/repo-manifest.yaml.example +25 -0
- package/tools/vds-scripts/scripts/BRD-Validation-API.postman_collection.json +706 -0
- package/tools/vds-scripts/scripts/BRD-Validation-README.md +308 -0
- package/tools/vds-scripts/scripts/README.md +162 -0
- package/tools/vds-scripts/scripts/bootstrap_uv.sh +30 -0
- package/tools/vds-scripts/scripts/brd-validation-environment.json +51 -0
- package/tools/vds-scripts/scripts/brd-validation-test-results.json +13023 -0
- package/tools/vds-scripts/scripts/brd_coverage_report.json +276 -0
- package/tools/vds-scripts/scripts/create_memory_session.py +35 -0
- package/tools/vds-scripts/scripts/deployment/load_docker_images_offline.sh +90 -0
- package/tools/vds-scripts/scripts/final_completion_report.md +139 -0
- package/tools/vds-scripts/scripts/folder_structure_report.json +321 -0
- package/tools/vds-scripts/scripts/generate_completion_report.py +125 -0
- package/tools/vds-scripts/scripts/generate_intellij_modules.py +150 -0
- package/tools/vds-scripts/scripts/link_integrity_report.json +807 -0
- package/tools/vds-scripts/scripts/move_audit_artifact_pages.py +255 -0
- package/tools/vds-scripts/scripts/move_audit_artifact_pages_rest.py +165 -0
- package/tools/vds-scripts/scripts/move_wrong_dept_pages.py +216 -0
- package/tools/vds-scripts/scripts/save_intellij_memories.py +120 -0
- package/tools/vds-scripts/scripts/save_memories_to_vds_ai.py +83 -0
- package/tools/vds-scripts/scripts/save_memories_vds_style.py +129 -0
- package/tools/vds-scripts/scripts/search_intellij_memories.py +50 -0
- package/tools/vds-scripts/scripts/setup_intellij_workspace.py +65 -0
- package/tools/vds-scripts/scripts/target-state-automation/README.md +89 -0
- package/tools/vds-scripts/scripts/target-state-automation/confluence_sync_coordinator.sh +27 -0
- package/tools/vds-scripts/scripts/target-state-automation/coordination.sh +114 -0
- package/tools/vds-scripts/scripts/target-state-automation/diagram_coordinator.sh +25 -0
- package/tools/vds-scripts/scripts/target-state-automation/docs_root.sh +22 -0
- package/tools/vds-scripts/scripts/target-state-automation/generate_diagrams.sh +22 -0
- package/tools/vds-scripts/scripts/target-state-automation/markdown_coordinator.sh +25 -0
- package/tools/vds-scripts/scripts/target-state-automation/progress_dashboard.sh +17 -0
- package/tools/vds-scripts/scripts/target-state-automation/schema_coordinator.sh +25 -0
- package/tools/vds-scripts/scripts/target-state-automation/sync_confluence.sh +30 -0
- package/tools/vds-scripts/scripts/target-state-automation/update_dependencies.sh +19 -0
- package/tools/vds-scripts/scripts/target-state-automation/validate_links.sh +86 -0
- package/tools/vds-scripts/scripts/target-state-automation/validate_markdown.sh +52 -0
- package/tools/vds-scripts/scripts/target-state-automation/validate_schemas.sh +26 -0
- package/tools/vds-scripts/scripts/target-state-automation/validate_structure.sh +98 -0
- package/tools/vds-scripts/scripts/update_modules_xml.py +190 -0
- package/tools/vds-scripts/scripts/uv-workspace-alignment-verification-2026-03-25.md +128 -0
- package/tools/vds-scripts/scripts/validate_brd_coverage.py +179 -0
- package/tools/vds-scripts/scripts/validate_folder_structure.py +240 -0
- package/tools/vds-scripts/scripts/validate_link_integrity.py +272 -0
- package/tools/vds-scripts/scripts/vds_sh_helpers.sh +180 -0
- package/tools/vds-scripts/scripts/verification/phase2_portable_paths_ubuntu_docker.sh +26 -0
- package/tools/vds-scripts/scripts/worktree_uv.sh +48 -0
- package/tools/vds-scripts/uv.lock +8 -0
- package/tools/vds-scripts/vds_cli/README.md +126 -0
- package/tools/vds-scripts/vds_cli/VERIFICATION_REPORT.md +41 -0
- package/tools/vds-scripts/vds_cli/pyproject.toml +38 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/__init__.py +3 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/cli.py +173 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/docs_sync.py +1203 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/env.py +41 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/google_sheets_orchestrator/__init__.py +3 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/google_sheets_orchestrator/google_sheets_orchestrator.py +198 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/router.py +93 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/sync_api.py +647 -0
- package/tools/vds-scripts/vds_cli/src/vds_cli/sync_service.py +266 -0
- package/tools/vds-scripts/vds_cli/tests/__init__.py +2 -0
- package/tools/vds-scripts/vds_cli/tests/conftest.py +49 -0
- package/tools/vds-scripts/vds_cli/tests/unit/__init__.py +2 -0
- package/tools/vds-scripts/vds_cli/tests/unit/test_cli.py +143 -0
- package/tools/vds-scripts/vds_cli/tests/unit/test_docs_sync.py +422 -0
- package/tools/vds-scripts/vds_cli/tests/unit/test_env.py +51 -0
- package/tools/vds-scripts/vds_cli/tests/unit/test_router.py +72 -0
- package/tools/vds-scripts/vds_cli/tests/unit/test_sync_api.py +357 -0
- package/tools/vds-scripts/vds_cli/tests/unit/test_sync_service.py +160 -0
- package/tools/vds-scripts/vds_cli/tests/verification/__init__.py +2 -0
- package/tools/vds-scripts/vds_cli/tests/verification/test_bitbucket_real.py +33 -0
- package/tools/vds-scripts/vds_cli/tests/verification/test_confluence_real.py +35 -0
- package/tools/vds-scripts/vds_cli/tests/verification/test_jira_real.py +41 -0
- package/tools/vds-scripts/vds_cli/uv.lock +524 -0
- package/tools/vds-scripts/vds_cli_common/README.md +190 -0
- package/tools/vds-scripts/vds_cli_common/pyproject.toml +92 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/__init__.py +34 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/completers.py +139 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/context.py +201 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/env.py +119 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/errors.py +318 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/output.py +284 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/paths.py +78 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/testing.py +213 -0
- package/tools/vds-scripts/vds_cli_common/src/vds_cli_common/version.py +85 -0
- package/tools/vds-scripts/vds_cli_common/tests/__init__.py +1 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_completers.py +148 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_context.py +192 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_env.py +102 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_errors.py +186 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_output.py +229 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_paths.py +61 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_testing.py +138 -0
- package/tools/vds-scripts/vds_cli_common/tests/test_version.py +64 -0
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ngocsangairvds/vsaf",
|
|
3
|
-
"version": "3.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "3.2.2",
|
|
4
|
+
"description": "add vds script env",
|
|
5
5
|
"keywords": ["claude", "claude-code", "ai", "sdlc", "framework", "bmad", "gitnexus", "superpowers"],
|
|
6
6
|
"bin": {
|
|
7
7
|
"vsaf": "./bin/vsaf.js"
|
package/src/global.js
CHANGED
|
@@ -4,20 +4,20 @@ const fs = require('fs');
|
|
|
4
4
|
const readline = require('readline');
|
|
5
5
|
const { ok, info, warn, step, hasCommand, exec, copyDir, copyFile, CLAUDE_HOME, CODEX_HOME } = require('./utils');
|
|
6
6
|
|
|
7
|
-
const PKG_ROOT
|
|
8
|
-
const SKILLS_SRC
|
|
9
|
-
const SKILLS_DST
|
|
7
|
+
const PKG_ROOT = path.join(__dirname, '..');
|
|
8
|
+
const SKILLS_SRC = path.join(PKG_ROOT, 'tools', 'skills');
|
|
9
|
+
const SKILLS_DST = path.join(CLAUDE_HOME, 'skills');
|
|
10
10
|
const CODEX_SKILLS_DST = path.join(CODEX_HOME, 'skills');
|
|
11
11
|
|
|
12
12
|
async function installGlobal() {
|
|
13
13
|
console.log('\n\x1b[1m╔══════════════════════════════════════════╗\x1b[0m');
|
|
14
|
-
console.log(
|
|
15
|
-
console.log(
|
|
14
|
+
console.log('\x1b[1m║ VSAF — Global Infra ║\x1b[0m');
|
|
15
|
+
console.log('\x1b[1m╚══════════════════════════════════════════╝\x1b[0m');
|
|
16
16
|
|
|
17
17
|
installSkills();
|
|
18
18
|
installBinary('gitnexus', () => exec('npm install -g gitnexus@1.6.4-rc.79'));
|
|
19
19
|
setupGitnexusMcp();
|
|
20
|
-
await
|
|
20
|
+
await setupVdsScriptsMcp();
|
|
21
21
|
|
|
22
22
|
console.log('\n\x1b[32m\x1b[1m✓ Global infra ready.\x1b[0m\n');
|
|
23
23
|
}
|
|
@@ -71,49 +71,75 @@ function setupGitnexusMcp() {
|
|
|
71
71
|
: warn('MCP setup failed — run manually: claude mcp add gitnexus -- npx -y gitnexus@1.6.4-rc.79 mcp');
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
async function setupVdsScriptsMcp() {
|
|
77
|
+
step('VDS Scripts MCP');
|
|
76
78
|
|
|
77
79
|
if (!hasCommand('claude')) {
|
|
78
|
-
info('Claude Code CLI
|
|
80
|
+
info('Claude Code CLI không tìm thấy — bỏ qua thiết lập VDS MCP');
|
|
79
81
|
return;
|
|
80
82
|
}
|
|
81
83
|
|
|
82
|
-
const
|
|
83
|
-
|
|
84
|
-
);
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
' -e CONF_BASE_URL=<your-url> \\\n' +
|
|
90
|
-
' -e CONF_AUTH_MODE=bearer \\\n' +
|
|
91
|
-
' -e CONF_TOKEN=<your-token> \\\n' +
|
|
92
|
-
' -- npx -y confluence-mcp-server');
|
|
84
|
+
const srcDir = path.join(PKG_ROOT, 'tools', 'vds-scripts');
|
|
85
|
+
const destDir = path.join(CLAUDE_HOME, 'vds-scripts');
|
|
86
|
+
const mcpDir = path.join(destDir, 'mcp_server');
|
|
87
|
+
|
|
88
|
+
info(`Source: ${srcDir}`);
|
|
89
|
+
if (!fs.existsSync(srcDir)) {
|
|
90
|
+
warn('Không tìm thấy source vds-scripts trong package — bỏ qua cài đặt.');
|
|
93
91
|
return;
|
|
94
92
|
}
|
|
95
93
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
);
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
94
|
+
fs.mkdirSync(path.dirname(destDir), { recursive: true });
|
|
95
|
+
copyDir(srcDir, destDir);
|
|
96
|
+
ok('Cài đặt thành công.');
|
|
97
|
+
|
|
98
|
+
step('Cấu hình VDS CLI và Credentials');
|
|
99
|
+
const envDir = path.join(require('os').homedir(), '.vds');
|
|
100
|
+
const envFile = path.join(envDir, '.env');
|
|
101
|
+
if (!fs.existsSync(envFile)) {
|
|
102
|
+
fs.mkdirSync(envDir, { recursive: true });
|
|
103
|
+
|
|
104
|
+
info('Vui lòng cung cấp các thông tin xác thực sau (Bắt buộc):');
|
|
105
|
+
let vdsUsername = ''; while (!vdsUsername) vdsUsername = await promptInput(' Nhập VDS_USERNAME: ');
|
|
106
|
+
let vdsPassword = ''; while (!vdsPassword) vdsPassword = await promptSecret(' Nhập VDS_PASSWORD: ');
|
|
107
|
+
let bitbucketToken = ''; while (!bitbucketToken) bitbucketToken = await promptSecret(' Nhập BITBUCKET_TOKEN: ');
|
|
108
|
+
let jiraToken = ''; while (!jiraToken) jiraToken = await promptSecret(' Nhập JIRA_TOKEN: ');
|
|
109
|
+
let confluenceToken = ''; while (!confluenceToken) confluenceToken = await promptSecret(' Nhập INTERNAL_CONFLUENCE_TOKEN: ');
|
|
110
|
+
let extConfluenceToken = ''; while (!extConfluenceToken) extConfluenceToken = await promptSecret(' Nhập EXTERNAL_CONFLUENCE_TOKEN: ');
|
|
111
|
+
|
|
112
|
+
let jiraBaseUrl = ''; while (!jiraBaseUrl) jiraBaseUrl = await promptInput(' Nhập JIRA_BASE_URL (e.g. https://jira.viettelmoney.vn/): ');
|
|
113
|
+
let bitbucketBaseUrl = ''; while (!bitbucketBaseUrl) bitbucketBaseUrl = await promptInput(' Nhập BITBUCKET_BASE_URL (e.g. http://bitbucket.digital.vn): ');
|
|
114
|
+
let confluenceInternalUrl = ''; while (!confluenceInternalUrl) confluenceInternalUrl = await promptInput(' Nhập CONFLUENCE_INTERNAL_URL (e.g. http://10.254.136.35:8090): ');
|
|
115
|
+
let confluenceExternalUrl = ''; while (!confluenceExternalUrl) confluenceExternalUrl = await promptInput(' Nhập CONFLUENCE_EXTERNAL_URL (e.g. http://10.254.136.35:8090): ');
|
|
116
|
+
|
|
117
|
+
const envContent = [
|
|
118
|
+
`VDS_USERNAME=${vdsUsername}`,
|
|
119
|
+
`VDS_PASSWORD=${vdsPassword}`,
|
|
120
|
+
`BITBUCKET_TOKEN=${bitbucketToken}`,
|
|
121
|
+
`JIRA_TOKEN=${jiraToken}`,
|
|
122
|
+
`INTERNAL_CONFLUENCE_TOKEN=${confluenceToken}`,
|
|
123
|
+
`EXTERNAL_CONFLUENCE_TOKEN=${extConfluenceToken}`,
|
|
124
|
+
`JIRA_BASE_URL=${jiraBaseUrl}`,
|
|
125
|
+
`CONFLUENCE_INTERNAL_URL=${confluenceInternalUrl}`,
|
|
126
|
+
`CONFLUENCE_EXTERNAL_URL=${confluenceExternalUrl}`,
|
|
127
|
+
`BITBUCKET_BASE_URL=${bitbucketBaseUrl}`
|
|
128
|
+
].join('\n') + '\n';
|
|
129
|
+
|
|
130
|
+
fs.writeFileSync(envFile, envContent);
|
|
131
|
+
ok('Đã lưu cấu hình an toàn vào ~/.vds/.env');
|
|
132
|
+
} else {
|
|
133
|
+
ok('Đã tìm thấy file cấu hình ~/.vds/.env');
|
|
103
134
|
}
|
|
104
135
|
|
|
105
|
-
const cmd =
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
].join(' ');
|
|
113
|
-
|
|
114
|
-
exec(cmd)
|
|
115
|
-
? ok('Confluence MCP configured')
|
|
116
|
-
: warn('Confluence MCP setup failed — run manually (see above)');
|
|
136
|
+
const cmd = `claude mcp add vds-orchestrator -- uv run --project "${mcpDir}" vds-mcp-server`;
|
|
137
|
+
|
|
138
|
+
if (exec(cmd)) {
|
|
139
|
+
ok('VDS Scripts MCP đã được cấu hình thành công');
|
|
140
|
+
} else {
|
|
141
|
+
warn('Lỗi thiết lập MCP — vui lòng chạy lệnh thủ công');
|
|
142
|
+
}
|
|
117
143
|
}
|
|
118
144
|
|
|
119
145
|
function promptInput(question) {
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Quality Baseline — vds-scripts-skill
|
|
2
|
+
|
|
3
|
+
## Version History
|
|
4
|
+
|
|
5
|
+
| Version | Date | Score | Evaluator | Notes |
|
|
6
|
+
|---------|------|-------|-----------|-------|
|
|
7
|
+
| 1.0.0 | 2026-03-19 | 3.6/5 | Manual | Initial baseline - needs split |
|
|
8
|
+
| 1.1.0 | 2026-03-23 | pending | Manual | Repositioned as platform-routing skill; pending post-refactor review |
|
|
9
|
+
|
|
10
|
+
## Evaluation Criteria
|
|
11
|
+
|
|
12
|
+
| Criterion | Weight | Type | Description |
|
|
13
|
+
|-----------|--------|------|-------------|
|
|
14
|
+
| Accuracy | 40% | Scored 1-5 | Commands and routing guidance are correct |
|
|
15
|
+
| Completeness | 25% | Scored 1-5 | Current WHO capabilities are represented through skill text, references, or routing aids |
|
|
16
|
+
| Actionability | 20% | Scored 1-5 | Users can quickly choose the correct command family or specialist skill |
|
|
17
|
+
| Token Efficiency | 10% | Scored 1-5 | Main skill stays concise and relies on progressive disclosure |
|
|
18
|
+
| Schema Validity | 5% | Binary | Skill follows AgentSkills/OpenSkills structure and metadata |
|
|
19
|
+
|
|
20
|
+
## Current Role
|
|
21
|
+
|
|
22
|
+
`vds-scripts-skill` is the platform-routing skill for the WHO scripts ecosystem.
|
|
23
|
+
It is not the deep specialist runbook for audit workflows or other specialist domains.
|
|
24
|
+
|
|
25
|
+
## Known Issues
|
|
26
|
+
|
|
27
|
+
- Post-refactor scoring still needs a fresh baseline run.
|
|
28
|
+
- Capability coverage should be validated against the current WHO workspace inventory.
|
|
29
|
+
- Generated/root agent surfaces must be synced after the final skill/doc changes land.
|
|
30
|
+
|
|
31
|
+
## Validation Checklist
|
|
32
|
+
|
|
33
|
+
- [ ] `SKILL.md` remains concise and activation-oriented
|
|
34
|
+
- [ ] references/ covers the broader capability map
|
|
35
|
+
- [ ] routing matrix maps common intents to the right skill/command family
|
|
36
|
+
- [ ] registry metadata matches the updated role
|
|
37
|
+
- [ ] scripts docs and skills docs tell the same ownership story
|
|
38
|
+
|
|
39
|
+
## Quality Hypotheses
|
|
40
|
+
|
|
41
|
+
| Date | Hypothesis | Expected | Actual | Score Change |
|
|
42
|
+
|------|------------|----------|--------|--------------|
|
|
43
|
+
| 2026-03-23 | Shift from command dump to platform-routing + references | Token Efficiency up, Completeness up, clearer routing | pending | pending |
|
|
44
|
+
| 2026-03-23 | Add capability index and routing matrix | Completeness 3.5→4.2 | pending | pending |
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: vds-scripts-skill
|
|
3
|
+
description: Use the WHO VDS scripts ecosystem as the platform entrypoint for routed CLI commands, workspace capabilities, and skill delegation. Use when you need to choose the right vds-cli command family, understand the current WHO scripts surface, or route to the correct specialist skill.
|
|
4
|
+
license: Apache-2.0
|
|
5
|
+
metadata:
|
|
6
|
+
version: "1.1.0"
|
|
7
|
+
author: "VDS Platform Team"
|
|
8
|
+
category: "infrastructure"
|
|
9
|
+
tags:
|
|
10
|
+
- cli
|
|
11
|
+
- routing
|
|
12
|
+
- orchestrators
|
|
13
|
+
- platform
|
|
14
|
+
- who
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# VDS Scripts Skill
|
|
18
|
+
|
|
19
|
+
Use this skill as the **platform-routing entrypoint** for the WHO scripts ecosystem.
|
|
20
|
+
|
|
21
|
+
`WHO-project` is the canonical VDS ecosystem for both reusable skills and routed scripts:
|
|
22
|
+
- skills live under `WHO-project/vds-skills/skills/`
|
|
23
|
+
- scripts and orchestrators live under `WHO-project/vds-scripts/`
|
|
24
|
+
|
|
25
|
+
This skill helps you:
|
|
26
|
+
- find the right `vds-cli` command family
|
|
27
|
+
- understand the current WHO scripts workspace surface
|
|
28
|
+
- identify whether a task belongs to a platform command or a specialist skill
|
|
29
|
+
- route humans and AI agents to the correct authoritative source
|
|
30
|
+
|
|
31
|
+
## When to Use
|
|
32
|
+
|
|
33
|
+
Use this skill when you need:
|
|
34
|
+
- a quick map of the WHO scripts ecosystem
|
|
35
|
+
- the right command family for a task
|
|
36
|
+
- the right specialist skill for deeper guidance
|
|
37
|
+
- bootstrap guidance for `vds-cli`, environment checks, and command discovery
|
|
38
|
+
- a capability index for current WHO automation surfaces
|
|
39
|
+
|
|
40
|
+
Do **not** use this skill as the authoritative deep runbook for:
|
|
41
|
+
- audit workflow execution → use `audit-orchestrator-skill`
|
|
42
|
+
- LLM-backed content evaluation → use `llm-analysis-skill`
|
|
43
|
+
- spec authoring/consolidation → use `spec-creation-skill`
|
|
44
|
+
- LSP setup and type-checking workflows → use `lsp-skill`
|
|
45
|
+
- circular dependency analysis → use `circular-dependency-skill`
|
|
46
|
+
|
|
47
|
+
## Canonical Sources
|
|
48
|
+
|
|
49
|
+
- Scripts workspace: `WHO-project/vds-scripts/`
|
|
50
|
+
- Skills catalog: `WHO-project/vds-skills/skills/`
|
|
51
|
+
- Skill registry: `WHO-project/vds-skills/registry.yaml`
|
|
52
|
+
- Alignment workflow: `WHO-project/vds-skills/ALIGNMENT.md`
|
|
53
|
+
|
|
54
|
+
## Primary Command Entry Points
|
|
55
|
+
|
|
56
|
+
```/dev/null/vds-scripts-skill-entrypoints.sh#L1-12
|
|
57
|
+
# Interactive monorepo-root usage
|
|
58
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package vds-cli vds-cli --help
|
|
59
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit --help
|
|
60
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package spec_orchestrator vds-spec --help
|
|
61
|
+
|
|
62
|
+
# Dedicated vds-scripts worktree usage
|
|
63
|
+
./scripts/worktree_uv.sh run --package vds_cli vds-cli --help
|
|
64
|
+
./scripts/worktree_uv.sh run --package audit_orchestrator vds-audit --help
|
|
65
|
+
./scripts/worktree_uv.sh run --package spec_orchestrator vds-spec --help
|
|
66
|
+
|
|
67
|
+
# Maintained shell scripts must not copy the plain patterns above.
|
|
68
|
+
# They should source scripts/vds_sh_helpers.sh and use vds_uv_run_package
|
|
69
|
+
# / vds_uv_sync_package / vds_uv_sync_all instead.
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Platform Command Families
|
|
73
|
+
|
|
74
|
+
### Bootstrap and discovery
|
|
75
|
+
- `vds-cli env ...`
|
|
76
|
+
- `vds-cli status`
|
|
77
|
+
- `vds-cli doctor`
|
|
78
|
+
- `vds-cli docs ...`
|
|
79
|
+
|
|
80
|
+
### Integrations
|
|
81
|
+
- `vds-cli jira ...`
|
|
82
|
+
- `vds-cli confluence ...`
|
|
83
|
+
- `vds-cli bitbucket ...`
|
|
84
|
+
- `vds-cli git ...`
|
|
85
|
+
- `vds-cli elastic ...`
|
|
86
|
+
- `vds-cli grafana ...`
|
|
87
|
+
- `vds-cli sonarqube ...`
|
|
88
|
+
|
|
89
|
+
### Documentation and validation
|
|
90
|
+
- `vds-cli openapi ...`
|
|
91
|
+
- `vds-cli links ...`
|
|
92
|
+
- `vds-cli structure ...`
|
|
93
|
+
- `vds-cli schema ...`
|
|
94
|
+
- `vds-cli pdf ...`
|
|
95
|
+
- `vds-cli diagrams ...`
|
|
96
|
+
- `vds-cli excel ...`
|
|
97
|
+
- `vds-cli google-sheets ...`
|
|
98
|
+
- `vds-markdown ...` via `markdown_orchestrator`
|
|
99
|
+
|
|
100
|
+
### Development and workflow
|
|
101
|
+
- `vds-cli intellij ...`
|
|
102
|
+
- `vds-cli tasks ...`
|
|
103
|
+
- `vds-cli lsp ...`
|
|
104
|
+
- `vds-cli spec ...`
|
|
105
|
+
- `vds-cli audit ...`
|
|
106
|
+
- `vds-cli circular-dependency ...`
|
|
107
|
+
|
|
108
|
+
## Specialist Routing Map
|
|
109
|
+
|
|
110
|
+
- Audit workflow execution and readiness gates → `audit-orchestrator-skill`
|
|
111
|
+
- LLM-assisted doc/content scoring → `llm-analysis-skill`
|
|
112
|
+
- Spec creation and consolidation → `spec-creation-skill`
|
|
113
|
+
- CLI/orchestrator development standards → `cli-development-skill`
|
|
114
|
+
- LSP configuration and usage → `lsp-skill`
|
|
115
|
+
- Circular dependency analysis → `circular-dependency-skill`
|
|
116
|
+
- Research-backed investigation → `research-skill`
|
|
117
|
+
- Structural graph review → `code-review-graph-skill`
|
|
118
|
+
|
|
119
|
+
## Progressive Disclosure
|
|
120
|
+
|
|
121
|
+
Use these bundled references for depth:
|
|
122
|
+
- `references/platform-bootstrap.md`
|
|
123
|
+
- `references/capability-index.md`
|
|
124
|
+
- `references/integration-commands.md`
|
|
125
|
+
- `references/validation-commands.md`
|
|
126
|
+
- `references/development-commands.md`
|
|
127
|
+
- `references/specialist-routing.md`
|
|
128
|
+
|
|
129
|
+
## Notes
|
|
130
|
+
|
|
131
|
+
- Edit this skill only under `WHO-project/vds-skills/skills/vds-scripts-skill/`.
|
|
132
|
+
- Do not edit `.agent/skills/` directly.
|
|
133
|
+
- Keep this file concise and routing-oriented; push deeper command catalogs into `references/`.
|
|
134
|
+
- For integrated `WHO-project/vds-scripts` workspace usage, Python 3.14+ is the preferred baseline for humans and AI agents.
|
|
135
|
+
- After updates, sync generated agent surfaces from the monorepo root.
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
# Audit Commands — VDS Scripts Skill
|
|
2
|
+
|
|
3
|
+
Detailed command reference for audit orchestrator operations.
|
|
4
|
+
|
|
5
|
+
These are interactive/operator command examples. From the umbrella monorepo root, prefer `./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator ...`. Inside a dedicated `vds-scripts` worktree, prefer `./scripts/worktree_uv.sh run --package audit_orchestrator ...`. Maintained shell scripts inside `WHO-project/vds-scripts` should source `scripts/vds_sh_helpers.sh` instead of copying raw operator patterns. Preferred integrated baseline for the `vds-scripts` workspace is Python 3.14+.
|
|
6
|
+
|
|
7
|
+
## Audit Prep Sequence (Hard-Cut State-First)
|
|
8
|
+
|
|
9
|
+
```/dev/null/audit-commands-prep-sequence.sh#L1-20
|
|
10
|
+
# 1) Seed centralized state from registry
|
|
11
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit parse-registry \
|
|
12
|
+
--registry-page "<REGISTRY_PAGE_URL_OR_ID>"
|
|
13
|
+
|
|
14
|
+
# 2) Sync repositories for code evidence
|
|
15
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit --json-only sync repos \
|
|
16
|
+
--bitbucket-project "<BITBUCKET_PROJECT_KEY>" \
|
|
17
|
+
--project-storage-key "<PROJECT_STORAGE_KEY>"
|
|
18
|
+
|
|
19
|
+
# 3) Materialize docs + code chunks
|
|
20
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit extract-docs \
|
|
21
|
+
--registry-page "<REGISTRY_PAGE_URL_OR_ID>" \
|
|
22
|
+
--project-storage-key "<PROJECT_STORAGE_KEY>" \
|
|
23
|
+
--output-dir "<EVIDENCE_DIR>"
|
|
24
|
+
|
|
25
|
+
# 4) Hard gate before workflow
|
|
26
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit --json-only state readiness \
|
|
27
|
+
--project "<PROJECT_STORAGE_KEY>" --repo "<REPO_SELECTOR>" \
|
|
28
|
+
| jq '{ready, docs_chunk_ready, code_chunk_ready}'
|
|
29
|
+
|
|
30
|
+
# 5) Phase 87 direct project/repo parsing
|
|
31
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit --json-only parse-project \
|
|
32
|
+
--project "<PROJECT_PAGE_ID>" > /tmp/parse-project.json
|
|
33
|
+
|
|
34
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit --json-only parse-repo \
|
|
35
|
+
--project "<PROJECT_PAGE_ID>" --bitbucket-project "<BITBUCKET_PROJECT_KEY>" \
|
|
36
|
+
--repo "<REPO_SELECTOR>" > /tmp/parse-repo.json
|
|
37
|
+
|
|
38
|
+
# 6) Execute workflow with resolved repo seed
|
|
39
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit workflow "<LOCAL_REPO_PATH>" \
|
|
40
|
+
--thread-id "<THREAD_ID>" --canonical-checklist \
|
|
41
|
+
--checklist-profile "<PROFILE_ID>" \
|
|
42
|
+
--seed-payload /tmp/parse-repo.json
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Selector Notes
|
|
46
|
+
|
|
47
|
+
- `parse-project` / `parse-repo` `--project` accepts only Confluence page-id selectors (numeric or URL with `pageId=<ID>`)
|
|
48
|
+
- Checklist precedence: `--checklist-page-id` > `--checklist-profile` > state profile resolution > canonical fallback `88722450`
|
|
49
|
+
- Phase 102 hard-cut: Legacy `CL-NNN:row_N` tokens not parsed; run `state migrate-row-keys --execute` first
|
|
50
|
+
- Phase 90 selector isolation: `parse-project` rejects Bitbucket keys in `--project`; use `parse-repo --bitbucket-project`
|
|
51
|
+
- `parse-repo` returns `repo_coverage` (project-wide) and `selected_repo_coverage` (filtered); use latter for single-repo seeds
|
|
52
|
+
- `sync repos` selectors: `--local` > `--bitbucket-project` > `--github-org` > `--git-url` (precedence)
|
|
53
|
+
|
|
54
|
+
## Audit Monitoring (Phase 68)
|
|
55
|
+
|
|
56
|
+
```/dev/null/audit-commands-monitoring.sh#L1-11
|
|
57
|
+
# Preflight credentials
|
|
58
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit \
|
|
59
|
+
--json-only doctor credentials --require-state-dsn
|
|
60
|
+
|
|
61
|
+
# Dual-source prep gate
|
|
62
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit \
|
|
63
|
+
--json-only state readiness --project "<PROJECT_KEY>" --repo "<REPO_KEY>" \
|
|
64
|
+
| jq '{ready, docs_chunk_ready, code_chunk_ready, hierarchy_ready}'
|
|
65
|
+
|
|
66
|
+
# Follow runtime logs
|
|
67
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit \
|
|
68
|
+
doctor logs-follow --follow --tail 200 --audit-id "<AUDIT_ID>" --json
|
|
69
|
+
|
|
70
|
+
# Crawl diagnostics (Phase 80)
|
|
71
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator vds-audit \
|
|
72
|
+
doctor crawl-status --project-storage-key "<PROJECT_KEY>"
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Corpus Lifecycle (Phase 94)
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
# Dry-run purge
|
|
79
|
+
vds-audit --json-only corpus purge --project "<PROJECT_KEY>"
|
|
80
|
+
|
|
81
|
+
# Execute purge with advisory lock
|
|
82
|
+
vds-audit --json-only corpus purge --project "<PROJECT_KEY>" --execute
|
|
83
|
+
|
|
84
|
+
# Keep latest, purge older
|
|
85
|
+
vds-audit corpus purge --project "<PROJECT_KEY>" --keep-latest --execute
|
|
86
|
+
|
|
87
|
+
# Backfill metadata
|
|
88
|
+
vds-audit --json-only corpus backfill-metadata --project "<PROJECT_KEY>"
|
|
89
|
+
|
|
90
|
+
# Health diagnostics
|
|
91
|
+
vds-audit --json-only doctor corpus-status --project "<PROJECT_KEY>"
|
|
92
|
+
|
|
93
|
+
# Force full re-ingest
|
|
94
|
+
vds-audit extract-docs --project-storage-key "<PROJECT_KEY>" \
|
|
95
|
+
--force-full-reingest --execute
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## DSPy Judge & Gold Dataset (Phase 108)
|
|
99
|
+
|
|
100
|
+
DSPy is **enabled by default**. No `--use-dspy` flag needed.
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
# Workflow with DSPy judge (default)
|
|
104
|
+
vds-audit workflow "<REPO_PATH>" --thread-id "<THREAD_ID>" --canonical-checklist
|
|
105
|
+
|
|
106
|
+
# Disable DSPy explicitly
|
|
107
|
+
vds-audit workflow "<REPO_PATH>" --thread-id "<THREAD_ID>" --canonical-checklist --no-use-dspy
|
|
108
|
+
|
|
109
|
+
# Build gold dataset
|
|
110
|
+
vds-audit build-gold-dataset [--search-root <dir>] [--output <path>] \
|
|
111
|
+
[--checklist-aware] [--category-balance] [--benchmark-slice]
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
**Key Environment Variables**:
|
|
115
|
+
- `VDS_AUDIT_FEATURES__DSPY_ENABLED` (default: `true`)
|
|
116
|
+
- `VDS_AUDIT_DSPY_JUDGE_MAX_INVOCATIONS_PER_RUN` (default: `20`)
|
|
117
|
+
- `VDS_AUDIT_LLM__DSPY_JUDGE_LOW_CONFIDENCE_THRESHOLD` (default: `0.65`)
|
|
118
|
+
- `VDS_AUDIT_DSPY_ASSERTIONS_ENABLED` (default: `true`)
|
|
119
|
+
|
|
120
|
+
## Multi-Provider Runs (Phase 107)
|
|
121
|
+
|
|
122
|
+
```/dev/null/audit-commands-multi-provider.sh#L1-21
|
|
123
|
+
# Alibaba-openai (qwen3.5-plus)
|
|
124
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator \
|
|
125
|
+
vds-audit workflow "<REPO_PATH>" \
|
|
126
|
+
--profile alibaba-openai \
|
|
127
|
+
--project-storage-key "<PROJECT_STORAGE_KEY>" \
|
|
128
|
+
--thread-id "<THREAD_ID>" \
|
|
129
|
+
--canonical-checklist \
|
|
130
|
+
--target "CL-004,CL-001"
|
|
131
|
+
|
|
132
|
+
# Z.ai-openai (glm-5)
|
|
133
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator \
|
|
134
|
+
vds-audit workflow "<REPO_PATH>" \
|
|
135
|
+
--profile zai-openai \
|
|
136
|
+
--project-storage-key "<PROJECT_STORAGE_KEY>" \
|
|
137
|
+
--thread-id "<THREAD_ID>" \
|
|
138
|
+
--canonical-checklist \
|
|
139
|
+
--target "CL-004,CL-001"
|
|
140
|
+
|
|
141
|
+
# Gemini (via local proxy)
|
|
142
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package audit_orchestrator \
|
|
143
|
+
vds-audit workflow "<REPO_PATH>" \
|
|
144
|
+
--profile antigravity-gemini \
|
|
145
|
+
--project-storage-key "<PROJECT_STORAGE_KEY>" \
|
|
146
|
+
--thread-id "<THREAD_ID>" \
|
|
147
|
+
--canonical-checklist \
|
|
148
|
+
--target "CL-004,CL-001"
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Non-Claude profiles have increased budgets: `MAX_TURNS=32`, `MAX_TOOL_CALLS=96`.
|
|
152
|
+
|
|
153
|
+
For single-row reruns such as `CL-002`, keep the same workflow shape and pass `--target CL-002`. Do not use unsupported legacy selectors such as `--check-ids` or `--targeted-rows`.
|
|
154
|
+
|
|
155
|
+
## System Documentation (Phase 106)
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
# Publish 6-page Vietnamese hierarchy
|
|
159
|
+
vds-audit publish-system-doc --project "<PROJECT_ID>" --sync-policy if-changed
|
|
160
|
+
|
|
161
|
+
# Force re-publish
|
|
162
|
+
vds-audit publish-system-doc --project "<PROJECT_ID>" --sync-policy force
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
Hierarchy pages:
|
|
166
|
+
- Root: Tài liệu Hệ thống Audit
|
|
167
|
+
- 📐 Công nghệ & Kiến trúc
|
|
168
|
+
- ⚙️ Quy trình Vận hành
|
|
169
|
+
- 📊 Kết quả Audit & Chỉ số
|
|
170
|
+
- 🔧 Hướng dẫn Cài đặt & Cấu hình
|
|
171
|
+
- 📖 Tham chiếu Kỹ thuật
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Capability Index
|
|
2
|
+
|
|
3
|
+
This index maps the current WHO scripts ecosystem at a platform-routing level.
|
|
4
|
+
|
|
5
|
+
## Routed command surfaces
|
|
6
|
+
|
|
7
|
+
- bootstrap: `env`, `status`, `doctor`, `docs`
|
|
8
|
+
- integrations: `jira`, `confluence`, `bitbucket`, `git`, `elastic`, `grafana`, `sonarqube`
|
|
9
|
+
- docs/validation: `openapi`, `links`, `structure`, `schema`, `pdf`, `diagrams`, `excel`, `google-sheets`
|
|
10
|
+
- development/workflow: `intellij`, `tasks`, `lsp`, `spec`, `audit`, `circular-dependency`
|
|
11
|
+
|
|
12
|
+
## Standalone workspace capabilities
|
|
13
|
+
|
|
14
|
+
- `markdown_orchestrator` for markdown lint/format workflows
|
|
15
|
+
- `hexagonal_orchestrator` for architecture/compliance support
|
|
16
|
+
- `mcp_server` for MCP/server-related support
|
|
17
|
+
- `multi_agent_orchestrator` for multi-agent execution support
|
|
18
|
+
|
|
19
|
+
## Shared/internal support layers
|
|
20
|
+
|
|
21
|
+
- `vds_cli_common`
|
|
22
|
+
- `vds_hooks`
|
|
23
|
+
|
|
24
|
+
## Skills ecosystem linkage
|
|
25
|
+
|
|
26
|
+
The WHO skills catalog complements the scripts workspace with specialist skills such as:
|
|
27
|
+
- `audit-orchestrator-skill`
|
|
28
|
+
- `llm-analysis-skill`
|
|
29
|
+
- `spec-creation-skill`
|
|
30
|
+
- `research-skill`
|
|
31
|
+
- `lsp-skill`
|
|
32
|
+
- `circular-dependency-skill`
|
|
33
|
+
|
|
34
|
+
Use this index with `specialist-routing.md` and the scripts docs routing matrix.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Development Commands
|
|
2
|
+
|
|
3
|
+
Representative WHO development/workflow command families:
|
|
4
|
+
|
|
5
|
+
- `vds-cli intellij ...`
|
|
6
|
+
- `vds-cli tasks ...`
|
|
7
|
+
- `vds-cli lsp ...`
|
|
8
|
+
- `vds-cli spec ...`
|
|
9
|
+
- `vds-audit ...`
|
|
10
|
+
- `vds-cli circular-dependency ...`
|
|
11
|
+
|
|
12
|
+
These families often route into specialist skills for deeper guidance.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Google Sheets Commands — VDS Scripts Skill
|
|
2
|
+
|
|
3
|
+
Standalone package with 10 commands and full VDS CLI standards.
|
|
4
|
+
|
|
5
|
+
## Commands
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# List worksheets
|
|
9
|
+
vds-cli google-sheets list-worksheets \
|
|
10
|
+
--spreadsheet-url <url> --auth-method service_account
|
|
11
|
+
|
|
12
|
+
# Read a worksheet
|
|
13
|
+
vds-cli google-sheets read \
|
|
14
|
+
--spreadsheet-url <url> --sheet-name "Sheet1" --auth-method service_account
|
|
15
|
+
|
|
16
|
+
# Read a limited range
|
|
17
|
+
vds-cli google-sheets read \
|
|
18
|
+
--spreadsheet-url <url> --sheet-name "Sheet1" --range A1:F10
|
|
19
|
+
|
|
20
|
+
# Write values to a range
|
|
21
|
+
vds-cli google-sheets write \
|
|
22
|
+
--spreadsheet-url <url> --sheet-name "Sheet1" --range "A1:B2" \
|
|
23
|
+
--values-json '[["a","b"],["c","d"]]'
|
|
24
|
+
|
|
25
|
+
# Append rows
|
|
26
|
+
vds-cli google-sheets append \
|
|
27
|
+
--spreadsheet-url <url> --sheet-name "Sheet1" --values-json '[["new","row"]]'
|
|
28
|
+
|
|
29
|
+
# Clear a range
|
|
30
|
+
vds-cli google-sheets clear \
|
|
31
|
+
--spreadsheet-url <url> --sheet-name "Sheet1" --range "A1:Z100"
|
|
32
|
+
|
|
33
|
+
# Create spreadsheet
|
|
34
|
+
vds-cli google-sheets create-spreadsheet --title "New Spreadsheet"
|
|
35
|
+
|
|
36
|
+
# Create worksheet
|
|
37
|
+
vds-cli google-sheets create-worksheet \
|
|
38
|
+
--spreadsheet-url <url> --title "NewSheet" --rows 100 --cols 26
|
|
39
|
+
|
|
40
|
+
# Delete worksheet
|
|
41
|
+
vds-cli google-sheets delete-worksheet \
|
|
42
|
+
--spreadsheet-url <url> --sheet-name "SheetToDelete"
|
|
43
|
+
|
|
44
|
+
# Export to CSV/XLSX
|
|
45
|
+
vds-cli google-sheets export \
|
|
46
|
+
--spreadsheet-url <url> --sheet-name "Sheet1" --output data.csv --format csv
|
|
47
|
+
|
|
48
|
+
# JSON output mode (all commands)
|
|
49
|
+
vds-cli google-sheets -- --json-only read \
|
|
50
|
+
--spreadsheet-url <url> --sheet-name "Sheet1"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Authentication
|
|
54
|
+
|
|
55
|
+
**Defaults**:
|
|
56
|
+
- Service account credentials: use the explicit path/config option when available; otherwise the active Unix-like default is `~/.vds/google_credentials.json`
|
|
57
|
+
- API key: `VDS_GOOGLE_API_KEY` or, under the active Unix-like default, `~/.vds/google_api_key.txt`
|
|
58
|
+
|
|
59
|
+
**Auth methods**:
|
|
60
|
+
- `service_account` - Uses service account JSON file
|
|
61
|
+
- `api_key` - Uses API key from env or file
|
|
62
|
+
|
|
63
|
+
## Full Command Prefix
|
|
64
|
+
|
|
65
|
+
Interactive monorepo-root usage commonly uses:
|
|
66
|
+
|
|
67
|
+
```/dev/null/google-sheets-prefix.sh#L1-1
|
|
68
|
+
./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package vds-cli vds-cli google-sheets <command>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Inside a dedicated `vds-scripts` worktree, the equivalent form is `./scripts/worktree_uv.sh run --package vds_cli vds-cli google-sheets <command>`.
|
|
72
|
+
|
|
73
|
+
For maintained shell scripts inside `WHO-project/vds-scripts`, do not copy raw operator forms. Source `scripts/vds_sh_helpers.sh` and use the helper contract instead.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Integration Commands
|
|
2
|
+
|
|
3
|
+
vds Representative WHO integration command families.
|
|
4
|
+
|
|
5
|
+
These examples are interactive operator examples. From the umbrella monorepo root, prefer `./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package <uv-package-name> ...`. Inside a dedicated `vds-scripts` worktree, prefer `./scripts/worktree_uv.sh run --package <member-dir> ...`. Maintained shell scripts inside `WHO-project/vds-scripts` should source `scripts/vds_sh_helpers.sh` instead of copying raw operator forms.
|
|
6
|
+
|
|
7
|
+
- `vds-cli jira ...`
|
|
8
|
+
- JQL search example: `./WHO-project/vds-scripts/scripts/worktree_uv.sh run --directory WHO-project/vds-scripts --package jira_orchestrator vds-jira-cli search "project = CBDC ORDER BY updated DESC" --limit 5 --json-only`
|
|
9
|
+
- Note: `vds-jira-cli search` now accepts `--json-only` as a command-local flag after `search`, in addition to the global pre-subcommand form.
|
|
10
|
+
- `vds-cli confluence ...`
|
|
11
|
+
- `vds-cli bitbucket ...`
|
|
12
|
+
- `vds-cli git ...`
|
|
13
|
+
- `vds-cli elastic ...`
|
|
14
|
+
- `vds-cli grafana ...`
|
|
15
|
+
- `vds-cli sonarqube ...`
|
|
16
|
+
|
|
17
|
+
Use the scripts workspace reference docs for deeper command examples.
|