@event4u/agent-config 5.4.0 → 5.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/.agent-src/commands/knowledge/cross-repo.md +71 -0
  2. package/.agent-src/commands/knowledge.md +2 -0
  3. package/.agent-src/commands/skill/preview.md +67 -0
  4. package/.agent-src/commands/skill.md +48 -0
  5. package/.agent-src/commands/skills/discover.md +76 -0
  6. package/.agent-src/commands/skills.md +56 -0
  7. package/.agent-src/commands/video/from-song.md +317 -0
  8. package/.agent-src/commands/video.md +19 -9
  9. package/.agent-src/rules/linked-projects-onboarding-gate.md +1 -1
  10. package/.agent-src/skills/song-to-script/SKILL.md +193 -0
  11. package/.claude-plugin/marketplace.json +9 -2
  12. package/CHANGELOG.md +49 -0
  13. package/CONTRIBUTING.md +6 -0
  14. package/README.md +3 -3
  15. package/dist/cli/registry.js +1 -0
  16. package/dist/cli/registry.js.map +1 -1
  17. package/dist/discovery/deprecation-report.md +1 -1
  18. package/dist/discovery/discovery-manifest.json +171 -17
  19. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  20. package/dist/discovery/discovery-manifest.summary.md +4 -4
  21. package/dist/discovery/orphan-report.md +1 -1
  22. package/dist/discovery/packs.json +17 -10
  23. package/dist/discovery/trust-report.md +3 -3
  24. package/dist/discovery/workspaces.json +13 -6
  25. package/dist/mcp/registry-manifest.json +2 -2
  26. package/docs/architecture.md +2 -2
  27. package/docs/contracts/command-clusters.md +4 -1
  28. package/docs/contracts/cross-repo-retrieval.md +64 -0
  29. package/docs/contracts/skill-discovery.md +80 -0
  30. package/docs/contracts/skill-dry-run.md +47 -0
  31. package/docs/decisions/ADR-032-linked-projects-scope.md +7 -3
  32. package/docs/getting-started.md +1 -1
  33. package/docs/guides/cross-repo-linked-projects.md +7 -0
  34. package/docs/guides/cross-repo-retrieval.md +61 -0
  35. package/docs/guides/skill-discovery.md +71 -0
  36. package/docs/guides/skill-preview.md +71 -0
  37. package/package.json +1 -1
  38. package/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  39. package/scripts/_dispatch.bash +10 -0
  40. package/scripts/_lib/__pycache__/__init__.cpython-312.pyc +0 -0
  41. package/scripts/_lib/__pycache__/agent_src.cpython-312.pyc +0 -0
  42. package/scripts/ai-video/lib/probe-audio.sh +181 -0
  43. package/scripts/cross_repo_retrieve.py +172 -0
  44. package/scripts/inventory_meta_layers.py +288 -0
  45. package/scripts/linked_projects_list.py +91 -0
  46. package/scripts/memory_lookup.py +53 -2
  47. package/scripts/skill_discovery.py +254 -0
  48. package/scripts/skill_linter.py +8 -4
  49. package/scripts/skill_preview.py +179 -0
@@ -1586,7 +1586,7 @@
1586
1586
  },
1587
1587
  {
1588
1588
  "category": "command",
1589
- "checksum": "sha256:c2b679ded04056a7199cd36996024fe315064df9ec23ca7d69fc39deca19e4a9",
1589
+ "checksum": "sha256:ff47e49e1555b8fbd297fc8d8aa4e92837f1355fc96993da885115beae9ad8f8",
1590
1590
  "install": {
1591
1591
  "default": true,
1592
1592
  "removable": false
@@ -1606,6 +1606,28 @@
1606
1606
  "agent-config-maintainer"
1607
1607
  ]
1608
1608
  },
1609
+ {
1610
+ "category": "command",
1611
+ "checksum": "sha256:48dbe18aa96ff7cd22c71e35bbc3b11fe474a0f524f4ee39a1485aeee7198e1f",
1612
+ "install": {
1613
+ "default": true,
1614
+ "removable": false
1615
+ },
1616
+ "lifecycle": "active",
1617
+ "name": "knowledge:cross-repo",
1618
+ "packs": [
1619
+ "meta"
1620
+ ],
1621
+ "path": "packages/core/.agent-src.uncondensed/commands/knowledge/cross-repo.md",
1622
+ "trust": {
1623
+ "confidence": "high",
1624
+ "human_review_required": false,
1625
+ "level": "core"
1626
+ },
1627
+ "workspaces": [
1628
+ "agent-config-maintainer"
1629
+ ]
1630
+ },
1609
1631
  {
1610
1632
  "category": "command",
1611
1633
  "checksum": "sha256:245b6e0e15cccc2eff64876b41461ac2f7cdf671e165b8d05ca9a36e7fa9e198",
@@ -2640,6 +2662,94 @@
2640
2662
  "agent-config-maintainer"
2641
2663
  ]
