@tea-agent/loop-agent 0.44.0-next.13 → 0.44.0-next.14

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 (145) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +12 -12
  3. package/dist/adapters/loop-agent.js +34 -0
  4. package/dist/build-stamp.json +3 -3
  5. package/dist/cli/command-definitions.js +5 -5
  6. package/dist/cli/program.js +1 -4
  7. package/dist/commands/init-legacy-audit.js +330 -0
  8. package/dist/commands/init-upgrade.js +644 -104
  9. package/dist/commands/init.js +685 -330
  10. package/dist/commands/operator-guide.js +99 -0
  11. package/dist/commands/operator.js +16 -3
  12. package/dist/executors/pi-sdk-executor.js +3 -1
  13. package/dist/governance/harness.js +2 -7
  14. package/dist/governance/manifest-types.js +28 -9
  15. package/dist/governance/project-capability-scanner.js +263 -0
  16. package/dist/governance/project-config.js +96 -0
  17. package/dist/governance/resource-catalog.js +151 -0
  18. package/dist/infrastructure/console/app-data.js +6 -2
  19. package/dist/shared/operator/capabilities.js +2 -2
  20. package/dist/shared/package-metadata.js +23 -7
  21. package/dist/shared/pi-context-pressure/extension.js +23 -0
  22. package/dist/shared/pi-context-pressure/index.js +1 -0
  23. package/dist/shared/pi-context-pressure/telemetry.js +4 -0
  24. package/dist/shared/pi-context-pressure/tool-result-pruner.js +98 -0
  25. package/dist/shared/update/npm-client.js +49 -1
  26. package/dist/worker/cli.js +3 -5
  27. package/dist/worker/console/chat/browser-automation.js +114 -5
  28. package/dist/worker/console/chat/browser-routes.js +21 -0
  29. package/dist/worker/console/chat/chat-event-store.js +7 -6
  30. package/dist/worker/console/chat/context-insights.js +84 -19
  31. package/dist/worker/console/chat/pet/pet-affinity.js +169 -0
  32. package/dist/worker/console/chat/pet/pet-persist.js +109 -0
  33. package/dist/worker/console/chat/pet/pet-registry.js +142 -0
  34. package/dist/worker/console/chat/pet/pet-remarks.js +48 -0
  35. package/dist/worker/console/chat/pet/pet-routes.js +125 -0
  36. package/dist/worker/console/chat/pet/pet-service.js +262 -0
  37. package/dist/worker/console/chat/pet/pet-state.js +99 -0
  38. package/dist/worker/console/chat/pi-mode-loop-isolation.js +17 -2
  39. package/dist/worker/console/chat/pi-runtime/custom-tools/browser-tools.js +2 -2
  40. package/dist/worker/console/chat/pi-runtime.js +7 -2
  41. package/dist/worker/console/chat/routes.js +43 -7
  42. package/dist/worker/console/chat/scheduled-goal-request.js +14 -6
  43. package/dist/worker/console/chat/session-store.js +20 -3
  44. package/dist/worker/console/console-shutdown.js +34 -0
  45. package/dist/worker/console/server.js +2 -1
  46. package/dist/worker/console/static/assets/{abnfDiagram-N423BO3Z-BA7qCL_r.js → abnfDiagram-N423BO3Z-DASc69AM.js} +1 -1
  47. package/dist/worker/console/static/assets/{arc-Df09ajwL.js → arc-h09p-LAc.js} +1 -1
  48. package/dist/worker/console/static/assets/{architectureDiagram-T3A2C74G-CpF9sw5R.js → architectureDiagram-T3A2C74G-CZ3dtLkh.js} +1 -1
  49. package/dist/worker/console/static/assets/{blockDiagram-VBNYF7ZC-BtPys8ja.js → blockDiagram-VBNYF7ZC-DMrRhMXG.js} +1 -1
  50. package/dist/worker/console/static/assets/{c4Diagram-5PPSVZJV-DZPnTWqT.js → c4Diagram-5PPSVZJV-DQxisHV6.js} +1 -1
  51. package/dist/worker/console/static/assets/channel-D1zgKZfg.js +1 -0
  52. package/dist/worker/console/static/assets/{chunk-2GRJ4B5K-BD9D4h1p.js → chunk-2GRJ4B5K-CefVN9zh.js} +1 -1
  53. package/dist/worker/console/static/assets/{chunk-2Q5K7J3B-Svn8yBmn.js → chunk-2Q5K7J3B-DmR1Koq2.js} +1 -1
  54. package/dist/worker/console/static/assets/{chunk-5RXB4S5H-B8EbQj-S.js → chunk-5RXB4S5H-NlzrSW7L.js} +1 -1
  55. package/dist/worker/console/static/assets/{chunk-5VM5RSS4-tENZpcpF.js → chunk-5VM5RSS4-DfelJv-0.js} +1 -1
  56. package/dist/worker/console/static/assets/{chunk-6Q2QTUOP-DBx71Lco.js → chunk-6Q2QTUOP-BK6RFy58.js} +1 -1
  57. package/dist/worker/console/static/assets/{chunk-GF5L2VYU-1v_QamMz.js → chunk-GF5L2VYU-BAeh9lz4.js} +1 -1
  58. package/dist/worker/console/static/assets/{chunk-JWPE2WC7-BAMCNNBG.js → chunk-JWPE2WC7-ChPS5WzG.js} +1 -1
  59. package/dist/worker/console/static/assets/{chunk-KBJHAD2P-BvuEury-.js → chunk-KBJHAD2P-BoVe5IM6.js} +1 -1
  60. package/dist/worker/console/static/assets/{chunk-RYQCIY6F-YqFuHp8s.js → chunk-RYQCIY6F-C4q_0Lw9.js} +1 -1
  61. package/dist/worker/console/static/assets/{chunk-XXDRQBXY-ouI5T7Mr.js → chunk-XXDRQBXY-Bb9TvjeY.js} +1 -1
  62. package/dist/worker/console/static/assets/classDiagram-JCYQIIEL-CXNNsY2M.js +1 -0
  63. package/dist/worker/console/static/assets/classDiagram-v2-OCEON4UE-CXNNsY2M.js +1 -0
  64. package/dist/worker/console/static/assets/{cose-bilkent-JH36ORCC-Bri0_Izk.js → cose-bilkent-JH36ORCC-DmNnL8Ff.js} +1 -1
  65. package/dist/worker/console/static/assets/{cynefin-VYW2F7L2-e8Vhhi4X.js → cynefin-VYW2F7L2-Contvx58.js} +1 -1
  66. package/dist/worker/console/static/assets/{cynefinDiagram-MW4NZA55-tSIXGQiJ.js → cynefinDiagram-MW4NZA55-Cigq7cjk.js} +1 -1
  67. package/dist/worker/console/static/assets/{dagre-VZM6K2ZE-Rl-sF5pt.js → dagre-VZM6K2ZE-dEbC0nxb.js} +1 -1
  68. package/dist/worker/console/static/assets/{diagram-7IWD3JNH-Db6ddPz8.js → diagram-7IWD3JNH-CzIztESV.js} +1 -1
  69. package/dist/worker/console/static/assets/{diagram-B4RE2ZJO-Jwd_Xw5S.js → diagram-B4RE2ZJO-Bo14zbaY.js} +1 -1
  70. package/dist/worker/console/static/assets/{diagram-LBJQPF4R-CeC_8InC.js → diagram-LBJQPF4R-C4xUyil6.js} +1 -1
  71. package/dist/worker/console/static/assets/{diagram-Q27KOJAE-LKPRaNq8.js → diagram-Q27KOJAE-CaBY_uYa.js} +1 -1
  72. package/dist/worker/console/static/assets/{diagram-UB23O5K3-DlVQytMW.js → diagram-UB23O5K3-ClUXUeiu.js} +1 -1
  73. package/dist/worker/console/static/assets/{ebnfDiagram-BXEA7PRR-DnfJZwO-.js → ebnfDiagram-BXEA7PRR-BbGCgjC6.js} +1 -1
  74. package/dist/worker/console/static/assets/{erDiagram-JOGREHBK-3axVSXca.js → erDiagram-JOGREHBK-Dr-AcwSl.js} +1 -1
  75. package/dist/worker/console/static/assets/{flowDiagram-UKHOOZJN-xe04-_L-.js → flowDiagram-UKHOOZJN-BG8Gcfyc.js} +1 -1
  76. package/dist/worker/console/static/assets/{ganttDiagram-PKOTCBZU-hpmRINiD.js → ganttDiagram-PKOTCBZU-CFVaPs5r.js} +1 -1
  77. package/dist/worker/console/static/assets/{gitGraphDiagram-DS77QQ5N-6HSNz9Ko.js → gitGraphDiagram-DS77QQ5N-ChJ8pm-O.js} +1 -1
  78. package/dist/worker/console/static/assets/index-B_5GhVIO.js +488 -0
  79. package/dist/worker/console/static/assets/index-C7YMBluX.css +1 -0
  80. package/dist/worker/console/static/assets/{infoDiagram-6WML65LV-BF6ksWTX.js → infoDiagram-6WML65LV-C5J9-uCZ.js} +1 -1
  81. package/dist/worker/console/static/assets/{ishikawaDiagram-WSZJBQD7-DXisdeD7.js → ishikawaDiagram-WSZJBQD7-BcfjqzDv.js} +1 -1
  82. package/dist/worker/console/static/assets/{journeyDiagram-NVQOT4AX-BWu65wmu.js → journeyDiagram-NVQOT4AX-BzzCO-rD.js} +1 -1
  83. package/dist/worker/console/static/assets/{kanban-definition-27J2QSJJ-hfNhHqAI.js → kanban-definition-27J2QSJJ-NCHUZ46h.js} +1 -1
  84. package/dist/worker/console/static/assets/{linear-D6HTfQcp.js → linear-BKZlWCUU.js} +1 -1
  85. package/dist/worker/console/static/assets/{mermaid.core-Iv91R1WP.js → mermaid.core-DbTaQjFE.js} +5 -5
  86. package/dist/worker/console/static/assets/{mindmap-definition-FAOFIHXS-CfPChwjR.js → mindmap-definition-FAOFIHXS-CroYl5xQ.js} +1 -1
  87. package/dist/worker/console/static/assets/{pegDiagram-VL7TDLO6-B7TcoqHz.js → pegDiagram-VL7TDLO6-DgMBx-9k.js} +1 -1
  88. package/dist/worker/console/static/assets/{pieDiagram-7S7Q4E2Y-ouyPKMtQ.js → pieDiagram-7S7Q4E2Y-CyWDmbq1.js} +1 -1
  89. package/dist/worker/console/static/assets/{quadrantDiagram-CIZ2JOQS-B9tuyLbh.js → quadrantDiagram-CIZ2JOQS-BgGEOqSP.js} +1 -1
  90. package/dist/worker/console/static/assets/{railroadDiagram-AXF67PYL-Ck4q9nJs.js → railroadDiagram-AXF67PYL-BMZ7oeeV.js} +1 -1
  91. package/dist/worker/console/static/assets/{requirementDiagram-LRYGKXZP-wXLX5Dnp.js → requirementDiagram-LRYGKXZP-DxqyGhcc.js} +1 -1
  92. package/dist/worker/console/static/assets/{sankeyDiagram-W5VNT64P-D2XWw6_m.js → sankeyDiagram-W5VNT64P-DnSvNCG8.js} +1 -1
  93. package/dist/worker/console/static/assets/{sequenceDiagram-SI44F4Z6-DzxKiug4.js → sequenceDiagram-SI44F4Z6-BiZh6f-R.js} +1 -1
  94. package/dist/worker/console/static/assets/{sizeCapture-X5ZJPWSS-DWUqK5Us.js → sizeCapture-X5ZJPWSS-BKXSI8WB.js} +1 -1
  95. package/dist/worker/console/static/assets/{stateDiagram-OKZ733FA-D5Pa4O5g.js → stateDiagram-OKZ733FA-CfSgoYFm.js} +1 -1
  96. package/dist/worker/console/static/assets/stateDiagram-v2-UEYNNEHI-DgHi3vjb.js +1 -0
  97. package/dist/worker/console/static/assets/{swimlanes-SLNWSIFB-VH7cRnsJ.js → swimlanes-SLNWSIFB-CyGADcHe.js} +2 -2
  98. package/dist/worker/console/static/assets/swimlanesDiagram-ULZ7WXOC-Bgvdt1Y0.js +8 -0
  99. package/dist/worker/console/static/assets/{timeline-definition-Z64GVDOM-C4HM5NoZ.js → timeline-definition-Z64GVDOM-HmPaSPOK.js} +1 -1
  100. package/dist/worker/console/static/assets/{vennDiagram-T6HMQDX7-Bu-4hOlA.js → vennDiagram-T6HMQDX7-VA2VBbez.js} +1 -1
  101. package/dist/worker/console/static/assets/{wardleyDiagram-T6FBY63Y-CasFEvvl.js → wardleyDiagram-T6FBY63Y-BxjiBPZa.js} +1 -1
  102. package/dist/worker/console/static/assets/{xychartDiagram-ELKLHX3M-D-gpwPSA.js → xychartDiagram-ELKLHX3M--hUY-qFj.js} +1 -1
  103. package/dist/worker/console/static/index.html +2 -2
  104. package/dist/worker/console/static/pets/ember/pet.json +167 -0
  105. package/dist/worker/console/static/pets/ember/spritesheet.png +0 -0
  106. package/dist/worker/console/static-src/operator-chat/details-rail-surfaces.js +4 -3
  107. package/dist/worker/console/static-src/operator-chat/use-stat-dialog.js +95 -0
  108. package/dist/worker/console/workspace-context.js +14 -0
  109. package/dist/worker/console/workspace-initialization.js +25 -16
  110. package/dist/worker/delivery/package.js +4 -1
  111. package/dist/worker/observe/static/operator-chrome.js +1 -42
  112. package/dist/workflows/dag/backend-test-pytest-collection.js +4 -1
  113. package/dist/workflows/dag/final-verification.js +45 -10
  114. package/dist/workflows/dag/hybrid/sources.js +14 -14
  115. package/dist/workflows/dag/hybrid/templates/backend-test.js +5 -5
  116. package/dist/workflows/dag/hybrid/templates/frontend-test.js +4 -4
  117. package/dist/workflows/dag/hybrid/templates/kg-bootstrap.js +6 -6
  118. package/dist/workflows/dag/hybrid/templates/knowledge-sync.js +5 -5
  119. package/dist/workflows/dag/skill-instructions.js +102 -32
  120. package/dist/workflows/dag/skill-snapshot.js +3 -0
  121. package/dist/workflows/dag/skills.js +7 -7
  122. package/dist/workflows/dag/validate.js +2 -2
  123. package/dist/workflows/dag/workspace-checkpoint.js +13 -1
  124. package/docs/architecture/runtime-boundaries.md +28 -22
  125. package/docs/init-surface.manifest.json +43 -295
  126. package/docs/templates/agent-dag.base.json +9 -9
  127. package/docs/templates/agent-dag.final-verification.json +6 -6
  128. package/docs/templates/agent-dag.supervised-implementation.json +12 -12
  129. package/docs/templates/frontend-implementation-dag.json +2 -2
  130. package/docs/templates/frontend-test-dag.json +2 -2
  131. package/docs/templates/hybrid-dag.json +9 -9
  132. package/docs/templates/knowledge-sync-dag.json +8 -8
  133. package/package.json +6 -2
  134. package/resource-catalog.v1.json +1973 -0
  135. package/resources/agent-bridge/loop-agent/SKILL.md +40 -0
  136. package/resources/init-history/legacy-surface.v1.json +33 -0
  137. package/skills/init-update/SKILL.md +34 -0
  138. package/skills/init-update/agents/openai.yaml +6 -0
  139. package/dist/worker/console/static/assets/channel-DiTNLZUm.js +0 -1
  140. package/dist/worker/console/static/assets/classDiagram-JCYQIIEL-DgL8aiyZ.js +0 -1
  141. package/dist/worker/console/static/assets/classDiagram-v2-OCEON4UE-DgL8aiyZ.js +0 -1
  142. package/dist/worker/console/static/assets/index-C_8_gWal.css +0 -1
  143. package/dist/worker/console/static/assets/index-DybcVXCu.js +0 -488
  144. package/dist/worker/console/static/assets/stateDiagram-v2-UEYNNEHI-C0QIbqO4.js +0 -1
  145. package/dist/worker/console/static/assets/swimlanesDiagram-ULZ7WXOC-BB9CzRHB.js +0 -8
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: loop-agent
3
+ description: >-
4
+ Use when a repository is initialized with loop-agent and the user asks to
5
+ implement, fix, review, plan, verify, resume, or inspect work through the
6
+ loop-agent Task and Agent DAG workflow.
7
+ metadata:
8
+ loop-agent:
9
+ schemaVersion: 1
10
+ kind: external-agent-bridge
11
+ ---
12
+
13
+ # loop-agent bridge
14
+
15
+ This file is a discovery bridge. The installed `loop-agent` package is the
16
+ authority for workflow policy, commands, templates, and built-in Skills. Do not
17
+ infer write permission from this file and do not copy its policy into project
18
+ files.
19
+
20
+ ## Route
21
+
22
+ 1. Read the repository's own `AGENTS.md` and project instructions when present.
23
+ 2. Run `loop-agent --repo-root . operator guide --json`. Treat its typed project
24
+ status and single `next.command` as the controller-owned route for an
25
+ uninitialized, ready, update-required, or blocked workspace.
26
+ 3. For a direct read-only surface comparison, run `loop-agent init check-update
27
+ --repo-root . --json`.
28
+ 4. For read-only orientation, use `loop-agent inspect --json`, `loop-agent task
29
+ status <task-id> --json`, and `loop-agent dag doctor --run-id <run-id> --json`.
30
+ 5. For new implementation work, use `loop-agent task advance` with explicit
31
+ allowed and forbidden paths, then review the generated writeSet before
32
+ approval.
33
+ 6. Long-running DAG execution needs a durable owner. Prefer the Console
34
+ operation returned by `agent-worker console`; do not start an unowned
35
+ foreground DAG command that the host may terminate.
36
+
37
+ If a command reports a gate, controller identity mismatch, active run, or human
38
+ decision, stop writing and follow the single `next` action in the typed result.
39
+ Package built-ins are addressed as `builtin:<name>`; project and user Skills are
40
+ addressed as `project:<name>` and `user:<name>` when an explicit source matters.
@@ -0,0 +1,33 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "catalogVersion": 1,
4
+ "entries": [
5
+ { "id": "legacy-full-v1-01", "path": "ai_workspace/loop-agent/decisions/README.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["d2b7cd3a7aada67c8918bc923c298c56d6b24f76ced331cea94c40aa819a8efb"], "canonicalTextSha256": ["d2b7cd3a7aada67c8918bc923c298c56d6b24f76ced331cea94c40aa819a8efb"], "retirement": "remove" },
6
+ { "id": "legacy-full-v1-02", "path": "ai_workspace/loop-agent/design/README.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["81c613511fa172c509c25614a24420fdca6895025cf4ffb30f11af245b82a244"], "canonicalTextSha256": ["81c613511fa172c509c25614a24420fdca6895025cf4ffb30f11af245b82a244"], "retirement": "remove" },
7
+ { "id": "legacy-full-v1-03", "path": "ai_workspace/loop-agent/exec-plans/README.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["794353280a8251794537df7cbbabaa0ae101ed83cad29d85aa6bd3c494deaa8c"], "canonicalTextSha256": ["794353280a8251794537df7cbbabaa0ae101ed83cad29d85aa6bd3c494deaa8c"], "retirement": "remove" },
8
+ { "id": "legacy-full-v1-04", "path": "ai_workspace/loop-agent/exec-plans/active/README.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["109f4cb2ff72281831afd8081d9022b087f2bcf1f7e9a74cc8d4e0a332ca2db3"], "canonicalTextSha256": ["109f4cb2ff72281831afd8081d9022b087f2bcf1f7e9a74cc8d4e0a332ca2db3"], "retirement": "remove" },
9
+ { "id": "legacy-full-v1-05", "path": "ai_workspace/loop-agent/exec-plans/completed/README.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["18659db03f919a2468ec07b144afced8fbed1fbf9574836cbe98e0a09c112c48"], "canonicalTextSha256": ["18659db03f919a2468ec07b144afced8fbed1fbf9574836cbe98e0a09c112c48"], "retirement": "remove" },
10
+ { "id": "legacy-full-v1-06", "path": "ai_workspace/loop-agent/harness-methodology-verification.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["0549642cf39664e0518400a7816c249347234861d548601478a7d8e4a52019db"], "canonicalTextSha256": ["23befc817df9e5ece4b8bdd3d9cefa709f3eebbb6549cdbfd3b94518827287d1"], "retirement": "remove" },
11
+ { "id": "legacy-full-v1-07", "path": "ai_workspace/loop-agent/progress/README.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["346e5c59a5f9affb466d549942e65a9738573c70cbcd565e654e74bb35ab3a6b"], "canonicalTextSha256": ["346e5c59a5f9affb466d549942e65a9738573c70cbcd565e654e74bb35ab3a6b"], "retirement": "remove" },
12
+ { "id": "legacy-full-v1-08", "path": "ai_workspace/loop-agent/reports/README.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["991df05df343d3438f1ad7b5d1267fab82afcb37a590b38deba3943fc94c94e0"], "canonicalTextSha256": ["991df05df343d3438f1ad7b5d1267fab82afcb37a590b38deba3943fc94c94e0"], "retirement": "remove" },
13
+ { "id": "legacy-full-v1-09", "path": "ai_workspace/loop-agent/templates/adr.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["93177f43902f32079db85031c06bda501bd2fe5c167ab00c51bf5591e6c7821d"], "canonicalTextSha256": ["c0315f1112ce05f66a6f41ab7865aba03e218c70afaf20153f2735d4e081cf4d"], "retirement": "remove" },
14
+ { "id": "legacy-full-v1-10", "path": "ai_workspace/loop-agent/templates/agent-dag-authority-surface-audit.prompt.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["c7fc215523a5fd8027b0ec476144d7d5b8274818adc7c9b6cf9a7d5f394352af"], "canonicalTextSha256": ["02023a687cfa8b67daa171da9d73d18885c80353f38157ac2966f456a0804f76"], "retirement": "remove" },
15
+ { "id": "legacy-full-v1-11", "path": "ai_workspace/loop-agent/templates/agent-dag-decision-envelope.schema.json", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["4baa9a83f7ca78849cd370969c8634d5e75d5addef85a0671da4084def967736"], "canonicalTextSha256": ["ff62c6515487b2e0c29043b7d71db7423e8331088b97cb3d05d7958cde5b7c33"], "retirement": "remove" },
16
+ { "id": "legacy-full-v1-12", "path": "ai_workspace/loop-agent/templates/agent-dag-decision-gate-dogfood-report.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["bc708ebca250ff64640159333325363367fd9b69d8d46b3ab9420d316acd40ce"], "canonicalTextSha256": ["0f0b17546647755639ea5937332dfe04c663b5edbf379b43210bc92c77898eaa"], "retirement": "remove" },
17
+ { "id": "legacy-full-v1-13", "path": "ai_workspace/loop-agent/templates/agent-dag-decision-gate.prompt.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["61f2964bbf2dbe025ad69d402ac29b8d555ebf9c325d52d7b371908586167bd3"], "canonicalTextSha256": ["a6c89374ca343edb171d05a118143ebe96c77f14d532af487e554d9c511f1cb8"], "retirement": "remove" },
18
+ { "id": "legacy-full-v1-14", "path": "ai_workspace/loop-agent/templates/agent-dag-process-supervisor.prompt.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["cd20efd90a23001ca05e745e9a79c14b85d8926aa471b519625e1b8138e82938"], "canonicalTextSha256": ["660af472281b66d474fb8f269798dbee7714bbff92eb2837d8fbc23831b13892"], "retirement": "remove" },
19
+ { "id": "legacy-full-v1-15", "path": "ai_workspace/loop-agent/templates/agent-dag-review-verdict.prompt.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["04961e5e728cbddbcf07c4ef77437d2a6367e254345298ce1653d50bfede0629"], "canonicalTextSha256": ["c63750b0230744730e68caba8830dba1ea347dd31e0f107a81e8edff0b9521ef"], "retirement": "remove" },
20
+ { "id": "legacy-full-v1-16", "path": "ai_workspace/loop-agent/templates/exec-plan.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["f8ca330a8b22db7261165bd128a6ad2e86d9c3b63a39d5a734915bc305d8c00c"], "canonicalTextSha256": ["4c34349cc6e79ac71923ea3408d94cff809aaac94d9390a7a93a1146d90b4b18"], "retirement": "remove" },
21
+ { "id": "legacy-full-v1-17", "path": "ai_workspace/loop-agent/templates/feature-spec.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["8ce457e9239a41855cabf85f4c2910d9455e7303a48e38253870ed5152258282"], "canonicalTextSha256": ["0fcfb89c50a4ba38120cb34827f01f1023b8a1de2c8a6cddcf0137764e63219d"], "retirement": "remove" },
22
+ { "id": "legacy-full-v1-18", "path": "ai_workspace/loop-agent/templates/progress-log.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["5db2b5a0ac22a980e334775c3d111ea340e867285b9763477e17ee6c9f45fe7b"], "canonicalTextSha256": ["0df84ccd0c93bdbfbf98245c691be6ac71738679685568991a01d4e2134be540"], "retirement": "remove" },
23
+ { "id": "legacy-full-v1-19", "path": "ai_workspace/loop-agent/templates/qa-report.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["7eb8eff6e35f8bfc1dfcdbf16c149a97929e389288c49e3b15e4b2f7c3b0dd45"], "canonicalTextSha256": ["2f1e54542175569f13243f8d0b6b29663893919072e21fa2a25abac67b53accf"], "retirement": "remove" },
24
+ { "id": "legacy-full-v1-20", "path": "ai_workspace/loop-agent/templates/sprint-contract.md", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["6f1daaf7f06f772ffe3177fc18bb1ac10866863b671a472c645912469d6a5b7d"], "canonicalTextSha256": ["23cbcd347087e0bc4e0d1eb8853421b9aa948c40e332c2d99714879469ff213c"], "retirement": "remove" },
25
+ { "id": "legacy-full-v1-21", "path": "scripts/check-active-plan-status.sh", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["24821c2bb128a9b86fadf5a1a0006f23cc5557ad93cba7a959144bdf7753845d"], "canonicalTextSha256": ["24821c2bb128a9b86fadf5a1a0006f23cc5557ad93cba7a959144bdf7753845d"], "retirement": "remove" },
26
+ { "id": "legacy-full-v1-22", "path": "scripts/check-architecture-boundaries.sh", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["38f07e0758bcf369266d1a6eb08cefeb1592ea857f7deaf3153ac8c096965a07"], "canonicalTextSha256": ["38f07e0758bcf369266d1a6eb08cefeb1592ea857f7deaf3153ac8c096965a07"], "retirement": "remove" },
27
+ { "id": "legacy-full-v1-23", "path": "scripts/check-doc-index.sh", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["e207c9458a65f4a5ae954704cab61888c070a6a8c671fdb8b5070138c1f9f05e"], "canonicalTextSha256": ["e207c9458a65f4a5ae954704cab61888c070a6a8c671fdb8b5070138c1f9f05e"], "retirement": "remove" },
28
+ { "id": "legacy-full-v1-24", "path": "scripts/check-doc-links.sh", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["5e57e80018dcc3fba0868876acfaeddcaf46845a046fe593290455b3940d9ca1"], "canonicalTextSha256": ["5e57e80018dcc3fba0868876acfaeddcaf46845a046fe593290455b3940d9ca1"], "retirement": "remove" },
29
+ { "id": "legacy-full-v1-25", "path": "scripts/check-engineering-structure.sh", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["d9a2ab94c35960033725b5c6fb9535cf91eefa7295fc07bcd904930627df09a8"], "canonicalTextSha256": ["d9a2ab94c35960033725b5c6fb9535cf91eefa7295fc07bcd904930627df09a8"], "retirement": "remove" },
30
+ { "id": "legacy-full-v1-26", "path": "scripts/check-exec-plan-index-sync.sh", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["a70395b3cd17106d1d53e877880f46a73e4dcbcea5a4fb32ea2661aebfd520bf"], "canonicalTextSha256": ["a70395b3cd17106d1d53e877880f46a73e4dcbcea5a4fb32ea2661aebfd520bf"], "retirement": "remove" },
31
+ { "id": "legacy-full-v1-27", "path": "scripts/check-harness-runtime-clean.sh", "mode": "copied", "releaseFamily": "legacy-full-v1", "templateIdentity": "loop-agent-0.11-full-init", "rawSha256": ["4f0fe0d161e9cbb6b371392e776337c0416ac9e95aee4586e626deed9a6da51e"], "canonicalTextSha256": ["4f0fe0d161e9cbb6b371392e776337c0416ac9e95aee4586e626deed9a6da51e"], "retirement": "remove" }
32
+ ]
33
+ }
@@ -0,0 +1,34 @@
1
+ ---
2
+ name: init-update
3
+ description: Safely audit and update an existing loop-agent initialization when the user explicitly invokes /skill:init-update. Uses controller-owned candidate evidence and decisions; never deletes files directly.
4
+ ---
5
+
6
+ # Init Update
7
+
8
+ Use this Skill only after explicit invocation. It helps an existing workspace adopt the current initialization surface without treating old controller files as user content or guessing that user files are disposable.
9
+
10
+ ## Workflow
11
+
12
+ 1. Confirm the intended workspace and run `loop-agent --version` so the controller identity is visible.
13
+ 2. Run `loop-agent init check-update --legacy-audit --repo-root . --json` for a read-only explanation. Distinguish `coreState` from `migrationState`.
14
+ 3. Start or resume the controller-owned lifecycle with `loop-agent init upgrade --repo-root . --json`. Continue the same `runId` until it completes, reaches a genuine model merge, or needs a user decision.
15
+ 4. Explain automatic actions, external consumers, modified files, and uncertain provenance in grouped language. Ask the user only where the controller reports a human decision.
16
+ 5. Convert explicit choices into the run-bound decision file exactly as reported. Each legacy decision must retain its `candidateId`, `path`, and `expectedSha256`; never invent a path, hash, candidate id, glob, or directory decision.
17
+ 6. Resume with `loop-agent init upgrade --repo-root . --continue --run-id <runId> --decision-file <repo-relative-json> --json`.
18
+ 7. Report removed files, retained files, unresolved consumers, `coreState`, `migrationState`, and the resumable `runId`.
19
+
20
+ ## Decision Rules
21
+
22
+ - Prefer `retain-project-content` when the file is valid project content.
23
+ - Use `preserve-unproven` when ownership remains uncertain.
24
+ - Use `delete-listed-file` only after the user explicitly approves the exact listed candidates. Manual Skill invocation alone is not deletion approval.
25
+ - A candidate with consumers must be migrated and re-audited before deletion. Do not bypass the controller when it refuses the decision.
26
+ - If the user postpones a choice, leave the run in `review-required`; a ready core can continue running DAGs.
27
+
28
+ ## Hard Boundaries
29
+
30
+ - Do not call `rm`, `Remove-Item`, `git clean`, directory deletion, or a custom deletion script.
31
+ - Do not edit `.harness/init-surface.json`, init-upgrade state, receipts, candidate ids, or hashes by hand.
32
+ - Do not treat modified, staged, untracked, symlinked, junction-backed, referenced, or unproven content as automatically removable.
33
+ - Do not continue mutation while the controller reports active DAG, Worker, or chat runtime activity.
34
+ - Do not expose credentials, provider configuration, or unrelated user files.
@@ -0,0 +1,6 @@
1
+ interface:
2
+ display_name: "Init Update"
3
+ short_description: "Safely audit and update loop-agent initialization"
4
+ default_prompt: "Use $init-update to audit and safely update this workspace initialization."
5
+ policy:
6
+ allow_implicit_invocation: false
@@ -1 +0,0 @@
1
- import{ag as o,ah as n}from"./mermaid.core-Iv91R1WP.js";const t=(a,r)=>o.lang.round(n.parse(a)[r]);export{t as c};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-GF5L2VYU-1v_QamMz.js";import{_ as i}from"./mermaid.core-Iv91R1WP.js";import"./chunk-5VM5RSS4-tENZpcpF.js";import"./chunk-XXDRQBXY-ouI5T7Mr.js";import"./chunk-KBJHAD2P-BvuEury-.js";import"./chunk-2GRJ4B5K-BD9D4h1p.js";import"./index-DybcVXCu.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-GF5L2VYU-1v_QamMz.js";import{_ as i}from"./mermaid.core-Iv91R1WP.js";import"./chunk-5VM5RSS4-tENZpcpF.js";import"./chunk-XXDRQBXY-ouI5T7Mr.js";import"./chunk-KBJHAD2P-BvuEury-.js";import"./chunk-2GRJ4B5K-BD9D4h1p.js";import"./index-DybcVXCu.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};