@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
|
@@ -354,9 +354,28 @@ export function main(argv?: string[]): number {
|
|
|
354
354
|
// Entry point — `process.exitCode`, never `process.exit`, so large stdout
|
|
355
355
|
// drains before the process ends.
|
|
356
356
|
const _HERE = fileURLToPath(import.meta.url);
|
|
357
|
-
|
|
358
|
-
process.argv[1]
|
|
359
|
-
|
|
360
|
-
|
|
357
|
+
function _isCliEntry(): boolean {
|
|
358
|
+
if (process.argv[1] === undefined) {
|
|
359
|
+
return false;
|
|
360
|
+
}
|
|
361
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
362
|
+
if (import.meta.url === argvUrl) {
|
|
363
|
+
return true;
|
|
364
|
+
}
|
|
365
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
366
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
367
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
368
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
369
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
370
|
+
try {
|
|
371
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
372
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
373
|
+
return here === argv;
|
|
374
|
+
} catch {
|
|
375
|
+
return false;
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
361
380
|
process.exitCode = main();
|
|
362
381
|
}
|
|
@@ -361,10 +361,29 @@ export async function main(argv?: string[]): Promise<number> {
|
|
|
361
361
|
// Entry point — `process.exitCode`, never `process.exit`, so large stdout
|
|
362
362
|
// drains before the process ends.
|
|
363
363
|
const _HERE = fileURLToPath(import.meta.url);
|
|
364
|
-
|
|
365
|
-
process.argv[1]
|
|
366
|
-
|
|
367
|
-
|
|
364
|
+
function _isCliEntry(): boolean {
|
|
365
|
+
if (process.argv[1] === undefined) {
|
|
366
|
+
return false;
|
|
367
|
+
}
|
|
368
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
369
|
+
if (import.meta.url === argvUrl) {
|
|
370
|
+
return true;
|
|
371
|
+
}
|
|
372
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
373
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
374
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
375
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
376
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
377
|
+
try {
|
|
378
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
379
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
380
|
+
return here === argv;
|
|
381
|
+
} catch {
|
|
382
|
+
return false;
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
368
387
|
void main().then((rc) => {
|
|
369
388
|
process.exitCode = rc;
|
|
370
389
|
});
|
|
@@ -412,10 +412,29 @@ export async function main(argv?: string[]): Promise<number> {
|
|
|
412
412
|
// Entry point — `process.exitCode`, never `process.exit`, so large stdout
|
|
413
413
|
// drains before the process ends.
|
|
414
414
|
const _HERE = fileURLToPath(import.meta.url);
|
|
415
|
-
|
|
416
|
-
process.argv[1]
|
|
417
|
-
|
|
418
|
-
|
|
415
|
+
function _isCliEntry(): boolean {
|
|
416
|
+
if (process.argv[1] === undefined) {
|
|
417
|
+
return false;
|
|
418
|
+
}
|
|
419
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
420
|
+
if (import.meta.url === argvUrl) {
|
|
421
|
+
return true;
|
|
422
|
+
}
|
|
423
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
424
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
425
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
426
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
427
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
428
|
+
try {
|
|
429
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
430
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
431
|
+
return here === argv;
|
|
432
|
+
} catch {
|
|
433
|
+
return false;
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
419
438
|
void main().then((rc) => {
|
|
420
439
|
process.exitCode = rc;
|
|
421
440
|
});
|
|
@@ -480,7 +480,29 @@ export function main(argv: string[] | null = null): number {
|
|
|
480
480
|
return 0;
|
|
481
481
|
}
|
|
482
482
|
|
|
483
|
-
|
|
483
|
+
function _isCliEntry(): boolean {
|
|
484
|
+
if (process.argv[1] === undefined) {
|
|
485
|
+
return false;
|
|
486
|
+
}
|
|
487
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
488
|
+
if (import.meta.url === argvUrl) {
|
|
489
|
+
return true;
|
|
490
|
+
}
|
|
491
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
492
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
493
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
494
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
495
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
496
|
+
try {
|
|
497
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
498
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
499
|
+
return here === argv;
|
|
500
|
+
} catch {
|
|
501
|
+
return false;
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
const _isMain = _isCliEntry();
|
|
484
506
|
if (_isMain) {
|
|
485
507
|
try {
|
|
486
508
|
// Set exitCode (not process.exit) so the large --json stdout drains.
|
|
@@ -613,6 +613,28 @@ function _stableSortBy<T>(
|
|
|
613
613
|
return indexed.map((e) => e.item);
|
|
614
614
|
}
|
|
615
615
|
|
|
616
|
-
|
|
616
|
+
function _isCliEntry(): boolean {
|
|
617
|
+
if (process.argv[1] === undefined) {
|
|
618
|
+
return false;
|
|
619
|
+
}
|
|
620
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
621
|
+
if (import.meta.url === argvUrl) {
|
|
622
|
+
return true;
|
|
623
|
+
}
|
|
624
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
625
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
626
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
627
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
628
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
629
|
+
try {
|
|
630
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
631
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
632
|
+
return here === argv;
|
|
633
|
+
} catch {
|
|
634
|
+
return false;
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
if (_isCliEntry()) {
|
|
617
639
|
process.exitCode = main();
|
|
618
640
|
}
|
|
@@ -345,7 +345,29 @@ export function main(): number {
|
|
|
345
345
|
return 0;
|
|
346
346
|
}
|
|
347
347
|
|
|
348
|
-
|
|
348
|
+
function _isCliEntry(): boolean {
|
|
349
|
+
if (process.argv[1] === undefined) {
|
|
350
|
+
return false;
|
|
351
|
+
}
|
|
352
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
353
|
+
if (import.meta.url === argvUrl) {
|
|
354
|
+
return true;
|
|
355
|
+
}
|
|
356
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
357
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
358
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
359
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
360
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
361
|
+
try {
|
|
362
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
363
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
364
|
+
return here === argv;
|
|
365
|
+
} catch {
|
|
366
|
+
return false;
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
const _isMain = _isCliEntry();
|
|
349
371
|
if (_isMain) {
|
|
350
372
|
// Set exitCode rather than process.exit() so the large JSON stdout write
|
|
351
373
|
// (the full record, indent=2) fully drains to the pipe before exit.
|
|
@@ -286,7 +286,29 @@ function _pyStrCmp(a: string, b: string): number {
|
|
|
286
286
|
return ca.length - cb.length;
|
|
287
287
|
}
|
|
288
288
|
|
|
289
|
-
|
|
289
|
+
function _isCliEntry(): boolean {
|
|
290
|
+
if (process.argv[1] === undefined) {
|
|
291
|
+
return false;
|
|
292
|
+
}
|
|
293
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
294
|
+
if (import.meta.url === argvUrl) {
|
|
295
|
+
return true;
|
|
296
|
+
}
|
|
297
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
298
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
299
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
300
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
301
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
302
|
+
try {
|
|
303
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
304
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
305
|
+
return here === argv;
|
|
306
|
+
} catch {
|
|
307
|
+
return false;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
if (_isCliEntry()) {
|
|
290
312
|
try {
|
|
291
313
|
process.exitCode = main();
|
|
292
314
|
} catch (e) {
|
|
@@ -669,7 +669,29 @@ function _stableSort<T>(items: T[], cmp: (a: T, b: T) => number): T[] {
|
|
|
669
669
|
return indexed.map((e) => e.item);
|
|
670
670
|
}
|
|
671
671
|
|
|
672
|
-
|
|
672
|
+
function _isCliEntry(): boolean {
|
|
673
|
+
if (process.argv[1] === undefined) {
|
|
674
|
+
return false;
|
|
675
|
+
}
|
|
676
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
677
|
+
if (import.meta.url === argvUrl) {
|
|
678
|
+
return true;
|
|
679
|
+
}
|
|
680
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
681
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
682
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
683
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
684
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
685
|
+
try {
|
|
686
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
687
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
688
|
+
return here === argv;
|
|
689
|
+
} catch {
|
|
690
|
+
return false;
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
if (_isCliEntry()) {
|
|
673
695
|
try {
|
|
674
696
|
process.exitCode = main();
|
|
675
697
|
} catch (e) {
|
|
@@ -412,7 +412,29 @@ function _pyStrCmp(a: string, b: string): number {
|
|
|
412
412
|
return ca.length - cb.length;
|
|
413
413
|
}
|
|
414
414
|
|
|
415
|
-
|
|
415
|
+
function _isCliEntry(): boolean {
|
|
416
|
+
if (process.argv[1] === undefined) {
|
|
417
|
+
return false;
|
|
418
|
+
}
|
|
419
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
420
|
+
if (import.meta.url === argvUrl) {
|
|
421
|
+
return true;
|
|
422
|
+
}
|
|
423
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
424
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
425
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
426
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
427
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
428
|
+
try {
|
|
429
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
430
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
431
|
+
return here === argv;
|
|
432
|
+
} catch {
|
|
433
|
+
return false;
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
if (_isCliEntry()) {
|
|
416
438
|
try {
|
|
417
439
|
process.exitCode = main();
|
|
418
440
|
} catch (e) {
|
|
@@ -619,9 +619,28 @@ function _dumpString(s: string): string {
|
|
|
619
619
|
return out + '"';
|
|
620
620
|
}
|
|
621
621
|
|
|
622
|
-
|
|
623
|
-
process.argv[1]
|
|
624
|
-
|
|
625
|
-
|
|
622
|
+
function _isCliEntry(): boolean {
|
|
623
|
+
if (process.argv[1] === undefined) {
|
|
624
|
+
return false;
|
|
625
|
+
}
|
|
626
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
627
|
+
if (import.meta.url === argvUrl) {
|
|
628
|
+
return true;
|
|
629
|
+
}
|
|
630
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
631
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
632
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
633
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
634
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
635
|
+
try {
|
|
636
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
637
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
638
|
+
return here === argv;
|
|
639
|
+
} catch {
|
|
640
|
+
return false;
|
|
641
|
+
}
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
626
645
|
process.exit(main());
|
|
627
646
|
}
|
|
@@ -429,7 +429,29 @@ function _pyStrCmp(a: string, b: string): number {
|
|
|
429
429
|
return ca.length - cb.length;
|
|
430
430
|
}
|
|
431
431
|
|
|
432
|
-
|
|
432
|
+
function _isCliEntry(): boolean {
|
|
433
|
+
if (process.argv[1] === undefined) {
|
|
434
|
+
return false;
|
|
435
|
+
}
|
|
436
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
437
|
+
if (import.meta.url === argvUrl) {
|
|
438
|
+
return true;
|
|
439
|
+
}
|
|
440
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
441
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
442
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
443
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
444
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
445
|
+
try {
|
|
446
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
447
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
448
|
+
return here === argv;
|
|
449
|
+
} catch {
|
|
450
|
+
return false;
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
if (_isCliEntry()) {
|
|
433
455
|
try {
|
|
434
456
|
process.exitCode = main();
|
|
435
457
|
} catch (e) {
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
import { createHash } from 'node:crypto';
|
|
27
27
|
import * as fs from 'node:fs';
|
|
28
28
|
import process from 'node:process';
|
|
29
|
-
import { pathToFileURL } from 'node:url';
|
|
29
|
+
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
30
30
|
import * as path from 'node:path';
|
|
31
31
|
import YAML, { parseDocument } from 'yaml';
|
|
32
32
|
|
|
@@ -324,8 +324,30 @@ function _parseArgs(argv: string[]): ParsedArgs {
|
|
|
324
324
|
return args;
|
|
325
325
|
}
|
|
326
326
|
|
|
327
|
+
function _isCliEntry(): boolean {
|
|
328
|
+
if (process.argv[1] === undefined) {
|
|
329
|
+
return false;
|
|
330
|
+
}
|
|
331
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
332
|
+
if (import.meta.url === argvUrl) {
|
|
333
|
+
return true;
|
|
334
|
+
}
|
|
335
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
336
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
337
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
338
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
339
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
340
|
+
try {
|
|
341
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
342
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
343
|
+
return here === argv;
|
|
344
|
+
} catch {
|
|
345
|
+
return false;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
|
|
327
349
|
const _isMain =
|
|
328
|
-
|
|
350
|
+
_isCliEntry();
|
|
329
351
|
if (_isMain) {
|
|
330
352
|
process.exit(main());
|
|
331
353
|
}
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
import * as fs from 'node:fs';
|
|
32
32
|
import * as path from 'node:path';
|
|
33
33
|
import process from 'node:process';
|
|
34
|
-
import { pathToFileURL } from 'node:url';
|
|
34
|
+
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
35
35
|
import YAML, { parseDocument } from 'yaml';
|
|
36
36
|
|
|
37
37
|
|
|
@@ -1271,8 +1271,30 @@ function _escapeNonAscii(s: string): string {
|
|
|
1271
1271
|
return out;
|
|
1272
1272
|
}
|
|
1273
1273
|
|
|
1274
|
+
function _isCliEntry(): boolean {
|
|
1275
|
+
if (process.argv[1] === undefined) {
|
|
1276
|
+
return false;
|
|
1277
|
+
}
|
|
1278
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
1279
|
+
if (import.meta.url === argvUrl) {
|
|
1280
|
+
return true;
|
|
1281
|
+
}
|
|
1282
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
1283
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
1284
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
1285
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
1286
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
1287
|
+
try {
|
|
1288
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
1289
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
1290
|
+
return here === argv;
|
|
1291
|
+
} catch {
|
|
1292
|
+
return false;
|
|
1293
|
+
}
|
|
1294
|
+
}
|
|
1295
|
+
|
|
1274
1296
|
const _isMain =
|
|
1275
|
-
|
|
1297
|
+
_isCliEntry();
|
|
1276
1298
|
if (_isMain) {
|
|
1277
1299
|
process.exit(main());
|
|
1278
1300
|
}
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
import * as fs from 'node:fs';
|
|
30
30
|
import * as 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
|
import YAML, { parseDocument } from 'yaml';
|
|
34
34
|
|
|
35
35
|
import * as memory_status from './memory_status.js';
|
|
@@ -838,8 +838,30 @@ export function main(): number {
|
|
|
838
838
|
return 0;
|
|
839
839
|
}
|
|
840
840
|
|
|
841
|
+
function _isCliEntry(): boolean {
|
|
842
|
+
if (process.argv[1] === undefined) {
|
|
843
|
+
return false;
|
|
844
|
+
}
|
|
845
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
846
|
+
if (import.meta.url === argvUrl) {
|
|
847
|
+
return true;
|
|
848
|
+
}
|
|
849
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
850
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
851
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
852
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
853
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
854
|
+
try {
|
|
855
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
856
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
857
|
+
return here === argv;
|
|
858
|
+
} catch {
|
|
859
|
+
return false;
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
|
|
841
863
|
const _isMain =
|
|
842
|
-
|
|
864
|
+
_isCliEntry();
|
|
843
865
|
if (_isMain) {
|
|
844
866
|
process.exit(main());
|
|
845
867
|
}
|
|
@@ -31,7 +31,7 @@ import * as crypto from 'node:crypto';
|
|
|
31
31
|
import * as fs from 'node:fs';
|
|
32
32
|
import * as path from 'node:path';
|
|
33
33
|
import process from 'node:process';
|
|
34
|
-
import { pathToFileURL } from 'node:url';
|
|
34
|
+
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
35
35
|
|
|
36
36
|
// Mutable so tests can repoint at a tmp tree (monkeypatch parity).
|
|
37
37
|
export let INTAKE_ROOT = path.join('agents', 'memory', 'intake');
|
|
@@ -410,8 +410,30 @@ export function main(): number {
|
|
|
410
410
|
return 0;
|
|
411
411
|
}
|
|
412
412
|
|
|
413
|
+
function _isCliEntry(): boolean {
|
|
414
|
+
if (process.argv[1] === undefined) {
|
|
415
|
+
return false;
|
|
416
|
+
}
|
|
417
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
418
|
+
if (import.meta.url === argvUrl) {
|
|
419
|
+
return true;
|
|
420
|
+
}
|
|
421
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
422
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
423
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
424
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
425
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
426
|
+
try {
|
|
427
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
428
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
429
|
+
return here === argv;
|
|
430
|
+
} catch {
|
|
431
|
+
return false;
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
|
|
413
435
|
const _isMain =
|
|
414
|
-
|
|
436
|
+
_isCliEntry();
|
|
415
437
|
if (_isMain) {
|
|
416
438
|
process.exit(main());
|
|
417
439
|
}
|
|
@@ -20,7 +20,9 @@
|
|
|
20
20
|
*/
|
|
21
21
|
|
|
22
22
|
import process from 'node:process';
|
|
23
|
-
import
|
|
23
|
+
import * as fs from 'node:fs';
|
|
24
|
+
import * as path from 'node:path';
|
|
25
|
+
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
24
26
|
|
|
25
27
|
// Retrieval contract version served by the file-backed backend.
|
|
26
28
|
// Source of truth: internal/schemas/retrieval-v1.schema.json.
|
|
@@ -174,8 +176,30 @@ export function main(): number {
|
|
|
174
176
|
return 0;
|
|
175
177
|
}
|
|
176
178
|
|
|
179
|
+
function _isCliEntry(): boolean {
|
|
180
|
+
if (process.argv[1] === undefined) {
|
|
181
|
+
return false;
|
|
182
|
+
}
|
|
183
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
184
|
+
if (import.meta.url === argvUrl) {
|
|
185
|
+
return true;
|
|
186
|
+
}
|
|
187
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
188
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
189
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
190
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
191
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
192
|
+
try {
|
|
193
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
194
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
195
|
+
return here === argv;
|
|
196
|
+
} catch {
|
|
197
|
+
return false;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
|
|
177
201
|
const _isMain =
|
|
178
|
-
|
|
202
|
+
_isCliEntry();
|
|
179
203
|
if (_isMain) {
|
|
180
204
|
try {
|
|
181
205
|
process.exitCode = main();
|
|
@@ -333,9 +333,28 @@ export function main(): number {
|
|
|
333
333
|
return 0;
|
|
334
334
|
}
|
|
335
335
|
|
|
336
|
-
|
|
337
|
-
process.argv[1]
|
|
338
|
-
|
|
339
|
-
|
|
336
|
+
function _isCliEntry(): boolean {
|
|
337
|
+
if (process.argv[1] === undefined) {
|
|
338
|
+
return false;
|
|
339
|
+
}
|
|
340
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
341
|
+
if (import.meta.url === argvUrl) {
|
|
342
|
+
return true;
|
|
343
|
+
}
|
|
344
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
345
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
346
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
347
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
348
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
349
|
+
try {
|
|
350
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
351
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
352
|
+
return here === argv;
|
|
353
|
+
} catch {
|
|
354
|
+
return false;
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
if (_isCliEntry()) {
|
|
340
359
|
process.exit(main());
|
|
341
360
|
}
|
|
@@ -531,9 +531,28 @@ export function main(argv: string[] | null = null): number {
|
|
|
531
531
|
return run(!args.dry_run, args.deltas);
|
|
532
532
|
}
|
|
533
533
|
|
|
534
|
-
|
|
535
|
-
process.argv[1]
|
|
536
|
-
|
|
537
|
-
|
|
534
|
+
function _isCliEntry(): boolean {
|
|
535
|
+
if (process.argv[1] === undefined) {
|
|
536
|
+
return false;
|
|
537
|
+
}
|
|
538
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
539
|
+
if (import.meta.url === argvUrl) {
|
|
540
|
+
return true;
|
|
541
|
+
}
|
|
542
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
543
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
544
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
545
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
546
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
547
|
+
try {
|
|
548
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
549
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
550
|
+
return here === argv;
|
|
551
|
+
} catch {
|
|
552
|
+
return false;
|
|
553
|
+
}
|
|
554
|
+
}
|
|
555
|
+
|
|
556
|
+
if (_isCliEntry()) {
|
|
538
557
|
process.exit(main());
|
|
539
558
|
}
|