2642
2664
  },
2665
+ {
2666
+ "category": "command",
2667
+ "checksum": "sha256:636b5c749457be6aaf06addee61d7d67ac6079d4b444f6d3eccf7332b1b0c6a2",
2668
+ "install": {
2669
+ "default": true,
2670
+ "removable": false
2671
+ },
2672
+ "lifecycle": "active",
2673
+ "name": "skill",
2674
+ "packs": [
2675
+ "meta"
2676
+ ],
2677
+ "path": "packages/core/.agent-src.uncondensed/commands/skill.md",
2678
+ "trust": {
2679
+ "confidence": "high",
2680
+ "human_review_required": false,
2681
+ "level": "core"
2682
+ },
2683
+ "workspaces": [
2684
+ "agent-config-maintainer"
2685
+ ]
2686
+ },
2687
+ {
2688
+ "category": "command",
2689
+ "checksum": "sha256:40626ab81f60dcade69e5073cb1d95adacf8bad790ca6741512c6f4ea8425019",
2690
+ "install": {
2691
+ "default": true,
2692
+ "removable": false
2693
+ },
2694
+ "lifecycle": "active",
2695
+ "name": "skill:preview",
2696
+ "packs": [
2697
+ "meta"
2698
+ ],
2699
+ "path": "packages/core/.agent-src.uncondensed/commands/skill/preview.md",
2700
+ "trust": {
2701
+ "confidence": "high",
2702
+ "human_review_required": false,
2703
+ "level": "core"
2704
+ },
2705
+ "workspaces": [
2706
+ "agent-config-maintainer"
2707
+ ]
2708
+ },
2709
+ {
2710
+ "category": "command",
2711
+ "checksum": "sha256:6d594b6410e3fe19b70ece3092256fa3b7ee8178617a931d1acf3a4ca1dc51c4",
2712
+ "install": {
2713
+ "default": true,
2714
+ "removable": false
2715
+ },
2716
+ "lifecycle": "active",
2717
+ "name": "skills",
2718
+ "packs": [
2719
+ "meta"
2720
+ ],
2721
+ "path": "packages/core/.agent-src.uncondensed/commands/skills.md",
2722
+ "trust": {
2723
+ "confidence": "high",
2724
+ "human_review_required": false,
2725
+ "level": "core"
2726
+ },
2727
+ "workspaces": [
2728
+ "agent-config-maintainer"
2729
+ ]
2730
+ },
2731
+ {
2732
+ "category": "command",
2733
+ "checksum": "sha256:69076a5661075eee015fb52d22203fe21863c515bb5c7f4f21808b2581ef379c",
2734
+ "install": {
2735
+ "default": true,
2736
+ "removable": false
2737
+ },
2738
+ "lifecycle": "active",
2739
+ "name": "skills:discover",
2740
+ "packs": [
2741
+ "meta"
2742
+ ],
2743
+ "path": "packages/core/.agent-src.uncondensed/commands/skills/discover.md",
2744
+ "trust": {
2745
+ "confidence": "high",
2746
+ "human_review_required": false,
2747
+ "level": "core"
2748
+ },
2749
+ "workspaces": [
2750
+ "agent-config-maintainer"
2751
+ ]
2752
+ },
2643
2753
  {
2644
2754
  "category": "command",
2645
2755
  "checksum": "sha256:4eb4c108c880a41706f61afe66f5682a772dccb4f41310b306fc41bd298c3c73",
@@ -2840,7 +2950,7 @@
2840
2950
  },
2841
2951
  {
2842
2952
  "category": "command",
2843
- "checksum": "sha256:1a261b560ee5960ac92cd00a66ab1b22c9efd691e957f70bbd82a8f8e255a641",
2953
+ "checksum": "sha256:c4aed68f1fcdebd26ab8022d42932b4394501babd4451b2d01d62ff07a045067",
2844
2954
  "install": {
2845
2955
  "default": true,
2846
2956
  "removable": false
@@ -2882,6 +2992,28 @@
2882
2992
  "agent-config-maintainer"
2883
2993
  ]
2884
2994
  },
2995
+ {
2996
+ "category": "command",
2997
+ "checksum": "sha256:dac28649cc18c4d61a10be2a3cefaa839403727c7cffca83ada228e970baf562",
2998
+ "install": {
2999
+ "default": false,
3000
+ "removable": true
3001
+ },
3002
+ "lifecycle": "experimental",
3003
+ "name": "video:from-song",
3004
+ "packs": [
3005
+ "meta"
3006
+ ],
3007
+ "path": "packages/core/.agent-src.uncondensed/commands/video/from-song.md",
3008
+ "trust": {
3009
+ "confidence": "high",
3010
+ "human_review_required": false,
3011
+ "level": "experimental"
3012
+ },
3013
+ "workspaces": [
3014
+ "agent-config-maintainer"
3015
+ ]
3016
+ },
2885
3017
  {
2886
3018
  "category": "command",
2887
3019
  "checksum": "sha256:4487ac71beea3200af2e922fc2368f11e2cb77ed39084484417d71ffa72dfd45",
@@ -3644,7 +3776,7 @@
3644
3776
  },
