agentbundle 0.35.2__tar.gz → 0.38.1__tar.gz
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.
- {agentbundle-0.35.2/agentbundle.egg-info → agentbundle-0.38.1}/PKG-INFO +77 -30
- {agentbundle-0.35.2 → agentbundle-0.38.1}/README-pypi.md +76 -29
- agentbundle-0.38.1/agentbundle/_data/catalogue-index.schema.json +180 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-authoring-standards.md +136 -2
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/manifest.json +2 -2
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/profiles/AGENTS.md +4 -0
- agentbundle-0.38.1/agentbundle/_data/knowledge-captured-observation.schema.json +287 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/public-contracts.txt +2 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/skill.schema.json +40 -1
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/claude_code.py +6 -20
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/codex.py +6 -20
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/copilot.py +13 -16
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/cursor.py +13 -22
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/gemini.py +12 -12
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/kiro.py +13 -16
- agentbundle-0.38.1/agentbundle/build/projections/direct_directory.py +75 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue.py +17 -0
- agentbundle-0.38.1/agentbundle/catalogue_tooling/file_safety.py +217 -0
- agentbundle-0.38.1/agentbundle/catalogue_tooling/index_generator.py +541 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/initialise.py +26 -0
- agentbundle-0.38.1/agentbundle/catalogue_tooling/journey_validator.py +139 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/lint.py +296 -90
- agentbundle-0.38.1/agentbundle/catalogue_tooling/manifest.py +27 -0
- agentbundle-0.38.1/agentbundle/catalogue_tooling/okf_discovery.py +857 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/results.py +5 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/self_host_windows.py +11 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/skill_spec_lint.py +427 -188
- agentbundle-0.38.1/agentbundle/catalogue_tooling/verify.py +2296 -0
- agentbundle-0.38.1/agentbundle/catalogue_tooling/version_ranges.py +149 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/cli.py +52 -4
- agentbundle-0.38.1/agentbundle/commands/catalogue_index.py +189 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_init.py +6 -26
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/install.py +105 -33
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/show.py +66 -24
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/local_exclude.py +30 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/render.py +34 -3
- agentbundle-0.38.1/agentbundle/statelock.py +266 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/system_trust.py +32 -3
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/version.py +1 -1
- {agentbundle-0.35.2 → agentbundle-0.38.1/agentbundle.egg-info}/PKG-INFO +77 -30
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle.egg-info/SOURCES.txt +54 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/pyproject.toml +1 -1
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_self_host_check.py +64 -0
- agentbundle-0.38.1/tests/contracts/test_agentbundle_show_schema.py +290 -0
- agentbundle-0.38.1/tests/contracts/test_skill_schema.py +87 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/catalogue.toml +5 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/hook-wiring/example.json +1 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/SKILL.md +6 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/scripts/run.py +1 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/packs/pack-with-journey/JOURNEY.md +48 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/packs/pack-with-journey/pack.toml +18 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/packs/pack-without-journey/pack.toml +4 -0
- agentbundle-0.38.1/tests/fixtures/catalogue_wave4/profiles/test-profile.toml +8 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/.claude-plugin/marketplace.json +1 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/AGENTS.md +1 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/LICENSE-APACHE +1 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/LICENSE-MIT +1 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/agentbundle/_data/install-defaults.toml +2 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/catalogue.toml +31 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/packs/alpha/.apm/skills/example/SKILL.md +6 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/packs/alpha/.claude-plugin/plugin.json +1 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/packs/alpha/pack.toml +13 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/packs/alpha/seeds/AGENTS.md +3 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/packs/beta/.claude-plugin/plugin.json +1 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/packs/beta/pack.toml +17 -0
- agentbundle-0.38.1/tests/fixtures/external_catalogue/profiles/example.toml +8 -0
- agentbundle-0.38.1/tests/fixtures/show_contract/agentbundle-show.schema.json +303 -0
- agentbundle-0.38.1/tests/fixtures/show_contract/catalogue.json +76 -0
- agentbundle-0.38.1/tests/fixtures/show_contract/installed_state.json +12 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_adapter_compat.py +53 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_dependencies.py +210 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_external_portability.py +56 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_fixture_checks.py +123 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_marketplace.py +49 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_output_drift.py +149 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_package_preflight.py +74 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_plugin_path.py +209 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_profile_schema.py +139 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_verify_step1.py +21 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_wave4_index_generator.py +276 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_wave4_integration.py +334 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_wave4_journey_validator.py +172 -0
- agentbundle-0.38.1/tests/integration/test_catalogue_wave4_schema.py +160 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_dependencies_gate.py +86 -28
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_profile.py +6 -6
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_local_scope_install.py +188 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_show_cmd.py +167 -10
- agentbundle-0.38.1/tests/unit/test_adapter_symlink_policy.py +127 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_skill_spec_lint.py +181 -1
- agentbundle-0.38.1/tests/unit/test_catalogue_tooling_file_safety.py +54 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_lint.py +473 -13
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_package.py +12 -5
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_verify.py +69 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_trust_fallback.py +95 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_wave2_validation.py +96 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_wave3_init_nextsteps.py +33 -3
- agentbundle-0.38.1/tests/unit/test_cli_list_targets_help.py +67 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_cli_path_normalisation.py +35 -1
- agentbundle-0.38.1/tests/unit/test_collect_tree_symlinks.py +88 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_dependencies_batch.py +6 -2
- agentbundle-0.38.1/tests/unit/test_okf_discovery.py +841 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_plugin_scope_filter.py +2 -1
- agentbundle-0.38.1/tests/unit/test_statelock_hardening.py +189 -0
- agentbundle-0.35.2/agentbundle/build/projections/direct_directory.py +0 -41
- agentbundle-0.35.2/agentbundle/catalogue_tooling/file_safety.py +0 -63
- agentbundle-0.35.2/agentbundle/catalogue_tooling/verify.py +0 -1094
- agentbundle-0.35.2/agentbundle/statelock.py +0 -148
- {agentbundle-0.35.2 → agentbundle-0.38.1}/MANIFEST.in +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/__main__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/adapter.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/adapter.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-ci-contract.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/packs/AGENTS.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/packs/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/evals/eval_queries.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/packs/_example/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/packs/_example/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/packs/_example/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/profiles/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/profiles/_example/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/profiles/_example/profile.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_gemini_admissibility.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_pack_metadata.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_shared_library_boundaries.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/guide.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/install-defaults.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/install-marker.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/marketplace-entry.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/pack.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/plugin-manifest.derived.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/plugin-manifest.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/profile.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/skill-manifest.schema.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/target-vocab.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/workspace_status_engine.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/__main__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapter_root_bins.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/kiro_cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/adapters/kiro_ide.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/contract.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/hook_wiring_rules.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/lint_packs.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/main.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/phase_order.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projection_io.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/codex_agent_toml.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/copilot_agent_md.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/copilot_hooks_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/gemini_command_toml.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/hook_id.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/kiro_ide_hook.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/merge_into_agent_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/merge_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/plugin_hooks.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/projections/user_merge_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/recipes/composite-agents-md.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/recipes/composite-marketplace.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/recipes/marketplace.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/recipes/per-pack-apm-package.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/recipes/per-pack-claude-plugin.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/recipes/per-pack-overlay.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/recipes/self-host.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/scope_rails.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/self_host.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/shared_libs.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/target_resolver.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/user_libs.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/build/validate.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/archive.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/build.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/contracts_inspector.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/defaults.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/diagnostics.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/identity.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/initialise_self_hosted.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/package.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/self_host.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/catalogue_tooling/toml_emit.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/categories.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/_common.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/_drop_warning.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/adapt.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_build.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_contracts.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_lint.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_package.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_self_host.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_sync_defaults.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_tooling_stub.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/catalogue_verify.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/diff.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/docs.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/init_state.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/list_installed.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/list_packs.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/list_profiles.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/list_targets.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/oplog_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/pack_config_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/pack_evals.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/package_catalogue.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/profile.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/reconcile.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/render.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/scaffold.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/uninstall.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/upgrade.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/commands/validate.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/https_catalogue.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/oplog.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/pack_inventory.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/safety.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/scaffold.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/source_defaults.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/user_config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/workspace_mcp.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle.egg-info/dependency_links.txt +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle.egg-info/entry_points.txt +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle.egg-info/requires.txt +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle.egg-info/top_level.txt +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/conftest.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/setup.cfg +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/templates/install-marker.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/_support.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/claude-code-2.1.226-hook-events.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/claude-code-2.1.228-hook-events.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.apm/agents/bar.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.apm/commands/qux.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/baz.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/qux.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/core/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/governance-extras/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/governance-extras/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/governance-extras/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/monorepo-extras/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/monorepo-extras/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/monorepo-extras/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/product-documentation/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/product-documentation/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/product-documentation/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/fixtures/recipes/bogus-target.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_claude_code.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_codex.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_copilot.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_cursor.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_gemini.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_kiro.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_kiro_alias.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_kiro_cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_kiro_ide.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_adapter_root_bins_projection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_build_ships_seeds.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_contract.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_contract_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_contract_v07.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_contract_v08.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_direct_directory_cleanup.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_end_to_end_build.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_hook_wiring_rules.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_lint_packs.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_load_pack_hook_wiring_safely.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_pack_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_pack_schema_allowed_adapters.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_pack_schema_install.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_pipeline.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_plugin_hooks.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_plugin_manifest_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_plugin_publication_gates.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_projectable_subset.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_projection_io.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_projections_merge_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_scope_rails.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_security.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_self_host_fixture_guard.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_self_host_metadata_policy.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_self_host_recipe_config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_shared_libs_projection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_shared_prefix_contract.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_user_libs_projection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_validate.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/build_pipeline/test_writers_emit_lf.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/conftest.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/adapt/.adapt-discovery.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/adapt/values.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/.claude-plugin/marketplace.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/catalogue.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/packs/.gitkeep +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/packs/_example/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/packs/_example/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/packs/_example/evals/eval_queries.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/packs/_example/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/profiles/.gitkeep +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/profiles/_example/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/blank_catalogue/profiles/_example/profile.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield/values.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt/AGENTS.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt/AGENTS.upstream.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt/DESIGN.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt/EXPECTED_TREE.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt/docs/CHARTER.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt/docs/guides/how-to/index.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt/docs/howto/getting-started.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt-expected/AGENTS.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt-expected/docs/CHARTER.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/.adapt-discovery.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/state.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/argv-flag/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/argv-flag/scripts/cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/argv-flag-derived/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/argv-flag-derived/scripts/cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/argv-flag-normalised/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/argv-flag-normalised/scripts/cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/conforming/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/conforming/scripts/cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/dotfile-grep/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/dotfile-grep/scripts/leak.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/dotfile-with-optout/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/dotfile-with-optout/scripts/legit.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/mcp-server-headers/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/mcp-server-headers/scripts/cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/creds/skills/missing-dont-block/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/agents/helper.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/commands/cmd.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/hook-wiring/run.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/hooks/run.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/install/catalogue/packs/alpha/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/install/catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/kiro_ide_hook/ask_agent_basic.kiro.hook +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/kiro_ide_hook/run_command_with_placeholder.kiro.hook +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/lint_packs/clean/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/lint_packs/clean/seeds/README.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/list-installed/golden_120col.txt +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/list-installed/golden_80col.txt +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/list_packs/catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/list_packs/catalogue/packs/beta/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/.apm/skills/local-test/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/cc-user-hooks/.apm/hook-wiring/on-prompt.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/cc-user-hooks/.apm/hooks/on-prompt.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/cc-user-hooks/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-repo-hooks/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-repo-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-repo-hooks/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-repo-hooks/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-user-hooks/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-user-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-user-hooks/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/kiro-user-hooks/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-missing-attach/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-pascal-events/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/scaffold/test-pack/seeds/AGENTS.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/scaffold/test-pack/seeds/_agents-footer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/scaffold/test-pack/seeds/docs/CHARTER.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/validate/bad_recipe_pack/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/validate/malformed_pack/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/validate/valid_pack/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/fixtures/validate/version_mismatch_pack/pack.toml +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_adapt_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_adapt_dual_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_adapt_preflight_detection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_adapt_schema_migration.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_apm_install_route.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_blank_catalogue.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_brownfield_adapt_end_to_end.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_brownfield_round_trip.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_brownfield_user_home_fixture.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_build_check_drift_gates.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_build_derivation_apm.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_build_derivation_claude_plugins.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_catalogue_init.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_cc_user_hooks_fixture.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_claude_plugins_install_route.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_config_cascade.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_credential_brokers_pack_install.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_credentials_wheel.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_discovery_schema_cross_consumer.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_editable_source_detection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_fixtures_validate.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_hook_wiring_ingress.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_adapt_chain.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_converters_user_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_copilot_full_parity.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_core_smoke.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_default_source.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_dropped_primitives_warning.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_dual_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_orphan_reshape.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_pack_metadata_shape.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_profile_live.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_repo_scope_per_adapter.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_research_user_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_seed_delivery.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_session_start_wiring.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_upgrade_offer.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_user_hooks.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_install_user_scope_allowed_adapters.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_kiro_ide_hook_e2e.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_kiro_repo_hooks_fixture.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_kiro_user_hooks_fixture.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_list_packs_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_marketplace_entry_validation.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_marketplace_manifest_regression.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_multi_pack_install.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_orphan_cleanup_respects_foreign_state.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_plugin_route_membership.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_recommends_cross_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_reconcile.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_reserved_path_filter.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_scaffold_projection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_self_host_schema_migration.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_self_host_sweep_respects_state.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_shared_prefix_coexistence.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_tier_invariants.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_trust_fallback_tls.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_uninstall_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_uninstall_user_hooks.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_upgrade_attach_to_agent.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_upgrade_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_upgrade_user_hooks.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_version_gate_matrix.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_workspace_mcp_git_fsm.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/integration/test_zipapp.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/test_adapter_permissions_projection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/test_workspace_mcp_elicit.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/test_workspace_mcp_event_bridge.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/test_workspace_mcp_git.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/test_workspace_mcp_lifecycle.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/test_workspace_mcp_stdin.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/test_workspace_mcp_tools.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/__init__.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_adapt_discovery_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_append_layout_section.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_architect_readme_install_command.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_ci_contract.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_curation_deps.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_init_cli_self_hosted.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_pack_defaults.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_self_hosted_export_removal.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_archive.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_build.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_defaults.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_foundation.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_identity.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_init.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_self_host.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_self_hosted_init.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_tooling_source_package.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_wave2_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_wave3_contracts_cli.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_wave3_contracts_inspector.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_catalogue_wave3_offline_navigation.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_cli_catalogue_optional.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_cli_help_lists_config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_cli_profile_surface.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_cli_scope_flags.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_codex_agent_toml.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_codex_projection_modes.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_common_classify_seeds.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_config_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_configured_adapter.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_confirm_helper.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_contract_parity.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_contract_v0_3_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_copilot_agent_md.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_copilot_hooks_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_copilot_user_scope_wiring.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_credbroker_lint_hardening.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_diff_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_footprint_ownership.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_https_catalogue.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_init_state_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_argparse_adapter_flag.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_argparse_emit_install_routes.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_defaults_preferred_adapter.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_dropped_primitives_warning.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_event_dropped_wirings.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_first_value_handoff.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_force_help.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_inband_detection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_messages.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_messages_repo_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_refusal_ordering.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_install_state_provenance.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_kiro_ide_hook_projection.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_kiro_ide_hook_rail.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_kiro_ide_hook_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_lint_agent_artifacts_metadata_auth.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_list_installed_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_list_installed_status.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_list_targets_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t10_uninstall.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t12_show.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t2_resolve.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t3_config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t4_state_path.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t5_list_installed.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t7_install_gates.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t8_install.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_local_scope_t9_exclude.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_marker_schema_version_parity.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_merge_into_agent_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_multi_adapter_disambiguator.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_nested_symlink_hardening.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_org_bootstrap.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_pack_config_api.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_pack_inventory.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_package_catalogue.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_packstate_source_provenance.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_pipeline_phase_order.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_profile_reader.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_render.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_render_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_render_table.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_resolve_state_path.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_resolve_target_adapter_user_config.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_resolve_user_scope_target_adapter.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_safety.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_safety_repo_scope_prefixes.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_safety_scan_per_pack_scoping.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_scaffold_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_scope.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_self_host_windows.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_shared_prefix_disclosure.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_source_conflict_guard.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_source_defaults.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_state_v01_refuse_write.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_state_v02.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_state_v0_4_schema.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_statelock.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_system_trust.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_target_resolver.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_toml_emitters.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_unresolved_markers.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_upgrade_bulk_all.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_upgrade_recap.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_upgrade_source_inference.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_user_config_io.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_user_config_isolation.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_user_config_path.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_user_config_source.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_user_merge_json.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_validate_attach_to_agent.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_validate_categories.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_validate_cmd.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_validate_hook_wiring_per_file_compatibility.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_values_from_shapes.py +0 -0
- {agentbundle-0.35.2 → agentbundle-0.38.1}/tests/unit/test_version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentbundle
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.38.1
|
|
4
4
|
Summary: npm for your coding agent. Install packs of skills, subagents, and hooks into any repo, for every major agent.
|
|
5
5
|
Author-email: eugenelim <eugenelim@users.noreply.github.com>
|
|
6
6
|
License-Expression: Apache-2.0 OR MIT
|
|
@@ -34,42 +34,89 @@ python -m pip install agentbundle
|
|
|
34
34
|
|
|
35
35
|
Requires Python 3.11+. Runs on macOS, Linux, and Windows.
|
|
36
36
|
|
|
37
|
-
## What's new in 0.
|
|
37
|
+
## What's new in 0.38.1
|
|
38
38
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
`agentbundle catalogue self-host --check --windows` gained a stage that verifies
|
|
40
|
+
a source catalogue's declared knowledge bundles against their committed output.
|
|
41
|
+
The verification itself is performed by the catalogue's own tooling, so this
|
|
42
|
+
changes nothing for installing or using a pack.
|
|
42
43
|
|
|
43
|
-
|
|
44
|
-
install: Failed to fetch catalogue archive: … —
|
|
45
|
-
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
|
|
46
|
-
unable to get local issuer certificate
|
|
47
|
-
```
|
|
44
|
+
## What's new in 0.38.0
|
|
48
45
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
46
|
+
`agentbundle show <pack> --format json` now emits the additive pre-release rich
|
|
47
|
+
discovery fields `pack_metadata`, `skill_metadata`, and `knowledge` when the
|
|
48
|
+
pack is read from a live catalogue. The existing fields keep their current
|
|
49
|
+
meaning and ordering; installed-state fallback cannot prove rich metadata, so
|
|
50
|
+
those three fields are exactly `null` there.
|
|
52
51
|
|
|
52
|
+
The rich discovery surface is deliberately one-pack-at-a-time. It does not add
|
|
53
|
+
OKF data to `list-packs`, Claude marketplace output, `catalogue-index.json`, or
|
|
54
|
+
installed state, and it does not run compilers, network fetches, or pack code.
|
|
55
|
+
|
|
56
|
+
## Catalogue verification
|
|
57
|
+
|
|
58
|
+
`agentbundle catalogue verify` performs all 19 advertised checks. It validates
|
|
59
|
+
profile schemas and pack references, dependency ranges and cycles, adapter
|
|
60
|
+
compatibility, generated-output drift, pack preflight metadata, and skill
|
|
61
|
+
evaluation manifests. The verifier remains read-only and portable across
|
|
62
|
+
external catalogues.
|
|
63
|
+
|
|
64
|
+
Dependency ranges use the same npm-compatible grammar in verify, lint, and
|
|
65
|
+
install: caret, tilde, comparator, compound, and prerelease forms agree across
|
|
66
|
+
all three commands. In particular, caret ranges below `1.0.0` use normal semver
|
|
67
|
+
compatibility (`^0.2` does not include `0.3.x`).
|
|
68
|
+
|
|
69
|
+
`agentbundle catalogue index` now generates a deterministic, adapter-neutral
|
|
70
|
+
`catalogue-index.json` from catalogue, pack, profile, and optional journey
|
|
71
|
+
metadata. The command validates against its bundled public schema before an
|
|
72
|
+
atomic no-follow write; `--dry-run` writes nothing, and `--format json` emits one
|
|
73
|
+
closed result document for automation.
|
|
74
|
+
|
|
75
|
+
The generated index exposes content-addressable pack digests, structural content
|
|
76
|
+
and execution inventory, profile composition, declared external effects, and
|
|
77
|
+
forward and inverse pack integrations without relying on one agent host's
|
|
78
|
+
marketplace format.
|
|
79
|
+
|
|
80
|
+
## Catalogue authoring
|
|
81
|
+
|
|
82
|
+
New catalogue scaffolds document the `JOURNEY.md` convention: required and
|
|
83
|
+
optional frontmatter, external-effect declarations, reader-facing body sections,
|
|
84
|
+
and migration guidance. Existing packs without a journey remain valid and appear
|
|
85
|
+
with an empty `journeys` array.
|
|
86
|
+
|
|
87
|
+
The same authoring reference retains the guide callout contract: exact quoted
|
|
88
|
+
wording remains a blockquote, while guidance uses the documented typed aside.
|
|
89
|
+
|
|
90
|
+
Generate and validate a neutral index with:
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
agentbundle catalogue index . --dry-run
|
|
94
|
+
agentbundle catalogue index . --output catalogue-index.json
|
|
53
95
|
```
|
|
54
|
-
agentbundle: certificate verification failed for github.com;
|
|
55
|
-
retrying with operating-system trust anchors
|
|
56
|
-
```
|
|
57
96
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
97
|
+
## Contract discovery
|
|
98
|
+
|
|
99
|
+
The bundled public contract inventory includes `catalogue-index.schema.json` as
|
|
100
|
+
the closed contract for generated neutral indexes. It also includes the strict
|
|
101
|
+
`knowledge-captured-observation.schema.json` contract used by the core pack's
|
|
102
|
+
project-knowledge capture handoff.
|
|
103
|
+
|
|
104
|
+
You can inspect the exact public contracts bundled with the installed
|
|
105
|
+
AgentBundle version without network access:
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
agentbundle catalogue contracts list
|
|
109
|
+
agentbundle catalogue contracts show pack.schema.json
|
|
110
|
+
agentbundle catalogue contracts export --output ./reference-contracts
|
|
111
|
+
```
|
|
63
112
|
|
|
64
|
-
`
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
`REQUESTS_CA_BUNDLE` are honoured there too. See
|
|
68
|
-
[Corporate networks](#corporate-networks) below.
|
|
113
|
+
`list` and `show` are read-only. `export` writes reference copies through a
|
|
114
|
+
no-follow, preflighted batch writer; those copies do not override the contracts
|
|
115
|
+
AgentBundle uses for validation.
|
|
69
116
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
117
|
+
Successful `agentbundle catalogue init` output points to the scaffolded
|
|
118
|
+
`guides/_shared/reference/catalogue-authoring-standards.md`, contract discovery,
|
|
119
|
+
and catalogue verification. JSON init output remains unchanged.
|
|
73
120
|
|
|
74
121
|
**Install into a repo** — so everyone who clones it gets the pack. `core` is the flagship pack, the loop itself:
|
|
75
122
|
|
|
@@ -153,7 +200,7 @@ agentbundle uninstall --pack core --yes
|
|
|
153
200
|
|
|
154
201
|
**`list-installed`** reads your state files (not the catalogue) and reports every installed `(pack, adapter)` at each scope with its version and a four-value status — `up-to-date`, `upgrade-available`, `ahead` (installed version is newer than catalogue), or `unknown`; it degrades to `unknown` (never an error) when the catalogue can't be resolved, and `--no-check` skips the check entirely. `--format json` emits a stable JSON contract (`schema_version: 1`) to stdout — useful for CI automation of upgrade decisions. `--updates-only` hides `up-to-date` rows.
|
|
155
202
|
|
|
156
|
-
**`show <pack>`** answers "what skills and agents does this pack contain?" by walking the pack's source tree live on each call — so the answer can't drift, and nothing is persisted. `--format json` emits a stable object (`name`, `version`, `description`, `skills`, `agents`, `source`) for scripts and agents. When the catalogue can't be resolved, an *installed* pack still reports its inventory from your state files (marked `source: installed-state`)
|
|
203
|
+
**`show <pack>`** answers "what skills and agents does this pack contain?" by walking the pack's source tree live on each call — so the answer can't drift, and nothing is persisted. `--format json` emits a stable object (`name`, `version`, `description`, `skills`, `agents`, `integrations`, `source`, `pack_metadata`, `skill_metadata`, `knowledge`) for scripts and agents. The three rich metadata fields are pre-release: they are source-backed only for live catalogue reads and are not a cross-pack OKF index. When the catalogue can't be resolved, an *installed* pack still reports its inventory from your state files (marked `source: installed-state`), with `pack_metadata`, `skill_metadata`, and `knowledge` set to `null`; a not-installed pack errors.
|
|
157
204
|
|
|
158
205
|
A **profile** is a catalogue-curated, single-scope set of packs you install in one command — it declares its own scope, so `--scope` doesn't apply. **Upgrade takes no version** — the target is whatever the catalogue you point at declares; to pin a past version, point the catalogue at that git ref. Install a pack that's **already there** and `agentbundle` offers to `upgrade` it instead (`--yes` runs it straight away).
|
|
159
206
|
|
|
@@ -14,42 +14,89 @@ python -m pip install agentbundle
|
|
|
14
14
|
|
|
15
15
|
Requires Python 3.11+. Runs on macOS, Linux, and Windows.
|
|
16
16
|
|
|
17
|
-
## What's new in 0.
|
|
17
|
+
## What's new in 0.38.1
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
`agentbundle catalogue self-host --check --windows` gained a stage that verifies
|
|
20
|
+
a source catalogue's declared knowledge bundles against their committed output.
|
|
21
|
+
The verification itself is performed by the catalogue's own tooling, so this
|
|
22
|
+
changes nothing for installing or using a pack.
|
|
22
23
|
|
|
23
|
-
|
|
24
|
-
install: Failed to fetch catalogue archive: … —
|
|
25
|
-
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed:
|
|
26
|
-
unable to get local issuer certificate
|
|
27
|
-
```
|
|
24
|
+
## What's new in 0.38.0
|
|
28
25
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
`agentbundle show <pack> --format json` now emits the additive pre-release rich
|
|
27
|
+
discovery fields `pack_metadata`, `skill_metadata`, and `knowledge` when the
|
|
28
|
+
pack is read from a live catalogue. The existing fields keep their current
|
|
29
|
+
meaning and ordering; installed-state fallback cannot prove rich metadata, so
|
|
30
|
+
those three fields are exactly `null` there.
|
|
32
31
|
|
|
32
|
+
The rich discovery surface is deliberately one-pack-at-a-time. It does not add
|
|
33
|
+
OKF data to `list-packs`, Claude marketplace output, `catalogue-index.json`, or
|
|
34
|
+
installed state, and it does not run compilers, network fetches, or pack code.
|
|
35
|
+
|
|
36
|
+
## Catalogue verification
|
|
37
|
+
|
|
38
|
+
`agentbundle catalogue verify` performs all 19 advertised checks. It validates
|
|
39
|
+
profile schemas and pack references, dependency ranges and cycles, adapter
|
|
40
|
+
compatibility, generated-output drift, pack preflight metadata, and skill
|
|
41
|
+
evaluation manifests. The verifier remains read-only and portable across
|
|
42
|
+
external catalogues.
|
|
43
|
+
|
|
44
|
+
Dependency ranges use the same npm-compatible grammar in verify, lint, and
|
|
45
|
+
install: caret, tilde, comparator, compound, and prerelease forms agree across
|
|
46
|
+
all three commands. In particular, caret ranges below `1.0.0` use normal semver
|
|
47
|
+
compatibility (`^0.2` does not include `0.3.x`).
|
|
48
|
+
|
|
49
|
+
`agentbundle catalogue index` now generates a deterministic, adapter-neutral
|
|
50
|
+
`catalogue-index.json` from catalogue, pack, profile, and optional journey
|
|
51
|
+
metadata. The command validates against its bundled public schema before an
|
|
52
|
+
atomic no-follow write; `--dry-run` writes nothing, and `--format json` emits one
|
|
53
|
+
closed result document for automation.
|
|
54
|
+
|
|
55
|
+
The generated index exposes content-addressable pack digests, structural content
|
|
56
|
+
and execution inventory, profile composition, declared external effects, and
|
|
57
|
+
forward and inverse pack integrations without relying on one agent host's
|
|
58
|
+
marketplace format.
|
|
59
|
+
|
|
60
|
+
## Catalogue authoring
|
|
61
|
+
|
|
62
|
+
New catalogue scaffolds document the `JOURNEY.md` convention: required and
|
|
63
|
+
optional frontmatter, external-effect declarations, reader-facing body sections,
|
|
64
|
+
and migration guidance. Existing packs without a journey remain valid and appear
|
|
65
|
+
with an empty `journeys` array.
|
|
66
|
+
|
|
67
|
+
The same authoring reference retains the guide callout contract: exact quoted
|
|
68
|
+
wording remains a blockquote, while guidance uses the documented typed aside.
|
|
69
|
+
|
|
70
|
+
Generate and validate a neutral index with:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
agentbundle catalogue index . --dry-run
|
|
74
|
+
agentbundle catalogue index . --output catalogue-index.json
|
|
33
75
|
```
|
|
34
|
-
agentbundle: certificate verification failed for github.com;
|
|
35
|
-
retrying with operating-system trust anchors
|
|
36
|
-
```
|
|
37
76
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
77
|
+
## Contract discovery
|
|
78
|
+
|
|
79
|
+
The bundled public contract inventory includes `catalogue-index.schema.json` as
|
|
80
|
+
the closed contract for generated neutral indexes. It also includes the strict
|
|
81
|
+
`knowledge-captured-observation.schema.json` contract used by the core pack's
|
|
82
|
+
project-knowledge capture handoff.
|
|
83
|
+
|
|
84
|
+
You can inspect the exact public contracts bundled with the installed
|
|
85
|
+
AgentBundle version without network access:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
agentbundle catalogue contracts list
|
|
89
|
+
agentbundle catalogue contracts show pack.schema.json
|
|
90
|
+
agentbundle catalogue contracts export --output ./reference-contracts
|
|
91
|
+
```
|
|
43
92
|
|
|
44
|
-
`
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
`REQUESTS_CA_BUNDLE` are honoured there too. See
|
|
48
|
-
[Corporate networks](#corporate-networks) below.
|
|
93
|
+
`list` and `show` are read-only. `export` writes reference copies through a
|
|
94
|
+
no-follow, preflighted batch writer; those copies do not override the contracts
|
|
95
|
+
AgentBundle uses for validation.
|
|
49
96
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
97
|
+
Successful `agentbundle catalogue init` output points to the scaffolded
|
|
98
|
+
`guides/_shared/reference/catalogue-authoring-standards.md`, contract discovery,
|
|
99
|
+
and catalogue verification. JSON init output remains unchanged.
|
|
53
100
|
|
|
54
101
|
**Install into a repo** — so everyone who clones it gets the pack. `core` is the flagship pack, the loop itself:
|
|
55
102
|
|
|
@@ -133,7 +180,7 @@ agentbundle uninstall --pack core --yes
|
|
|
133
180
|
|
|
134
181
|
**`list-installed`** reads your state files (not the catalogue) and reports every installed `(pack, adapter)` at each scope with its version and a four-value status — `up-to-date`, `upgrade-available`, `ahead` (installed version is newer than catalogue), or `unknown`; it degrades to `unknown` (never an error) when the catalogue can't be resolved, and `--no-check` skips the check entirely. `--format json` emits a stable JSON contract (`schema_version: 1`) to stdout — useful for CI automation of upgrade decisions. `--updates-only` hides `up-to-date` rows.
|
|
135
182
|
|
|
136
|
-
**`show <pack>`** answers "what skills and agents does this pack contain?" by walking the pack's source tree live on each call — so the answer can't drift, and nothing is persisted. `--format json` emits a stable object (`name`, `version`, `description`, `skills`, `agents`, `source`) for scripts and agents. When the catalogue can't be resolved, an *installed* pack still reports its inventory from your state files (marked `source: installed-state`)
|
|
183
|
+
**`show <pack>`** answers "what skills and agents does this pack contain?" by walking the pack's source tree live on each call — so the answer can't drift, and nothing is persisted. `--format json` emits a stable object (`name`, `version`, `description`, `skills`, `agents`, `integrations`, `source`, `pack_metadata`, `skill_metadata`, `knowledge`) for scripts and agents. The three rich metadata fields are pre-release: they are source-backed only for live catalogue reads and are not a cross-pack OKF index. When the catalogue can't be resolved, an *installed* pack still reports its inventory from your state files (marked `source: installed-state`), with `pack_metadata`, `skill_metadata`, and `knowledge` set to `null`; a not-installed pack errors.
|
|
137
184
|
|
|
138
185
|
A **profile** is a catalogue-curated, single-scope set of packs you install in one command — it declares its own scope, so `--scope` doesn't apply. **Upgrade takes no version** — the target is whatever the catalogue you point at declares; to pin a past version, point the catalogue at that git ref. Install a pack that's **already there** and `agentbundle` offers to `upgrade` it instead (`--yes` runs it straight away).
|
|
139
186
|
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-spec": "docs/specs/catalogue-wave4-semantic-contracts-index",
|
|
3
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
+
"$id": "catalogue-index.schema.json",
|
|
5
|
+
"title": "Neutral catalogue index",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": ["schema_version", "catalogue", "packs", "profiles"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"schema_version": {
|
|
11
|
+
"type": "string",
|
|
12
|
+
"enum": ["1"]
|
|
13
|
+
},
|
|
14
|
+
"generated_at": {
|
|
15
|
+
"type": "string",
|
|
16
|
+
"format": "date-time"
|
|
17
|
+
},
|
|
18
|
+
"catalogue": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"additionalProperties": false,
|
|
21
|
+
"required": ["name"],
|
|
22
|
+
"properties": {
|
|
23
|
+
"name": {"type": "string"},
|
|
24
|
+
"description": {"type": "string"}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"packs": {
|
|
28
|
+
"type": "array",
|
|
29
|
+
"items": {
|
|
30
|
+
"type": "object",
|
|
31
|
+
"additionalProperties": false,
|
|
32
|
+
"required": [
|
|
33
|
+
"name",
|
|
34
|
+
"version",
|
|
35
|
+
"scope",
|
|
36
|
+
"integrations",
|
|
37
|
+
"integrations_inverse",
|
|
38
|
+
"journeys",
|
|
39
|
+
"effects",
|
|
40
|
+
"digest"
|
|
41
|
+
],
|
|
42
|
+
"properties": {
|
|
43
|
+
"name": {"type": "string"},
|
|
44
|
+
"version": {"type": "string"},
|
|
45
|
+
"scope": {"type": "string", "enum": ["repo", "user"]},
|
|
46
|
+
"description": {"type": "string"},
|
|
47
|
+
"categories": {"type": "array", "items": {"type": "string"}},
|
|
48
|
+
"adapters": {"type": "array", "items": {"type": "string"}},
|
|
49
|
+
"integrations": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"items": {
|
|
52
|
+
"type": "object",
|
|
53
|
+
"additionalProperties": false,
|
|
54
|
+
"required": ["id", "pack", "kind", "role"],
|
|
55
|
+
"properties": {
|
|
56
|
+
"id": {"type": "string"},
|
|
57
|
+
"pack": {"type": "string"},
|
|
58
|
+
"kind": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"enum": ["input", "augment", "review", "handoff"]
|
|
61
|
+
},
|
|
62
|
+
"role": {"type": "string"}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"integrations_inverse": {
|
|
67
|
+
"type": "array",
|
|
68
|
+
"items": {
|
|
69
|
+
"type": "object",
|
|
70
|
+
"additionalProperties": false,
|
|
71
|
+
"required": ["id", "pack", "kind", "role"],
|
|
72
|
+
"properties": {
|
|
73
|
+
"id": {"type": "string"},
|
|
74
|
+
"pack": {"type": "string"},
|
|
75
|
+
"kind": {
|
|
76
|
+
"type": "string",
|
|
77
|
+
"enum": ["input", "augment", "review", "handoff"]
|
|
78
|
+
},
|
|
79
|
+
"role": {"type": "string"}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"journeys": {
|
|
84
|
+
"type": "array",
|
|
85
|
+
"items": {
|
|
86
|
+
"type": "object",
|
|
87
|
+
"additionalProperties": false,
|
|
88
|
+
"required": [
|
|
89
|
+
"journey_id",
|
|
90
|
+
"pack",
|
|
91
|
+
"start_state",
|
|
92
|
+
"end_state",
|
|
93
|
+
"scope",
|
|
94
|
+
"tagline",
|
|
95
|
+
"contract"
|
|
96
|
+
],
|
|
97
|
+
"properties": {
|
|
98
|
+
"journey_id": {"type": "string"},
|
|
99
|
+
"pack": {"type": "string"},
|
|
100
|
+
"start_state": {
|
|
101
|
+
"type": "string",
|
|
102
|
+
"enum": ["read-only", "proposed-write", "confirmed-write"]
|
|
103
|
+
},
|
|
104
|
+
"end_state": {
|
|
105
|
+
"type": "string",
|
|
106
|
+
"enum": ["read-only", "proposed-write", "confirmed-write"]
|
|
107
|
+
},
|
|
108
|
+
"scope": {"type": "string", "enum": ["repo", "user"]},
|
|
109
|
+
"tagline": {"type": "string"},
|
|
110
|
+
"contract": {
|
|
111
|
+
"type": "object",
|
|
112
|
+
"additionalProperties": false,
|
|
113
|
+
"required": ["useItWhen", "youProvide", "youReceive", "yourDecisions"],
|
|
114
|
+
"properties": {
|
|
115
|
+
"useItWhen": {"type": "string"},
|
|
116
|
+
"youProvide": {"type": "string"},
|
|
117
|
+
"youReceive": {"type": "string"},
|
|
118
|
+
"yourDecisions": {"type": "array", "items": {"type": "string"}}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"effects": {
|
|
125
|
+
"type": "array",
|
|
126
|
+
"items": {
|
|
127
|
+
"type": "object",
|
|
128
|
+
"additionalProperties": false,
|
|
129
|
+
"required": ["kind", "description"],
|
|
130
|
+
"properties": {
|
|
131
|
+
"kind": {
|
|
132
|
+
"type": "string",
|
|
133
|
+
"enum": [
|
|
134
|
+
"file-write",
|
|
135
|
+
"git-push",
|
|
136
|
+
"network-call",
|
|
137
|
+
"shell-exec",
|
|
138
|
+
"credential-read"
|
|
139
|
+
]
|
|
140
|
+
},
|
|
141
|
+
"description": {"type": "string"}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
"content": {
|
|
146
|
+
"type": "object",
|
|
147
|
+
"additionalProperties": false,
|
|
148
|
+
"properties": {
|
|
149
|
+
"skills": {"type": "array", "items": {"type": "string"}},
|
|
150
|
+
"agents": {"type": "array", "items": {"type": "string"}},
|
|
151
|
+
"commands": {"type": "array", "items": {"type": "string"}},
|
|
152
|
+
"scripts": {"type": "array", "items": {"type": "string"}},
|
|
153
|
+
"hooks": {"type": "array", "items": {"type": "string"}},
|
|
154
|
+
"seeds": {"type": "array", "items": {"type": "string"}},
|
|
155
|
+
"shared-libs": {"type": "array", "items": {"type": "string"}},
|
|
156
|
+
"user-libs": {"type": "array", "items": {"type": "string"}}
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
"execution": {"type": "array", "items": {"type": "string"}},
|
|
160
|
+
"documentation": {"type": "string"},
|
|
161
|
+
"digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
"profiles": {
|
|
166
|
+
"type": "array",
|
|
167
|
+
"items": {
|
|
168
|
+
"type": "object",
|
|
169
|
+
"additionalProperties": false,
|
|
170
|
+
"required": ["name", "scope"],
|
|
171
|
+
"properties": {
|
|
172
|
+
"name": {"type": "string"},
|
|
173
|
+
"scope": {"type": "string", "enum": ["user", "repo"]},
|
|
174
|
+
"description": {"type": "string"},
|
|
175
|
+
"packs": {"type": "array", "items": {"type": "string"}}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
@@ -13,6 +13,33 @@ Machine contracts in `contracts/` are normative. These guides explain how to use
|
|
|
13
13
|
Each section below names the authoritative contract and points to the guide that
|
|
14
14
|
explains it. When a guide and its contract disagree, the contract is right.
|
|
15
15
|
|
|
16
|
+
## Guide asides and quotations
|
|
17
|
+
|
|
18
|
+
Use a Starlight aside when a passage does work beyond the surrounding narrative.
|
|
19
|
+
Choose the type by what the reader needs to do with it:
|
|
20
|
+
|
|
21
|
+
| Type | Use it for |
|
|
22
|
+
| --- | --- |
|
|
23
|
+
| `note` | Scope, orientation, or background the reader must notice |
|
|
24
|
+
| `tip` | An optional technique that improves the result or route |
|
|
25
|
+
| `caution` | A pitfall, limitation, or recovery step with reversible consequences |
|
|
26
|
+
| `danger` | A risk of severe or irreversible harm |
|
|
27
|
+
|
|
28
|
+
Use only those four types. Keep the default visible title unless a specific title
|
|
29
|
+
helps the reader act. Put the complete guidance inside the directive:
|
|
30
|
+
|
|
31
|
+
```md
|
|
32
|
+
:::caution
|
|
33
|
+
Confirm the generated paths before replacing an existing projection.
|
|
34
|
+
:::
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
A blockquote has a different job: it preserves someone else's words or exact text
|
|
38
|
+
the reader must recognize, such as a prompt, transcript, sample response, or rubric
|
|
39
|
+
wording. Leave those passages as `>` blockquotes. Do not turn prose into a quotation
|
|
40
|
+
just to make it visually prominent, and do not turn genuine quoted wording into an
|
|
41
|
+
aside.
|
|
42
|
+
|
|
16
43
|
---
|
|
17
44
|
|
|
18
45
|
## 1. Catalogue manifest
|
|
@@ -426,5 +453,112 @@ contracts used for validation by this agentbundle version.
|
|
|
426
453
|
|
|
427
454
|
## Journey format
|
|
428
455
|
|
|
429
|
-
|
|
430
|
-
|
|
456
|
+
A `JOURNEY.md` describes the outcome a pack helps someone reach. Put it beside
|
|
457
|
+
`pack.toml` at `packs/<pack-name>/JOURNEY.md`. The file is optional: catalogues and
|
|
458
|
+
packs created before this convention remain valid, and their generated index contains
|
|
459
|
+
an empty `journeys` array.
|
|
460
|
+
|
|
461
|
+
The YAML frontmatter is the machine-readable contract. The Markdown body is for
|
|
462
|
+
readers; the index command does not extract structured data from it.
|
|
463
|
+
|
|
464
|
+
### Required frontmatter
|
|
465
|
+
|
|
466
|
+
```yaml
|
|
467
|
+
---
|
|
468
|
+
journey_id: catalogue-authoring
|
|
469
|
+
pack: example-pack
|
|
470
|
+
start_state: read-only
|
|
471
|
+
end_state: confirmed-write
|
|
472
|
+
scope: repo
|
|
473
|
+
tagline: Build a catalogue pack that passes its published contracts.
|
|
474
|
+
contract:
|
|
475
|
+
useItWhen: You need to add or revise a catalogue pack.
|
|
476
|
+
youProvide: The intended outcome, scope, and pack contents.
|
|
477
|
+
youReceive: A validated pack with clear author and adopter documentation.
|
|
478
|
+
yourDecisions:
|
|
479
|
+
- Which adapters and installation scopes the pack supports.
|
|
480
|
+
---
|
|
481
|
+
```
|
|
482
|
+
|
|
483
|
+
Use these fields:
|
|
484
|
+
|
|
485
|
+
- `journey_id`: a string that is unique within the catalogue.
|
|
486
|
+
- `pack`: the exact pack name from `pack.toml`.
|
|
487
|
+
- `start_state` and `end_state`: one of `read-only`, `proposed-write`, or
|
|
488
|
+
`confirmed-write`.
|
|
489
|
+
- `scope`: `repo` or `user`.
|
|
490
|
+
- `tagline`: a plain-language summary of at most 120 characters.
|
|
491
|
+
- `contract`: a closed object. `useItWhen`, `youProvide`, and `youReceive` are
|
|
492
|
+
strings; `yourDecisions` is an array of strings.
|
|
493
|
+
|
|
494
|
+
Malformed YAML, a missing required field, or a field with the wrong type stops index
|
|
495
|
+
generation before any output is replaced.
|
|
496
|
+
|
|
497
|
+
### Optional frontmatter
|
|
498
|
+
|
|
499
|
+
The following fields add richer discovery information without changing the required
|
|
500
|
+
contract:
|
|
501
|
+
|
|
502
|
+
- `prerequisitePacks`: pack-name strings.
|
|
503
|
+
- `whatChanges`: a reader-facing description.
|
|
504
|
+
- `skills`: objects with `name`, `description`, and `humanTouches`.
|
|
505
|
+
- `humanGates`: gate objects with `id`, `label`, `trigger`, `duration`,
|
|
506
|
+
`whatToCheck`, `whatGoodLooksLike`, `whatBadLooksLike`, and `consequence`;
|
|
507
|
+
`globalGate` is optional.
|
|
508
|
+
- `typicalSession`: an object with `agentTurns`, `humanTouches`, and
|
|
509
|
+
`wallClockMinutes`.
|
|
510
|
+
- `docsUrl` and `packUrl`: documentation links.
|
|
511
|
+
- `relatedJourneys`: other journey identifiers.
|
|
512
|
+
- `effects`: external effects declared by the author.
|
|
513
|
+
|
|
514
|
+
Each `effects` entry is a closed object with string fields `kind` and `description`:
|
|
515
|
+
|
|
516
|
+
```yaml
|
|
517
|
+
effects:
|
|
518
|
+
- kind: file-write
|
|
519
|
+
description: Writes generated files after the user confirms the destination.
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
Effects describe externally observable outcomes such as writing files, using a
|
|
523
|
+
network service, or publishing an artifact. Do not infer them from pack structure,
|
|
524
|
+
and do not list internal computation as an effect.
|
|
525
|
+
|
|
526
|
+
### Reader-facing body
|
|
527
|
+
|
|
528
|
+
The first body element after frontmatter must be an **Arrival trigger** quick-reference
|
|
529
|
+
table that maps activation phrases to outcomes. Follow it with these sections:
|
|
530
|
+
|
|
531
|
+
1. `Orient`: explain how the user establishes the starting context for a session.
|
|
532
|
+
2. `Primary workflow`: use numbered steps. Every step names what the user says or does,
|
|
533
|
+
what the agent produces, any human decision required, and the resulting state.
|
|
534
|
+
3. `Persist and collaborate`: explain how state is carried between sessions or handed
|
|
535
|
+
off; a brief statement is enough when the pack has no multi-session state.
|
|
536
|
+
4. `Next steps`: suggest follow-on journeys named by `relatedJourneys` frontmatter.
|
|
537
|
+
|
|
538
|
+
Explain the outcome and choices in product language. Avoid repository-maintainer
|
|
539
|
+
commands, publication machinery, or internal decision records; adopters should not
|
|
540
|
+
need the catalogue's own development environment to understand a journey.
|
|
541
|
+
|
|
542
|
+
The generated journey data conforms to the machine contract at
|
|
543
|
+
`contracts/catalogue-index.schema.json`.
|
|
544
|
+
|
|
545
|
+
### Generate the neutral index
|
|
546
|
+
|
|
547
|
+
Run this from a catalogue checkout:
|
|
548
|
+
|
|
549
|
+
```console
|
|
550
|
+
agentbundle catalogue index . --dry-run
|
|
551
|
+
agentbundle catalogue index . --output catalogue-index.json
|
|
552
|
+
```
|
|
553
|
+
|
|
554
|
+
The dry run parses every present `JOURNEY.md`, builds the index in memory, validates it,
|
|
555
|
+
and writes nothing. The second command publishes the validated JSON atomically. Add
|
|
556
|
+
`--format json` when another tool needs the command result as one JSON document.
|
|
557
|
+
|
|
558
|
+
### Migrating an existing pack
|
|
559
|
+
|
|
560
|
+
You do not need to add placeholder journeys to old packs. Add `JOURNEY.md` when the pack
|
|
561
|
+
has a real end-to-end outcome to describe, then start with the required frontmatter and
|
|
562
|
+
the arrival table and body sections above. Keep `pack` equal to the manifest name and
|
|
563
|
+
choose states from the documented enums. Verify the complete catalogue with a dry run
|
|
564
|
+
before publishing its index.
|
{agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/manifest.json
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"files": {
|
|
3
|
-
"guides/_shared/reference/catalogue-authoring-standards.md": "
|
|
3
|
+
"guides/_shared/reference/catalogue-authoring-standards.md": "d7eb37f3c97179cd30959089e6a26ac76a6c33f9b9b64133a11d967915a4c511",
|
|
4
4
|
"guides/_shared/reference/catalogue-ci-contract.md": "fae793ab47989b6dd3c731afcb0b4cda21c7d08bbe7fa40fca6d3abb3d158141",
|
|
5
5
|
"packs/AGENTS.md": "9bfeda4069826e518a4f4fdae45bd40f4393c1c5aaf146149d3eb4aece30be83",
|
|
6
6
|
"packs/README.md": "d2de5f9556f4c8e521103474bde74636e02cc805f9bf5312a3a61a1f3eb45d8f",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"packs/_example/.claude-plugin/plugin.json": "7f94084a56260eed225ec47ac82042fe9029c594557cca760a459885d03ccc26",
|
|
10
10
|
"packs/_example/README.md": "ef130c9c1f97a75a07cc59fc55fc5b3bf71846dd2f06c3cddf5a1154023b6ef6",
|
|
11
11
|
"packs/_example/pack.toml": "f19a0be9fca99a6a0e3ce2d5cd188bf98000f0a4f186954fb42a0c99c6859701",
|
|
12
|
-
"profiles/AGENTS.md": "
|
|
12
|
+
"profiles/AGENTS.md": "794e7f8bdccc0479cf1ac45f864e1cb829ab739b3cdd15c66baad7ee1c894329",
|
|
13
13
|
"profiles/README.md": "a0b0268edc57fc575f7fea08f3363ba7da9f6e67dc4a0a6f8bd38c9668c97922",
|
|
14
14
|
"profiles/_example/README.md": "164494df049ddce3e57cb44ed604cb3d39be0a6ec2072e609ea3fa4bbfc74c72",
|
|
15
15
|
"profiles/_example/profile.toml": "68af18cf50fa0327a9776b029c92bb1cf82710c649691b3ac889eb8537b8eac7",
|
{agentbundle-0.35.2 → agentbundle-0.38.1}/agentbundle/_data/catalogue-scaffold/profiles/AGENTS.md
RENAMED
|
@@ -14,6 +14,10 @@ The profile **id** is the filename stem. It must match `^[a-z0-9][a-z0-9-]*$`.
|
|
|
14
14
|
|
|
15
15
|
## Current schema fields
|
|
16
16
|
|
|
17
|
+
The machine source of truth for profile TOML format is
|
|
18
|
+
[`contracts/profile.schema.json`](../contracts/profile.schema.json). The table
|
|
19
|
+
below is a reading aid; where the two disagree, the schema wins.
|
|
20
|
+
|
|
17
21
|
| Field | Required | Type | Description |
|
|
18
22
|
|-------|----------|------|-------------|
|
|
19
23
|
| `scope` | yes | `"repo"` or `"user"` | Installation scope |
|