@event4u/agent-config 8.1.0 → 8.3.0
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/.claude-plugin/marketplace.json +3 -3
- package/CHANGELOG.md +83 -292
- package/MIGRATION.md +18 -0
- package/README.md +86 -3
- package/dist/agent-src/commands/agents/init.md +3 -3
- package/dist/agent-src/commands/chat-history/import.md +5 -5
- package/dist/agent-src/commands/chat-history.md +1 -1
- package/dist/agent-src/commands/condense.md +1 -1
- package/dist/agent-src/commands/context/create.md +1 -1
- package/dist/agent-src/commands/council/analysis.md +2 -2
- package/dist/agent-src/commands/council/default.md +3 -3
- package/dist/agent-src/commands/council/design.md +2 -2
- package/dist/agent-src/commands/council/optimize.md +1 -1
- package/dist/agent-src/commands/council/pr.md +2 -2
- package/dist/agent-src/commands/council.md +1 -1
- package/dist/agent-src/commands/feature/plan.md +1 -1
- package/dist/agent-src/commands/ghostwriter/list.md +1 -1
- package/dist/agent-src/commands/ghostwriter/write.md +1 -1
- package/dist/agent-src/commands/ghostwriter.md +1 -1
- package/dist/agent-src/commands/implement-ticket.md +2 -2
- package/dist/agent-src/commands/judge/on-diff.md +1 -1
- package/dist/agent-src/commands/judge/steps.md +3 -1
- package/dist/agent-src/commands/memory/add.md +2 -2
- package/dist/agent-src/commands/memory/learn-low-impact.md +1 -1
- package/dist/agent-src/commands/memory/load.md +1 -1
- package/dist/agent-src/commands/memory/mine-session.md +1 -1
- package/dist/agent-src/commands/memory/promote.md +1 -1
- package/dist/agent-src/commands/memory/propose.md +1 -1
- package/dist/agent-src/commands/mission/upgrade.md +1 -1
- package/dist/agent-src/commands/module/explore.md +3 -3
- package/dist/agent-src/commands/optimize/agents-dir.md +1 -1
- package/dist/agent-src/commands/optimize/skills.md +1 -1
- package/dist/agent-src/commands/optimize-project.md +1 -1
- package/dist/agent-src/commands/orchestrate.md +2 -2
- package/dist/agent-src/commands/project-analyze.md +1 -1
- package/dist/agent-src/commands/project-health.md +1 -1
- package/dist/agent-src/commands/roadmap/ai-council.md +1 -1
- package/dist/agent-src/commands/roadmap/create.md +2 -2
- package/dist/agent-src/commands/roadmap/process-full.md +3 -1
- package/dist/agent-src/commands/roadmap/process-phase.md +4 -2
- package/dist/agent-src/commands/roadmap/process-step.md +3 -1
- package/dist/agent-src/commands/security-audit-config.md +1 -1
- package/dist/agent-src/commands/sync-agent-settings.md +7 -7
- package/dist/agent-src/commands/sync-gitignore/fix.md +3 -3
- package/dist/agent-src/commands/sync-gitignore.md +4 -4
- package/dist/agent-src/commands/work.md +3 -3
- package/dist/agent-src/contexts/communication/rules-auto/skill-quality-mechanics.md +1 -1
- package/dist/agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +2 -2
- package/dist/agent-src/contexts/contracts/artifact-engagement-flow.md +1 -1
- package/dist/agent-src/contexts/contracts/command-suggestion-flow.md +8 -7
- package/dist/agent-src/contexts/execution/evidence-discipline.md +2 -2
- package/dist/agent-src/contexts/execution/roadmap-process-loop.md +9 -4
- package/dist/agent-src/contexts/execution/toolchain-resolver.md +10 -9
- package/dist/agent-src/contexts/execution/verification-mechanics.md +13 -1
- package/dist/agent-src/packs/README.md +1 -1
- package/dist/agent-src/presets/README.md +1 -1
- package/dist/agent-src/profiles/README.md +1 -1
- package/dist/agent-src/rules/architecture.md +2 -2
- package/dist/agent-src/rules/context-hygiene.md +2 -2
- package/dist/agent-src/rules/fast-path-marker-visibility.md +1 -1
- package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +1 -1
- package/dist/agent-src/rules/linked-projects-onboarding-gate.md +1 -1
- package/dist/agent-src/rules/low-impact-corpus-privacy-floor.md +3 -3
- package/dist/agent-src/rules/media-governance-routing.md +1 -1
- package/dist/agent-src/rules/no-roadmap-references.md +3 -3
- package/dist/agent-src/rules/preservation-guard.md +2 -2
- package/dist/agent-src/rules/roadmap-ci-steps-policy.md +6 -5
- package/dist/agent-src/rules/roadmap-progress-sync.md +3 -3
- package/dist/agent-src/rules/security-sensitive-stop.md +7 -9
- package/dist/agent-src/rules/source-confidentiality.md +1 -1
- package/dist/agent-src/rules/telegraph-speak.md +1 -1
- package/dist/agent-src/rules/token-optimizer-maintenance.md +1 -1
- package/dist/agent-src/rules/ui-audit-gate.md +1 -1
- package/dist/agent-src/scripts/archive_completed_roadmaps.ts +22 -4
- package/dist/agent-src/scripts/update_roadmap_progress.ts +29 -1
- package/dist/agent-src/skills/accessibility-auditor/SKILL.md +3 -2
- package/dist/agent-src/skills/adr-create/SKILL.md +8 -6
- package/dist/agent-src/skills/agent-docs-writing/SKILL.md +1 -1
- package/dist/agent-src/skills/agents-md-thin-root/SKILL.md +2 -2
- package/dist/agent-src/skills/ai-council/SKILL.md +15 -15
- package/dist/agent-src/skills/api-design/SKILL.md +1 -1
- package/dist/agent-src/skills/api-endpoint/SKILL.md +2 -1
- package/dist/agent-src/skills/authz-review/SKILL.md +1 -1
- package/dist/agent-src/skills/blade-ui/SKILL.md +11 -10
- package/dist/agent-src/skills/blameless-post-mortem/SKILL.md +9 -8
- package/dist/agent-src/skills/code-review/SKILL.md +3 -4
- package/dist/agent-src/skills/command-routing/SKILL.md +3 -3
- package/dist/agent-src/skills/command-writing/SKILL.md +3 -3
- package/dist/agent-src/skills/condense-memory/SKILL.md +2 -2
- package/dist/agent-src/skills/context-authoring/SKILL.md +1 -1
- package/dist/agent-src/skills/context-document/SKILL.md +1 -1
- package/dist/agent-src/skills/copilot-agents-optimization/SKILL.md +1 -1
- package/dist/agent-src/skills/corpus-grounding/SKILL.md +16 -11
- package/dist/agent-src/skills/corpus-grounding/scripts/ground.ts +24 -3
- package/dist/agent-src/skills/dashboard-design/SKILL.md +2 -1
- package/dist/agent-src/skills/database/SKILL.md +2 -1
- package/dist/agent-src/skills/description-assist/SKILL.md +6 -6
- package/dist/agent-src/skills/design-intelligence/SKILL.md +6 -5
- package/dist/agent-src/skills/design-tokens/SKILL.md +5 -5
- package/dist/agent-src/skills/design-tokens/scripts/tokens.ts +24 -3
- package/dist/agent-src/skills/existing-ui-audit/SKILL.md +3 -3
- package/dist/agent-src/skills/fe-design/SKILL.md +7 -7
- package/dist/agent-src/skills/finishing-a-development-branch/SKILL.md +11 -4
- package/dist/agent-src/skills/flux/SKILL.md +10 -9
- package/dist/agent-src/skills/git-workflow/SKILL.md +4 -5
- package/dist/agent-src/skills/guideline-writing/SKILL.md +2 -2
- package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +2 -2
- package/dist/agent-src/skills/livewire/SKILL.md +10 -9
- package/dist/agent-src/skills/memory-consolidation/SKILL.md +2 -2
- package/dist/agent-src/skills/module-detect-on-the-fly/SKILL.md +5 -5
- package/dist/agent-src/skills/module-management/SKILL.md +2 -2
- package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +11 -11
- package/dist/agent-src/skills/prediction-pool-optimizer/reference/ev-fixtures.md +6 -6
- package/dist/agent-src/skills/prediction-pool-optimizer/reference/odds-and-bonus.md +1 -1
- package/dist/agent-src/skills/premortem/SKILL.md +1 -1
- package/dist/agent-src/skills/project-docs/SKILL.md +1 -1
- package/dist/agent-src/skills/quality-tools/SKILL.md +26 -2
- package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +8 -7
- package/dist/agent-src/skills/react-shadcn-ui/scripts/shadcn_add.ts +31 -10
- package/dist/agent-src/skills/refine-prompt/SKILL.md +14 -14
- package/dist/agent-src/skills/refine-ticket/SKILL.md +24 -25
- package/dist/agent-src/skills/refine-ticket/detection-map.yml +1 -1
- package/dist/agent-src/skills/review-routing/SKILL.md +6 -7
- package/dist/agent-src/skills/roadmap-management/SKILL.md +11 -6
- package/dist/agent-src/skills/rule-refactor/SKILL.md +1 -1
- package/dist/agent-src/skills/rule-writing/SKILL.md +5 -5
- package/dist/agent-src/skills/script-writing/SKILL.md +28 -41
- package/dist/agent-src/skills/skill-writing/SKILL.md +3 -3
- package/dist/agent-src/skills/source-discovery/SKILL.md +3 -3
- package/dist/agent-src/skills/sql-writing/SKILL.md +2 -1
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +1 -1
- package/dist/agent-src/skills/systematic-debugging/SKILL.md +5 -7
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +2 -2
- package/dist/agent-src/skills/tailwind-engineer/scripts/tailwind_config_gen.ts +25 -4
- package/dist/agent-src/skills/token-optimizer/SKILL.md +1 -1
- package/dist/agent-src/skills/typography-system/SKILL.md +1 -1
- package/dist/agent-src/skills/validate-feature-fit/SKILL.md +5 -7
- package/dist/agent-src/skills/verify-completion-evidence/SKILL.md +13 -1
- package/dist/agent-src/templates/agent-settings.md +34 -25
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +3 -3
- package/dist/agent-src/templates/agents/memory/incident-learnings.example.yml +1 -1
- package/dist/agent-src/templates/agents/proposal.example.md +4 -4
- package/dist/agent-src/templates/copilot-instructions.md +1 -1
- package/dist/agent-src/templates/github-workflows/memory-hygiene.yml +10 -10
- package/dist/agent-src/templates/github-workflows/pr-risk-review.yml +19 -8
- package/dist/agent-src/templates/github-workflows/proposal-drift.yml +11 -8
- package/dist/agent-src/templates/github-workflows/roadmap-progress-check.yml +10 -12
- package/dist/agent-src/templates/hooks/pre-commit-frontmatter +21 -11
- package/dist/agent-src/templates/hooks/pre-commit-roadmap-progress +43 -29
- package/dist/agent-src/templates/roadmaps.md +9 -4
- package/dist/agent-src/templates/rule.md +3 -3
- package/dist/agent-src/templates/scripts/README.md +6 -6
- package/dist/agent-src/templates/scripts/check_memory.ts +24 -2
- package/dist/agent-src/templates/scripts/check_memory_proposal.ts +23 -4
- package/dist/agent-src/templates/scripts/historical-bug-patterns.example.yml +1 -1
- package/dist/agent-src/templates/scripts/memory_hash.ts +24 -2
- package/dist/agent-src/templates/scripts/memory_lookup.ts +24 -2
- package/dist/agent-src/templates/scripts/memory_report.ts +24 -2
- package/dist/agent-src/templates/scripts/memory_signal.ts +24 -2
- package/dist/agent-src/templates/scripts/memory_status.ts +26 -2
- package/dist/agent-src/templates/scripts/ownership-map.example.yml +1 -1
- package/dist/agent-src/templates/scripts/pr-risk-config.example.yml +1 -1
- package/dist/agent-src/templates/scripts/pr_review_routing.ts +24 -3
- package/dist/agent-src/templates/scripts/pr_risk_review.ts +0 -0
- package/dist/agent-src/templates/scripts/telemetry_record.ts +24 -3
- package/dist/agent-src/templates/scripts/telemetry_report.ts +25 -3
- package/dist/agent-src/templates/scripts/telemetry_status.ts +24 -3
- package/dist/agent-src/templates/scripts/tier_usage_report.ts +24 -2
- package/dist/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +44 -10
- package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/_chat_history_base.ts +26 -13
- package/dist/agent-src/templates/skill.md +2 -2
- package/dist/cli/python/knowledge_ingest.js +24 -3
- package/dist/cli/python/knowledge_ingest.js.map +1 -1
- package/dist/cli/python/workspace_analytics.js +23 -3
- package/dist/cli/python/workspace_analytics.js.map +1 -1
- package/dist/cli/python/workspace_crypto.js +23 -3
- package/dist/cli/python/workspace_crypto.js.map +1 -1
- package/dist/cli/python/workspace_documents.js +23 -3
- package/dist/cli/python/workspace_documents.js.map +1 -1
- package/dist/cli/python/workspace_drive.js +24 -3
- package/dist/cli/python/workspace_drive.js.map +1 -1
- package/dist/cli/python/workspace_drive_health.js +23 -3
- package/dist/cli/python/workspace_drive_health.js.map +1 -1
- package/dist/cli/python/workspace_explain.js +23 -3
- package/dist/cli/python/workspace_explain.js.map +1 -1
- package/dist/cli/python/workspace_hosts.js +23 -3
- package/dist/cli/python/workspace_hosts.js.map +1 -1
- package/dist/cli/python/workspace_inbox.js +23 -3
- package/dist/cli/python/workspace_inbox.js.map +1 -1
- package/dist/cli/python/workspace_render.js +23 -3
- package/dist/cli/python/workspace_render.js.map +1 -1
- package/dist/cli/python/workspace_roles.js +23 -3
- package/dist/cli/python/workspace_roles.js.map +1 -1
- package/dist/cli/python/workspace_sessions.js +23 -3
- package/dist/cli/python/workspace_sessions.js.map +1 -1
- package/dist/cli/python/workspace_skills.js +23 -3
- package/dist/cli/python/workspace_skills.js.map +1 -1
- package/dist/cli/registry.js +2 -0
- package/dist/cli/registry.js.map +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +118 -118
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +2 -2
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +3 -3
- package/dist/discovery/trust-report.md +1 -1
- package/dist/discovery/workspaces.json +3 -3
- package/dist/install/install.mjs +647 -408
- package/dist/mcp/registry-manifest.json +3 -3
- package/dist/server/routes/settings.js +4 -4
- package/dist/server/routes/settings.js.map +1 -1
- package/dist/server/schemas/settings.js +1 -1
- package/dist/server/schemas/settings.js.map +1 -1
- package/docs/CLAIMS.md +2 -2
- package/docs/archive/CHANGELOG-pre-8.1.0.md +316 -0
- package/docs/benchmark.md +40 -0
- package/docs/contracts/CHANGELOG-conventions.md +8 -5
- package/docs/contracts/branch-protection-policy.md +14 -5
- package/docs/contracts/mcp-phase-1-scope.md +75 -0
- package/docs/contracts/mcp-tool-inventory.md +22 -15
- package/docs/contracts/release-pr-gating.md +22 -11
- package/docs/contracts/skill-bundled-assets.md +2 -2
- package/docs/customization.md +1 -1
- package/docs/decisions/ADR-110-discipline-profile-resolution-locus.md +9 -4
- package/docs/decisions/ADR-111-canonical-glama-listing.md +97 -0
- package/docs/decisions/ADR-112-stdio-lite-stays-read-only.md +92 -0
- package/docs/decisions/ADR-113-ci-native-release-label-trigger.md +201 -0
- package/docs/decisions/INDEX.md +3 -0
- package/docs/distribution/registry-submissions.md +1 -1
- package/docs/getting-started.md +8 -6
- package/docs/guidelines/agent-infra/corpus-grounding-authoring.md +2 -2
- package/docs/guidelines/agent-infra/engineering-memory-data-format.md +4 -4
- package/docs/guidelines/agent-infra/installed-tools-manifest.md +3 -3
- package/docs/guidelines/agent-infra/language-and-tone-examples.md +2 -2
- package/docs/guidelines/agent-infra/layered-settings.md +4 -4
- package/docs/guidelines/agent-infra/memory-access.md +19 -18
- package/docs/guidelines/agent-infra/naming.md +1 -1
- package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +5 -5
- package/docs/guidelines/agent-infra/role-contracts.md +1 -1
- package/docs/guidelines/agent-infra/security-lint-containment.md +2 -2
- package/docs/guidelines/agent-infra/self-improvement-pipeline.md +1 -1
- package/docs/guidelines/agent-infra/size-and-scope.md +1 -1
- package/docs/guidelines/agent-infra/skill-quality-checklist.md +5 -5
- package/docs/guidelines/augment-portability-patterns.md +1 -1
- package/docs/installation.md +13 -14
- package/docs/mcp-server.md +32 -20
- package/docs/proof.md +1 -1
- package/docs/setup/mcp-cloud-endpoints.md +9 -2
- package/docs/setup/per-ide/claude-code.md +10 -4
- package/package.json +4 -3
- package/src/config/agent-settings.template.yml +31 -17
- package/src/config/host-capabilities.yml +25 -16
- package/src/config/profiles/balanced.ini +5 -3
- package/src/scripts/_cli/cmd_analyze_session.ts +23 -4
- package/src/scripts/_cli/cmd_conformance.ts +23 -4
- package/src/scripts/_cli/cmd_doctor.ts +196 -8
- package/src/scripts/_cli/cmd_explain.ts +23 -4
- package/src/scripts/_cli/cmd_export.ts +23 -4
- package/src/scripts/_cli/cmd_fleet.ts +23 -4
- package/src/scripts/_cli/cmd_migrate.ts +23 -4
- package/src/scripts/_cli/cmd_preflight.ts +24 -4
- package/src/scripts/_cli/cmd_prune.ts +23 -4
- package/src/scripts/_cli/cmd_refresh.ts +23 -4
- package/src/scripts/_cli/cmd_settings_check.ts +23 -4
- package/src/scripts/_cli/cmd_settings_migrate.ts +23 -4
- package/src/scripts/_cli/cmd_sync.ts +23 -4
- package/src/scripts/_cli/cmd_uninstall.ts +45 -4
- package/src/scripts/_cli/cmd_update.ts +23 -4
- package/src/scripts/_cli/cmd_upgrade.ts +307 -17
- package/src/scripts/_cli/cmd_validate.ts +23 -4
- package/src/scripts/_cli/cmd_versions.ts +23 -4
- package/src/scripts/_dispatch.bash +62 -19
- package/src/scripts/_lib/claude_plugin.ts +83 -0
- package/src/scripts/_lib/claude_settings_hooks.ts +251 -0
- package/src/scripts/_lib/knowledge_global.ts +24 -2
- package/src/scripts/_lib/knowledge_global_promote.ts +24 -2
- package/src/scripts/_lib/knowledge_global_redaction.ts +24 -2
- package/src/scripts/_lib/link_crypto.ts +24 -5
- package/src/scripts/_lib/pin_resolver.ts +24 -3
- package/src/scripts/adoption_report.ts +23 -4
- package/src/scripts/adoption_snapshot.ts +23 -1
- package/src/scripts/adoption_status.ts +23 -4
- package/src/scripts/adr/regenerate_index.ts +24 -3
- package/src/scripts/ai_council/airgap.ts +25 -2
- package/src/scripts/ai_council/compile_corpus.ts +24 -2
- package/src/scripts/ai_council/pricing.ts +11 -1
- package/src/scripts/analysis_freshness.ts +23 -4
- package/src/scripts/annotate_discovery.ts +23 -1
- package/src/scripts/apply_modules_config.ts +23 -4
- package/src/scripts/audit_adr_coverage.ts +23 -4
- package/src/scripts/audit_auto_rules.ts +23 -1
- package/src/scripts/audit_cloud_compatibility.ts +23 -4
- package/src/scripts/audit_command_surface.ts +23 -4
- package/src/scripts/audit_initial_context.ts +23 -3
- package/src/scripts/audit_likelihood.ts +23 -1
- package/src/scripts/audit_mcp_tools.ts +23 -3
- package/src/scripts/audit_overlap.ts +23 -1
- package/src/scripts/audit_skill_descriptions.ts +24 -2
- package/src/scripts/audit_skill_overlap.ts +23 -1
- package/src/scripts/audit_user_type_axis.ts +23 -4
- package/src/scripts/backfill_model_tier.ts +23 -4
- package/src/scripts/bench_ab_cache_dispatch.ts +23 -1
- package/src/scripts/bench_ab_clone.ts +23 -1
- package/src/scripts/bench_ab_diff.ts +23 -1
- package/src/scripts/bench_ab_integrity.ts +23 -1
- package/src/scripts/bench_ab_run.ts +23 -2
- package/src/scripts/bench_ab_task_runner.ts +23 -1
- package/src/scripts/bench_ab_tracka_run.ts +23 -2
- package/src/scripts/bench_ab_v2_run.ts +23 -1
- package/src/scripts/bench_ab_v2_stats.ts +23 -1
- package/src/scripts/bench_baseline_ready.ts +23 -1
- package/src/scripts/bench_condense_memory.ts +23 -1
- package/src/scripts/bench_drift_check.ts +23 -2
- package/src/scripts/bench_matrix.ts +23 -4
- package/src/scripts/bench_per_tool.ts +23 -1
- package/src/scripts/bench_quality_run.ts +23 -2
- package/src/scripts/bench_rtk_savings.ts +23 -1
- package/src/scripts/bench_rule_load_latency.ts +23 -2
- package/src/scripts/bench_run.ts +23 -2
- package/src/scripts/bench_runner.ts +23 -1
- package/src/scripts/build_cloud_bundle.ts +23 -3
- package/src/scripts/build_discovery_manifest.ts +23 -4
- package/src/scripts/build_linear_digest.ts +23 -3
- package/src/scripts/build_mcp_registry_manifest.ts +23 -4
- package/src/scripts/build_rule_trigger_matrix.ts +23 -4
- package/src/scripts/capture_showcase_session.ts +23 -1
- package/src/scripts/chat_history.ts +24 -3
- package/src/scripts/check_always_budget.ts +23 -2
- package/src/scripts/check_artefact_checksums.ts +23 -4
- package/src/scripts/check_augment_description_cap.ts +23 -4
- package/src/scripts/check_augmentignore.ts +23 -4
- package/src/scripts/check_beta_review_markers.ts +23 -4
- package/src/scripts/check_cluster_patterns.ts +23 -4
- package/src/scripts/check_command_count_messaging.ts +23 -4
- package/src/scripts/check_comparison.ts +23 -1
- package/src/scripts/check_condensation.ts +24 -3
- package/src/scripts/check_condensed_paths.ts +23 -2
- package/src/scripts/check_context_paths.ts +23 -4
- package/src/scripts/check_council_config_location.ts +23 -4
- package/src/scripts/check_council_layout.ts +23 -4
- package/src/scripts/check_council_references.ts +23 -4
- package/src/scripts/check_discovery_determinism.ts +24 -4
- package/src/scripts/check_gate_paths.ts +23 -4
- package/src/scripts/check_generated_artefact_headers.ts +23 -4
- package/src/scripts/check_generator_output_coverage.ts +23 -4
- package/src/scripts/check_gitignore_freshness.ts +23 -4
- package/src/scripts/check_iron_law_prominence.ts +23 -4
- package/src/scripts/check_kernel_prefix_stability.ts +0 -0
- package/src/scripts/check_kernel_rule_bundle.ts +23 -4
- package/src/scripts/check_knowledge_cards.ts +23 -1
- package/src/scripts/check_md_language.ts +23 -4
- package/src/scripts/check_media_deps.ts +24 -1
- package/src/scripts/check_memory.ts +24 -2
- package/src/scripts/check_memory_proposal.ts +23 -4
- package/src/scripts/check_module_management_neutral.ts +23 -4
- package/src/scripts/check_no_conflict_markers.ts +23 -4
- package/src/scripts/check_no_external_sources.ts +23 -4
- package/src/scripts/check_no_local_settings_committed.ts +24 -4
- package/src/scripts/check_no_new_legacy_path.ts +23 -4
- package/src/scripts/check_no_roadmap_refs.ts +23 -4
- package/src/scripts/check_one_off_location.ts +23 -4
- package/src/scripts/check_overlay_cascade_subdirs.ts +23 -4
- package/src/scripts/check_portability.ts +24 -3
- package/src/scripts/check_proposal.ts +0 -0
- package/src/scripts/check_public_catalog_links.ts +23 -4
- package/src/scripts/check_public_links.ts +23 -4
- package/src/scripts/check_quality_regression.ts +23 -2
- package/src/scripts/check_references.ts +23 -4
- package/src/scripts/check_release_includes_discovery.ts +23 -4
- package/src/scripts/check_release_pr_shape.ts +23 -4
- package/src/scripts/check_release_published.ts +23 -4
- package/src/scripts/check_release_trunk_sync.ts +23 -4
- package/src/scripts/check_reply_consistency.ts +23 -4
- package/src/scripts/check_roadmap_trackable.ts +23 -4
- package/src/scripts/check_role_doc_links.ts +23 -4
- package/src/scripts/check_safety_floor_untouched.ts +24 -4
- package/src/scripts/check_site_links.ts +23 -1
- package/src/scripts/check_skill_gaps.ts +23 -1
- package/src/scripts/check_skill_requires.ts +23 -4
- package/src/scripts/check_structural_breaking.ts +24 -4
- package/src/scripts/check_surface_tiers.ts +23 -4
- package/src/scripts/check_template_pin_drift.ts +23 -4
- package/src/scripts/check_test_coverage_diff.ts +23 -4
- package/src/scripts/check_token_optimizer_freshness.ts +23 -4
- package/src/scripts/check_token_quality_golden.ts +23 -2
- package/src/scripts/check_token_regression.ts +23 -2
- package/src/scripts/check_tracked_but_ignored.ts +24 -4
- package/src/scripts/check_trigger_evals.ts +23 -4
- package/src/scripts/check_trunk_drift.ts +24 -1
- package/src/scripts/check_update_banner.ts +23 -4
- package/src/scripts/ci_summary.ts +23 -4
- package/src/scripts/ci_time_ratio.ts +23 -4
- package/src/scripts/cluster_near_miss_patterns.ts +0 -0
- package/src/scripts/compile_router.ts +23 -4
- package/src/scripts/condense.ts +30 -31
- package/src/scripts/condense_memory.ts +24 -2
- package/src/scripts/config/packs.ts +24 -4
- package/src/scripts/config/session_profiles.ts +23 -4
- package/src/scripts/context_hygiene_hook.ts +24 -3
- package/src/scripts/cost_by_conversation.ts +23 -4
- package/src/scripts/cost_summary.ts +23 -4
- package/src/scripts/council_cli.ts +35 -7
- package/src/scripts/council_prune.ts +25 -2
- package/src/scripts/cross_repo_retrieve.ts +23 -4
- package/src/scripts/discovery_stats.ts +23 -4
- package/src/scripts/evidence_report.ts +23 -1
- package/src/scripts/export_replay_corpus.ts +23 -2
- package/src/scripts/extract_audit_patterns.ts +23 -1
- package/src/scripts/first_run_gate_hook.ts +24 -3
- package/src/scripts/gen_discovery_baseline.ts +23 -4
- package/src/scripts/generate_capabilities_index.ts +24 -5
- package/src/scripts/generate_capability_matrix.ts +23 -4
- package/src/scripts/generate_catalog.ts +23 -1
- package/src/scripts/generate_command_flows.ts +23 -4
- package/src/scripts/generate_cookbook.ts +23 -4
- package/src/scripts/generate_index.ts +23 -4
- package/src/scripts/generate_ownership_matrix.ts +23 -1
- package/src/scripts/generate_pack_manifests.ts +24 -5
- package/src/scripts/generate_role_experiences_catalog.ts +23 -4
- package/src/scripts/hooks/block_no_verify.ts +23 -4
- package/src/scripts/hooks/design_slop_hook.ts +24 -3
- package/src/scripts/hooks/dispatch_hook.ts +47 -14
- package/src/scripts/hooks/replay_hook.ts +23 -2
- package/src/scripts/hooks/rtk_wrap_hook.ts +24 -5
- package/src/scripts/hooks_doctor.ts +23 -2
- package/src/scripts/hooks_status.ts +23 -2
- package/src/scripts/injection_scan_hook.ts +24 -5
- package/src/scripts/install +23 -4
- package/src/scripts/install.ts +102 -44
- package/src/scripts/inventory_abstraction_budget.ts +23 -1
- package/src/scripts/inventory_frontmatter.ts +23 -1
- package/src/scripts/inventory_meta_layers.ts +23 -1
- package/src/scripts/iron_law_sha.ts +23 -4
- package/src/scripts/janitor.ts +23 -4
- package/src/scripts/knowledge_global_cli.ts +24 -2
- package/src/scripts/linked_projects_list.ts +23 -4
- package/src/scripts/lint_agent_security.ts +23 -4
- package/src/scripts/lint_agent_skill_names.ts +23 -4
- package/src/scripts/lint_agents_layout.ts +23 -4
- package/src/scripts/lint_agents_md.ts +23 -4
- package/src/scripts/lint_archived_skills.ts +23 -4
- package/src/scripts/lint_artefact_frontmatter.ts +23 -4
- package/src/scripts/lint_bench_ab.ts +23 -4
- package/src/scripts/lint_bench_corpus.ts +23 -2
- package/src/scripts/lint_command_flow_coverage.ts +23 -4
- package/src/scripts/lint_command_routing.ts +23 -4
- package/src/scripts/lint_command_tiers.ts +23 -2
- package/src/scripts/lint_command_verbs.ts +23 -4
- package/src/scripts/lint_commit_subjects.ts +24 -4
- package/src/scripts/lint_confusables.ts +25 -5
- package/src/scripts/lint_context_spine_usage.ts +23 -4
- package/src/scripts/lint_discovery_manifest.ts +23 -4
- package/src/scripts/lint_discovery_vocabulary.ts +23 -4
- package/src/scripts/lint_empty_roadmaps.ts +23 -4
- package/src/scripts/lint_eval_freshness.ts +23 -4
- package/src/scripts/lint_examples.ts +23 -4
- package/src/scripts/lint_explain_trace.ts +23 -4
- package/src/scripts/lint_featured_skills.ts +0 -0
- package/src/scripts/lint_flows.ts +23 -4
- package/src/scripts/lint_framework_leakage.ts +23 -4
- package/src/scripts/lint_frontmatter_boilerplate.ts +23 -4
- package/src/scripts/lint_ghostwriter_source.ts +23 -4
- package/src/scripts/lint_glama_drift.ts +75 -0
- package/src/scripts/lint_global_paths.ts +23 -2
- package/src/scripts/lint_handoffs.ts +23 -4
- package/src/scripts/lint_hidden_unicode.ts +24 -5
- package/src/scripts/lint_hook_concern_budget.ts +23 -4
- package/src/scripts/lint_hook_manifest.ts +23 -2
- package/src/scripts/lint_instruction_smuggling.ts +25 -5
- package/src/scripts/lint_legal_pack.ts +23 -1
- package/src/scripts/lint_load_context.ts +23 -4
- package/src/scripts/lint_marketplace.ts +24 -3
- package/src/scripts/lint_marketplace_install_completeness.ts +23 -4
- package/src/scripts/lint_mcp_config_security.ts +25 -5
- package/src/scripts/lint_mcp_registry_manifest.ts +23 -4
- package/src/scripts/lint_media_policy_linkage.ts +23 -4
- package/src/scripts/lint_missions.ts +23 -4
- package/src/scripts/lint_model_tier_coverage.ts +23 -4
- package/src/scripts/lint_namespace.ts +23 -4
- package/src/scripts/lint_namespace_collisions.ts +23 -4
- package/src/scripts/lint_new_skill_gate.ts +23 -4
- package/src/scripts/lint_no_new_atomic_commands.ts +23 -4
- package/src/scripts/lint_one_off_age.ts +23 -4
- package/src/scripts/lint_orchestration_dsl.ts +23 -4
- package/src/scripts/lint_orchestrator_auto_detect.ts +23 -4
- package/src/scripts/lint_pack_boundaries.ts +23 -4
- package/src/scripts/lint_pack_dependencies.ts +23 -2
- package/src/scripts/lint_pack_first_win.ts +23 -4
- package/src/scripts/lint_pack_risk_class.ts +23 -1
- package/src/scripts/lint_persona_governance.ts +23 -4
- package/src/scripts/lint_positioning.ts +23 -4
- package/src/scripts/lint_profile_overlay_set_only.ts +23 -4
- package/src/scripts/lint_readme_jargon.ts +23 -4
- package/src/scripts/lint_readme_size.ts +23 -4
- package/src/scripts/lint_regression.ts +23 -4
- package/src/scripts/lint_roadmap_blockers.ts +23 -4
- package/src/scripts/lint_roadmap_ci_steps.ts +23 -4
- package/src/scripts/lint_roadmap_complexity.ts +23 -4
- package/src/scripts/lint_roadmap_later_disposition.ts +23 -4
- package/src/scripts/lint_role_experiences.ts +23 -4
- package/src/scripts/lint_rule_interactions.ts +23 -4
- package/src/scripts/lint_rule_tiers.ts +24 -3
- package/src/scripts/lint_showcase_sessions.ts +23 -4
- package/src/scripts/lint_skill_frontmatter_safety.ts +25 -5
- package/src/scripts/lint_skill_originality.ts +23 -4
- package/src/scripts/lint_skill_tools.ts +23 -4
- package/src/scripts/lint_subagent_determinism.ts +23 -4
- package/src/scripts/lint_ticket_buildable.ts +23 -4
- package/src/scripts/lint_topics_yaml.ts +23 -4
- package/src/scripts/lint_trust_coherence.ts +23 -4
- package/src/scripts/lint_value_dashboard.ts +23 -4
- package/src/scripts/lint_workflow_security.ts +23 -4
- package/src/scripts/lint_workspace_boundary.ts +23 -4
- package/src/scripts/mcp_exec/safety_envelope.ts +105 -0
- package/src/scripts/mcp_parity_smoke.ts +23 -2
- package/src/scripts/mcp_registry_submit.sh +14 -3
- package/src/scripts/mcp_render.ts +23 -4
- package/src/scripts/mcp_server/__main__.ts +6 -8
- package/src/scripts/mcp_server/consumer_tool_catalog.json +78 -3
- package/src/scripts/mcp_server/tools.ts +731 -0
- package/src/scripts/mcp_telemetry_health.ts +23 -4
- package/src/scripts/mcp_telemetry_query.ts +23 -4
- package/src/scripts/mcp_telemetry_store.ts +23 -4
- package/src/scripts/measure_augment_budget.ts +23 -1
- package/src/scripts/measure_density.ts +23 -1
- package/src/scripts/measure_frugality_savings.ts +23 -1
- package/src/scripts/measure_markitdown_lift.ts +23 -1
- package/src/scripts/measure_patterns.ts +23 -1
- package/src/scripts/measure_projection_bytes.ts +23 -1
- package/src/scripts/measure_rule_budget.ts +23 -4
- package/src/scripts/measure_skill_reduction.ts +23 -1
- package/src/scripts/memory_hash.ts +24 -2
- package/src/scripts/memory_lookup.ts +24 -2
- package/src/scripts/memory_report.ts +24 -2
- package/src/scripts/memory_signal.ts +24 -2
- package/src/scripts/memory_status.ts +26 -2
- package/src/scripts/migrate_command_suggestions.ts +23 -4
- package/src/scripts/migrate_frontmatter_defaults.ts +23 -4
- package/src/scripts/migration_status.ts +25 -4
- package/src/scripts/mine_missing_guardrails.ts +23 -1
- package/src/scripts/mine_session.ts +23 -1
- package/src/scripts/minimal_safe_diff_hook.ts +24 -3
- package/src/scripts/new_skill.ts +23 -3
- package/src/scripts/onboarding_gate_hook.ts +24 -3
- package/src/scripts/parity/coverage_diff.ts +25 -3
- package/src/scripts/parity/phase_gate.ts +25 -4
- package/src/scripts/parity/replay.ts +25 -3
- package/src/scripts/pattern_share.ts +23 -4
- package/src/scripts/plan_physical_move.ts +23 -4
- package/src/scripts/prediction-pool/poisson_sim.ts +24 -3
- package/src/scripts/prediction-pool/pool_winsim.ts +24 -3
- package/src/scripts/prediction-pool/score_ev.ts +24 -3
- package/src/scripts/print_required_checks.ts +24 -4
- package/src/scripts/probe_host_compliance.ts +23 -2
- package/src/scripts/probe_projection_fidelity.ts +23 -1
- package/src/scripts/probe_skill_registration.ts +24 -2
- package/src/scripts/profile_staleness_hook.ts +24 -3
- package/src/scripts/profile_use.ts +23 -4
- package/src/scripts/project_thin_rules.ts +23 -3
- package/src/scripts/propose_modules_config.ts +23 -4
- package/src/scripts/prototype_lint_contradictions.ts +23 -1
- package/src/scripts/prove_pack_extractable.ts +23 -4
- package/src/scripts/readme_linter.ts +23 -3
- package/src/scripts/redact_hook_capture.ts +23 -4
- package/src/scripts/refine_ticket_detect.ts +23 -4
- package/src/scripts/release.ts +226 -43
- package/src/scripts/render_benchmark_composite.ts +23 -4
- package/src/scripts/render_benchmark_md.ts +23 -4
- package/src/scripts/roadmap_progress_hook.ts +46 -16
- package/src/scripts/run_skill_evals.ts +23 -4
- package/src/scripts/runtime_dispatcher.ts +23 -4
- package/src/scripts/runtime_registry.ts +23 -4
- package/src/scripts/score_skill_selection.ts +23 -1
- package/src/scripts/security_audit_config.ts +24 -5
- package/src/scripts/skill_collision_clusters.ts +23 -4
- package/src/scripts/skill_discovery.ts +23 -4
- package/src/scripts/skill_linter.ts +23 -2
- package/src/scripts/skill_preview.ts +23 -4
- package/src/scripts/skill_tools/audit_persona_coverage.ts +23 -1
- package/src/scripts/skill_tools/audit_user_type_coverage.ts +23 -1
- package/src/scripts/skill_tools/run_block_d_eval.ts +23 -1
- package/src/scripts/skill_tools/score_skill_relevance.ts +23 -1
- package/src/scripts/skill_tools/suggest_skill_for_task.ts +24 -1
- package/src/scripts/skill_usage_collect.ts +23 -4
- package/src/scripts/smoke_path_resolution.ts +23 -4
- package/src/scripts/smoke_quickstart.ts +23 -4
- package/src/scripts/snapshot_agent_outputs.ts +23 -4
- package/src/scripts/spotcheck_thin_root.ts +23 -4
- package/src/scripts/sync_agent_settings.ts +23 -4
- package/src/scripts/sync_github_metadata.ts +23 -4
- package/src/scripts/sync_gitignore.ts +23 -4
- package/src/scripts/telegraph_stats.ts +23 -4
- package/src/scripts/tool_registry.ts +24 -4
- package/src/scripts/trigger_coverage.ts +23 -4
- package/src/scripts/update_counts.ts +23 -4
- package/src/scripts/update_prices.ts +23 -1
- package/src/scripts/validate_agent_settings.ts +23 -4
- package/src/scripts/validate_decision_engine.ts +23 -4
- package/src/scripts/validate_discovery_manifest.ts +23 -4
- package/src/scripts/validate_frontmatter.ts +23 -2
- package/src/scripts/validate_pack_yaml.ts +0 -0
- package/src/scripts/validate_safe_paths.ts +24 -4
- package/src/scripts/validate_telegraph_carveouts.ts +23 -4
- package/src/scripts/verify_before_complete_hook.ts +24 -3
- package/src/scripts/verify_physical_move.ts +23 -4
- package/src/scripts/wrapper_freshness_hook.ts +107 -8
- package/tests/fixtures/hooks/README.md +92 -0
- package/tests/fixtures/hooks/agent_error.json +7 -0
- package/tests/fixtures/hooks/post_tool_use.json +13 -0
- package/tests/fixtures/hooks/pre_compact.json +7 -0
- package/tests/fixtures/hooks/pre_tool_use.json +9 -0
- package/tests/fixtures/hooks/session_end.json +6 -0
- package/tests/fixtures/hooks/session_start.json +6 -0
- package/tests/fixtures/hooks/stop.json +6 -0
- package/tests/fixtures/hooks/user_prompt_submit.json +7 -0
|
@@ -205,10 +205,29 @@ function main(argv: readonly string[]): number {
|
|
|
205
205
|
return 1;
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
-
|
|
209
|
-
process.argv[1]
|
|
210
|
-
|
|
211
|
-
|
|
208
|
+
function _isCliEntry(): boolean {
|
|
209
|
+
if (process.argv[1] === undefined) {
|
|
210
|
+
return false;
|
|
211
|
+
}
|
|
212
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
213
|
+
if (import.meta.url === argvUrl) {
|
|
214
|
+
return true;
|
|
215
|
+
}
|
|
216
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
217
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
218
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
219
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
220
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
221
|
+
try {
|
|
222
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
223
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
224
|
+
return here === argv;
|
|
225
|
+
} catch {
|
|
226
|
+
return false;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
212
231
|
process.exit(main(process.argv.slice(2)));
|
|
213
232
|
}
|
|
214
233
|
|
|
@@ -74,6 +74,28 @@ export function main(argv: string[] = process.argv.slice(2)): number {
|
|
|
74
74
|
return 0;
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
+
function _isCliEntry(): boolean {
|
|
78
|
+
if (process.argv[1] === undefined) {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
82
|
+
if (import.meta.url === argvUrl) {
|
|
83
|
+
return true;
|
|
84
|
+
}
|
|
85
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
86
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
87
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
88
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
89
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
90
|
+
try {
|
|
91
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
92
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
93
|
+
return here === argv;
|
|
94
|
+
} catch {
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
77
99
|
const _isCli =
|
|
78
|
-
|
|
100
|
+
_isCliEntry();
|
|
79
101
|
if (_isCli) process.exit(main());
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
import fs from 'node:fs';
|
|
30
30
|
import path from 'node:path';
|
|
31
31
|
import process from 'node:process';
|
|
32
|
-
import { pathToFileURL } from 'node:url';
|
|
32
|
+
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
33
33
|
|
|
34
34
|
type Severity = 'error' | 'warning' | 'info';
|
|
35
35
|
|
|
@@ -877,9 +877,30 @@ function main(): number {
|
|
|
877
877
|
return errors.length > 0 ? 1 : 0;
|
|
878
878
|
}
|
|
879
879
|
|
|
880
|
+
function _isCliEntry(): boolean {
|
|
881
|
+
if (process.argv[1] === undefined) {
|
|
882
|
+
return false;
|
|
883
|
+
}
|
|
884
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
885
|
+
if (import.meta.url === argvUrl) {
|
|
886
|
+
return true;
|
|
887
|
+
}
|
|
888
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
889
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
890
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
891
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
892
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
893
|
+
try {
|
|
894
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
895
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
896
|
+
return here === argv;
|
|
897
|
+
} catch {
|
|
898
|
+
return false;
|
|
899
|
+
}
|
|
900
|
+
}
|
|
901
|
+
|
|
880
902
|
const isMain =
|
|
881
|
-
|
|
882
|
-
import.meta.url === pathToFileURL(path.resolve(process.argv[1])).href;
|
|
903
|
+
_isCliEntry();
|
|
883
904
|
|
|
884
905
|
if (isMain) {
|
|
885
906
|
process.exit(main());
|
|
@@ -393,9 +393,30 @@ function main(): number {
|
|
|
393
393
|
}
|
|
394
394
|
|
|
395
395
|
// Run the CLI only when executed directly, not when imported by tests.
|
|
396
|
+
function _isCliEntry(): boolean {
|
|
397
|
+
if (process.argv[1] === undefined) {
|
|
398
|
+
return false;
|
|
399
|
+
}
|
|
400
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
401
|
+
if (import.meta.url === argvUrl) {
|
|
402
|
+
return true;
|
|
403
|
+
}
|
|
404
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
405
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
406
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
407
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
408
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
409
|
+
try {
|
|
410
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
411
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
412
|
+
return here === argv;
|
|
413
|
+
} catch {
|
|
414
|
+
return false;
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
|
|
396
418
|
const isCliEntry =
|
|
397
|
-
|
|
398
|
-
import.meta.url === pathToFileURL(path.resolve(process.argv[1])).href;
|
|
419
|
+
_isCliEntry();
|
|
399
420
|
if (isCliEntry) {
|
|
400
421
|
process.exit(main());
|
|
401
422
|
}
|
|
@@ -368,10 +368,29 @@ function main(): number {
|
|
|
368
368
|
return violations.length ? 1 : 0;
|
|
369
369
|
}
|
|
370
370
|
|
|
371
|
-
|
|
372
|
-
process.argv[1]
|
|
373
|
-
|
|
374
|
-
|
|
371
|
+
function _isCliEntry(): boolean {
|
|
372
|
+
if (process.argv[1] === undefined) {
|
|
373
|
+
return false;
|
|
374
|
+
}
|
|
375
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
376
|
+
if (import.meta.url === argvUrl) {
|
|
377
|
+
return true;
|
|
378
|
+
}
|
|
379
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
380
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
381
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
382
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
383
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
384
|
+
try {
|
|
385
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
386
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
387
|
+
return here === argv;
|
|
388
|
+
} catch {
|
|
389
|
+
return false;
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
375
394
|
process.exit(main());
|
|
376
395
|
}
|
|
377
396
|
|
|
@@ -242,10 +242,29 @@ function main(): number {
|
|
|
242
242
|
}
|
|
243
243
|
|
|
244
244
|
const _HERE = fileURLToPath(import.meta.url);
|
|
245
|
-
|
|
246
|
-
process.argv[1]
|
|
247
|
-
|
|
248
|
-
|
|
245
|
+
function _isCliEntry(): boolean {
|
|
246
|
+
if (process.argv[1] === undefined) {
|
|
247
|
+
return false;
|
|
248
|
+
}
|
|
249
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
250
|
+
if (import.meta.url === argvUrl) {
|
|
251
|
+
return true;
|
|
252
|
+
}
|
|
253
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
254
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
255
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
256
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
257
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
258
|
+
try {
|
|
259
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
260
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
261
|
+
return here === argv;
|
|
262
|
+
} catch {
|
|
263
|
+
return false;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
249
268
|
process.exit(main());
|
|
250
269
|
}
|
|
251
270
|
|
|
@@ -162,10 +162,29 @@ function main(argv: readonly string[]): number {
|
|
|
162
162
|
return 0;
|
|
163
163
|
}
|
|
164
164
|
|
|
165
|
-
|
|
166
|
-
process.argv[1]
|
|
167
|
-
|
|
168
|
-
|
|
165
|
+
function _isCliEntry(): boolean {
|
|
166
|
+
if (process.argv[1] === undefined) {
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
169
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
170
|
+
if (import.meta.url === argvUrl) {
|
|
171
|
+
return true;
|
|
172
|
+
}
|
|
173
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
174
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
175
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
176
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
177
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
178
|
+
try {
|
|
179
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
180
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
181
|
+
return here === argv;
|
|
182
|
+
} catch {
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
169
188
|
process.exit(main(process.argv.slice(2)));
|
|
170
189
|
}
|
|
171
190
|
|
|
@@ -321,10 +321,29 @@ function main(): number {
|
|
|
321
321
|
}
|
|
322
322
|
|
|
323
323
|
const _HERE = fileURLToPath(import.meta.url);
|
|
324
|
-
|
|
325
|
-
process.argv[1]
|
|
326
|
-
|
|
327
|
-
|
|
324
|
+
function _isCliEntry(): boolean {
|
|
325
|
+
if (process.argv[1] === undefined) {
|
|
326
|
+
return false;
|
|
327
|
+
}
|
|
328
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
329
|
+
if (import.meta.url === argvUrl) {
|
|
330
|
+
return true;
|
|
331
|
+
}
|
|
332
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
333
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
334
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
335
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
336
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
337
|
+
try {
|
|
338
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
339
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
340
|
+
return here === argv;
|
|
341
|
+
} catch {
|
|
342
|
+
return false;
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
328
347
|
process.exit(main());
|
|
329
348
|
}
|
|
330
349
|
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { spawnSync } from 'node:child_process';
|
|
18
18
|
import * as path from 'node:path';
|
|
19
|
+
import * as fs from 'node:fs';
|
|
19
20
|
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
20
21
|
|
|
21
22
|
const _HERE = fileURLToPath(import.meta.url);
|
|
@@ -106,10 +107,29 @@ function main(): number {
|
|
|
106
107
|
return 0;
|
|
107
108
|
}
|
|
108
109
|
|
|
109
|
-
|
|
110
|
-
process.argv[1]
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
function _isCliEntry(): boolean {
|
|
111
|
+
if (process.argv[1] === undefined) {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
115
|
+
if (import.meta.url === argvUrl) {
|
|
116
|
+
return true;
|
|
117
|
+
}
|
|
118
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
119
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
120
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
121
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
122
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
123
|
+
try {
|
|
124
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
125
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
126
|
+
return here === argv;
|
|
127
|
+
} catch {
|
|
128
|
+
return false;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
113
133
|
try {
|
|
114
134
|
process.exit(main());
|
|
115
135
|
} catch (exc) {
|
|
@@ -213,10 +213,29 @@ function main(): number {
|
|
|
213
213
|
return 0;
|
|
214
214
|
}
|
|
215
215
|
|
|
216
|
-
|
|
217
|
-
process.argv[1]
|
|
218
|
-
|
|
219
|
-
|
|
216
|
+
function _isCliEntry(): boolean {
|
|
217
|
+
if (process.argv[1] === undefined) {
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
220
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
221
|
+
if (import.meta.url === argvUrl) {
|
|
222
|
+
return true;
|
|
223
|
+
}
|
|
224
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
225
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
226
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
227
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
228
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
229
|
+
try {
|
|
230
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
231
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
232
|
+
return here === argv;
|
|
233
|
+
} catch {
|
|
234
|
+
return false;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
220
239
|
process.exit(main());
|
|
221
240
|
}
|
|
222
241
|
|
|
@@ -99,10 +99,29 @@ function main(argv?: readonly string[]): number {
|
|
|
99
99
|
return errors.length > 0 ? 1 : 0;
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
|
|
103
|
-
process.argv[1]
|
|
104
|
-
|
|
105
|
-
|
|
102
|
+
function _isCliEntry(): boolean {
|
|
103
|
+
if (process.argv[1] === undefined) {
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
107
|
+
if (import.meta.url === argvUrl) {
|
|
108
|
+
return true;
|
|
109
|
+
}
|
|
110
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
111
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
112
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
113
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
114
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
115
|
+
try {
|
|
116
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
117
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
118
|
+
return here === argv;
|
|
119
|
+
} catch {
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
106
125
|
process.exit(main());
|
|
107
126
|
}
|
|
108
127
|
|
|
@@ -132,10 +132,29 @@ function main(argv?: readonly string[]): number {
|
|
|
132
132
|
return 0;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
|
|
136
|
-
process.argv[1]
|
|
137
|
-
|
|
138
|
-
|
|
135
|
+
function _isCliEntry(): boolean {
|
|
136
|
+
if (process.argv[1] === undefined) {
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
140
|
+
if (import.meta.url === argvUrl) {
|
|
141
|
+
return true;
|
|
142
|
+
}
|
|
143
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
144
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
145
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
146
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
147
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
148
|
+
try {
|
|
149
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
150
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
151
|
+
return here === argv;
|
|
152
|
+
} catch {
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
139
158
|
process.exit(main());
|
|
140
159
|
}
|
|
141
160
|
|
|
@@ -117,10 +117,29 @@ function main(argv?: readonly string[]): number {
|
|
|
117
117
|
return 0;
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
|
|
121
|
-
process.argv[1]
|
|
122
|
-
|
|
123
|
-
|
|
120
|
+
function _isCliEntry(): boolean {
|
|
121
|
+
if (process.argv[1] === undefined) {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
125
|
+
if (import.meta.url === argvUrl) {
|
|
126
|
+
return true;
|
|
127
|
+
}
|
|
128
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
129
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
130
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
131
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
132
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
133
|
+
try {
|
|
134
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
135
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
136
|
+
return here === argv;
|
|
137
|
+
} catch {
|
|
138
|
+
return false;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
124
143
|
process.exit(main());
|
|
125
144
|
}
|
|
126
145
|
|
|
@@ -284,10 +284,29 @@ export function main(argv?: readonly string[]): number {
|
|
|
284
284
|
}
|
|
285
285
|
|
|
286
286
|
const _HERE = fileURLToPath(import.meta.url);
|
|
287
|
-
|
|
288
|
-
process.argv[1]
|
|
289
|
-
|
|
290
|
-
|
|
287
|
+
function _isCliEntry(): boolean {
|
|
288
|
+
if (process.argv[1] === undefined) {
|
|
289
|
+
return false;
|
|
290
|
+
}
|
|
291
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
292
|
+
if (import.meta.url === argvUrl) {
|
|
293
|
+
return true;
|
|
294
|
+
}
|
|
295
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
296
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
297
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
298
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
299
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
300
|
+
try {
|
|
301
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
302
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
303
|
+
return here === argv;
|
|
304
|
+
} catch {
|
|
305
|
+
return false;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
291
310
|
try {
|
|
292
311
|
process.exit(main());
|
|
293
312
|
} catch (exc) {
|
|
Binary file
|
|
@@ -232,10 +232,29 @@ export function main(argv?: readonly string[]): number {
|
|
|
232
232
|
}
|
|
233
233
|
|
|
234
234
|
const _HERE = fileURLToPath(import.meta.url);
|
|
235
|
-
|
|
236
|
-
process.argv[1]
|
|
237
|
-
|
|
238
|
-
|
|
235
|
+
function _isCliEntry(): boolean {
|
|
236
|
+
if (process.argv[1] === undefined) {
|
|
237
|
+
return false;
|
|
238
|
+
}
|
|
239
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
240
|
+
if (import.meta.url === argvUrl) {
|
|
241
|
+
return true;
|
|
242
|
+
}
|
|
243
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
244
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
245
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
246
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
247
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
248
|
+
try {
|
|
249
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
250
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
251
|
+
return here === argv;
|
|
252
|
+
} catch {
|
|
253
|
+
return false;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
239
258
|
process.exit(main());
|
|
240
259
|
}
|
|
241
260
|
|
|
@@ -750,8 +750,30 @@ function _printHelp(): void {
|
|
|
750
750
|
process.stdout.write(`${DESCRIPTION}\n`);
|
|
751
751
|
}
|
|
752
752
|
|
|
753
|
+
function _isCliEntry(): boolean {
|
|
754
|
+
if (process.argv[1] === undefined) {
|
|
755
|
+
return false;
|
|
756
|
+
}
|
|
757
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
758
|
+
if (import.meta.url === argvUrl) {
|
|
759
|
+
return true;
|
|
760
|
+
}
|
|
761
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
762
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
763
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
764
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
765
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
766
|
+
try {
|
|
767
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
768
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
769
|
+
return here === argv;
|
|
770
|
+
} catch {
|
|
771
|
+
return false;
|
|
772
|
+
}
|
|
773
|
+
}
|
|
774
|
+
|
|
753
775
|
const _isMain =
|
|
754
|
-
|
|
776
|
+
_isCliEntry();
|
|
755
777
|
if (_isMain) {
|
|
756
778
|
process.exit(main());
|
|
757
779
|
}
|
|
@@ -277,10 +277,29 @@ export function main(argv?: readonly string[]): number {
|
|
|
277
277
|
}
|
|
278
278
|
|
|
279
279
|
const _HERE = fileURLToPath(import.meta.url);
|
|
280
|
-
|
|
281
|
-
process.argv[1]
|
|
282
|
-
|
|
283
|
-
|
|
280
|
+
function _isCliEntry(): boolean {
|
|
281
|
+
if (process.argv[1] === undefined) {
|
|
282
|
+
return false;
|
|
283
|
+
}
|
|
284
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
285
|
+
if (import.meta.url === argvUrl) {
|
|
286
|
+
return true;
|
|
287
|
+
}
|
|
288
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
289
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
290
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
291
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
292
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
293
|
+
try {
|
|
294
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
295
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
296
|
+
return here === argv;
|
|
297
|
+
} catch {
|
|
298
|
+
return false;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
284
303
|
try {
|
|
285
304
|
process.exit(main());
|
|
286
305
|
} catch (exc) {
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import { spawnSync } from 'node:child_process';
|
|
20
20
|
import * as path from 'node:path';
|
|
21
|
+
import * as fs from 'node:fs';
|
|
21
22
|
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
22
23
|
|
|
23
24
|
const _FILE = fileURLToPath(import.meta.url);
|
|
@@ -86,6 +87,28 @@ export function main(argv: string[] = process.argv.slice(2)): number {
|
|
|
86
87
|
return 1;
|
|
87
88
|
}
|
|
88
89
|
|
|
90
|
+
function _isCliEntry(): boolean {
|
|
91
|
+
if (process.argv[1] === undefined) {
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
95
|
+
if (import.meta.url === argvUrl) {
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
99
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
100
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
101
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
102
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
103
|
+
try {
|
|
104
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
105
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
106
|
+
return here === argv;
|
|
107
|
+
} catch {
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
89
112
|
const _isCli =
|
|
90
|
-
|
|
113
|
+
_isCliEntry();
|
|
91
114
|
if (_isCli) process.exit(main());
|