3645
3777
  {
3646
3778
  "category": "rule",
3647
- "checksum": "sha256:a118756c8f27c6ac6208f7daa7a8f268327a3a7a182321e72b307ef9895b1602",
3779
+ "checksum": "sha256:6d96f7999e37d12fd1458d8e3a1d9fbf98e2713df5033fff99fb044fb17fceb8",
3648
3780
  "install": {
3649
3781
  "default": true,
3650
3782
  "removable": true
@@ -7454,6 +7586,28 @@
7454
7586
  "small-business"
7455
7587
  ]
7456
7588
  },
7589
+ {
7590
+ "category": "skill",
7591
+ "checksum": "sha256:50b3da1d289905ec799969e527748e15fc65a3cdc8bb647abf6dd64c8114bc85",
7592
+ "install": {
7593
+ "default": false,
7594
+ "removable": true
7595
+ },
7596
+ "lifecycle": "experimental",
7597
+ "name": "song-to-script",
7598
+ "packs": [
7599
+ "ai-video"
7600
+ ],
7601
+ "path": "packages/pack-ai-video/.agent-src.uncondensed/skills/song-to-script/SKILL.md",
7602
+ "trust": {
7603
+ "confidence": "high",
7604
+ "human_review_required": false,
7605
+ "level": "experimental"
7606
+ },
7607
+ "workspaces": [
7608
+ "small-business"
7609
+ ]
7610
+ },
7457
7611
  {
7458
7612
  "category": "skill",
7459
7613
  "checksum": "sha256:7a746efd8d2eeef3f543317a1990c556a3ef2da74709a7a4aa8c1154458a1124",
@@ -9452,7 +9606,7 @@
9452
9606
  ]
9453
9607
  }
9454
9608
  ],
9455
- "checksum": "sha256:9fefaad4a6276325abcfc38b4b92e823973bba39efa92db3e0f6e262a1395cdb",
9609
+ "checksum": "sha256:179774d9f11641c6a2709286fb24d3ff708743bf6e58c697f8987c9fbcab31ae",
9456
9610
  "documented_unassigned": [
9457
9611
  {
9458
9612
  "category": "template",
@@ -9565,7 +9719,7 @@
9565
9719
  "reason": "scaffold for new SKILL.md authoring"
9566
9720
  }
9567
9721
  ],
9568
- "generated_at": "2026-05-30T13:53:39Z",
9722
+ "generated_at": "2026-05-30T23:34:47Z",
9569
9723
  "packs": [
9570
9724
  {
9571
9725
  "artefact_count": 85,
@@ -9952,7 +10106,7 @@
9952
10106
  ]
9953
10107
  },
9954
10108
  {
9955
- "artefact_count": 6,
10109
+ "artefact_count": 7,
9956
10110
  "description": "AI video pipeline.",
9957
10111
  "human_review_required": 0,
9958
10112
  "id": "ai-video",
@@ -9961,7 +10115,7 @@
9961
10115
  "trust_summary": {
9962
10116
  "advisory": 0,
9963
10117
  "core": 0,
9964
- "experimental": 6,
10118
+ "experimental": 7,
9965
10119
  "professional": 0,
9966
10120
  "restricted": 0
9967
10121
  },
@@ -9970,7 +10124,7 @@
9970
10124
  ]
9971
10125
  },
