agentbundle 0.29.2__tar.gz → 0.29.3__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.
Files changed (200) hide show
  1. {agentbundle-0.29.2 → agentbundle-0.29.3}/PKG-INFO +1 -1
  2. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/__init__.py +1 -1
  3. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/adapter.toml +92 -95
  4. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/manifest.json +1 -1
  5. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/packs/AGENTS.md +3 -3
  6. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/install-marker.py +7 -7
  7. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/target-vocab.toml +1 -2
  8. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/__init__.py +2 -2
  9. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapter_root_bins.py +14 -14
  10. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/__init__.py +2 -2
  11. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/claude_code.py +1 -1
  12. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/codex.py +11 -10
  13. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/copilot.py +4 -4
  14. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/cursor.py +5 -5
  15. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/gemini.py +5 -5
  16. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/kiro.py +12 -13
  17. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/kiro_ide.py +2 -2
  18. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/lint_packs.py +9 -10
  19. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/main.py +17 -17
  20. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/phase_order.py +3 -3
  21. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/__init__.py +1 -1
  22. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/codex_agent_toml.py +1 -2
  23. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/copilot_agent_md.py +3 -3
  24. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/copilot_hooks_json.py +4 -4
  25. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/gemini_command_toml.py +2 -2
  26. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/hook_id.py +3 -3
  27. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/kiro_ide_hook.py +2 -2
  28. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/merge_into_agent_json.py +5 -5
  29. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/merge_json.py +1 -1
  30. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/user_merge_json.py +7 -7
  31. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/recipes/composite-agents-md.toml +1 -1
  32. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/recipes/composite-marketplace.toml +1 -1
  33. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/recipes/marketplace.toml +1 -1
  34. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/recipes/per-pack-apm-package.toml +1 -1
  35. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/recipes/per-pack-claude-plugin.toml +1 -1
  36. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/recipes/per-pack-overlay.toml +1 -1
  37. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/recipes/self-host.toml +1 -1
  38. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/scope_rails.py +21 -22
  39. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/self_host.py +33 -34
  40. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/shared_libs.py +5 -5
  41. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/target_resolver.py +1 -1
  42. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_claude_code.py +2 -2
  43. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_codex.py +15 -20
  44. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_copilot.py +3 -3
  45. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_cursor.py +23 -24
  46. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_gemini.py +31 -31
  47. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_kiro.py +5 -5
  48. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_kiro_alias.py +1 -1
  49. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_kiro_cli.py +2 -2
  50. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_kiro_ide.py +3 -3
  51. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_adapter_root_bins_projection.py +13 -13
  52. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_architect_design_reviewer_projection.py +5 -5
  53. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_architect_design_reviewer_rubric_parity.py +2 -2
  54. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_build_ships_seeds.py +1 -1
  55. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_contract.py +31 -31
  56. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_contract_scope.py +16 -17
  57. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_contract_v07.py +14 -12
  58. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_contract_v08.py +3 -3
  59. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_end_to_end_build.py +6 -8
  60. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_lint_agents_md_diataxis_block.py +1 -1
  61. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_lint_agents_md_legacy_block.py +1 -1
  62. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_lint_agents_md_risk_block.py +1 -1
  63. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_lint_packs.py +8 -8
  64. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_pack_schema.py +6 -6
  65. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_pack_schema_allowed_adapters.py +3 -3
  66. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_pack_schema_install.py +1 -1
  67. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_pipeline.py +2 -2
  68. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_plugin_manifest_schema.py +12 -12
  69. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_projections_merge_json.py +1 -1
  70. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_scope_rails.py +5 -5
  71. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_security.py +1 -1
  72. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_self_host_check.py +82 -18
  73. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_self_host_recipe_config.py +2 -2
  74. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_shared_libs_projection.py +3 -3
  75. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_shared_prefix_contract.py +2 -2
  76. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_shipped_packs_v07_declarations.py +12 -12
  77. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_shipped_packs_v08_declarations.py +9 -8
  78. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_user_libs_projection.py +1 -1
  79. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_workspace_status_projection.py +17 -17
  80. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_writers_emit_lf.py +1 -2
  81. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/user_libs.py +2 -1
  82. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/validate.py +3 -3
  83. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue.py +1 -1
  84. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/archive.py +9 -11
  85. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/build.py +0 -2
  86. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/config.py +2 -2
  87. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/defaults.py +0 -2
  88. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/identity.py +1 -1
  89. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/initialise_self_hosted.py +2 -2
  90. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/lint.py +7 -9
  91. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/self_host.py +0 -2
  92. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/self_host_windows.py +3 -3
  93. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/verify.py +20 -22
  94. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/categories.py +3 -3
  95. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/cli.py +25 -25
  96. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/_common.py +4 -4
  97. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/_drop_warning.py +9 -11
  98. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/adapt.py +4 -4
  99. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/config.py +0 -1
  100. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/diff.py +5 -5
  101. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/init_state.py +9 -10
  102. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/install.py +196 -204
  103. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/list_installed.py +9 -9
  104. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/list_packs.py +2 -2
  105. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/list_profiles.py +2 -2
  106. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/pack_evals.py +9 -8
  107. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/package_catalogue.py +1 -1
  108. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/profile.py +2 -2
  109. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/reconcile.py +3 -3
  110. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/render.py +2 -2
  111. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/show.py +5 -5
  112. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/uninstall.py +15 -15
  113. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/upgrade.py +17 -18
  114. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/validate.py +20 -21
  115. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/config.py +30 -31
  116. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/https_catalogue.py +2 -2
  117. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/local_exclude.py +7 -8
  118. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/pack_inventory.py +9 -9
  119. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/render.py +1 -1
  120. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/safety.py +7 -7
  121. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/scope.py +17 -19
  122. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/source_defaults.py +7 -8
  123. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/statelock.py +1 -1
  124. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/user_config.py +0 -1
  125. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/version.py +1 -1
  126. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/workspace_mcp.py +25 -25
  127. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle.egg-info/PKG-INFO +1 -1
  128. {agentbundle-0.29.2 → agentbundle-0.29.3}/pyproject.toml +1 -1
  129. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_adapter_permissions_projection.py +6 -6
  130. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_linear_primitive.py +0 -1
  131. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_loop_engine_events_jsonl.py +10 -10
  132. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_workspace_mcp_elicit.py +13 -13
  133. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_workspace_mcp_event_bridge.py +8 -8
  134. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_workspace_mcp_git.py +14 -14
  135. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_workspace_mcp_lifecycle.py +3 -3
  136. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_workspace_mcp_stdin.py +16 -16
  137. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_workspace_mcp_tools.py +8 -8
  138. {agentbundle-0.29.2 → agentbundle-0.29.3}/tests/test_workspace_status_engine_autonomous.py +7 -4
  139. {agentbundle-0.29.2 → agentbundle-0.29.3}/README-pypi.md +0 -0
  140. {agentbundle-0.29.2 → agentbundle-0.29.3}/README.md +0 -0
  141. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/__main__.py +0 -0
  142. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/adapter.schema.json +0 -0
  143. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-authoring-standards.md +0 -0
  144. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-ci-contract.md +0 -0
  145. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/packs/README.md +0 -0
  146. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/packs/_example/README.md +0 -0
  147. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/packs/_example/evals/eval_queries.json +0 -0
  148. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/packs/_example/pack.toml +0 -0
  149. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/profiles/AGENTS.md +0 -0
  150. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/profiles/README.md +0 -0
  151. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/profiles/_example/README.md +0 -0
  152. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue-scaffold/profiles/_example/profile.toml +0 -0
  153. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/catalogue.schema.json +0 -0
  154. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/guide.schema.json +0 -0
  155. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/install-defaults.toml +0 -0
  156. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/pack.schema.json +0 -0
  157. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/plugin-manifest.derived.schema.json +0 -0
  158. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/plugin-manifest.schema.json +0 -0
  159. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/profile.schema.json +0 -0
  160. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/skill-manifest.schema.json +0 -0
  161. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/_data/skill.schema.json +0 -0
  162. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/__main__.py +0 -0
  163. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/adapters/kiro_cli.py +0 -0
  164. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/contract.py +0 -0
  165. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/projections/direct_directory.py +0 -0
  166. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/__init__.py +0 -0
  167. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_direct_directory_cleanup.py +0 -0
  168. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_load_pack_hook_wiring_safely.py +0 -0
  169. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_projectable_subset.py +0 -0
  170. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_self_host_fixture_guard.py +0 -0
  171. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/build/tests/test_validate.py +0 -0
  172. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/__init__.py +0 -0
  173. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/diagnostics.py +0 -0
  174. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/initialise.py +0 -0
  175. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/package.py +0 -0
  176. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/results.py +0 -0
  177. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/skill_spec_lint.py +0 -0
  178. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/catalogue_tooling/toml_emit.py +0 -0
  179. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/__init__.py +0 -0
  180. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_build.py +0 -0
  181. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_init.py +0 -0
  182. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_lint.py +0 -0
  183. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_package.py +0 -0
  184. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_self_host.py +0 -0
  185. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_sync_defaults.py +0 -0
  186. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_tooling_stub.py +0 -0
  187. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/catalogue_verify.py +0 -0
  188. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/docs.py +0 -0
  189. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/list_targets.py +0 -0
  190. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/oplog_cmd.py +0 -0
  191. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/pack_config_cmd.py +0 -0
  192. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/commands/scaffold.py +0 -0
  193. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/oplog.py +0 -0
  194. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle/scaffold.py +0 -0
  195. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle.egg-info/SOURCES.txt +0 -0
  196. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle.egg-info/dependency_links.txt +0 -0
  197. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle.egg-info/entry_points.txt +0 -0
  198. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle.egg-info/requires.txt +0 -0
  199. {agentbundle-0.29.2 → agentbundle-0.29.3}/agentbundle.egg-info/top_level.txt +0 -0
  200. {agentbundle-0.29.2 → agentbundle-0.29.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agentbundle
3
- Version: 0.29.2
3
+ Version: 0.29.3
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: Apache-2.0 OR MIT
@@ -3,7 +3,7 @@
3
3
  The `build` submodule ships the adapter contract, the four reference
4
4
  adapters, the recipe-driven build pipeline, and the self-host gate.
5
5
 
6
- The CLI surface (RFC-0003 F-cli) lives in this package's top-level modules
6
+ The CLI surface (F-cli) lives in this package's top-level modules
7
7
  and imports `agentbundle.build` as a library — no `sys.path` tricks, no
8
8
  `subprocess` to `tools/build/build.py`.
9
9
  """
@@ -1,31 +1,31 @@
1
1
  # Adapter contract — every (primitive × adapter) pair enumerated.
2
2
  # Validates against ./adapter.schema.json.
3
- # Managed by: docs/specs/distribution-adapters/spec.md
4
- # RFC reference: RFC-0001 (base contract); RFC-0004 (scope dimension, v0.2);
5
- # RFC-0005 (hook-body / hook-wiring forks, v0.3);
6
- # RFC-0008 (claude-plugins install route, v0.4);
7
- # RFC-0010 (apm install route, v0.5);
8
- # RFC-0011 / docs/specs/pack-allowed-adapters (codex user-scope table, v0.6);
9
- # RFC-0012 / docs/specs/repo-scope-per-adapter-projection (per-IDE projection
10
- # at repo scope; `allowed-prefixes.repo` on every adapter; copilot scope
11
- # table; v0.7).
12
- # RFC-0013 / docs/specs/credential-broker-contract (governance bump, v0.7 —
13
- # admitted as a co-residing v0.7 contributor; the `metadata.auth` lint
14
- # surface lives in verify.py (_step_agent_artifacts), not in this file).
15
- # docs/specs/dropped-primitives-coverage (v0.8): codex `agent` projects to
3
+ #
4
+ # Version history (continues below the [contract] block):
5
+ # v0.1: base contract.
6
+ # v0.2: scope dimension.
7
+ # v0.3: hook-body / hook-wiring forks.
8
+ # v0.4: claude-plugins install route.
9
+ # v0.5: apm install route.
10
+ # v0.6: codex user-scope table.
11
+ # v0.7: per-IDE projection at repo scope; `allowed-prefixes.repo` on every
12
+ # adapter; copilot scope table. Co-bumped with the credential-broker
13
+ # governance change — the `metadata.auth` lint surface lives in verify.py
14
+ # (_step_agent_artifacts), not in this file.
15
+ # v0.8 (dropped-primitives coverage): codex `agent` projects to
16
16
  # `.codex/agents/<name>.toml` via new `codex-agent-toml` mode; codex
17
17
  # `hook-wiring` projects to `.codex/hooks.json` via existing `merge-json`
18
18
  # mode; codex `.codex/` added to allowed-prefixes; new `codex-agent-
19
19
  # frontmatter-v0.8` mapping. Dropped-primitives warning rail introduced
20
20
  # in `agentbundle install` for any (adapter, pack) pair where the
21
21
  # resolved adapter projects a primitive type the pack ships as `dropped`.
22
- # RFC-0022 / docs/specs/kiro-adapter-split (v0.9): kiro adapter split into
22
+ # v0.9 (kiro adapter split): kiro splits into
23
23
  # `kiro-ide` (IDE, .md agents, kiro-ide-hook active, flat path confirmed by
24
24
  # Q6 probe no×yes 2026-06-01) and `kiro-cli` (CLI binary, .json agents,
25
25
  # hook-wiring retained). `kiro` retained as deprecated alias for `kiro-ide`.
26
26
  # `kiro-ide-hook` primitive activated; `kiro-ide-agent-frontmatter-v0.9` renamed
27
27
  # to `kiro-ide-agent-frontmatter-v0.9`.
28
- # RFC-0024 / ADR-0013 / docs/specs/copilot-full-parity (v0.10): copilot becomes
28
+ # v0.10 (copilot full parity): copilot becomes
29
29
  # a full-parity, user-scope-capable adapter. `agent` flips `dropped`→
30
30
  # `copilot-agent-md` (markdown → `.github/agents/<name>.agent.md`); `hook-wiring`
31
31
  # flips `dropped`→`copilot-hooks-json` (one self-contained `<name>.json` per
@@ -35,10 +35,10 @@
35
35
  # `[adapter.copilot.scope]` gains `user = "~"` + `allowed-prefixes.user`; new
36
36
  # `copilot-agent-frontmatter-v0.10` mapping. `command` stays `dropped`
37
37
  # (copilot-cli#618/#1113). Two-pack bump (research + core), not all-pack.
38
- # docs/specs/codex-agent-config-projection: corrects the existing codex
38
+ # Codex agent-config correction (no version bump): corrects the existing
39
39
  # `codex-agent-frontmatter-v0.8` mapping to preserve `model` and `tools`
40
40
  # intent as documented Codex agent config instead of dropping those fields.
41
- # RFC-0026 / ADR-0015 / docs/specs/cursor-full-parity (v0.11): new native
41
+ # v0.11 (cursor full parity): new native
42
42
  # `cursor` full-parity adapter projecting all five primitives to `.cursor/*`
43
43
  # at both scopes. NO new projection mode and NO adapter.schema.json change —
44
44
  # skill→direct-directory, agent→direct-file (+ `cursor-agent-frontmatter-v0.11`;
@@ -50,12 +50,12 @@
50
50
  # Distribution-only (not in SELF_HOST_ADAPTERS).
51
51
 
52
52
  [contract]
53
- # v0.12 (docs/specs/copilot-skills-and-web, 2026-06-11): copilot `skill` flips
53
+ # v0.12 (2026-06-11): copilot `skill` flips
54
54
  # `instruction-file`→`direct-directory` (first-class Agent Skills at
55
55
  # `.github/skills/<name>/SKILL.md`); the `copilot-instruction` frontmatter-default
56
- # is retired. Web correction (RFC-0024 § Errata E1) is docs/comments-only.
57
- # (Lands atop RFC-0026's cursor v0.11; the two co-bumped — copilot takes v0.12.)
58
- # RFC-0027 / ADR-0016 / docs/specs/gemini-full-parity (v0.13): new native
56
+ # is retired. The copilot web-tool correction is docs/comments-only.
57
+ # (Lands atop cursor v0.11; the two co-bumped — copilot takes v0.12.)
58
+ # v0.13 (gemini full parity): new native
59
59
  # `gemini` full-parity adapter projecting all five primitives to `.gemini/*` at
60
60
  # both scopes. One new projection mode (`gemini-command-toml`); a bespoke
61
61
  # `.gemini/settings.json` merge carrying `hooks` (event-remapped, fail-closed) +
@@ -63,7 +63,7 @@
63
63
  # kept and name-mapped; tier-preserving model map. hook-body lands under
64
64
  # `.gemini/hooks/` (the cursor model — single prefix at both scopes). kiro-ide-hook
65
65
  # dropped. Distribution-only (not in SELF_HOST_ADAPTERS).
66
- # RFC-0031 / ADR-0021 / docs/specs/enriched-pack-manifest (v0.14): pack.toml
66
+ # v0.14 (enriched pack manifest): pack.toml
67
67
  # becomes the rich metadata source of truth (optional readme / display_name /
68
68
  # license / maintainers / links / categories / keywords / [pack.metadata.<tool>]
69
69
  # / [pack].catalogue). The build projects the cleanly-projectable subset into
@@ -71,20 +71,20 @@
71
71
  # each pack's README. All new fields are optional — packs pinned below v0.14
72
72
  # build and validate unchanged. Declaration + projection only (no @catalogue/pack
73
73
  # resolution, no search, no persisted index).
74
- # docs/specs/kiro-cli-agent-skill-resources (v0.15): kiro-cli agent projection
74
+ # v0.15 (kiro-cli agent skill resources): kiro-cli agent projection
75
75
  # injects a fixed skill-resources glob (both install scopes) so headless
76
76
  # `--agent` runs reach the bundle's skills — Kiro custom agents don't inherit
77
- # the default agent's `.kiro/skills` auto-discovery (RFC-0022 E4; kiro
77
+ # the default agent's `.kiro/skills` auto-discovery (kiro
78
78
  # #6887/#6888/#4993). Additive `inject-resources` on BOTH the kiro-cli and
79
79
  # kiro-ide agent projections (CLI → agent JSON, IDE → quoted .md frontmatter).
80
- # RFC-0040 / ADR-0030 / docs/specs/consolidated-pack-layout (v0.16): pack.toml
80
+ # v0.16 (consolidated pack layout): pack.toml
81
81
  # gains an optional scope-keyed [pack.layout] table (optional .repo / .user
82
82
  # sub-tables, each a `parent` base and/or a within-pack template-path) naming
83
83
  # where a consuming pack's durable output lands. Consumed by the new installer
84
84
  # `_append_layout_section` step (append-if-exists / never-create / never-
85
85
  # overwrite) into an adopter-owned `agentbundle-layout.toml`. Additive +
86
86
  # optional — packs pinned below v0.16 build and validate unchanged.
87
- # RFC-0052 / ADR-0039+0040 (v0.17): the `[contract.shared-prefixes]` registry
87
+ # v0.17 (shared-prefix registry): the `[contract.shared-prefixes]` registry
88
88
  # (below) classifies each allowed-prefix as `shared` (a path more than one
89
89
  # adapter reads) or — by absence — `private`, and a shared prefix declares its
90
90
  # reader cohort. cursor/gemini/copilot route the `skill` primitive to the shared
@@ -93,12 +93,12 @@
93
93
  version = "0.17"
94
94
 
95
95
  # Sibling schemas this contract references — pack metadata and the
96
- # per-pack Claude-plugin manifest. Defined by spec AC #3 + #4.
96
+ # per-pack Claude-plugin manifest.
97
97
  [contract.schemas]
98
98
  pack = "pack.schema.json"
99
99
  plugin-manifest = "plugin-manifest.schema.json"
100
100
 
101
- # Shared-prefix registry (RFC-0052 / ADR-0039). Each key is a `shared` prefix —
101
+ # Shared-prefix registry. Each key is a `shared` prefix —
102
102
  # a path more than one shipped adapter reads — mapped to its reader cohort (the
103
103
  # shipped adapters that read it). Every prefix NOT listed here is `private`
104
104
  # (adapter-exclusive). The install-time cross-adapter disclosure names a shared
@@ -127,14 +127,14 @@ source-path = ".apm/hook-wiring/"
127
127
  [primitive.command]
128
128
  source-path = ".apm/commands/"
129
129
 
130
- # RFC-0022 / kiro-ide-hook: standalone IDE event hook files (.kiro.hook JSON).
130
+ # kiro-ide-hook: standalone IDE event hook files (.kiro.hook JSON).
131
131
  # Activated at v0.9 for the kiro-ide adapter; dropped for kiro-cli and others.
132
132
  [primitive."kiro-ide-hook"]
133
133
  source-path = ".apm/kiro-ide-hooks/"
134
134
 
135
- # RFC-0013 § 4c / RFC-0023 — `shared-libs/` carries Python sibling
135
+ # `shared-libs/` carries Python sibling
136
136
  # files. The original projection into every `metadata.auth: creds`
137
- # skill's `scripts/` was RETIRED in RFC-0023 (those consumers resolve
137
+ # skill's `scripts/` was RETIRED (those consumers resolve
138
138
  # via the `credbroker` pip library, imported in-process). What survives
139
139
  # in `agentbundle.build.shared_libs` is source enumeration
140
140
  # (`collect_sources`): the `adapter-root-bins` companion-shim rail reads
@@ -145,7 +145,7 @@ source-path = ".apm/kiro-ide-hooks/"
145
145
  [primitive."shared-libs"]
146
146
  source-path = ".apm/shared-libs/"
147
147
 
148
- # RFC-0013 § 4d — `adapter-root-bins/` carries executable scripts that
148
+ # `adapter-root-bins/` carries executable scripts that
149
149
  # project to the per-scope artifact root (`~/.agentbundle/bin/` at user
150
150
  # scope, `<repo>/.agentbundle/bin/` at repo scope). T6 wires the
151
151
  # projection; the declaration is here so the contract is complete at
@@ -170,15 +170,15 @@ source-path = ".apm/user-libs/"
170
170
  # Claude Code adapter — 5 projections (one per primitive) + v0.3 forks
171
171
  #
172
172
  # The legacy `[[adapter."claude-code".projection]]` array carries the
173
- # repo-scope shape every adapter has consumed since v0.1. RFC-0005 adds two
173
+ # repo-scope shape every adapter has consumed since v0.1. v0.3 adds two
174
174
  # forward-looking `[adapter."claude-code".projections.<primitive>]` tables
175
175
  # (hook-body / hook-wiring) carrying the scope-conditional shape that the
176
176
  # v0.3 user-scope pipeline reads. Until that pipeline lands, the legacy
177
177
  # entries remain authoritative; the new tables are declarative metadata.
178
178
  # ---------------------------------------------------------------------------
179
179
 
180
- # Install routes declared for this adapter (RFC-0008 / spec claude-plugins-install-route;
181
- # RFC-0010 / spec apm-install-route-parity adds "apm").
180
+ # Install routes declared for this adapter ("claude-plugins" at v0.4;
181
+ # "apm" added at v0.5).
182
182
  # Kiro, Copilot, and Codex do not declare install-routes; the field defaults to ["cli"]
183
183
  # on read for adapters that omit it.
184
184
  [adapter."claude-code"]
@@ -215,7 +215,7 @@ mode = "direct-file"
215
215
  target-path = ".claude/commands/"
216
216
  on-conflict = "prompt-then-preserve"
217
217
 
218
- # hook-body — scope-conditional target (RFC-0005 § hook-body at user scope).
218
+ # hook-body — scope-conditional target.
219
219
  # Forward-looking v0.3 declaration; the legacy array entry above remains the
220
220
  # pipeline-of-record until T5/T7 land.
221
221
  [adapter."claude-code".projections.hook-body]
@@ -225,7 +225,7 @@ target.user = ".claude/hooks/<name>.{sh,py}"
225
225
  on-conflict = "prompt-then-preserve"
226
226
 
227
227
  # hook-wiring — scope-conditional mode/target; user-scope `managed-key`
228
- # required (RFC-0005 § hook-wiring for Claude Code at user scope).
228
+ # required.
229
229
  [adapter."claude-code".projections.hook-wiring]
230
230
  mode.repo = "merge-json"
231
231
  mode.user = "user-merge-json"
@@ -233,7 +233,7 @@ target.repo = ".claude/settings.local.json"
233
233
  target.user = ".claude/settings.json"
234
234
  managed-key.user = "hooks"
235
235
 
236
- # Scope dimension (RFC-0004). Two roots: repo-local and user-local.
236
+ # Scope dimension. Two roots: repo-local and user-local.
237
237
  # `allowed-prefixes.<scope>` fences every write under that scope to a
238
238
  # declared prefix list — at user scope this stops a buggy projection
239
239
  # rule from resolving under `~/Documents/`. The two-prefix shape covers
@@ -243,14 +243,14 @@ managed-key.user = "hooks"
243
243
  [adapter."claude-code".scope]
244
244
  repo = "."
245
245
  user = "~"
246
- # RFC-0012: repo-scope projection lands primitives under `.claude/` (skills,
246
+ # Repo-scope projection lands primitives under `.claude/` (skills,
247
247
  # agents, commands, hook-wiring) plus `tools/hooks/` for hook bodies — the
248
248
  # legacy repo-scope hook-body target that pre-dates the scope dimension.
249
249
  allowed-prefixes.repo = [".claude/", ".agentbundle/", "tools/hooks/"]
250
250
  allowed-prefixes.user = [".claude/", ".agentbundle/"]
251
251
 
252
252
  # ---------------------------------------------------------------------------
253
- # Kiro adapter — DEPRECATED ALIAS for kiro-ide (RFC-0022 D1).
253
+ # Kiro adapter — DEPRECATED ALIAS for kiro-ide.
254
254
  #
255
255
  # `kiro` is retained as a working alias with no removal timeline so existing
256
256
  # packs declaring `allowed-adapters = ["kiro"]` keep working. The Python
@@ -286,8 +286,8 @@ on-conflict = "prompt-then-preserve"
286
286
  primitive = "command"
287
287
  mode = "dropped"
288
288
 
289
- # hook-body — scope-conditional target. User-scope lands under `~/.kiro/hooks/`
290
- # per RFC-0005 § hook-body at user scope. Forward-looking v0.3 declaration;
289
+ # hook-body — scope-conditional target. User-scope lands under `~/.kiro/hooks/`.
290
+ # Forward-looking v0.3 declaration;
291
291
  # the legacy array entry above remains authoritative until T5/T7.
292
292
  [adapter.kiro.projections.hook-body]
293
293
  mode = "direct-file"
@@ -296,9 +296,9 @@ target.user = ".kiro/hooks/<name>.{sh,py}"
296
296
  on-conflict = "prompt-then-preserve"
297
297
 
298
298
  # hook-wiring — merge into the pack-owned agent JSON. Same mode at both scopes;
299
- # the agent-file target is scope-conditional via scope-root resolution
300
- # (RFC-0005 § hook-wiring for Kiro at both scopes). The legacy
301
- # `degraded-info-log` array entry is removed (AC2).
299
+ # the agent-file target is scope-conditional via scope-root resolution.
300
+ # The legacy
301
+ # `degraded-info-log` array entry is removed.
302
302
  [adapter.kiro.projections.hook-wiring]
303
303
  mode = "merge-into-agent-json"
304
304
  target.repo = ".kiro/agents/<attach-to-agent>.json"
@@ -312,28 +312,28 @@ agent-event-vocabulary = [
312
312
  "stop",
313
313
  ]
314
314
 
315
- # Scope dimension for Kiro (RFC-0005 § hook-wiring for Kiro at both scopes).
315
+ # Scope dimension for Kiro.
316
316
  # User-scope agents live under `~/.kiro/agents/` per Kiro's documented layout
317
317
  # (https://kiro.dev/docs/cli/custom-agents/creating/); CLI infrastructure
318
318
  # shares the `.agentbundle/` prefix.
319
319
  [adapter.kiro.scope]
320
320
  repo = "."
321
321
  user = "~"
322
- # RFC-0012: Kiro projects skills/agents to `.kiro/`; hook bodies land in the
322
+ # Kiro projects skills/agents to `.kiro/`; hook bodies land in the
323
323
  # legacy `tools/hooks/` at repo scope (matching the contract's hook-body
324
324
  # array entry above).
325
325
  allowed-prefixes.repo = [".kiro/", ".agentbundle/", "tools/hooks/"]
326
326
  allowed-prefixes.user = [".kiro/", ".agentbundle/"]
327
327
 
328
328
  # ---------------------------------------------------------------------------
329
- # kiro-ide adapter — targets the Kiro VS Code-fork IDE (RFC-0022).
329
+ # kiro-ide adapter — targets the Kiro VS Code-fork IDE.
330
330
  #
331
331
  # Projects agents as `.md` (gray-matter YAML frontmatter + body); the IDE
332
332
  # reads `.kiro/agents/<name>.md` via its gray-matter loader. hook-wiring is
333
- # DROPPED — the IDE loader silently drops any agent carrying a `hooks` key
334
- # (RFC-0022 E2). kiro-ide-hook is ACTIVATED with the flat path confirmed by
333
+ # DROPPED — the IDE loader silently drops any agent carrying a `hooks` key.
334
+ # `kiro-ide-hook` is ACTIVATED with the flat path confirmed by
335
335
  # Q6 probe (no-recursion, yes-extension-filter, 2026-06-01, Kiro 0.12.224):
336
- # `.kiro/hooks/<pack>--<name>.kiro.hook`. RFC-0022 assumed yes-recursion;
336
+ # `.kiro/hooks/<pack>--<name>.kiro.hook`. The split assumed yes-recursion;
337
337
  # T1 carries the corrected no-recursion flat path (no T-E1b fires).
338
338
  # ---------------------------------------------------------------------------
339
339
 
@@ -348,7 +348,7 @@ primitive = "agent"
348
348
  mode = "direct-file"
349
349
  target-path = ".kiro/agents/"
350
350
  frontmatter-mapping = "kiro-ide-agent-frontmatter-v0.9"
351
- # Skill discovery (RFC-0022 E4): IDE custom agents / subagents do NOT inherit
351
+ # Skill discovery: IDE custom agents / subagents do NOT inherit
352
352
  # the default agent's `.kiro/skills` auto-discovery either (kiro #6887/#6888,
353
353
  # #4993). Inject the same fixed skill-resources glob as kiro-cli; the IDE
354
354
  # agent `resources` field is documented and `skill://`-aware, so it does not
@@ -371,7 +371,7 @@ mode = "dropped"
371
371
  primitive = "command"
372
372
  mode = "dropped"
373
373
 
374
- # hook-body — scope-conditional target (RFC-0005 § hook-body at user scope).
374
+ # hook-body — scope-conditional target.
375
375
  [adapter.kiro-ide.projections.hook-body]
376
376
  mode = "direct-file"
377
377
  target.repo = "tools/hooks/<name>.{sh,py}"
@@ -406,7 +406,7 @@ allowed-prefixes.repo = [".kiro/", ".agentbundle/", "tools/hooks/"]
406
406
  allowed-prefixes.user = [".kiro/", ".agentbundle/"]
407
407
 
408
408
  # ---------------------------------------------------------------------------
409
- # kiro-cli adapter — targets the `kiro` terminal binary (RFC-0022).
409
+ # kiro-cli adapter — targets the `kiro` terminal binary.
410
410
  #
411
411
  # Projects agents as `.json` with CLI short-name tool tokens. Retains
412
412
  # `hook-wiring` via `merge-into-agent-json`. `kiro-ide-hook` is dropped —
@@ -424,7 +424,7 @@ primitive = "agent"
424
424
  mode = "direct-file"
425
425
  target-path = ".kiro/agents/"
426
426
  frontmatter-mapping = "kiro-cli-agent-frontmatter-v1.0"
427
- # Skill discovery (RFC-0022 E4): Kiro custom agents do NOT inherit the default
427
+ # Skill discovery: Kiro custom agents do NOT inherit the default
428
428
  # agent's auto-discovery of `.kiro/skills` (kiro #6887/#6888), so a headless
429
429
  # `--agent` run sees zero skills unless the agent declares them. Inject this
430
430
  # fixed skill-resources glob (both install scopes) into every projected agent.
@@ -436,7 +436,7 @@ on-conflict = "prompt-then-preserve"
436
436
 
437
437
  [[adapter.kiro-cli.projection]]
438
438
  # Legacy repo-scope entry — the pipeline-of-record for repo-scope hook-body
439
- # projection (mirrors the `kiro` adapter's RFC-0005 hybrid). The table form
439
+ # projection (mirrors the `kiro` adapter's v0.3 hybrid). The table form
440
440
  # below is the scope-conditional declaration for the user-scope pipeline;
441
441
  # both coexist intentionally. `_iter_primitives` deduplicates via set union.
442
442
  primitive = "hook-body"
@@ -448,7 +448,7 @@ on-conflict = "prompt-then-preserve"
448
448
  primitive = "command"
449
449
  mode = "dropped"
450
450
 
451
- # hook-body — scope-conditional target (RFC-0005 § hook-body at user scope).
451
+ # hook-body — scope-conditional target.
452
452
  [adapter.kiro-cli.projections.hook-body]
453
453
  mode = "direct-file"
454
454
  target.repo = "tools/hooks/<name>.{sh,py}"
@@ -485,15 +485,15 @@ allowed-prefixes.user = [".kiro/", ".agentbundle/"]
485
485
  # Copilot adapter — 5 projections (one per primitive)
486
486
  # ---------------------------------------------------------------------------
487
487
 
488
- # `skill` projects as first-class Copilot Agent Skills (docs/specs/copilot-skills-and-web,
489
- # RFC-0024 § Errata E2): `direct-directory` passthrough of our canonical
488
+ # `skill` projects as first-class Copilot Agent Skills:
489
+ # `direct-directory` passthrough of our canonical
490
490
  # `.apm/skills/<name>/SKILL.md` to `.github/skills/<name>/SKILL.md` (repo) and
491
491
  # `~/.copilot/skills/<name>/SKILL.md` (user, via the install rewrite). Copilot
492
492
  # accepts our Claude SKILL.md verbatim. Was `instruction-file`→`.github/instructions/`.
493
493
  [[adapter.copilot.projection]]
494
494
  primitive = "skill"
495
495
  mode = "direct-directory"
496
- # RFC-0052 / ADR-0040: cohort skill home. Copilot reads `.agents/skills/`
496
+ # Cohort skill home. Copilot reads `.agents/skills/`
497
497
  # (project) and `~/.agents/skills/` (personal); routing skills there lets the
498
498
  # whole cohort (codex, cursor, gemini, copilot) share one co-owned copy.
499
499
  target-path = ".agents/skills/"
@@ -522,10 +522,10 @@ on-conflict = "prompt-then-preserve"
522
522
  primitive = "command"
523
523
  mode = "dropped"
524
524
 
525
- # Scope dimension for Copilot (RFC-0024 / ADR-0013 / docs/specs/copilot-full-parity,
526
- # skill surface per docs/specs/copilot-skills-and-web). Copilot is a full-parity,
525
+ # Scope dimension for Copilot (v0.10 full parity, plus the v0.12 skill
526
+ # surface). Copilot is a full-parity,
527
527
  # user-scope-capable adapter: the app + CLI discover skills/agents/hooks from
528
- # `.github/` (repo) and `~/.copilot/` (user). The repo-only restriction RFC-0012
528
+ # `.github/` (repo) and `~/.copilot/` (user). The repo-only restriction v0.7
529
529
  # recorded is superseded-in-part. `skill` projects as a `direct-directory`
530
530
  # `SKILL.md` tree; its user target (`~/.copilot/skills/<name>/SKILL.md`) is
531
531
  # produced by the install handler's copilot user-scope prefix rewrite
@@ -534,10 +534,10 @@ mode = "dropped"
534
534
  [adapter.copilot.scope]
535
535
  repo = "."
536
536
  user = "~"
537
- # RFC-0024 + copilot-skills-and-web: repo-scope skills at `.github/skills/`,
537
+ # Repo-scope skills at `.github/skills/`,
538
538
  # agents at `.github/agents/`, hook wiring + bodies at `.github/hooks/`.
539
- # RFC-0052: skills route to the shared `.agents/skills/` home; agents + hooks
540
- # stay native under `.github/` (ADR-0040 moves only the skill primitive).
539
+ # Skills route to the shared `.agents/skills/` home; agents + hooks
540
+ # stay native under `.github/` — only the skill primitive moves.
541
541
  allowed-prefixes.repo = [".agents/skills/", ".github/skills/", ".github/agents/", ".github/hooks/"]
542
542
  # User-scope home is `~/.copilot/` for agents/hooks (the prefix the install
543
543
  # rewrite produces) and `~/.agents/skills/` for skills (scope-agnostic, no
@@ -579,30 +579,29 @@ on-conflict = "merge-managed-key-only"
579
579
  primitive = "command"
580
580
  mode = "dropped"
581
581
 
582
- # Scope dimension for Codex (RFC-0011 / docs/specs/pack-allowed-adapters).
582
+ # Scope dimension for Codex.
583
583
  # User-scope skills live under `~/.agents/skills/` per the codex
584
584
  # `direct-directory` projection's `.agents/skills/` target-path above;
585
585
  # CLI infrastructure shares the `.agentbundle/` prefix.
586
586
  [adapter.codex.scope]
587
587
  repo = "."
588
588
  user = "~"
589
- # RFC-0012: codex projects skills to `.agents/skills/`; hook bodies land in
589
+ # Codex projects skills to `.agents/skills/`; hook bodies land in
590
590
  # the legacy `tools/hooks/` (matching codex's hook-body array entry).
591
591
  allowed-prefixes.repo = [".agents/skills/", ".codex/", ".agentbundle/", "tools/hooks/"]
592
592
  allowed-prefixes.user = [".agents/skills/", ".codex/", ".agentbundle/"]
593
593
 
594
594
  # ---------------------------------------------------------------------------
595
- # Cursor adapter — full-parity native adapter (RFC-0026 / ADR-0015 /
596
- # docs/specs/cursor-full-parity, v0.11).
595
+ # Cursor adapter — full-parity native adapter (v0.11).
597
596
  #
598
597
  # Projects all five catalogue primitives to Cursor's native `.cursor/*`
599
598
  # discovery paths at both repo and user scope. Cursor's CLI and IDE share one
600
- # `.cursor/` layout (no RFC-0022-style split). No new projection mode and no
599
+ # `.cursor/` layout (no kiro-style split). No new projection mode and no
601
600
  # adapter.schema.json change: every primitive reuses an already-enumerated
602
601
  # mode. The agent uses `direct-file` + a frontmatter mapping (the kiro-ide
603
602
  # `.md` shape); because Cursor subagents have no per-agent tool allowlist,
604
603
  # cursor.py drops the source `tools` and derives a `readonly` flag for
605
- # non-mutating agents (documented degradation, the ADR-0013 Copilot shape).
604
+ # non-mutating agents (documented degradation, the Copilot shape).
606
605
  # hook-wiring is `merge-json` to an aggregated `.cursor/hooks.json`; cursor.py's
607
606
  # merge helper remaps source events via `hook-event-map` and adds a `version`
608
607
  # key. `command` is first-class (Cursor is the second adapter after claude-code
@@ -617,7 +616,7 @@ allowed-prefixes.user = [".agents/skills/", ".codex/", ".agentbundle/"]
617
616
  [[adapter.cursor.projection]]
618
617
  primitive = "skill"
619
618
  mode = "direct-directory"
620
- # RFC-0052 / ADR-0040: cohort skill home. Cursor reads `.agents/skills/` and
619
+ # Cohort skill home. Cursor reads `.agents/skills/` and
621
620
  # `~/.agents/skills/` alongside `.cursor/skills/`; route skills there to share
622
621
  # one co-owned copy across the cohort.
623
622
  target-path = ".agents/skills/"
@@ -642,15 +641,15 @@ mode = "merge-json"
642
641
  target-path = ".cursor/hooks.json"
643
642
  managed-key = "hooks"
644
643
  on-conflict = "merge-managed-key-only"
645
- # Hook-event map (RFC-0026 decision 4). Our hook-wiring source uses Claude-
644
+ # Hook-event map. Our hook-wiring source uses Claude-
646
645
  # native PascalCase event names (e.g. `[[hooks.SessionStart]]`); Cursor's
647
646
  # hooks.json uses camelCase event keys. cursor.py's merge helper reads this
648
647
  # table to translate each source event; a source event with no entry here is
649
648
  # dropped with a build-time log line (fail-open, the no-silent-caps rule —
650
649
  # deliberately unlike copilot-hooks-json's fail-closed map). The map lives in
651
- # the contract, not the adapter code. (Erratum vs RFC-0026: the RFC spelled the
652
- # source vocabulary `agentSpawn`/…; the shipped source is Claude PascalCase, so
653
- # the map keys on PascalCase — target events unchanged. See the spec Changelog.)
650
+ # the contract, not the adapter code. (The original design spelled the source
651
+ # vocabulary `agentSpawn`/…; the shipped source is Claude PascalCase, so the
652
+ # map keys on PascalCase — target events unchanged.)
654
653
  hook-event-map = { SessionStart = "sessionStart", UserPromptSubmit = "beforeSubmitPrompt", PreToolUse = "preToolUse", PostToolUse = "postToolUse", Stop = "stop" }
655
654
 
656
655
  [[adapter.cursor.projection]]
@@ -666,7 +665,7 @@ on-conflict = "prompt-then-preserve"
666
665
  [adapter.cursor.projections.kiro-ide-hook]
667
666
  mode = "dropped"
668
667
 
669
- # Scope dimension for Cursor (RFC-0026 / ADR-0015). Cursor's `.cursor/` prefix
668
+ # Scope dimension for Cursor. Cursor's `.cursor/` prefix
670
669
  # is identical at repo and user scope (the claude-code/codex shape), so the
671
670
  # divergent user-scope home is produced by the generic user-root resolution,
672
671
  # not a Cursor-specific prefix rewrite. `.agentbundle/` carries the install
@@ -674,14 +673,13 @@ mode = "dropped"
674
673
  [adapter.cursor.scope]
675
674
  repo = "."
676
675
  user = "~"
677
- # RFC-0052: skills route to the shared `.agents/skills/` home (both scopes);
678
- # agents/hooks stay under `.cursor/` (ADR-0040 moves only the skill primitive).
676
+ # Skills route to the shared `.agents/skills/` home (both scopes);
677
+ # agents/hooks stay under `.cursor/` (moves only the skill primitive).
679
678
  allowed-prefixes.repo = [".agents/skills/", ".cursor/", ".agentbundle/"]
680
679
  allowed-prefixes.user = [".agents/skills/", ".cursor/", ".agentbundle/"]
681
680
 
682
681
  # ---------------------------------------------------------------------------
683
- # Gemini adapter — full-parity native adapter (RFC-0027 / ADR-0016 /
684
- # docs/specs/gemini-full-parity, v0.13).
682
+ # Gemini adapter — full-parity native adapter (v0.13).
685
683
  #
686
684
  # Projects all five catalogue primitives to Gemini CLI's native `.gemini/*`
687
685
  # discovery paths at both repo and user scope. Unlike Cursor, gemini KEEPS and
@@ -711,7 +709,7 @@ allowed-prefixes.user = [".agents/skills/", ".cursor/", ".agentbundle/"]
711
709
  [[adapter.gemini.projection]]
712
710
  primitive = "skill"
713
711
  mode = "direct-directory"
714
- # RFC-0052 / ADR-0040: cohort skill home. Gemini CLI reads `.agents/skills/`
712
+ # Cohort skill home. Gemini CLI reads `.agents/skills/`
715
713
  # and `~/.agents/skills/`, and its docs now make the alias precedence-winning
716
714
  # over `.gemini/skills/`; route skills there to share one co-owned copy.
717
715
  target-path = ".agents/skills/"
@@ -736,7 +734,7 @@ mode = "merge-json"
736
734
  target-path = ".gemini/settings.json"
737
735
  managed-key = "hooks"
738
736
  on-conflict = "merge-managed-key-only"
739
- # Hook-event map (RFC-0027 decision 6). Our hook-wiring source uses Claude-native
737
+ # Hook-event map. Our hook-wiring source uses Claude-native
740
738
  # PascalCase event names (e.g. `[[hooks.SessionStart]]`); Gemini's settings.json
741
739
  # uses its own event vocabulary. gemini.py's settings-merge helper reads this table
742
740
  # to translate each source event; a source event with no entry here **fails the
@@ -744,7 +742,7 @@ on-conflict = "merge-managed-key-only"
744
742
  # cursor's fail-open drop-with-log). The map lives in the contract, not the adapter
745
743
  # code.
746
744
  hook-event-map = { SessionStart = "SessionStart", SessionEnd = "SessionEnd", UserPromptSubmit = "BeforeAgent", PreToolUse = "BeforeTool", PostToolUse = "AfterTool", Stop = "AfterAgent" }
747
- # Static `context.fileName` bridge (RFC-0027 decision 5). gemini.py's settings-merge
745
+ # Static `context.fileName` bridge. gemini.py's settings-merge
748
746
  # helper emits `context = { fileName = <this list> }` into the same `.gemini/settings.json`
749
747
  # so Gemini CLI reads the canonical `AGENTS.md` (and `GEMINI.md` if present). Data
750
748
  # lives in the contract, not a literal in code; written in the single hook-wiring
@@ -763,7 +761,7 @@ on-conflict = "prompt-then-preserve"
763
761
  [adapter.gemini.projections.kiro-ide-hook]
764
762
  mode = "dropped"
765
763
 
766
- # Scope dimension for Gemini (RFC-0027 / ADR-0016). Gemini's `.gemini/` prefix is
764
+ # Scope dimension for Gemini. Gemini's `.gemini/` prefix is
767
765
  # identical at repo and user scope (the claude-code/cursor shape), so the divergent
768
766
  # user-scope home is produced by the generic user-root resolution, not a
769
767
  # gemini-specific prefix rewrite. Every projected target (skills, agents, commands,
@@ -773,8 +771,8 @@ mode = "dropped"
773
771
  [adapter.gemini.scope]
774
772
  repo = "."
775
773
  user = "~"
776
- # RFC-0052: skills route to the shared `.agents/skills/` home (both scopes);
777
- # agents/hooks stay under `.gemini/` (ADR-0040 moves only the skill primitive).
774
+ # Skills route to the shared `.agents/skills/` home (both scopes);
775
+ # agents/hooks stay under `.gemini/` (moves only the skill primitive).
778
776
  allowed-prefixes.repo = [".agents/skills/", ".gemini/", ".agentbundle/"]
779
777
  allowed-prefixes.user = [".agents/skills/", ".gemini/", ".agentbundle/"]
780
778
 
@@ -811,7 +809,7 @@ rename = "model"
811
809
  # rejecting the agent for an unknown model.
812
810
  values = { opus = "claude-opus-4.6", sonnet = "claude-sonnet-4.5", haiku = "claude-haiku-4.5" }
813
811
 
814
- # kiro-cli agent frontmatter v1.0 (RFC-0022): rewrite rules from Claude Code
812
+ # kiro-cli agent frontmatter v1.0: rewrite rules from Claude Code
815
813
  # agent markdown to Kiro CLI JSON. Tools map to CLI short-names (not IDE ids).
816
814
  # The `kiro` CLI matches agents' `tools` entries by short name; the IDE uses
817
815
  # ids — hence the separate table rather than reusing kiro-ide-agent-frontmatter-v0.9.
@@ -831,8 +829,7 @@ values = { Read = "read", Grep = "grep", Glob = "glob", Edit = "write", Write =
831
829
  rename = "model"
832
830
  values = { opus = "claude-opus-4.6", sonnet = "claude-sonnet-4.5", haiku = "claude-haiku-4.5" }
833
831
 
834
- # Codex agent frontmatter v0.8 (docs/specs/dropped-primitives-coverage,
835
- # amended by docs/specs/codex-agent-config-projection):
832
+ # Codex agent frontmatter v0.8:
836
833
  # rewrite rules from claude-code-style markdown agent (YAML frontmatter with
837
834
  # `name`, `description`, optionally `tools`, `model`) to codex's TOML agent
838
835
  # shape. `model` maps Claude-style aliases to OpenAI model IDs. `tools`
@@ -861,7 +858,7 @@ rename = "model"
861
858
  values = { opus = "gpt-5.5", sonnet = "gpt-5.5", haiku = "gpt-5.4-mini" }
862
859
  related-values = { model_reasoning_effort = { opus = "xhigh", sonnet = "medium", haiku = "medium" } }
863
860
 
864
- # Copilot agent frontmatter v0.10 (RFC-0024 / docs/specs/copilot-full-parity):
861
+ # Copilot agent frontmatter v0.10:
865
862
  # rewrite rules from claude-code-style markdown agent (YAML frontmatter with
866
863
  # `name`, `description`, optionally `tools`, `model`) to Copilot's `.agent.md`
867
864
  # shape. `name` / `description` pass through (identity renames). `tools` is
@@ -878,7 +875,7 @@ rename = "name"
878
875
  [frontmatter-mapping."copilot-agent-frontmatter-v0.10".description]
879
876
  rename = "description"
880
877
 
881
- # Cursor agent frontmatter v0.11 (RFC-0026 / docs/specs/cursor-full-parity):
878
+ # Cursor agent frontmatter v0.11:
882
879
  # rewrite rules from claude-code-style markdown agent (YAML frontmatter with
883
880
  # `name`, `description`, optionally `tools`, `model`) to Cursor's subagent `.md`
884
881
  # shape. `name` / `description` / `model` pass through (identity renames; `model`
@@ -887,7 +884,7 @@ rename = "description"
887
884
  # have no per-agent tool allowlist, so `cursor.py` drops the source `tools` and
888
885
  # derives a `readonly` flag for non-mutating agents (an agent whose declared
889
886
  # tool set contains none of Edit/Write/MultiEdit/NotebookEdit). `is_background`
890
- # is not emitted. This is the documented-degradation shape ADR-0013 accepted for
887
+ # is not emitted. This is the documented-degradation shape accepted for
891
888
  # Copilot's tool handling.
892
889
  [frontmatter-mapping."cursor-agent-frontmatter-v0.11"]
893
890
 
@@ -900,7 +897,7 @@ rename = "description"
900
897
  [frontmatter-mapping."cursor-agent-frontmatter-v0.11".model]
901
898
  rename = "model"
902
899
 
903
- # Gemini agent frontmatter (RFC-0027 / docs/specs/gemini-full-parity, v0.13):
900
+ # Gemini agent frontmatter (v0.13):
904
901
  # rewrite rules from claude-code-style markdown agent (YAML frontmatter with
905
902
  # `name`, `description`, optionally `tools`, `model`) to Gemini CLI's subagent `.md`
906
903
  # shape. `name` / `description` pass through (identity renames). Unlike Cursor,
@@ -2,7 +2,7 @@
2
2
  "files": {
3
3
  "guides/_shared/reference/catalogue-authoring-standards.md": "4fe9ce077af089ab52840d1b3de600c09ca23eace114c1e28c4685a3b7289520",
4
4
  "guides/_shared/reference/catalogue-ci-contract.md": "fae793ab47989b6dd3c731afcb0b4cda21c7d08bbe7fa40fca6d3abb3d158141",
5
- "packs/AGENTS.md": "b088a790f274d270fbd51388041e598a24ca783dcec3f1688419877a9df509d2",
5
+ "packs/AGENTS.md": "4d9e94478d3c941d4a08c8827ed9d30edaa07207854eac020b9fc3014f5b3237",
6
6
  "packs/README.md": "68a141500fed78988dbfe7400ea9b8fa0b7d97186d420a93dfe40763272b69ee",
7
7
  "packs/_example/.apm/skills/example-skill/SKILL.md": "33be8cbf4b2c014a5a63e788b7d0b350ad8061c6c4b2579369a3e984135bf9f1",
8
8
  "packs/_example/.claude-plugin/plugin.json": "d38c8456640d5e2f9296361f7e3e675e368ddd3eb22a6245267560f460155f41",
@@ -143,6 +143,6 @@ Stubs in `plan.md` tasks must be `raise NotImplementedError # STUB: ACn` — no
143
143
 
144
144
  ## Shipped pack content carries no internal-governance citations
145
145
 
146
- When authoring anything under `.apm/**`, never cite this catalogue's own governance:
147
- RFC numbers, ADR numbers, spec/plan citations, or internal doc paths. Keep the rule; drop the
148
- citation. See `packs/AGENTS.local.md` for the full enforcement detail.
146
+ Anywhere under `packs/` — `.apm/**`, `pack.toml`, `README`/`JOURNEY`/`DESIGN`, `seeds/**` —
147
+ never cite this catalogue's own governance: `RFC-0NNN`, `ADR-0NNN`, spec/plan or AC citations,
148
+ internal doc paths. Keep the rule, drop the citation. Detail: `packs/AGENTS.local.md`.