@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
|
@@ -278,10 +278,29 @@ function main(): number {
|
|
|
278
278
|
return 0;
|
|
279
279
|
}
|
|
280
280
|
|
|
281
|
-
|
|
282
|
-
process.argv[1]
|
|
283
|
-
|
|
284
|
-
|
|
281
|
+
function _isCliEntry(): boolean {
|
|
282
|
+
if (process.argv[1] === undefined) {
|
|
283
|
+
return false;
|
|
284
|
+
}
|
|
285
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
286
|
+
if (import.meta.url === argvUrl) {
|
|
287
|
+
return true;
|
|
288
|
+
}
|
|
289
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
290
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
291
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
292
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
293
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
294
|
+
try {
|
|
295
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
296
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
297
|
+
return here === argv;
|
|
298
|
+
} catch {
|
|
299
|
+
return false;
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
285
304
|
process.exit(main());
|
|
286
305
|
}
|
|
287
306
|
|
|
@@ -238,10 +238,29 @@ function _pyRepr(s: string): string {
|
|
|
238
238
|
return `'${s.replace(/\\/g, '\\\\').replace(/'/g, "\\'")}'`;
|
|
239
239
|
}
|
|
240
240
|
|
|
241
|
-
|
|
242
|
-
process.argv[1]
|
|
243
|
-
|
|
244
|
-
|
|
241
|
+
function _isCliEntry(): boolean {
|
|
242
|
+
if (process.argv[1] === undefined) {
|
|
243
|
+
return false;
|
|
244
|
+
}
|
|
245
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
246
|
+
if (import.meta.url === argvUrl) {
|
|
247
|
+
return true;
|
|
248
|
+
}
|
|
249
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
250
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
251
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
252
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
253
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
254
|
+
try {
|
|
255
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
256
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
257
|
+
return here === argv;
|
|
258
|
+
} catch {
|
|
259
|
+
return false;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
245
264
|
process.exit(main());
|
|
246
265
|
}
|
|
247
266
|
|
|
@@ -306,10 +306,29 @@ function lint(quiet = false): number {
|
|
|
306
306
|
return 0;
|
|
307
307
|
}
|
|
308
308
|
|
|
309
|
-
|
|
310
|
-
process.argv[1]
|
|
311
|
-
|
|
312
|
-
|
|
309
|
+
function _isCliEntry(): boolean {
|
|
310
|
+
if (process.argv[1] === undefined) {
|
|
311
|
+
return false;
|
|
312
|
+
}
|
|
313
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
314
|
+
if (import.meta.url === argvUrl) {
|
|
315
|
+
return true;
|
|
316
|
+
}
|
|
317
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
318
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
319
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
320
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
321
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
322
|
+
try {
|
|
323
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
324
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
325
|
+
return here === argv;
|
|
326
|
+
} catch {
|
|
327
|
+
return false;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
313
332
|
process.exit(lint(process.argv.includes('--quiet')));
|
|
314
333
|
}
|
|
315
334
|
|
|
@@ -179,10 +179,29 @@ function main(): number {
|
|
|
179
179
|
return 0;
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
|
|
183
|
-
process.argv[1]
|
|
184
|
-
|
|
185
|
-
|
|
182
|
+
function _isCliEntry(): boolean {
|
|
183
|
+
if (process.argv[1] === undefined) {
|
|
184
|
+
return false;
|
|
185
|
+
}
|
|
186
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
187
|
+
if (import.meta.url === argvUrl) {
|
|
188
|
+
return true;
|
|
189
|
+
}
|
|
190
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
191
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
192
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
193
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
194
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
195
|
+
try {
|
|
196
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
197
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
198
|
+
return here === argv;
|
|
199
|
+
} catch {
|
|
200
|
+
return false;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
186
205
|
process.exit(main());
|
|
187
206
|
}
|
|
188
207
|
|
|
@@ -63,10 +63,29 @@ function main(): number {
|
|
|
63
63
|
return 0;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
process.argv[1]
|
|
68
|
-
|
|
69
|
-
|
|
66
|
+
function _isCliEntry(): boolean {
|
|
67
|
+
if (process.argv[1] === undefined) {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
71
|
+
if (import.meta.url === argvUrl) {
|
|
72
|
+
return true;
|
|
73
|
+
}
|
|
74
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
75
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
76
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
77
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
78
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
79
|
+
try {
|
|
80
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
81
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
82
|
+
return here === argv;
|
|
83
|
+
} catch {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
70
89
|
process.exit(main());
|
|
71
90
|
}
|
|
72
91
|
|
|
@@ -492,10 +492,29 @@ function _deltaForJson(delta: Delta): unknown {
|
|
|
492
492
|
};
|
|
493
493
|
}
|
|
494
494
|
|
|
495
|
-
|
|
496
|
-
process.argv[1]
|
|
497
|
-
|
|
498
|
-
|
|
495
|
+
function _isCliEntry(): boolean {
|
|
496
|
+
if (process.argv[1] === undefined) {
|
|
497
|
+
return false;
|
|
498
|
+
}
|
|
499
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
500
|
+
if (import.meta.url === argvUrl) {
|
|
501
|
+
return true;
|
|
502
|
+
}
|
|
503
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
504
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
505
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
506
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
507
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
508
|
+
try {
|
|
509
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
510
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
511
|
+
return here === argv;
|
|
512
|
+
} catch {
|
|
513
|
+
return false;
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
if (_isCliEntry() || process.argv[1] === fileURLToPath(import.meta.url)) {
|
|
499
518
|
process.exit(main());
|
|
500
519
|
}
|
|
501
520
|
|
|
@@ -191,10 +191,29 @@ function main(): number {
|
|
|
191
191
|
return 0;
|
|
192
192
|
}
|
|
193
193
|
|
|
194
|
-
|
|
195
|
-
process.argv[1]
|
|
196
|
-
|
|
197
|
-
|
|
194
|
+
function _isCliEntry(): boolean {
|
|
195
|
+
if (process.argv[1] === undefined) {
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
198
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
199
|
+
if (import.meta.url === argvUrl) {
|
|
200
|
+
return true;
|
|
201
|
+
}
|
|
202
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
203
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
204
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
205
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
206
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
207
|
+
try {
|
|
208
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
209
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
210
|
+
return here === argv;
|
|
211
|
+
} catch {
|
|
212
|
+
return false;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
198
217
|
process.exit(main());
|
|
199
218
|
}
|
|
200
219
|
|
|
@@ -227,10 +227,29 @@ function main(): number {
|
|
|
227
227
|
return 0;
|
|
228
228
|
}
|
|
229
229
|
|
|
230
|
-
|
|
231
|
-
process.argv[1]
|
|
232
|
-
|
|
233
|
-
|
|
230
|
+
function _isCliEntry(): boolean {
|
|
231
|
+
if (process.argv[1] === undefined) {
|
|
232
|
+
return false;
|
|
233
|
+
}
|
|
234
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
235
|
+
if (import.meta.url === argvUrl) {
|
|
236
|
+
return true;
|
|
237
|
+
}
|
|
238
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
239
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
240
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
241
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
242
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
243
|
+
try {
|
|
244
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
245
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
246
|
+
return here === argv;
|
|
247
|
+
} catch {
|
|
248
|
+
return false;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
234
253
|
process.exit(main());
|
|
235
254
|
}
|
|
236
255
|
|
|
@@ -353,10 +353,29 @@ function _relPosix(target: string, root: string): string {
|
|
|
353
353
|
return path.relative(root, target).split(path.sep).join('/');
|
|
354
354
|
}
|
|
355
355
|
|
|
356
|
-
|
|
357
|
-
process.argv[1]
|
|
358
|
-
|
|
359
|
-
|
|
356
|
+
function _isCliEntry(): boolean {
|
|
357
|
+
if (process.argv[1] === undefined) {
|
|
358
|
+
return false;
|
|
359
|
+
}
|
|
360
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
361
|
+
if (import.meta.url === argvUrl) {
|
|
362
|
+
return true;
|
|
363
|
+
}
|
|
364
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
365
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
366
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
367
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
368
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
369
|
+
try {
|
|
370
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
371
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
372
|
+
return here === argv;
|
|
373
|
+
} catch {
|
|
374
|
+
return false;
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
360
379
|
process.exit(main());
|
|
361
380
|
}
|
|
362
381
|
|
|
@@ -334,10 +334,29 @@ function main(argv?: readonly string[]): number {
|
|
|
334
334
|
return violations.length ? 1 : 0;
|
|
335
335
|
}
|
|
336
336
|
|
|
337
|
-
|
|
338
|
-
process.argv[1]
|
|
339
|
-
|
|
340
|
-
|
|
337
|
+
function _isCliEntry(): boolean {
|
|
338
|
+
if (process.argv[1] === undefined) {
|
|
339
|
+
return false;
|
|
340
|
+
}
|
|
341
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
342
|
+
if (import.meta.url === argvUrl) {
|
|
343
|
+
return true;
|
|
344
|
+
}
|
|
345
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
346
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
347
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
348
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
349
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
350
|
+
try {
|
|
351
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
352
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
353
|
+
return here === argv;
|
|
354
|
+
} catch {
|
|
355
|
+
return false;
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
341
360
|
process.exitCode = main();
|
|
342
361
|
}
|
|
343
362
|
|
|
@@ -386,10 +386,29 @@ function _pyRepr(value: unknown): string {
|
|
|
386
386
|
return String(value);
|
|
387
387
|
}
|
|
388
388
|
|
|
389
|
-
|
|
390
|
-
process.argv[1]
|
|
391
|
-
|
|
392
|
-
|
|
389
|
+
function _isCliEntry(): boolean {
|
|
390
|
+
if (process.argv[1] === undefined) {
|
|
391
|
+
return false;
|
|
392
|
+
}
|
|
393
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
394
|
+
if (import.meta.url === argvUrl) {
|
|
395
|
+
return true;
|
|
396
|
+
}
|
|
397
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
398
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
399
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
400
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
401
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
402
|
+
try {
|
|
403
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
404
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
405
|
+
return here === argv;
|
|
406
|
+
} catch {
|
|
407
|
+
return false;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
393
412
|
process.exit(main());
|
|
394
413
|
}
|
|
395
414
|
|
|
@@ -271,10 +271,29 @@ export function main(): number {
|
|
|
271
271
|
}
|
|
272
272
|
}
|
|
273
273
|
|
|
274
|
-
|
|
275
|
-
process.argv[1]
|
|
276
|
-
|
|
277
|
-
|
|
274
|
+
function _isCliEntry(): boolean {
|
|
275
|
+
if (process.argv[1] === undefined) {
|
|
276
|
+
return false;
|
|
277
|
+
}
|
|
278
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
279
|
+
if (import.meta.url === argvUrl) {
|
|
280
|
+
return true;
|
|
281
|
+
}
|
|
282
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
283
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
284
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
285
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
286
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
287
|
+
try {
|
|
288
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
289
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
290
|
+
return here === argv;
|
|
291
|
+
} catch {
|
|
292
|
+
return false;
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
278
297
|
process.exit(main());
|
|
279
298
|
}
|
|
280
299
|
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import fs from "node:fs";
|
|
19
19
|
import path from "node:path";
|
|
20
|
-
import { pathToFileURL } from "node:url";
|
|
20
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
21
21
|
import { artefact_roots } from "./_lib/agent_src.js";
|
|
22
22
|
|
|
23
23
|
const QUIET = process.argv.includes("--quiet");
|
|
@@ -161,9 +161,30 @@ function pyRepr(items: string[]): string {
|
|
|
161
161
|
return `[${items.map((s) => `'${s}'`).join(", ")}]`;
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
+
function _isCliEntry(): boolean {
|
|
165
|
+
if (process.argv[1] === undefined) {
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
169
|
+
if (import.meta.url === argvUrl) {
|
|
170
|
+
return true;
|
|
171
|
+
}
|
|
172
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
173
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
174
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
175
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
176
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
177
|
+
try {
|
|
178
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
179
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
180
|
+
return here === argv;
|
|
181
|
+
} catch {
|
|
182
|
+
return false;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
164
186
|
const isCliEntry =
|
|
165
|
-
|
|
166
|
-
import.meta.url === pathToFileURL(path.resolve(process.argv[1])).href;
|
|
187
|
+
_isCliEntry();
|
|
167
188
|
if (isCliEntry) {
|
|
168
189
|
process.exit(main());
|
|
169
190
|
}
|
|
@@ -237,10 +237,29 @@ function main(): number {
|
|
|
237
237
|
return 0;
|
|
238
238
|
}
|
|
239
239
|
|
|
240
|
-
|
|
241
|
-
process.argv[1]
|
|
242
|
-
|
|
243
|
-
|
|
240
|
+
function _isCliEntry(): boolean {
|
|
241
|
+
if (process.argv[1] === undefined) {
|
|
242
|
+
return false;
|
|
243
|
+
}
|
|
244
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
245
|
+
if (import.meta.url === argvUrl) {
|
|
246
|
+
return true;
|
|
247
|
+
}
|
|
248
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
249
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
250
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
251
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
252
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
253
|
+
try {
|
|
254
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
255
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
256
|
+
return here === argv;
|
|
257
|
+
} catch {
|
|
258
|
+
return false;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
244
263
|
process.exit(main());
|
|
245
264
|
}
|
|
246
265
|
|
|
@@ -23,7 +23,8 @@
|
|
|
23
23
|
// Usage: ./scripts-run src/scripts/lint_skill_frontmatter_safety [--json]
|
|
24
24
|
|
|
25
25
|
import * as path from 'node:path';
|
|
26
|
-
import
|
|
26
|
+
import * as fs from 'node:fs';
|
|
27
|
+
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
27
28
|
|
|
28
29
|
import * as sl from './_lib/security_lint.js';
|
|
29
30
|
|
|
@@ -271,9 +272,28 @@ export function main(argv: readonly string[] | null = null): number {
|
|
|
271
272
|
return sl.report(findings, { check_label: 'dangerous-frontmatter' });
|
|
272
273
|
}
|
|
273
274
|
|
|
274
|
-
|
|
275
|
-
process.argv[1]
|
|
276
|
-
|
|
277
|
-
|
|
275
|
+
function _isCliEntry(): boolean {
|
|
276
|
+
if (process.argv[1] === undefined) {
|
|
277
|
+
return false;
|
|
278
|
+
}
|
|
279
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
280
|
+
if (import.meta.url === argvUrl) {
|
|
281
|
+
return true;
|
|
282
|
+
}
|
|
283
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
284
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
285
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
286
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
287
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
288
|
+
try {
|
|
289
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
290
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
291
|
+
return here === argv;
|
|
292
|
+
} catch {
|
|
293
|
+
return false;
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
if (_isCliEntry()) {
|
|
278
298
|
process.exitCode = main();
|
|
279
299
|
}
|
|
@@ -555,10 +555,29 @@ function _isFile(p: string): boolean {
|
|
|
555
555
|
}
|
|
556
556
|
}
|
|
557
557
|
|
|
558
|
-
|
|
559
|
-
process.argv[1]
|
|
560
|
-
|
|
561
|
-
|
|
558
|
+
function _isCliEntry(): boolean {
|
|
559
|
+
if (process.argv[1] === undefined) {
|
|
560
|
+
return false;
|
|
561
|
+
}
|
|
562
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
563
|
+
if (import.meta.url === argvUrl) {
|
|
564
|
+
return true;
|
|
565
|
+
}
|
|
566
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
567
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
568
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
569
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
570
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
571
|
+
try {
|
|
572
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
573
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
574
|
+
return here === argv;
|
|
575
|
+
} catch {
|
|
576
|
+
return false;
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
562
581
|
try {
|
|
563
582
|
process.exit(main());
|
|
564
583
|
} catch (exc) {
|
|
@@ -301,10 +301,29 @@ function main(argv?: readonly string[]): number {
|
|
|
301
301
|
return code;
|
|
302
302
|
}
|
|
303
303
|
|
|
304
|
-
|
|
305
|
-
process.argv[1]
|
|
306
|
-
|
|
307
|
-
|
|
304
|
+
function _isCliEntry(): boolean {
|
|
305
|
+
if (process.argv[1] === undefined) {
|
|
306
|
+
return false;
|
|
307
|
+
}
|
|
308
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
309
|
+
if (import.meta.url === argvUrl) {
|
|
310
|
+
return true;
|
|
311
|
+
}
|
|
312
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
313
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
314
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
315
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
316
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
317
|
+
try {
|
|
318
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
319
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
320
|
+
return here === argv;
|
|
321
|
+
} catch {
|
|
322
|
+
return false;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
308
327
|
process.exit(main());
|
|
309
328
|
}
|
|
310
329
|
|
|
@@ -115,10 +115,29 @@ function main(dir: string = SUBAGENT_DIR): number {
|
|
|
115
115
|
return 0;
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
-
|
|
119
|
-
process.argv[1]
|
|
120
|
-
|
|
121
|
-
|
|
118
|
+
function _isCliEntry(): boolean {
|
|
119
|
+
if (process.argv[1] === undefined) {
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
122
|
+
const argvUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
123
|
+
if (import.meta.url === argvUrl) {
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
// A symlinked invocation (e.g. via an installed `.augment/` projection,
|
|
127
|
+
// or macOS /var → /private/var temp dirs) makes the raw URLs differ:
|
|
128
|
+
// import.meta.url is the resolved real path while argv[1] keeps the
|
|
129
|
+
// symlink path. Compare realpaths so the entry guard still fires
|
|
130
|
+
// (without this the CLI silently no-ops when run through a symlink).
|
|
131
|
+
try {
|
|
132
|
+
const here = fs.realpathSync(fileURLToPath(import.meta.url));
|
|
133
|
+
const argv = fs.realpathSync(path.resolve(process.argv[1]));
|
|
134
|
+
return here === argv;
|
|
135
|
+
} catch {
|
|
136
|
+
return false;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
if (_isCliEntry()) {
|
|
122
141
|
process.exit(main());
|
|
123
142
|
}
|
|
124
143
|
|