9972
10126
  {
9973
- "artefact_count": 252,
10127
+ "artefact_count": 258,
9974
10128
  "description": "Artefacts that maintain this package (agent-config itself).",
9975
10129
  "human_review_required": 0,
9976
10130
  "id": "meta",
@@ -9978,8 +10132,8 @@
9978
10132
  "trust_level_default": "core",
9979
10133
  "trust_summary": {
9980
10134
  "advisory": 0,
9981
- "core": 252,
9982
- "experimental": 0,
10135
+ "core": 257,
10136
+ "experimental": 1,
9983
10137
  "professional": 0,
9984
10138
  "restricted": 0
9985
10139
  },
@@ -9991,26 +10145,26 @@
9991
10145
  "scanner_version": "ca7acd2ec7af",
9992
10146
  "stats": {
9993
10147
  "by_category": {
9994
- "command": 135,
10148
+ "command": 141,
9995
10149
  "rule": 78,
9996
- "skill": 219,
10150
+ "skill": 220,
9997
10151
  "template": 1
9998
10152
  },
9999
10153
  "by_lifecycle": {
10000
- "active": 424,
10154
+ "active": 429,
10001
10155
  "archived": 0,
10002
10156
  "deprecated": 0,
10003
- "experimental": 9
10157
+ "experimental": 11
10004
10158
  },
10005
10159
  "by_trust_level": {
10006
10160
  "advisory": 2,
10007
- "core": 345,
10008
- "experimental": 7,
10161
+ "core": 350,
10162
+ "experimental": 9,
10009
10163
  "professional": 79,
10010
10164
  "restricted": 0
10011
10165
  },
10012
10166
  "documented_unassigned_count": 22,
10013
- "total_artefacts": 433,
10167
+ "total_artefacts": 440,
10014
10168
  "unassigned_count": 0
10015
10169
  },
10016
10170
  "unassigned": [],
@@ -1 +1 @@
1
- da906c7eabe30a645a5ed6a6731b1542968b0204b94f359fdf8be14870950349 discovery-manifest.json
1
+ 4899ff3ab9b0d366795f7cda664646b990f52a17c5a050837052d1fcd86e372a discovery-manifest.json
@@ -1,8 +1,8 @@
1
1
  # Discovery Manifest — Summary
2
2
 
3
- - Generated: `2026-05-30T13:53:39Z`
3
+ - Generated: `2026-05-30T23:34:47Z`
4
4
  - Scanner: `ca7acd2ec7af`
5
- - Artefacts: **433**
5
+ - Artefacts: **440**
6
6
  - Unassigned: **0**
7
7
 
8
8
  ## `engineering` — Engineering
@@ -73,7 +73,7 @@
73
73
  | Pack | Artefacts |
74
74
  |---|---|
75
75
  | `small-business` — Small Business | 0 |
76
- | `ai-video` — AI Video | 6 |
76
+ | `ai-video` — AI Video | 7 |
77
77
 
78
78
  ## `construction` — Construction
79
79
 
@@ -89,5 +89,5 @@
89
89
 
90
90
  | Pack | Artefacts |
91
91
  |---|---|
92
- | `meta` — Meta | 252 |
92
+ | `meta` — Meta | 258 |
93
93
 
@@ -1,6 +1,6 @@
1
1
  # Discovery — Orphan Report
2
2
 
3
- - Generated: `2026-05-30T13:53:39Z`
3
+ - Generated: `2026-05-30T23:34:47Z`
4
4
  - Orphan artefacts: **0**
5
5
 
6
6
  > An orphan is an artefact whose declared pack has no other members.
@@ -1,6 +1,6 @@
1
1
  {
2
- "checksum": "sha256:9fefaad4a6276325abcfc38b4b92e823973bba39efa92db3e0f6e262a1395cdb",
3
- "generated_at": "2026-05-30T13:53:39Z",
2
+ "checksum": "sha256:179774d9f11641c6a2709286fb24d3ff708743bf6e58c697f8987c9fbcab31ae",
3
+ "generated_at": "2026-05-30T23:34:47Z",
4
4
  "packs": [
5
5
  {
6
6
  "artefact_count": 85,
@@ -717,25 +717,26 @@
717
717
  ]
718
718
  },
719
719
  {
720
- "artefact_count": 6,
720
+ "artefact_count": 7,
721
721
  "artefacts": [
722
722
  "packages/pack-ai-video/.agent-src.uncondensed/skills/canvas-design/SKILL.md",
723
723
  "packages/pack-ai-video/.agent-src.uncondensed/skills/character-consistency/SKILL.md",
724
724
  "packages/pack-ai-video/.agent-src.uncondensed/skills/motion-choreographer/SKILL.md",
725
725
  "packages/pack-ai-video/.agent-src.uncondensed/skills/pixar-storyteller/SKILL.md",
726
726
  "packages/pack-ai-video/.agent-src.uncondensed/skills/scene-expander/SKILL.md",
727
+ "packages/pack-ai-video/.agent-src.uncondensed/skills/song-to-script/SKILL.md",
727
728
  "packages/pack-ai-video/.agent-src.uncondensed/skills/video-director/SKILL.md"
728
729
  ],
729
730
  "by_lifecycle": {
730
731
  "active": 0,
731
732
  "archived": 0,
732
733
  "deprecated": 0,
733
- "experimental": 6
734
+ "experimental": 7
734
735
  },
735
736
  "by_trust_level": {
736
737
  "advisory": 0,
737
738
  "core": 0,
738
- "experimental": 6,
739
+ "experimental": 7,
739
740
  "professional": 0,
740
741
  "restricted": 0
741
742
  },
@@ -750,7 +751,7 @@
750
751
  ]
751
752
  },
752
753
  {
753
- "artefact_count": 252,
754
+ "artefact_count": 258,
754
755
  "artefacts": [
755
756
  "packages/core/.agent-src.uncondensed/commands/agent-handoff.md",
756
757
  "packages/core/.agent-src.uncondensed/commands/agent-status.md",
@@ -825,6 +826,7 @@
825
826
  "packages/core/.agent-src.uncondensed/commands/judge/solo.md",
826
827
  "packages/core/.agent-src.uncondensed/commands/judge/steps.md",
827
828
  "packages/core/.agent-src.uncondensed/commands/knowledge.md",
829
+ "packages/core/.agent-src.uncondensed/commands/knowledge/cross-repo.md",
828
830
  "packages/core/.agent-src.uncondensed/commands/knowledge/forget.md",
829
831
  "packages/core/.agent-src.uncondensed/commands/knowledge/ingest.md",
830
832
  "packages/core/.agent-src.uncondensed/commands/knowledge/list.md",
@@ -872,6 +874,10 @@
872
874
  "packages/core/.agent-src.uncondensed/commands/roadmap/process-step.md",
873
875
  "packages/core/.agent-src.uncondensed/commands/rule-compliance-audit.md",
874
876
  "packages/core/.agent-src.uncondensed/commands/set-cost-profile.md",
877
+ "packages/core/.agent-src.uncondensed/commands/skill.md",
878
+ "packages/core/.agent-src.uncondensed/commands/skill/preview.md",
879
+ "packages/core/.agent-src.uncondensed/commands/skills.md",
880
+ "packages/core/.agent-src.uncondensed/commands/skills/discover.md",
875
881
  "packages/core/.agent-src.uncondensed/commands/sync-agent-settings.md",
876
882
  "packages/core/.agent-src.uncondensed/commands/sync-gitignore.md",
877
883
  "packages/core/.agent-src.uncondensed/commands/sync-gitignore/fix.md",
@@ -883,6 +889,7 @@
883
889
  "packages/core/.agent-src.uncondensed/commands/upstream-contribute.md",
884
890
  "packages/core/.agent-src.uncondensed/commands/video.md",
885
891
  "packages/core/.agent-src.uncondensed/commands/video/from-script.md",
892
+ "packages/core/.agent-src.uncondensed/commands/video/from-song.md",
886
893
  "packages/core/.agent-src.uncondensed/commands/video/scene.md",
887
894
  "packages/core/.agent-src.uncondensed/commands/video/stitch.md",
888
895
  "packages/core/.agent-src.uncondensed/commands/video/storyboard.md",
@@ -1006,15 +1013,15 @@
1006
1013
  "packages/core/.agent-src.uncondensed/templates/agents/proposal.example.md"
1007
1014
  ],
1008
1015
  "by_lifecycle": {
1009
- "active": 252,
1016
+ "active": 257,
1010
1017
  "archived": 0,
1011
1018
  "deprecated": 0,
1012
- "experimental": 0
1019
+ "experimental": 1
1013
1020
  },
1014
1021
  "by_trust_level": {
1015
1022
  "advisory": 0,
1016
- "core": 252,
1017
- "experimental": 0,
1023
+ "core": 257,
1024
+ "experimental": 1,
1018
1025
  "professional": 0,
1019
1026
  "restricted": 0
1020
1027
  },
@@ -1,6 +1,6 @@
1
1
  # Discovery — Trust Report
2
2
 
3
- - Generated: `2026-05-30T13:53:39Z`
3
+ - Generated: `2026-05-30T23:34:47Z`
4
4
  - Workspaces tracked: **8**
5
5
  - Human-review-required artefacts: **2**
6
6
 
@@ -8,14 +8,14 @@
8
8
 
9
9
  | Workspace | core | professional | experimental | advisory | restricted |
10
10
  |---|---|---|---|---|---|
11
- | `agent-config-maintainer` | 252 | 0 | 1 | 0 | 0 |
11
+ | `agent-config-maintainer` | 257 | 0 | 2 | 0 | 0 |
12
12
  | `engineering` | 86 | 41 | 1 | 0 | 0 |
13
13
  | `finance` | 2 | 3 | 0 | 1 | 0 |
14
14
  | `founder` | 7 | 0 | 0 | 1 | 0 |
15
15
  | `gtm` | 0 | 12 | 0 | 0 | 0 |
16
16
  | `ops` | 0 | 8 | 0 | 0 | 0 |
17
17
  | `product` | 0 | 15 | 0 | 0 | 0 |
18
- | `small-business` | 0 | 0 | 6 | 0 | 0 |
18
+ | `small-business` | 0 | 0 | 7 | 0 | 0 |
19
19
 
20
20
  ## Human-review-required artefacts
21
21
 
@@ -1,6 +1,6 @@
1
1
  {
2
- "checksum": "sha256:9fefaad4a6276325abcfc38b4b92e823973bba39efa92db3e0f6e262a1395cdb",
3
- "generated_at": "2026-05-30T13:53:39Z",
2
+ "checksum": "sha256:179774d9f11641c6a2709286fb24d3ff708743bf6e58c697f8987c9fbcab31ae",
3
+ "generated_at": "2026-05-30T23:34:47Z",
4
4
  "scanner_version": "ca7acd2ec7af",
5
5
  "workspaces": [
6
6
  {
@@ -394,7 +394,7 @@
394
394
  ]
395
395
  },
396
396
  {
397
- "artefact_count": 6,
397
+ "artefact_count": 7,
398
398
  "default_packs": [
399
399
  "small-business"
400
400
  ],
@@ -411,13 +411,14 @@
411
411
  "id": "small-business"
412
412
  },
413
413
  {
414
- "artefact_count": 6,
414
+ "artefact_count": 7,
415
415
  "artefacts": [
416
416
  "packages/pack-ai-video/.agent-src.uncondensed/skills/canvas-design/SKILL.md",
417
417
  "packages/pack-ai-video/.agent-src.uncondensed/skills/character-consistency/SKILL.md",
418
418
  "packages/pack-ai-video/.agent-src.uncondensed/skills/motion-choreographer/SKILL.md",
419
419
  "packages/pack-ai-video/.agent-src.uncondensed/skills/pixar-storyteller/SKILL.md",
420
420
  "packages/pack-ai-video/.agent-src.uncondensed/skills/scene-expander/SKILL.md",
421
+ "packages/pack-ai-video/.agent-src.uncondensed/skills/song-to-script/SKILL.md",
421
422
  "packages/pack-ai-video/.agent-src.uncondensed/skills/video-director/SKILL.md"
422
423
  ],
423
424
  "id": "ai-video"
@@ -442,7 +443,7 @@
442
443
  ]
443
444
  },
444
445
  {
445
- "artefact_count": 252,
446
+ "artefact_count": 258,
446
447
  "default_packs": [
447
448
  "meta"
448
449
  ],
@@ -452,7 +453,7 @@
452
453
  "optional_packs": [],
453
454
  "packs": [
454
455
  {
455
- "artefact_count": 252,
456
+ "artefact_count": 258,
456
457
  "artefacts": [
457
458
  "packages/core/.agent-src.uncondensed/commands/agent-handoff.md",
458
459
  "packages/core/.agent-src.uncondensed/commands/agent-status.md",
@@ -527,6 +528,7 @@
527
528
  "packages/core/.agent-src.uncondensed/commands/judge/solo.md",
528
529
  "packages/core/.agent-src.uncondensed/commands/judge/steps.md",
529
530
  "packages/core/.agent-src.uncondensed/commands/knowledge.md",
531
+ "packages/core/.agent-src.uncondensed/commands/knowledge/cross-repo.md",
530
532
  "packages/core/.agent-src.uncondensed/commands/knowledge/forget.md",
531
533
  "packages/core/.agent-src.uncondensed/commands/knowledge/ingest.md",
532
534
  "packages/core/.agent-src.uncondensed/commands/knowledge/list.md",
@@ -574,6 +576,10 @@
574
576
  "packages/core/.agent-src.uncondensed/commands/roadmap/process-step.md",
575
577
  "packages/core/.agent-src.uncondensed/commands/rule-compliance-audit.md",
576
578
  "packages/core/.agent-src.uncondensed/commands/set-cost-profile.md",
579
+ "packages/core/.agent-src.uncondensed/commands/skill.md",
580
+ "packages/core/.agent-src.uncondensed/commands/skill/preview.md",
581
+ "packages/core/.agent-src.uncondensed/commands/skills.md",
582
+ "packages/core/.agent-src.uncondensed/commands/skills/discover.md",
577
583
  "packages/core/.agent-src.uncondensed/commands/sync-agent-settings.md",
578
584
  "packages/core/.agent-src.uncondensed/commands/sync-gitignore.md",
579
585
  "packages/core/.agent-src.uncondensed/commands/sync-gitignore/fix.md",
@@ -585,6 +591,7 @@
585
591
  "packages/core/.agent-src.uncondensed/commands/upstream-contribute.md",
586
592
  "packages/core/.agent-src.uncondensed/commands/video.md",
587
593
  "packages/core/.agent-src.uncondensed/commands/video/from-script.md",
594
+ "packages/core/.agent-src.uncondensed/commands/video/from-song.md",
588
595
  "packages/core/.agent-src.uncondensed/commands/video/scene.md",
589
596
  "packages/core/.agent-src.uncondensed/commands/video/stitch.md",
590
597
  "packages/core/.agent-src.uncondensed/commands/video/storyboard.md",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "discovery": {
3
- "artefact_count": 433,
3
+ "artefact_count": 440,
4
4
  "scanner_version": "ca7acd2ec7af"
5
5
  },
6
6
  "generated_at": "2026-05-30",
@@ -9,7 +9,7 @@
9
9
  "homepage": "https://github.com/event4u-app/agent-config#readme",
10
10
  "name": "@event4u/agent-config",
11
11
  "repository": "https://github.com/event4u-app/agent-config",
12
- "version": "5.4.0"
12
+ "version": "5.5.0"
13
13
  },
14
14
  "registries": [
15
15
  {
@@ -146,9 +146,9 @@ note, package-internal path-swap, description budget, and the
146
146
 
147
147
  | Layer | Count | Purpose |
148
148
  |---|---|---|
149
- | **Skills** | 219 | On-demand expertise — stack analysis (Laravel · Symfony · Zend / Laminas · Next.js · React · Node), testing, Docker, API design, security, observability, … |
149
+ | **Skills** | 220 | On-demand expertise — stack analysis (Laravel · Symfony · Zend / Laminas · Next.js · React · Node), testing, Docker, API design, security, observability, … |
150
150
  | **Rules** | 78 | Always-active constraints — coding standards, scope control, verification, language-and-tone, agent-authority |
151
- | **Commands** | 135 | Slash-command workflows — `/commit`, `/create-pr`, `/fix ci`, `/optimize skills`, `/feature plan`, `/work`, `/implement-ticket`, `/condense`, … |
151
+ | **Commands** | 141 | Slash-command workflows — `/commit`, `/create-pr`, `/fix ci`, `/optimize skills`, `/feature plan`, `/work`, `/implement-ticket`, `/condense`, … |
152
152
  | **Guidelines** | 73 | Reference material cited by skills — PHP patterns, Eloquent, Playwright, agent-infra, … |
153
153
  | **Templates** | 7 | Scaffolds for features, roadmaps, contexts, skills, overrides |
154
154
  | **Contexts** | 5 | Shared knowledge about the system itself |
@@ -49,7 +49,10 @@ column 1 of this table.
49
49
  | `sync-gitignore` | — | `fix` | new sub-command 2026-05-11 — cluster head retains the existing append-only sync as its default flow; `:fix` adds `--cleanup-legacy` semantics, scrubbing pre-`/agents/` runtime patterns wherever they appear in the consumer's `.gitignore` (inside or outside the managed block) and re-syncing the canonical entries. |
50
50
  | `ghostwriter` | — | `fetch` · `write` · `list` · `show` · `delete` | new cluster 2026-05-15 — third voice primitive for AI-assisted writing in the public voice of a public figure. Hybrid storage: real-person profiles live consumer-side under `agents/reference/ghostwriter/<slug>.md` (gitignored by default); package source ships only `fictional: true` fixtures. Zero network code in the package — `:fetch` delegates web-fetch / web-search to the host agent. Mandatory disclosure footer on every `:write` output (no opt-out). Schema: [`ghostwriter-schema`](ghostwriter-schema.md). |
51
51
  | `post-as` | — | `me` · `ghostwriter` | new cluster 2026-05-15 — consumer-facing write entry points. `:me` reads `.agent-user.md.voice_sample` and drafts in the maintainer's own voice (no disclosure footer — the user is the author); `:ghostwriter` is a thin alias for `/ghostwriter:write` with the mandatory disclosure footer. Both share the procedural [`write-engine`](write-engine.md) contract — style source and footer are the only axes of variation. |
52
- | `video` | — | `from-script` · `scene` · `storyboard` · `stitch` | new cluster 2026-05-17 — AI video generation pipeline. Cluster head orchestrates the full flow; `:scene` runs a single scene end-to-end (script → blueprint → still → motion → clip); `:storyboard` expands a script into per-scene blueprints + reference stills with character-lock JSON; `:from-script` walks a multi-scene script through storyboard + per-scene generation; `:stitch` concatenates scene clips with `ffmpeg` against a scene manifest. Provider-agnostic via the adapter contract under `scripts/ai-video/lib/adapter-contract.md`; cost-gated with mandatory `AIV_DRYRUN=true` default and explicit confirmation before live provider calls. |
52
+ | `video` | — | `from-script` · `from-song` · `scene` · `storyboard` · `stitch` | new cluster 2026-05-17 — AI video generation pipeline. Cluster head orchestrates the full flow; `:scene` runs a single scene end-to-end (script → blueprint → still → motion → clip); `:storyboard` expands a script into per-scene blueprints + reference stills with character-lock JSON; `:from-script` walks a multi-scene script through storyboard + per-scene generation; `:from-song` builds a music-video from a song + reference images — derived/briefed timed script (via the `song-to-script` skill + `probe-audio.sh` hybrid segmentation), optional character-lock, then stitch with the song muxed as the master track and a mandatory AI-generation disclosure; `:stitch` concatenates scene clips with `ffmpeg` against a scene manifest. Provider-agnostic via the adapter contract under `scripts/ai-video/lib/adapter-contract.md`; cost-gated with mandatory `AIV_DRYRUN=true` default and explicit confirmation before live provider calls. |
53
+ | `knowledge` | — | `ingest` · `list` · `forget` · `cross-repo` | local-knowledge namespace (employee-product Phase 7); `:cross-repo` added 2026-05-30 (`road-to-leaner-core-and-discovery` Phase 4) — read-only targeted retrieval over opted-in `linked_projects` siblings (ADR-032 Option A), per [`cross-repo-retrieval`](cross-repo-retrieval.md). The pre-existing `ingest`/`list`/`forget` sub-commands are recorded in the registry here for the first time. |
54
+ | `skills` | — | `discover` | new cluster 2026-05-30 (`road-to-leaner-core-and-discovery` Phase 3) — local, explained skill-recommendation surface over the catalog + role shortlists + optional local analytics, per [`skill-discovery`](skill-discovery.md). Every result carries a non-empty `why`; no network, honours the analytics opt-out. |
55
+ | `skill` | — | `preview` | new cluster 2026-05-30 (`road-to-leaner-core-and-discovery` Phase 5) — non-destructive skill/command preview: surfaces the declared steps + files/commands a skill would touch before it runs, per [`skill-dry-run`](skill-dry-run.md). Singular `skill` (one target) vs plural `skills` (the catalog) by design. |
53
56
 
54
57
  **Net change:** Phase 1 collapsed 15 atomics → 3 clusters; Phase 2
55
58
  collapses 26 atomics → 11 sub-command clusters. Sub-commands use
@@ -0,0 +1,64 @@
1
+ ---
2
+ stability: experimental
3
+ ---
4
+
5
+ # Cross-Repo Retrieval Contract
6
+
7
+ > **Status** · v0 / design · 2026-05-30. Phase 4 of `road-to-leaner-core-and-discovery`.
8
+ > Extends [ADR-032](../decisions/ADR-032-linked-projects-scope.md) **Option A** (passive,
9
+ > read-only, opt-in-per-sibling, no bulk inclusion). Does **not** advance to Option B (auto-scan)
10
+ > or Option C (implicit inclusion).
11
+
12
+ ## Problem
13
+
14
+ The ADR-032 detector finds IDE-attached sibling repos but today only produces a passive *awareness
15
+ note* — the agent knows a sibling exists but cannot pull context from it. This contract makes opted-in
16
+ siblings a **read-only, targeted retrieval source**: the agent can fetch a shared type, an API contract
17
+ the frontend consumes, or a config the sibling owns, **without bulk-including** its files.
18
+
19
+ ## Scope guards (Option A, non-negotiable)
20
+
21
+ ```
22
+ READ-ONLY. OPT-IN-PER-SIBLING. TARGETED QUERY, NEVER A FULL-TREE SWEEP.
23
+ ```
24
+
25
+ - **Read-only.** No writes to any sibling. Out-of-root writes still pass the host permission gate;
26
+ this surface never writes.
27
+ - **Opt-in only.** Only siblings with `include: true` in `agents/settings/.agent-settings.local.yml`
28
+ → `linked_projects[]` are read. A sibling not opted in is never touched.
29
+ - **Targeted query only.** Every retrieval is a bounded path-glob + content grep — never a blind walk.
30
+ A `large`-flagged sibling (per the detector) **requires a path scope** and rejects an unscoped query.
31
+ - **Bounded.** ≤ `max_chunks` results per query (default 8). One concept per query.
32
+
33
+ ## Retrieval envelope
34
+
35
+ Each match is returned as:
36
+
37
+ ```json
38
+ { "source_repo": "<sibling dir name>", "path": "<rel path in sibling>",
39
+ "chunk": "<≤ 2 KB redacted excerpt>", "freshness": "<git last-commit date or mtime>",
40
+ "match_reason": "<why this matched: path-glob or content term>" }
41
+ ```
42
+
43
+ `chunk` passes the same redaction floor as `knowledge_ingest.py` — secrets and PII are scrubbed before
44
+ any cross-repo text is surfaced. Cross-repo text never leaks a secret.
45
+
46
+ ## Memory integration — tagged + discounted
47
+
48
+ Cross-repo matches projected into `memory_retrieve` carry `source: cross-repo` and are scored **below**
49
+ local curated knowledge — the same 0.85× discount the `knowledge:` namespace already applies — so
50
+ cross-repo context never outranks the project's own truth.
51
+
52
+ ## Surfaces
53
+
54
+ - CLI: `agent-config linked-projects:list` — prints opted-in siblings (`path · detected_via · large`).
55
+ Closes the ADR-032 follow-up "expose the detector as a CLI subcommand for consumer reach."
56
+ - CLI / agent: `/knowledge:cross-repo <query>` — renders matches as `source_repo · path · freshness · why`.
57
+ Honours opt-out (a sibling not `include: true` is never read); inert with a clear message when no
58
+ siblings are opted in.
59
+
60
+ ## Implementation
61
+
62
+ `scripts/cross_repo_retrieve.py` (≤ 300 LOC). Pure-local, read-only, no network. Reuses the chunking +
63
+ redaction floor from `knowledge_ingest.py`. Coverage: `tests/test_cross_repo_retrieve.py` against
64
+ fixture sibling repos under `tests/fixtures/cross-repo/`.