@goondocks/myco 0.12.9 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/dist/{agent-run-E3P3WWPD.js → agent-run-YBASQHC7.js} +8 -7
- package/dist/{agent-run-E3P3WWPD.js.map → agent-run-YBASQHC7.js.map} +1 -1
- package/dist/{agent-tasks-GWII2I4E.js → agent-tasks-WBQFDHWC.js} +8 -7
- package/dist/{agent-tasks-GWII2I4E.js.map → agent-tasks-WBQFDHWC.js.map} +1 -1
- package/dist/{chunk-LGPBVBFY.js → chunk-2PWO3WPS.js} +5 -7
- package/dist/chunk-2PWO3WPS.js.map +1 -0
- package/dist/{chunk-TCGOSLW6.js → chunk-5BK6M6X5.js} +503 -53
- package/dist/chunk-5BK6M6X5.js.map +1 -0
- package/dist/{chunk-QL2RBFIC.js → chunk-5YQ6VOFZ.js} +2 -2
- package/dist/{chunk-D4M2AV65.js → chunk-DTE3SHYK.js} +46 -3
- package/dist/chunk-DTE3SHYK.js.map +1 -0
- package/dist/{chunk-U7JRFBJO.js → chunk-EUQQVKGQ.js} +2 -2
- package/dist/{chunk-YRUJ5KGV.js → chunk-GDCSPMH4.js} +3 -3
- package/dist/{chunk-LUQBT2Y4.js → chunk-HHZ3RTEI.js} +2 -2
- package/dist/{chunk-JROOQQH6.js → chunk-JBFFAGJK.js} +12 -7
- package/dist/chunk-JBFFAGJK.js.map +1 -0
- package/dist/{chunk-D4ESHOOJ.js → chunk-KNTJOMWY.js} +3 -3
- package/dist/{chunk-JHLALJPB.js → chunk-LD6U3L6O.js} +8 -8
- package/dist/{chunk-Q2AYS2QE.js → chunk-LPISXFM4.js} +5 -7
- package/dist/chunk-LPISXFM4.js.map +1 -0
- package/dist/{chunk-PW5QVY44.js → chunk-NCVR636M.js} +318 -4
- package/dist/chunk-NCVR636M.js.map +1 -0
- package/dist/{chunk-4VSNNMEU.js → chunk-NRT2ZRUG.js} +8 -3
- package/dist/{chunk-4VSNNMEU.js.map → chunk-NRT2ZRUG.js.map} +1 -1
- package/dist/{chunk-7NBDELZB.js → chunk-NVCGF2DS.js} +26 -8
- package/dist/{chunk-7NBDELZB.js.map → chunk-NVCGF2DS.js.map} +1 -1
- package/dist/{chunk-SW62AX75.js → chunk-OKCSSDFC.js} +2 -2
- package/dist/{chunk-RR75ZKEV.js → chunk-OQVKLTQY.js} +4 -4
- package/dist/{chunk-J3L2RTYK.js → chunk-RBFECYNA.js} +2 -2
- package/dist/{chunk-M5XWW7UI.js → chunk-SODRR3HE.js} +8 -1
- package/dist/chunk-SODRR3HE.js.map +1 -0
- package/dist/{chunk-WOT2WJ4U.js → chunk-T77674VB.js} +4 -4
- package/dist/chunk-TFGGH6UB.js +112 -0
- package/dist/chunk-TFGGH6UB.js.map +1 -0
- package/dist/{chunk-UGUJJ7QP.js → chunk-TNCBMGWB.js} +39 -104
- package/dist/chunk-TNCBMGWB.js.map +1 -0
- package/dist/{chunk-PIRWYDOH.js → chunk-TRA3R4EC.js} +7 -1
- package/dist/chunk-TRA3R4EC.js.map +1 -0
- package/dist/{chunk-WDLBFMGG.js → chunk-VQEXXS56.js} +22 -5
- package/dist/chunk-VQEXXS56.js.map +1 -0
- package/dist/{chunk-OAGY5APE.js → chunk-W3T3QDBN.js} +68 -7
- package/dist/chunk-W3T3QDBN.js.map +1 -0
- package/dist/{chunk-UULW753C.js → chunk-YYQWCTF6.js} +3 -3
- package/dist/{cli-3IMEH4B3.js → cli-WCBTILMW.js} +41 -40
- package/dist/{cli-3IMEH4B3.js.map → cli-WCBTILMW.js.map} +1 -1
- package/dist/{client-573ALWTB.js → client-MJUZJ5MC.js} +5 -5
- package/dist/{config-6RQ7FAEV.js → config-WBCOTJUE.js} +5 -3
- package/dist/{config-6RQ7FAEV.js.map → config-WBCOTJUE.js.map} +1 -1
- package/dist/{detect-providers-JFE3QLJI.js → detect-providers-PAVE2X6O.js} +4 -4
- package/dist/{doctor-JF4FL5GC.js → doctor-GDCLRJOF.js} +13 -11
- package/dist/{doctor-JF4FL5GC.js.map → doctor-GDCLRJOF.js.map} +1 -1
- package/dist/{executor-AEMKLSPL.js → executor-TCAXFOIS.js} +374 -39
- package/dist/executor-TCAXFOIS.js.map +1 -0
- package/dist/{init-QJECXRAK.js → init-ZSDMXY4T.js} +16 -15
- package/dist/{init-QJECXRAK.js.map → init-ZSDMXY4T.js.map} +1 -1
- package/dist/{init-wizard-XVMYHYKS.js → init-wizard-6LDUVR7C.js} +12 -12
- package/dist/installer-25TSX4SR.js +13 -0
- package/dist/{llm-O46QYWEM.js → llm-T3QVHC3Y.js} +7 -7
- package/dist/{loader-4FMGOVWF.js → loader-L2TCAYCT.js} +4 -2
- package/dist/{loader-BQ4X4K3F.js → loader-WQKVWL5D.js} +4 -4
- package/dist/{main-J572ROIU.js → main-25MKYYKO.js} +452 -103
- package/dist/main-25MKYYKO.js.map +1 -0
- package/dist/{open-QUZWM6K7.js → open-4YTUNIP3.js} +8 -7
- package/dist/{open-QUZWM6K7.js.map → open-4YTUNIP3.js.map} +1 -1
- package/dist/{openai-embeddings-HWAKOGUM.js → openai-embeddings-5T5ZP7LO.js} +4 -4
- package/dist/{openrouter-GXZK7JXR.js → openrouter-RD2COFC7.js} +4 -4
- package/dist/{post-compact-W2ODRZPJ.js → post-compact-E5V4OZJB.js} +7 -7
- package/dist/{post-tool-use-3XH3VOB4.js → post-tool-use-Y6UWKCVD.js} +7 -7
- package/dist/{post-tool-use-failure-Z53CLPHH.js → post-tool-use-failure-AHFXMNHX.js} +7 -7
- package/dist/{pre-compact-G4ISWQVV.js → pre-compact-EI5EV3N7.js} +7 -7
- package/dist/{provider-check-CKZW3GQX.js → provider-check-QN7OGXZA.js} +4 -4
- package/dist/{registry-ZHUVXGPO.js → registry-2XQMCPA6.js} +5 -5
- package/dist/{remove-5AX5LPGC.js → remove-F63WBELE.js} +10 -8
- package/dist/{remove-5AX5LPGC.js.map → remove-F63WBELE.js.map} +1 -1
- package/dist/{resolution-events-WZHPQQMN.js → resolution-events-BZYMUQ53.js} +4 -4
- package/dist/{restart-5IAA7RBM.js → restart-GULUNCMX.js} +9 -8
- package/dist/{restart-5IAA7RBM.js.map → restart-GULUNCMX.js.map} +1 -1
- package/dist/{search-3S4PPUTG.js → search-NLZMCEAG.js} +9 -8
- package/dist/{search-3S4PPUTG.js.map → search-NLZMCEAG.js.map} +1 -1
- package/dist/{server-X6LBFCBV.js → server-CXPWUO6H.js} +115 -14
- package/dist/server-CXPWUO6H.js.map +1 -0
- package/dist/{session-T4Y5AIHM.js → session-XXVEDIQZ.js} +10 -9
- package/dist/{session-T4Y5AIHM.js.map → session-XXVEDIQZ.js.map} +1 -1
- package/dist/{session-end-FMQ4JJU7.js → session-end-6DP6VTZV.js} +6 -6
- package/dist/{session-start-KV2WR6UI.js → session-start-QNAQDF5M.js} +12 -12
- package/dist/{setup-llm-YVI7ZSVN.js → setup-llm-ER3B7AZ2.js} +10 -9
- package/dist/{setup-llm-YVI7ZSVN.js.map → setup-llm-ER3B7AZ2.js.map} +1 -1
- package/dist/src/agent/definitions/agent.yaml +2 -0
- package/dist/src/agent/definitions/tasks/digest-only.yaml +1 -0
- package/dist/src/agent/definitions/tasks/extract-only.yaml +1 -0
- package/dist/src/agent/definitions/tasks/full-intelligence.yaml +8 -0
- package/dist/src/agent/definitions/tasks/graph-maintenance.yaml +1 -0
- package/dist/src/agent/definitions/tasks/review-session.yaml +1 -0
- package/dist/src/agent/definitions/tasks/skill-evolve.yaml +155 -0
- package/dist/src/agent/definitions/tasks/skill-generate.yaml +210 -0
- package/dist/src/agent/definitions/tasks/skill-survey.yaml +149 -0
- package/dist/src/agent/definitions/tasks/supersession-sweep.yaml +1 -0
- package/dist/src/agent/definitions/tasks/title-summary.yaml +1 -0
- package/dist/src/agent/prompts/agent.md +29 -0
- package/dist/src/cli.js +1 -1
- package/dist/src/daemon/main.js +1 -1
- package/dist/src/hooks/post-tool-use.js +1 -1
- package/dist/src/hooks/session-end.js +1 -1
- package/dist/src/hooks/session-start.js +1 -1
- package/dist/src/hooks/stop.js +1 -1
- package/dist/src/hooks/user-prompt-submit.js +1 -1
- package/dist/src/mcp/server.js +1 -1
- package/dist/src/worker/src/index.ts +3 -0
- package/dist/src/worker/src/schema.ts +56 -0
- package/dist/{stats-EFF4XRAO.js → stats-VQ7XMOCU.js} +10 -9
- package/dist/{stats-EFF4XRAO.js.map → stats-VQ7XMOCU.js.map} +1 -1
- package/dist/{stop-SIQJWOPU.js → stop-VTO2KIRG.js} +6 -6
- package/dist/{stop-failure-EHYMRRER.js → stop-failure-C5T6LJQR.js} +7 -7
- package/dist/{subagent-start-AMS3YX5E.js → subagent-start-NZF42NKF.js} +7 -7
- package/dist/{subagent-stop-KVQ52RFD.js → subagent-stop-UV5ECFVU.js} +7 -7
- package/dist/{task-completed-JFQK3X4Z.js → task-completed-3SV6TL3V.js} +7 -7
- package/dist/{team-VU5MGPGG.js → team-XSJXLBZX.js} +51 -25
- package/dist/team-XSJXLBZX.js.map +1 -0
- package/dist/ui/assets/index-BeygBZGu.css +1 -0
- package/dist/ui/assets/index-CbGC0T_o.js +822 -0
- package/dist/ui/index.html +2 -2
- package/dist/{update-BO3DEE7S.js → update-5GXOQIY5.js} +8 -7
- package/dist/{update-BO3DEE7S.js.map → update-5GXOQIY5.js.map} +1 -1
- package/dist/{user-prompt-submit-EZMRI7SR.js → user-prompt-submit-VLQG77A6.js} +6 -6
- package/dist/{verify-MQAANTUR.js → verify-WF7U3NQW.js} +8 -8
- package/dist/{version-IEMGX4RA.js → version-RGX7TZ7V.js} +2 -2
- package/dist/version-RGX7TZ7V.js.map +1 -0
- package/package.json +6 -6
- package/dist/chunk-D4M2AV65.js.map +0 -1
- package/dist/chunk-JROOQQH6.js.map +0 -1
- package/dist/chunk-LGPBVBFY.js.map +0 -1
- package/dist/chunk-M5XWW7UI.js.map +0 -1
- package/dist/chunk-OAGY5APE.js.map +0 -1
- package/dist/chunk-PIRWYDOH.js.map +0 -1
- package/dist/chunk-PW5QVY44.js.map +0 -1
- package/dist/chunk-Q2AYS2QE.js.map +0 -1
- package/dist/chunk-TCGOSLW6.js.map +0 -1
- package/dist/chunk-UGUJJ7QP.js.map +0 -1
- package/dist/chunk-WDLBFMGG.js.map +0 -1
- package/dist/executor-AEMKLSPL.js.map +0 -1
- package/dist/main-J572ROIU.js.map +0 -1
- package/dist/server-X6LBFCBV.js.map +0 -1
- package/dist/team-VU5MGPGG.js.map +0 -1
- package/dist/ui/assets/index-BGbil7f1.css +0 -1
- package/dist/ui/assets/index-ZSGlKT25.js +0 -804
- /package/dist/{chunk-QL2RBFIC.js.map → chunk-5YQ6VOFZ.js.map} +0 -0
- /package/dist/{chunk-U7JRFBJO.js.map → chunk-EUQQVKGQ.js.map} +0 -0
- /package/dist/{chunk-YRUJ5KGV.js.map → chunk-GDCSPMH4.js.map} +0 -0
- /package/dist/{chunk-LUQBT2Y4.js.map → chunk-HHZ3RTEI.js.map} +0 -0
- /package/dist/{chunk-D4ESHOOJ.js.map → chunk-KNTJOMWY.js.map} +0 -0
- /package/dist/{chunk-JHLALJPB.js.map → chunk-LD6U3L6O.js.map} +0 -0
- /package/dist/{chunk-SW62AX75.js.map → chunk-OKCSSDFC.js.map} +0 -0
- /package/dist/{chunk-RR75ZKEV.js.map → chunk-OQVKLTQY.js.map} +0 -0
- /package/dist/{chunk-J3L2RTYK.js.map → chunk-RBFECYNA.js.map} +0 -0
- /package/dist/{chunk-WOT2WJ4U.js.map → chunk-T77674VB.js.map} +0 -0
- /package/dist/{chunk-UULW753C.js.map → chunk-YYQWCTF6.js.map} +0 -0
- /package/dist/{client-573ALWTB.js.map → client-MJUZJ5MC.js.map} +0 -0
- /package/dist/{detect-providers-JFE3QLJI.js.map → detect-providers-PAVE2X6O.js.map} +0 -0
- /package/dist/{init-wizard-XVMYHYKS.js.map → init-wizard-6LDUVR7C.js.map} +0 -0
- /package/dist/{llm-O46QYWEM.js.map → installer-25TSX4SR.js.map} +0 -0
- /package/dist/{loader-4FMGOVWF.js.map → llm-T3QVHC3Y.js.map} +0 -0
- /package/dist/{loader-BQ4X4K3F.js.map → loader-L2TCAYCT.js.map} +0 -0
- /package/dist/{openai-embeddings-HWAKOGUM.js.map → loader-WQKVWL5D.js.map} +0 -0
- /package/dist/{openrouter-GXZK7JXR.js.map → openai-embeddings-5T5ZP7LO.js.map} +0 -0
- /package/dist/{provider-check-CKZW3GQX.js.map → openrouter-RD2COFC7.js.map} +0 -0
- /package/dist/{post-compact-W2ODRZPJ.js.map → post-compact-E5V4OZJB.js.map} +0 -0
- /package/dist/{post-tool-use-3XH3VOB4.js.map → post-tool-use-Y6UWKCVD.js.map} +0 -0
- /package/dist/{post-tool-use-failure-Z53CLPHH.js.map → post-tool-use-failure-AHFXMNHX.js.map} +0 -0
- /package/dist/{pre-compact-G4ISWQVV.js.map → pre-compact-EI5EV3N7.js.map} +0 -0
- /package/dist/{registry-ZHUVXGPO.js.map → provider-check-QN7OGXZA.js.map} +0 -0
- /package/dist/{resolution-events-WZHPQQMN.js.map → registry-2XQMCPA6.js.map} +0 -0
- /package/dist/{version-IEMGX4RA.js.map → resolution-events-BZYMUQ53.js.map} +0 -0
- /package/dist/{session-end-FMQ4JJU7.js.map → session-end-6DP6VTZV.js.map} +0 -0
- /package/dist/{session-start-KV2WR6UI.js.map → session-start-QNAQDF5M.js.map} +0 -0
- /package/dist/{stop-SIQJWOPU.js.map → stop-VTO2KIRG.js.map} +0 -0
- /package/dist/{stop-failure-EHYMRRER.js.map → stop-failure-C5T6LJQR.js.map} +0 -0
- /package/dist/{subagent-start-AMS3YX5E.js.map → subagent-start-NZF42NKF.js.map} +0 -0
- /package/dist/{subagent-stop-KVQ52RFD.js.map → subagent-stop-UV5ECFVU.js.map} +0 -0
- /package/dist/{task-completed-JFQK3X4Z.js.map → task-completed-3SV6TL3V.js.map} +0 -0
- /package/dist/{user-prompt-submit-EZMRI7SR.js.map → user-prompt-submit-VLQG77A6.js.map} +0 -0
- /package/dist/{verify-MQAANTUR.js.map → verify-WF7U3NQW.js.map} +0 -0
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
name: skill-survey
|
|
2
|
+
displayName: Skill Candidate Survey
|
|
3
|
+
description: >-
|
|
4
|
+
Analyze vault knowledge for procedural skill candidates. Identifies
|
|
5
|
+
clusters of related sessions, spores, and plans that describe how
|
|
6
|
+
to accomplish tasks in this project.
|
|
7
|
+
agent: myco-agent
|
|
8
|
+
prompt: >-
|
|
9
|
+
Survey the vault knowledge graph for procedural skill candidates.
|
|
10
|
+
isDefault: false
|
|
11
|
+
model: claude-sonnet-4-6
|
|
12
|
+
maxTurns: 40
|
|
13
|
+
timeoutSeconds: 600
|
|
14
|
+
schedule:
|
|
15
|
+
enabled: true
|
|
16
|
+
intervalSeconds: 600
|
|
17
|
+
runIn:
|
|
18
|
+
- idle
|
|
19
|
+
phases:
|
|
20
|
+
- name: explore-spores
|
|
21
|
+
prompt: |
|
|
22
|
+
Explore ALL spores in the vault to identify procedural patterns.
|
|
23
|
+
You are one of three parallel exploration phases — focus only on spores.
|
|
24
|
+
|
|
25
|
+
1. Query wisdom spores first (vault_spores, observation_type: wisdom).
|
|
26
|
+
These are the highest signal — synthesized from multiple sessions.
|
|
27
|
+
|
|
28
|
+
2. Query decisions, discoveries, and gotchas. Paginate through ALL
|
|
29
|
+
active spores (use offset parameter), not just the first page.
|
|
30
|
+
|
|
31
|
+
3. Use vault_entities to see what components and concepts exist.
|
|
32
|
+
High-mention-count entities often indicate areas that need skills.
|
|
33
|
+
|
|
34
|
+
4. Read the digest (vault_read_digest) for a high-level overview.
|
|
35
|
+
|
|
36
|
+
For each finding, note: what procedure does this relate to?
|
|
37
|
+
Group findings by procedural topic ("how to do X").
|
|
38
|
+
tools:
|
|
39
|
+
- vault_spores
|
|
40
|
+
- vault_entities
|
|
41
|
+
- vault_edges
|
|
42
|
+
- vault_read_digest
|
|
43
|
+
maxTurns: 8
|
|
44
|
+
required: true
|
|
45
|
+
|
|
46
|
+
- name: explore-sessions
|
|
47
|
+
prompt: |
|
|
48
|
+
Explore ALL sessions in the vault to identify procedural workflows.
|
|
49
|
+
You are one of three parallel exploration phases — focus only on sessions.
|
|
50
|
+
|
|
51
|
+
1. List all sessions (vault_sessions). Paginate through them.
|
|
52
|
+
Session summaries describe workflows and multi-step implementations.
|
|
53
|
+
|
|
54
|
+
2. Look for recurring themes — "3+ sessions touched the same component"
|
|
55
|
+
is a strong skill candidate signal.
|
|
56
|
+
|
|
57
|
+
3. Use vault_search_fts to search session content for procedural
|
|
58
|
+
keywords: "how to", "step", "migration", "refactor", "debug",
|
|
59
|
+
"configure", "install", "deploy".
|
|
60
|
+
|
|
61
|
+
For each finding, note: what procedure does this relate to?
|
|
62
|
+
Group findings by procedural topic ("how to do X").
|
|
63
|
+
tools:
|
|
64
|
+
- vault_sessions
|
|
65
|
+
- vault_search_fts
|
|
66
|
+
maxTurns: 8
|
|
67
|
+
required: true
|
|
68
|
+
|
|
69
|
+
- name: explore-plans
|
|
70
|
+
prompt: |
|
|
71
|
+
Explore ALL plans and artifacts in the vault to identify procedures.
|
|
72
|
+
You are one of three parallel exploration phases — focus only on plans.
|
|
73
|
+
|
|
74
|
+
Plans contain explicit step-by-step procedures and design decisions.
|
|
75
|
+
They are often the most directly skill-ready content.
|
|
76
|
+
|
|
77
|
+
1. Use vault_search_semantic with broad queries to find plans:
|
|
78
|
+
- "implementation plan design architecture"
|
|
79
|
+
- "migration refactor setup configuration"
|
|
80
|
+
- "testing deployment workflow pipeline"
|
|
81
|
+
- "debugging troubleshooting fix"
|
|
82
|
+
|
|
83
|
+
2. Use vault_search_fts to search for specific procedural terms
|
|
84
|
+
across plans and artifacts.
|
|
85
|
+
|
|
86
|
+
For each finding, note: what procedure does this relate to?
|
|
87
|
+
Group findings by procedural topic ("how to do X").
|
|
88
|
+
tools:
|
|
89
|
+
- vault_search_semantic
|
|
90
|
+
- vault_search_fts
|
|
91
|
+
maxTurns: 8
|
|
92
|
+
required: true
|
|
93
|
+
|
|
94
|
+
- name: evaluate
|
|
95
|
+
prompt: |
|
|
96
|
+
Three parallel exploration phases have completed — one explored
|
|
97
|
+
spores and entities, one explored sessions, one explored plans.
|
|
98
|
+
Their findings are in the prior context.
|
|
99
|
+
|
|
100
|
+
For each procedural cluster identified across the exploration phases:
|
|
101
|
+
|
|
102
|
+
1. Is this a procedure (how to do something in this project)?
|
|
103
|
+
Only procedures become skills. "What is X" is not a skill.
|
|
104
|
+
"How to do X" is a skill.
|
|
105
|
+
|
|
106
|
+
2. Is there enough cross-session evidence?
|
|
107
|
+
Minimum: knowledge from 2+ sessions, 3+ source items across
|
|
108
|
+
sessions, spores, and plans.
|
|
109
|
+
|
|
110
|
+
3. Does an existing skill or candidate already cover this topic?
|
|
111
|
+
Use vault_skill_candidates (action: list) to check.
|
|
112
|
+
|
|
113
|
+
4. Score confidence (0.0-1.0) based on:
|
|
114
|
+
- Knowledge density (more sources = higher)
|
|
115
|
+
- Cross-session evidence (wider = higher)
|
|
116
|
+
- Presence of wisdom spores (higher quality signal)
|
|
117
|
+
- Presence of plans with step-by-step procedures (higher)
|
|
118
|
+
|
|
119
|
+
For each valid candidate, use vault_skill_candidates (action: create)
|
|
120
|
+
with topic, rationale, confidence, and source_ids (JSON array of
|
|
121
|
+
{id, type} objects referencing the spores, sessions, and plans).
|
|
122
|
+
|
|
123
|
+
IMPORTANT: Write the rationale field as markdown. Use:
|
|
124
|
+
- **Bold** for key terms and pass/fail verdicts
|
|
125
|
+
- Numbered lists for the procedure steps identified
|
|
126
|
+
- Inline `code` for file paths, function names, and config keys
|
|
127
|
+
- A brief summary sentence, then the evidence structure
|
|
128
|
+
|
|
129
|
+
The rationale is displayed directly to the user in the dashboard.
|
|
130
|
+
|
|
131
|
+
If an existing candidate has new evidence, use vault_skill_candidates
|
|
132
|
+
(action: update) to increase confidence and add source_ids.
|
|
133
|
+
|
|
134
|
+
Dismiss candidates whose underlying knowledge has been superseded
|
|
135
|
+
(action: update, status: dismissed).
|
|
136
|
+
|
|
137
|
+
Report a summary of candidates created, updated, and dismissed
|
|
138
|
+
using vault_report.
|
|
139
|
+
tools:
|
|
140
|
+
- vault_skill_candidates
|
|
141
|
+
- vault_skill_records
|
|
142
|
+
- vault_set_state
|
|
143
|
+
- vault_report
|
|
144
|
+
maxTurns: 8
|
|
145
|
+
required: true
|
|
146
|
+
dependsOn:
|
|
147
|
+
- explore-spores
|
|
148
|
+
- explore-sessions
|
|
149
|
+
- explore-plans
|
|
@@ -93,6 +93,35 @@ Three types only:
|
|
|
93
93
|
|
|
94
94
|
Set `confidence` below 1.0 when the relationship is inferred rather than explicitly stated. Include `session_id` for provenance.
|
|
95
95
|
|
|
96
|
+
## Skill Lifecycle Tools
|
|
97
|
+
|
|
98
|
+
### vault_skill_candidates
|
|
99
|
+
|
|
100
|
+
Query and manage skill candidates — observations that may become project skills.
|
|
101
|
+
|
|
102
|
+
- **list**: Browse pending/approved/dismissed candidates. Filter with `status` param.
|
|
103
|
+
- **get**: Retrieve a specific candidate by `id`.
|
|
104
|
+
- **create**: Register a new candidate with `topic` and `rationale`.
|
|
105
|
+
- **update**: Change status (e.g., approve with `status: 'approved'`), add source_ids, or link to a skill.
|
|
106
|
+
- **delete**: Remove a candidate by `id`.
|
|
107
|
+
|
|
108
|
+
### vault_skill_records
|
|
109
|
+
|
|
110
|
+
Query and manage materialized skill records.
|
|
111
|
+
|
|
112
|
+
- **list**: Browse skills. Filter with `status` (active, stale, retired).
|
|
113
|
+
- **get**: Retrieve a specific skill by `id` or name, including lineage and usage.
|
|
114
|
+
- **update**: Change status or description.
|
|
115
|
+
- **delete**: Remove a skill record and its lineage/usage data.
|
|
116
|
+
|
|
117
|
+
### vault_write_skill
|
|
118
|
+
|
|
119
|
+
Write or update a skill file on disk with structural validation and automatic DB record management.
|
|
120
|
+
|
|
121
|
+
Required fields: `name` (kebab-case directory name), `display_name`, `description`, `content` (full SKILL.md with YAML frontmatter).
|
|
122
|
+
|
|
123
|
+
Quality gate enforces: YAML frontmatter present, name/description/managed_by fields, `myco:` name prefix, `managed_by: myco`, ≤500 lines.
|
|
124
|
+
|
|
96
125
|
## Processing Protocol
|
|
97
126
|
|
|
98
127
|
When running as a single-query task (no phased executor), follow this general sequence:
|
package/dist/src/cli.js
CHANGED
package/dist/src/daemon/main.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// src/entries/daemon.ts
|
|
4
|
-
var { main } = await import("../../main-
|
|
4
|
+
var { main } = await import("../../main-25MKYYKO.js");
|
|
5
5
|
await main();
|
|
6
6
|
//# sourceMappingURL=main.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// src/entries/post-tool-use.ts
|
|
4
|
-
var { main } = await import("../../post-tool-use-
|
|
4
|
+
var { main } = await import("../../post-tool-use-Y6UWKCVD.js");
|
|
5
5
|
await main();
|
|
6
6
|
//# sourceMappingURL=post-tool-use.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// src/entries/session-end.ts
|
|
4
|
-
var { main } = await import("../../session-end-
|
|
4
|
+
var { main } = await import("../../session-end-6DP6VTZV.js");
|
|
5
5
|
await main();
|
|
6
6
|
//# sourceMappingURL=session-end.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// src/entries/session-start.ts
|
|
4
|
-
var { main } = await import("../../session-start-
|
|
4
|
+
var { main } = await import("../../session-start-QNAQDF5M.js");
|
|
5
5
|
await main();
|
|
6
6
|
//# sourceMappingURL=session-start.js.map
|
package/dist/src/hooks/stop.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// src/entries/stop.ts
|
|
4
|
-
var { main } = await import("../../stop-
|
|
4
|
+
var { main } = await import("../../stop-VTO2KIRG.js");
|
|
5
5
|
await main();
|
|
6
6
|
//# sourceMappingURL=stop.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// src/entries/user-prompt-submit.ts
|
|
4
|
-
var { main } = await import("../../user-prompt-submit-
|
|
4
|
+
var { main } = await import("../../user-prompt-submit-VLQG77A6.js");
|
|
5
5
|
await main();
|
|
6
6
|
//# sourceMappingURL=user-prompt-submit.js.map
|
package/dist/src/mcp/server.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
|
|
3
3
|
// src/entries/mcp-server.ts
|
|
4
|
-
var { main } = await import("../../server-
|
|
4
|
+
var { main } = await import("../../server-CXPWUO6H.js");
|
|
5
5
|
await main();
|
|
6
6
|
//# sourceMappingURL=server.js.map
|
|
@@ -183,6 +183,55 @@ const DIGEST_EXTRACTS_TABLE = `
|
|
|
183
183
|
PRIMARY KEY (id, machine_id)
|
|
184
184
|
)`;
|
|
185
185
|
|
|
186
|
+
const SKILL_CANDIDATES_TABLE = `
|
|
187
|
+
CREATE TABLE IF NOT EXISTS skill_candidates (
|
|
188
|
+
id TEXT NOT NULL,
|
|
189
|
+
machine_id TEXT NOT NULL,
|
|
190
|
+
agent_id TEXT NOT NULL,
|
|
191
|
+
topic TEXT NOT NULL,
|
|
192
|
+
rationale TEXT NOT NULL,
|
|
193
|
+
confidence REAL NOT NULL DEFAULT 0.0,
|
|
194
|
+
status TEXT NOT NULL DEFAULT 'identified',
|
|
195
|
+
source_ids TEXT NOT NULL DEFAULT '[]',
|
|
196
|
+
skill_id TEXT,
|
|
197
|
+
created_at INTEGER NOT NULL,
|
|
198
|
+
updated_at INTEGER NOT NULL,
|
|
199
|
+
synced_at INTEGER,
|
|
200
|
+
PRIMARY KEY (id, machine_id)
|
|
201
|
+
)`;
|
|
202
|
+
|
|
203
|
+
const SKILL_RECORDS_TABLE = `
|
|
204
|
+
CREATE TABLE IF NOT EXISTS skill_records (
|
|
205
|
+
id TEXT NOT NULL,
|
|
206
|
+
machine_id TEXT NOT NULL,
|
|
207
|
+
agent_id TEXT NOT NULL,
|
|
208
|
+
name TEXT NOT NULL,
|
|
209
|
+
display_name TEXT NOT NULL,
|
|
210
|
+
description TEXT NOT NULL,
|
|
211
|
+
status TEXT NOT NULL DEFAULT 'active',
|
|
212
|
+
generation INTEGER NOT NULL DEFAULT 1,
|
|
213
|
+
candidate_id TEXT,
|
|
214
|
+
source_ids TEXT NOT NULL DEFAULT '[]',
|
|
215
|
+
path TEXT NOT NULL,
|
|
216
|
+
usage_count INTEGER NOT NULL DEFAULT 0,
|
|
217
|
+
last_used_at INTEGER,
|
|
218
|
+
created_at INTEGER NOT NULL,
|
|
219
|
+
updated_at INTEGER NOT NULL,
|
|
220
|
+
properties TEXT NOT NULL DEFAULT '{}',
|
|
221
|
+
synced_at INTEGER,
|
|
222
|
+
PRIMARY KEY (id, machine_id)
|
|
223
|
+
)`;
|
|
224
|
+
|
|
225
|
+
const SKILL_USAGE_TABLE = `
|
|
226
|
+
CREATE TABLE IF NOT EXISTS skill_usage (
|
|
227
|
+
id TEXT NOT NULL,
|
|
228
|
+
machine_id TEXT NOT NULL,
|
|
229
|
+
skill_id TEXT NOT NULL,
|
|
230
|
+
session_id TEXT NOT NULL,
|
|
231
|
+
detected_at INTEGER NOT NULL,
|
|
232
|
+
PRIMARY KEY (id, machine_id)
|
|
233
|
+
)`;
|
|
234
|
+
|
|
186
235
|
const NODES_TABLE = `
|
|
187
236
|
CREATE TABLE IF NOT EXISTS nodes (
|
|
188
237
|
machine_id TEXT PRIMARY KEY,
|
|
@@ -209,6 +258,10 @@ const SECONDARY_INDEXES = [
|
|
|
209
258
|
'CREATE INDEX IF NOT EXISTS idx_graph_edges_source ON graph_edges (source_id, source_type)',
|
|
210
259
|
'CREATE INDEX IF NOT EXISTS idx_graph_edges_target ON graph_edges (target_id, target_type)',
|
|
211
260
|
'CREATE INDEX IF NOT EXISTS idx_entities_type ON entities (type)',
|
|
261
|
+
'CREATE INDEX IF NOT EXISTS idx_skill_candidates_status ON skill_candidates (status)',
|
|
262
|
+
'CREATE INDEX IF NOT EXISTS idx_skill_records_status ON skill_records (status)',
|
|
263
|
+
'CREATE INDEX IF NOT EXISTS idx_skill_records_name ON skill_records (name, machine_id)',
|
|
264
|
+
'CREATE INDEX IF NOT EXISTS idx_skill_usage_skill_id ON skill_usage (skill_id)',
|
|
212
265
|
];
|
|
213
266
|
|
|
214
267
|
const ALL_DDLS = [
|
|
@@ -222,6 +275,9 @@ const ALL_DDLS = [
|
|
|
222
275
|
PLANS_TABLE,
|
|
223
276
|
ARTIFACTS_TABLE,
|
|
224
277
|
DIGEST_EXTRACTS_TABLE,
|
|
278
|
+
SKILL_CANDIDATES_TABLE,
|
|
279
|
+
SKILL_RECORDS_TABLE,
|
|
280
|
+
SKILL_USAGE_TABLE,
|
|
225
281
|
NODES_TABLE,
|
|
226
282
|
TEAM_CONFIG_TABLE,
|
|
227
283
|
];
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
gatherStats
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-T77674VB.js";
|
|
5
5
|
import {
|
|
6
6
|
initVaultDb
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-TFGGH6UB.js";
|
|
8
8
|
import "./chunk-SAKJMNSR.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-TNCBMGWB.js";
|
|
10
|
+
import "./chunk-HHZ3RTEI.js";
|
|
11
|
+
import "./chunk-W3T3QDBN.js";
|
|
11
12
|
import "./chunk-MYX5NCRH.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-S6I62FAH.js";
|
|
15
|
-
import "./chunk-U7JRFBJO.js";
|
|
13
|
+
import "./chunk-VQEXXS56.js";
|
|
14
|
+
import "./chunk-EUQQVKGQ.js";
|
|
16
15
|
import "./chunk-LPUQPDC2.js";
|
|
16
|
+
import "./chunk-TRA3R4EC.js";
|
|
17
|
+
import "./chunk-S6I62FAH.js";
|
|
17
18
|
import "./chunk-D7TYRPRM.js";
|
|
18
19
|
import "./chunk-E4VLWIJC.js";
|
|
19
20
|
import "./chunk-KH64DHOY.js";
|
|
@@ -91,4 +92,4 @@ function formatUptime(seconds) {
|
|
|
91
92
|
export {
|
|
92
93
|
run
|
|
93
94
|
};
|
|
94
|
-
//# sourceMappingURL=stats-
|
|
95
|
+
//# sourceMappingURL=stats-VQ7XMOCU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/cli/stats.ts"],"sourcesContent":["/**\n * CLI: myco stats — display vault statistics.\n *\n * Opens the SQLite database directly (WAL mode allows concurrent reads).\n * Does NOT require the daemon to be running.\n */\n\nimport type { V2Stats } from '../services/stats.js';\nimport { gatherStats } from '../services/stats.js';\nimport { initVaultDb } from './shared.js';\n\nexport async function run(_args: string[], vaultDir: string): Promise<void> {\n const cleanup = initVaultDb(vaultDir);\n let stats: V2Stats;\n try {\n stats = gatherStats(vaultDir);\n } catch (err) {\n cleanup();\n console.error('Failed to read vault database:', (err as Error).message);\n process.exit(1);\n }\n cleanup();\n\n console.log('=== Myco Vault ===');\n console.log(`Path: ${stats.vault.path}`);\n console.log(`Name: ${stats.vault.name}`);\n\n console.log('\\n--- Data ---');\n console.log(`Sessions: ${stats.vault.session_count}`);\n console.log(`Batches: ${stats.vault.batch_count}`);\n console.log(`Spores: ${stats.vault.spore_count}`);\n console.log(`Plans: ${stats.vault.plan_count}`);\n console.log(`Artifacts: ${stats.vault.artifact_count}`);\n console.log(`Entities: ${stats.vault.entity_count}`);\n console.log(`Edges: ${stats.vault.edge_count}`);\n\n console.log('\\n--- Embeddings ---');\n console.log(`Provider: ${stats.embedding.provider} (${stats.embedding.model})`);\n console.log(`Embedded: ${stats.embedding.embedded_count} / ${stats.embedding.total_embeddable}`);\n if (stats.embedding.queue_depth > 0) {\n console.log(`Queue: ${stats.embedding.queue_depth} pending`);\n }\n\n console.log('\\n--- Agent ---');\n if (stats.agent.total_runs === 0) {\n console.log('No runs yet');\n } else {\n const lastAt = stats.agent.last_run_at\n ? new Date(stats.agent.last_run_at * 1000).toISOString()\n : 'never';\n console.log(`Last run: ${lastAt} (${stats.agent.last_run_status ?? 'unknown'})`);\n console.log(`Total runs: ${stats.agent.total_runs}`);\n }\n if (stats.unprocessed_batches > 0) {\n console.log(`Pending: ${stats.unprocessed_batches} unprocessed batch(es)`);\n }\n\n console.log('\\n--- Digest ---');\n if (stats.digest.tiers_available.length === 0) {\n console.log('No digest extracts yet');\n } else {\n const generatedAt = stats.digest.generated_at\n ? new Date(stats.digest.generated_at * 1000).toISOString()\n : 'unknown';\n console.log(`Tiers: ${stats.digest.tiers_available.join(', ')}`);\n console.log(`Freshest: tier ${stats.digest.freshest_tier} (generated ${generatedAt})`);\n }\n\n // Daemon section — from the live daemon stats\n const { pid, port, version, uptime_seconds, active_sessions } = stats.daemon;\n if (pid > 0) {\n console.log('\\n--- Daemon ---');\n console.log(`PID: ${pid} (running)`);\n console.log(`Port: ${port}`);\n if (version) console.log(`Version: ${version}`);\n if (uptime_seconds > 0) {\n console.log(`Uptime: ${formatUptime(uptime_seconds)}`);\n }\n console.log(`Dashboard: http://localhost:${port}/`);\n console.log(`Sessions: ${active_sessions.length}`);\n }\n}\n\nfunction formatUptime(seconds: number): string {\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = seconds % 60;\n if (h > 0) return `${h}h ${m}m ${s}s`;\n if (m > 0) return `${m}m ${s}s`;\n return `${s}s`;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/cli/stats.ts"],"sourcesContent":["/**\n * CLI: myco stats — display vault statistics.\n *\n * Opens the SQLite database directly (WAL mode allows concurrent reads).\n * Does NOT require the daemon to be running.\n */\n\nimport type { V2Stats } from '../services/stats.js';\nimport { gatherStats } from '../services/stats.js';\nimport { initVaultDb } from './shared.js';\n\nexport async function run(_args: string[], vaultDir: string): Promise<void> {\n const cleanup = initVaultDb(vaultDir);\n let stats: V2Stats;\n try {\n stats = gatherStats(vaultDir);\n } catch (err) {\n cleanup();\n console.error('Failed to read vault database:', (err as Error).message);\n process.exit(1);\n }\n cleanup();\n\n console.log('=== Myco Vault ===');\n console.log(`Path: ${stats.vault.path}`);\n console.log(`Name: ${stats.vault.name}`);\n\n console.log('\\n--- Data ---');\n console.log(`Sessions: ${stats.vault.session_count}`);\n console.log(`Batches: ${stats.vault.batch_count}`);\n console.log(`Spores: ${stats.vault.spore_count}`);\n console.log(`Plans: ${stats.vault.plan_count}`);\n console.log(`Artifacts: ${stats.vault.artifact_count}`);\n console.log(`Entities: ${stats.vault.entity_count}`);\n console.log(`Edges: ${stats.vault.edge_count}`);\n\n console.log('\\n--- Embeddings ---');\n console.log(`Provider: ${stats.embedding.provider} (${stats.embedding.model})`);\n console.log(`Embedded: ${stats.embedding.embedded_count} / ${stats.embedding.total_embeddable}`);\n if (stats.embedding.queue_depth > 0) {\n console.log(`Queue: ${stats.embedding.queue_depth} pending`);\n }\n\n console.log('\\n--- Agent ---');\n if (stats.agent.total_runs === 0) {\n console.log('No runs yet');\n } else {\n const lastAt = stats.agent.last_run_at\n ? new Date(stats.agent.last_run_at * 1000).toISOString()\n : 'never';\n console.log(`Last run: ${lastAt} (${stats.agent.last_run_status ?? 'unknown'})`);\n console.log(`Total runs: ${stats.agent.total_runs}`);\n }\n if (stats.unprocessed_batches > 0) {\n console.log(`Pending: ${stats.unprocessed_batches} unprocessed batch(es)`);\n }\n\n console.log('\\n--- Digest ---');\n if (stats.digest.tiers_available.length === 0) {\n console.log('No digest extracts yet');\n } else {\n const generatedAt = stats.digest.generated_at\n ? new Date(stats.digest.generated_at * 1000).toISOString()\n : 'unknown';\n console.log(`Tiers: ${stats.digest.tiers_available.join(', ')}`);\n console.log(`Freshest: tier ${stats.digest.freshest_tier} (generated ${generatedAt})`);\n }\n\n // Daemon section — from the live daemon stats\n const { pid, port, version, uptime_seconds, active_sessions } = stats.daemon;\n if (pid > 0) {\n console.log('\\n--- Daemon ---');\n console.log(`PID: ${pid} (running)`);\n console.log(`Port: ${port}`);\n if (version) console.log(`Version: ${version}`);\n if (uptime_seconds > 0) {\n console.log(`Uptime: ${formatUptime(uptime_seconds)}`);\n }\n console.log(`Dashboard: http://localhost:${port}/`);\n console.log(`Sessions: ${active_sessions.length}`);\n }\n}\n\nfunction formatUptime(seconds: number): string {\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n const s = seconds % 60;\n if (h > 0) return `${h}h ${m}m ${s}s`;\n if (m > 0) return `${m}m ${s}s`;\n return `${s}s`;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAWA,eAAsB,IAAI,OAAiB,UAAiC;AAC1E,QAAM,UAAU,YAAY,QAAQ;AACpC,MAAI;AACJ,MAAI;AACF,YAAQ,YAAY,QAAQ;AAAA,EAC9B,SAAS,KAAK;AACZ,YAAQ;AACR,YAAQ,MAAM,kCAAmC,IAAc,OAAO;AACtE,YAAQ,KAAK,CAAC;AAAA,EAChB;AACA,UAAQ;AAER,UAAQ,IAAI,oBAAoB;AAChC,UAAQ,IAAI,UAAU,MAAM,MAAM,IAAI,EAAE;AACxC,UAAQ,IAAI,UAAU,MAAM,MAAM,IAAI,EAAE;AAExC,UAAQ,IAAI,gBAAgB;AAC5B,UAAQ,IAAI,eAAe,MAAM,MAAM,aAAa,EAAE;AACtD,UAAQ,IAAI,eAAe,MAAM,MAAM,WAAW,EAAE;AACpD,UAAQ,IAAI,eAAe,MAAM,MAAM,WAAW,EAAE;AACpD,UAAQ,IAAI,eAAe,MAAM,MAAM,UAAU,EAAE;AACnD,UAAQ,IAAI,eAAe,MAAM,MAAM,cAAc,EAAE;AACvD,UAAQ,IAAI,eAAe,MAAM,MAAM,YAAY,EAAE;AACrD,UAAQ,IAAI,eAAe,MAAM,MAAM,UAAU,EAAE;AAEnD,UAAQ,IAAI,sBAAsB;AAClC,UAAQ,IAAI,eAAe,MAAM,UAAU,QAAQ,KAAK,MAAM,UAAU,KAAK,GAAG;AAChF,UAAQ,IAAI,eAAe,MAAM,UAAU,cAAc,MAAM,MAAM,UAAU,gBAAgB,EAAE;AACjG,MAAI,MAAM,UAAU,cAAc,GAAG;AACnC,YAAQ,IAAI,eAAe,MAAM,UAAU,WAAW,UAAU;AAAA,EAClE;AAEA,UAAQ,IAAI,iBAAiB;AAC7B,MAAI,MAAM,MAAM,eAAe,GAAG;AAChC,YAAQ,IAAI,aAAa;AAAA,EAC3B,OAAO;AACL,UAAM,SAAS,MAAM,MAAM,cACvB,IAAI,KAAK,MAAM,MAAM,cAAc,GAAI,EAAE,YAAY,IACrD;AACJ,YAAQ,IAAI,eAAe,MAAM,KAAK,MAAM,MAAM,mBAAmB,SAAS,GAAG;AACjF,YAAQ,IAAI,eAAe,MAAM,MAAM,UAAU,EAAE;AAAA,EACrD;AACA,MAAI,MAAM,sBAAsB,GAAG;AACjC,YAAQ,IAAI,eAAe,MAAM,mBAAmB,wBAAwB;AAAA,EAC9E;AAEA,UAAQ,IAAI,kBAAkB;AAC9B,MAAI,MAAM,OAAO,gBAAgB,WAAW,GAAG;AAC7C,YAAQ,IAAI,wBAAwB;AAAA,EACtC,OAAO;AACL,UAAM,cAAc,MAAM,OAAO,eAC7B,IAAI,KAAK,MAAM,OAAO,eAAe,GAAI,EAAE,YAAY,IACvD;AACJ,YAAQ,IAAI,eAAe,MAAM,OAAO,gBAAgB,KAAK,IAAI,CAAC,EAAE;AACpE,YAAQ,IAAI,oBAAoB,MAAM,OAAO,aAAa,eAAe,WAAW,GAAG;AAAA,EACzF;AAGA,QAAM,EAAE,KAAK,MAAM,SAAS,gBAAgB,gBAAgB,IAAI,MAAM;AACtE,MAAI,MAAM,GAAG;AACX,YAAQ,IAAI,kBAAkB;AAC9B,YAAQ,IAAI,cAAc,GAAG,YAAY;AACzC,YAAQ,IAAI,cAAc,IAAI,EAAE;AAChC,QAAI,QAAS,SAAQ,IAAI,cAAc,OAAO,EAAE;AAChD,QAAI,iBAAiB,GAAG;AACtB,cAAQ,IAAI,cAAc,aAAa,cAAc,CAAC,EAAE;AAAA,IAC1D;AACA,YAAQ,IAAI,+BAA+B,IAAI,GAAG;AAClD,YAAQ,IAAI,cAAc,gBAAgB,MAAM,EAAE;AAAA,EACpD;AACF;AAEA,SAAS,aAAa,SAAyB;AAC7C,QAAM,IAAI,KAAK,MAAM,UAAU,IAAI;AACnC,QAAM,IAAI,KAAK,MAAO,UAAU,OAAQ,EAAE;AAC1C,QAAM,IAAI,UAAU;AACpB,MAAI,IAAI,EAAG,QAAO,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;AAClC,MAAI,IAAI,EAAG,QAAO,GAAG,CAAC,KAAK,CAAC;AAC5B,SAAO,GAAG,CAAC;AACb;","names":[]}
|
|
@@ -2,15 +2,15 @@ import { createRequire as __cr } from 'node:module'; const require = __cr(import
|
|
|
2
2
|
import {
|
|
3
3
|
normalizeHookInput,
|
|
4
4
|
readStdin
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-OQVKLTQY.js";
|
|
6
6
|
import {
|
|
7
7
|
DaemonClient
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-S6I62FAH.js";
|
|
11
|
-
import "./chunk-U7JRFBJO.js";
|
|
8
|
+
} from "./chunk-VQEXXS56.js";
|
|
9
|
+
import "./chunk-EUQQVKGQ.js";
|
|
12
10
|
import "./chunk-QFMBZ72S.js";
|
|
13
11
|
import "./chunk-LPUQPDC2.js";
|
|
12
|
+
import "./chunk-TRA3R4EC.js";
|
|
13
|
+
import "./chunk-S6I62FAH.js";
|
|
14
14
|
import "./chunk-D7TYRPRM.js";
|
|
15
15
|
import "./chunk-E4VLWIJC.js";
|
|
16
16
|
import "./chunk-KH64DHOY.js";
|
|
@@ -45,4 +45,4 @@ async function main() {
|
|
|
45
45
|
export {
|
|
46
46
|
main
|
|
47
47
|
};
|
|
48
|
-
//# sourceMappingURL=stop-
|
|
48
|
+
//# sourceMappingURL=stop-VTO2KIRG.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
sendEvent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-YYQWCTF6.js";
|
|
5
5
|
import "./chunk-V7XG6V6C.js";
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-S6I62FAH.js";
|
|
10
|
-
import "./chunk-U7JRFBJO.js";
|
|
6
|
+
import "./chunk-OQVKLTQY.js";
|
|
7
|
+
import "./chunk-VQEXXS56.js";
|
|
8
|
+
import "./chunk-EUQQVKGQ.js";
|
|
11
9
|
import "./chunk-QFMBZ72S.js";
|
|
12
10
|
import "./chunk-LPUQPDC2.js";
|
|
11
|
+
import "./chunk-TRA3R4EC.js";
|
|
12
|
+
import "./chunk-S6I62FAH.js";
|
|
13
13
|
import "./chunk-D7TYRPRM.js";
|
|
14
14
|
import "./chunk-E4VLWIJC.js";
|
|
15
15
|
import "./chunk-KH64DHOY.js";
|
|
@@ -27,4 +27,4 @@ async function main() {
|
|
|
27
27
|
export {
|
|
28
28
|
main
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=stop-failure-
|
|
30
|
+
//# sourceMappingURL=stop-failure-C5T6LJQR.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
sendEvent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-YYQWCTF6.js";
|
|
5
5
|
import "./chunk-V7XG6V6C.js";
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-S6I62FAH.js";
|
|
10
|
-
import "./chunk-U7JRFBJO.js";
|
|
6
|
+
import "./chunk-OQVKLTQY.js";
|
|
7
|
+
import "./chunk-VQEXXS56.js";
|
|
8
|
+
import "./chunk-EUQQVKGQ.js";
|
|
11
9
|
import "./chunk-QFMBZ72S.js";
|
|
12
10
|
import "./chunk-LPUQPDC2.js";
|
|
11
|
+
import "./chunk-TRA3R4EC.js";
|
|
12
|
+
import "./chunk-S6I62FAH.js";
|
|
13
13
|
import "./chunk-D7TYRPRM.js";
|
|
14
14
|
import "./chunk-E4VLWIJC.js";
|
|
15
15
|
import "./chunk-KH64DHOY.js";
|
|
@@ -27,4 +27,4 @@ async function main() {
|
|
|
27
27
|
export {
|
|
28
28
|
main
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=subagent-start-
|
|
30
|
+
//# sourceMappingURL=subagent-start-NZF42NKF.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
sendEvent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-YYQWCTF6.js";
|
|
5
5
|
import "./chunk-V7XG6V6C.js";
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-S6I62FAH.js";
|
|
10
|
-
import "./chunk-U7JRFBJO.js";
|
|
6
|
+
import "./chunk-OQVKLTQY.js";
|
|
7
|
+
import "./chunk-VQEXXS56.js";
|
|
8
|
+
import "./chunk-EUQQVKGQ.js";
|
|
11
9
|
import "./chunk-QFMBZ72S.js";
|
|
12
10
|
import "./chunk-LPUQPDC2.js";
|
|
11
|
+
import "./chunk-TRA3R4EC.js";
|
|
12
|
+
import "./chunk-S6I62FAH.js";
|
|
13
13
|
import "./chunk-D7TYRPRM.js";
|
|
14
14
|
import "./chunk-E4VLWIJC.js";
|
|
15
15
|
import "./chunk-KH64DHOY.js";
|
|
@@ -29,4 +29,4 @@ async function main() {
|
|
|
29
29
|
export {
|
|
30
30
|
main
|
|
31
31
|
};
|
|
32
|
-
//# sourceMappingURL=subagent-stop-
|
|
32
|
+
//# sourceMappingURL=subagent-stop-UV5ECFVU.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
sendEvent
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-YYQWCTF6.js";
|
|
5
5
|
import "./chunk-V7XG6V6C.js";
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-S6I62FAH.js";
|
|
10
|
-
import "./chunk-U7JRFBJO.js";
|
|
6
|
+
import "./chunk-OQVKLTQY.js";
|
|
7
|
+
import "./chunk-VQEXXS56.js";
|
|
8
|
+
import "./chunk-EUQQVKGQ.js";
|
|
11
9
|
import "./chunk-QFMBZ72S.js";
|
|
12
10
|
import "./chunk-LPUQPDC2.js";
|
|
11
|
+
import "./chunk-TRA3R4EC.js";
|
|
12
|
+
import "./chunk-S6I62FAH.js";
|
|
13
13
|
import "./chunk-D7TYRPRM.js";
|
|
14
14
|
import "./chunk-E4VLWIJC.js";
|
|
15
15
|
import "./chunk-KH64DHOY.js";
|
|
@@ -28,4 +28,4 @@ async function main() {
|
|
|
28
28
|
export {
|
|
29
29
|
main
|
|
30
30
|
};
|
|
31
|
-
//# sourceMappingURL=task-completed-
|
|
31
|
+
//# sourceMappingURL=task-completed-3SV6TL3V.js.map
|