@pixelzx/genesis 2026.6.22 → 2026.6.24
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/CHANGELOG.md +6 -0
- package/dist/.buildstamp +1 -1
- package/dist/build-info.json +3 -3
- package/dist/cli-startup-metadata.json +1 -1
- package/dist/{command-registry-DPhQ-gYY.js → command-registry-9isdLVPT.js} +2 -2
- package/dist/{command-registry-DtvwURJ_.js → command-registry-Cz7IG6fj.js} +2 -2
- package/dist/{command-registry-core-DllgASdD.js → command-registry-core-YTbOUvAw.js} +2 -2
- package/dist/{completion-cli-CMRi4kQZ.js → completion-cli-56xGCg11.js} +2 -2
- package/dist/{config-cli-ByTCIigq.js → config-cli-D4puIeCQ.js} +1 -1
- package/dist/control-ui/assets/{agents-QDr5B3Ho.js → agents-JV9Lrpaq.js} +144 -144
- package/dist/control-ui/assets/{canvas-DcQV5mjQ.js → canvas-BGheLorj.js} +44 -44
- package/dist/control-ui/assets/channel-config-extras-BlcntHgk.js +2 -0
- package/dist/control-ui/assets/channels-D_T7jf1i.js +196 -0
- package/dist/control-ui/assets/cron-C-vhYdn2.js +250 -0
- package/dist/control-ui/assets/{debug-BjvJPprv.js → debug-C_P-kmLV.js} +2 -2
- package/dist/control-ui/assets/{index-BTDvMe6P.css → index-CtXQ8kx6.css} +1 -1
- package/dist/control-ui/assets/{index-Chv-rDKB.js → index-or46Cf5v.js} +5 -5
- package/dist/control-ui/assets/{instances-M2ru9deN.js → instances-B2yScyQI.js} +2 -2
- package/dist/control-ui/assets/{logs-l_Xtj11_.js → logs-BiUk-w3p.js} +1 -1
- package/dist/control-ui/assets/{mcp-CCow5u67.js → mcp-Cvo6FOST.js} +2 -2
- package/dist/control-ui/assets/{memory-DEvlXa9C.js → memory-EzZxvhx5.js} +2 -2
- package/dist/control-ui/assets/{models-Tc34Yl09.js → models-CHjUP5zU.js} +2 -2
- package/dist/control-ui/assets/{nodes-CHIr0hLe.js → nodes-CINI4_nb.js} +13 -13
- package/dist/control-ui/assets/{plugins-CRSFM6pi.js → plugins-x9HNTykY.js} +23 -23
- package/dist/control-ui/assets/presenter-DwZ-RSJ8.js +2 -0
- package/dist/control-ui/assets/{preview-DP8t6eAW.js → preview-yS9kUAt_.js} +1 -1
- package/dist/control-ui/assets/{sessions-Xg8c67jk.js → sessions-DnMfNBmX.js} +2 -2
- package/dist/control-ui/assets/{skills-CB5pgqaj.js → skills-B7wdMvcb.js} +8 -8
- package/dist/control-ui/assets/{skills-shared-DoedL_zw.js → skills-shared-C4nHDuFm.js} +1 -1
- package/dist/control-ui/assets/{wallet-C_ySxHYg.js → wallet-Ds1hW8CM.js} +2 -2
- package/dist/control-ui/index.html +2 -2
- package/dist/entry.js +1 -1
- package/dist/extensions/skill-workshop/genesis.plugin.json +2 -1
- package/dist/extensions/skill-workshop/index.js +1 -1
- package/dist/{gateway-cli-BNFp7cLD.js → gateway-cli-CeEdXZHU.js} +1 -1
- package/dist/index.js +1 -1
- package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
- package/dist/postinstall-inventory.json +37 -36
- package/dist/{program-C3s7d86C.js → program-0N-JnVM6.js} +1 -1
- package/dist/{register.subclis-ClL1mC0C.js → register.subclis-D0ogazCL.js} +2 -2
- package/dist/{register.subclis-C2UfM0nV.js → register.subclis-DPK0ga6y.js} +1 -1
- package/dist/{register.subclis-core-x3Cm5RAM.js → register.subclis-core-DIGnTWFD.js} +1 -1
- package/dist/{run-main-Cg3U0WGv.js → run-main-kPIaMJwz.js} +4 -4
- package/dist/{runtime-schema-m8uk8t3n.js → runtime-schema-CFPgELGN.js} +1 -1
- package/dist/{server-Cdq-naBB.js → server-HNGA0Ig0.js} +1 -1
- package/dist/{server-plugin-bootstrap-DQo6bnks.js → server-plugin-bootstrap-BXJURCLA.js} +1 -1
- package/dist/{server-plugin-bootstrap-CM8EErso.js → server-plugin-bootstrap-CNJ_xwIU.js} +1 -1
- package/dist/{server.impl-CZEASk_e.js → server.impl-DuIzmQsq.js} +2 -2
- package/package.json +1 -1
- package/dist/control-ui/assets/channels-DTjwzddp.js +0 -140
- package/dist/control-ui/assets/cron-BL9vNTgH.js +0 -78
- package/dist/control-ui/assets/presenter-DQKXVTz4.js +0 -2
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
import{d as e,l as t,r as n}from"./i18n-DLwqUqi0.js";import{D as r,M as i,s as a}from"./index-Chv-rDKB.js";function o(e,t){return t.snapshot?.channels?.[e]}function s(e,t){let n=t.snapshot?.channelAccounts?.[e]??[],r=t.snapshot?.channelDefaultAccountId?.[e];return(r?n.find(e=>e.accountId===r):void 0)??n[0]??null}function c(e,t){let n=o(e,t),r=t.snapshot?.channelAccounts?.[e]??[],i=s(e,t);return{configured:typeof n?.configured==`boolean`?n.configured:typeof i?.configured==`boolean`?i.configured:null,running:typeof n?.running==`boolean`?n.running:null,connected:typeof n?.connected==`boolean`?n.connected:null,defaultAccount:i,hasAnyActiveAccount:r.some(e=>e.configured||e.running||e.connected),status:n}}function l(e,t){if(!t.snapshot)return!1;let n=c(e,t);return n.configured===!0||n.running===!0||n.connected===!0||n.hasAnyActiveAccount}function u(e,t){return t?.[e]?.length??0}var d=`grid-template-columns: 1.6fr 1fr 0.8fr 1fr 0.9fr;`;function f(e,t){let n=c(e,t);return typeof n.status?.lastError==`string`&&n.status.lastError?{label:`Error`,dot:`status-dot--error`,online:!1}:n.connected===!0||n.running===!0?{label:`Online`,dot:`status-dot--ok`,online:!0}:n.configured===!0||n.hasAnyActiveAccount?{label:`Idle`,dot:`status-dot--idle`,online:!1}:{label:`Offline`,dot:`status-dot--idle`,online:!1}}function p(e){return e.charAt(0).toUpperCase()+e.slice(1)}function m(e){return e?.channelMeta?.length?Object.fromEntries(e.channelMeta.map(e=>[e.id,e])):{}}function h(e,t){return m(e)[t]?.label??e?.channelLabels?.[t]??p(t)}function g(e){return e?.channelMeta?.length?e.channelMeta.map(e=>e.id):e?.channelOrder?.length?e.channelOrder:[`whatsapp`,`telegram`,`discord`,`googlechat`,`slack`,`signal`,`imessage`,`nostr`]}function _(t,r){let a=h(r.snapshot,t),o=f(t,r),c=u(t,r.snapshot?.channelAccounts??null),l=s(t,r),m=l?.lastInboundAt?i(l.lastInboundAt):n(`common.na`);return e`
|
|
2
|
-
<div class="table-row" style=${d}>
|
|
3
|
-
<span style="color: var(--text); display: flex; align-items: center; gap: 8px;">
|
|
4
|
-
<span class="status-dot ${o.dot}"></span>
|
|
5
|
-
${a}
|
|
6
|
-
</span>
|
|
7
|
-
<span class="muted">${p(t)}</span>
|
|
8
|
-
<span class="muted" style="font-family: var(--mono);">${c}</span>
|
|
9
|
-
<span class="muted" style="font-family: var(--mono);">${m}</span>
|
|
10
|
-
<span class="muted">${o.label}</span>
|
|
11
|
-
</div>
|
|
12
|
-
`}function v(i){let o=r(g(i.snapshot).map((e,t)=>({key:e,enabled:l(e,i),order:t})),(e,t)=>e.enabled===t.enabled?e.order-t.order:e.enabled?-1:1),s=o.filter(e=>f(e.key,i).online).length,c=o.length-s;return e`
|
|
13
|
-
<section class="card" style="border: none; background: transparent; padding: 0;">
|
|
14
|
-
<div class="row" style="justify-content: space-between; align-items: flex-start; gap: 16px;">
|
|
15
|
-
<div>
|
|
16
|
-
<div class="view-title">${n(`tabs.channels`)}</div>
|
|
17
|
-
<div class="view-sub">${s} connected · ${c} idle</div>
|
|
18
|
-
</div>
|
|
19
|
-
<button
|
|
20
|
-
class="btn primary"
|
|
21
|
-
?disabled=${!i.connected||i.channelWizardBusy}
|
|
22
|
-
@click=${()=>i.onChannelWizardStart()}
|
|
23
|
-
>
|
|
24
|
-
<span class="btn__icon">${a.plus}</span>
|
|
25
|
-
${i.channelWizardBusy?n(`common.working`):n(`channels.wizard.addChannel`)}
|
|
26
|
-
</button>
|
|
27
|
-
</div>
|
|
28
|
-
|
|
29
|
-
${i.lastError?e`<div class="callout danger" style="margin-top: 16px;">${i.lastError}</div>`:t}
|
|
30
|
-
${o.length===0?e`<div class="muted" style="padding: 16px;">
|
|
31
|
-
${i.loading?n(`common.loading`):n(`common.na`)}
|
|
32
|
-
</div>`:e`
|
|
33
|
-
<div class="table" style="margin-top: 20px;">
|
|
34
|
-
<div class="table-head" style=${d}>
|
|
35
|
-
<span>CHANNEL</span>
|
|
36
|
-
<span>PROVIDER</span>
|
|
37
|
-
<span>ACCOUNTS</span>
|
|
38
|
-
<span>LAST ACTIVITY</span>
|
|
39
|
-
<span>STATUS</span>
|
|
40
|
-
</div>
|
|
41
|
-
${o.map(e=>_(e.key,i))}
|
|
42
|
-
</div>
|
|
43
|
-
`}
|
|
44
|
-
${y(i)}
|
|
45
|
-
</section>
|
|
46
|
-
`}function y(r){let i=r.channelWizardStep,a=!!(r.channelWizardError||r.channelWizardMessage);if(!i&&!r.channelWizardBusy&&!a)return t;let o=i?.title||(r.channelWizardError?n(`channels.wizard.errorTitle`):r.channelWizardMessage?n(`channels.wizard.doneTitle`):n(`channels.wizard.title`)),s=i?.message??r.channelWizardError??r.channelWizardMessage??``,c=!!i&&!r.channelWizardBusy;return e`
|
|
47
|
-
<div class="exec-approval-overlay" role="dialog" aria-modal="true" aria-live="polite">
|
|
48
|
-
<div class="exec-approval-card channel-wizard-card">
|
|
49
|
-
<div class="exec-approval-header">
|
|
50
|
-
<div>
|
|
51
|
-
<div class="exec-approval-title">${o}</div>
|
|
52
|
-
<div class="exec-approval-sub">${n(`channels.wizard.subtitle`)}</div>
|
|
53
|
-
</div>
|
|
54
|
-
</div>
|
|
55
|
-
${s?e`<div class="channel-wizard-message">${b(s)}</div>`:t}
|
|
56
|
-
${i?C(r,i):t}
|
|
57
|
-
${r.channelWizardError?e`<div class="exec-approval-error">${r.channelWizardError}</div>`:t}
|
|
58
|
-
<div class="exec-approval-actions">
|
|
59
|
-
${i?e`
|
|
60
|
-
<button
|
|
61
|
-
class="btn primary"
|
|
62
|
-
?disabled=${!c}
|
|
63
|
-
@click=${()=>r.onChannelWizardSubmit()}
|
|
64
|
-
>
|
|
65
|
-
${r.channelWizardBusy?n(`common.working`):n(`channels.wizard.continue`)}
|
|
66
|
-
</button>
|
|
67
|
-
<button
|
|
68
|
-
class="btn"
|
|
69
|
-
?disabled=${r.channelWizardBusy}
|
|
70
|
-
@click=${()=>r.onChannelWizardCancel()}
|
|
71
|
-
>
|
|
72
|
-
${n(`common.cancel`)}
|
|
73
|
-
</button>
|
|
74
|
-
`:e`
|
|
75
|
-
<button
|
|
76
|
-
class="btn primary"
|
|
77
|
-
?disabled=${r.channelWizardBusy}
|
|
78
|
-
@click=${()=>r.onChannelWizardClose()}
|
|
79
|
-
>
|
|
80
|
-
${n(`common.ok`)}
|
|
81
|
-
</button>
|
|
82
|
-
`}
|
|
83
|
-
</div>
|
|
84
|
-
</div>
|
|
85
|
-
</div>
|
|
86
|
-
`}function b(n){return n.split(`
|
|
87
|
-
`).map(e=>e.trimEnd()).map((n,r)=>e`${r>0?e`<br />`:t}${n}`)}function x(e){if(typeof e==`string`)return`string:${e}`;try{return`json:${JSON.stringify(e)}`}catch{return String(e)}}function S(e,t){return x(e)===x(t)}function C(r,i){if(i.type===`select`)return e`
|
|
88
|
-
<div class="channel-wizard-options">
|
|
89
|
-
${(i.options??[]).map(n=>e`
|
|
90
|
-
<button
|
|
91
|
-
class=${S(r.channelWizardInput,n.value)?`channel-wizard-option selected`:`channel-wizard-option`}
|
|
92
|
-
?disabled=${r.channelWizardBusy}
|
|
93
|
-
@click=${()=>r.onChannelWizardInput(n.value)}
|
|
94
|
-
>
|
|
95
|
-
<span>${n.label}</span>
|
|
96
|
-
${n.hint?e`<small>${n.hint}</small>`:t}
|
|
97
|
-
</button>
|
|
98
|
-
`)}
|
|
99
|
-
</div>
|
|
100
|
-
`;if(i.type===`multiselect`){let n=Array.isArray(r.channelWizardInput)?r.channelWizardInput:[];return e`
|
|
101
|
-
<div class="channel-wizard-options">
|
|
102
|
-
${(i.options??[]).map(i=>{let a=n.some(e=>S(e,i.value)),o=a?n.filter(e=>!S(e,i.value)):[...n,i.value];return e`
|
|
103
|
-
<button
|
|
104
|
-
class=${a?`channel-wizard-option selected`:`channel-wizard-option`}
|
|
105
|
-
?disabled=${r.channelWizardBusy}
|
|
106
|
-
@click=${()=>r.onChannelWizardInput(o)}
|
|
107
|
-
>
|
|
108
|
-
<span>${i.label}</span>
|
|
109
|
-
${i.hint?e`<small>${i.hint}</small>`:t}
|
|
110
|
-
</button>
|
|
111
|
-
`})}
|
|
112
|
-
</div>
|
|
113
|
-
`}if(i.type===`confirm`)return e`
|
|
114
|
-
<div class="channel-wizard-confirm">
|
|
115
|
-
<button
|
|
116
|
-
class=${r.channelWizardInput===!0?`btn primary`:`btn`}
|
|
117
|
-
?disabled=${r.channelWizardBusy}
|
|
118
|
-
@click=${()=>r.onChannelWizardInput(!0)}
|
|
119
|
-
>
|
|
120
|
-
${n(`common.yes`)}
|
|
121
|
-
</button>
|
|
122
|
-
<button
|
|
123
|
-
class=${r.channelWizardInput===!1?`btn primary`:`btn`}
|
|
124
|
-
?disabled=${r.channelWizardBusy}
|
|
125
|
-
@click=${()=>r.onChannelWizardInput(!1)}
|
|
126
|
-
>
|
|
127
|
-
${n(`common.no`)}
|
|
128
|
-
</button>
|
|
129
|
-
</div>
|
|
130
|
-
`;if(i.type===`text`){let t=typeof r.channelWizardInput==`string`?r.channelWizardInput:``;return e`
|
|
131
|
-
<input
|
|
132
|
-
class="input channel-wizard-text"
|
|
133
|
-
type=${i.sensitive?`password`:`text`}
|
|
134
|
-
.value=${t}
|
|
135
|
-
placeholder=${i.placeholder??``}
|
|
136
|
-
?disabled=${r.channelWizardBusy}
|
|
137
|
-
@input=${e=>r.onChannelWizardInput(e.currentTarget.value)}
|
|
138
|
-
/>
|
|
139
|
-
`}return t}export{v as renderChannels};
|
|
140
|
-
//# sourceMappingURL=channels-DTjwzddp.js.map
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import{d as e,l as t,r as n}from"./i18n-DLwqUqi0.js";import{M as r,s as i}from"./index-Chv-rDKB.js";import{n as a}from"./presenter-DQKXVTz4.js";var o=`grid-template-columns: 130px 1fr 150px 110px 110px 120px;`;function s(e){return typeof e!=`number`||!Number.isFinite(e)?n(`common.na`):r(e)}function c(e,t){return t.agentId?e.channelMeta?.find(e=>e.id===t.agentId)?.label??e.channelLabels?.[t.agentId]??t.agentId:`—`}function l(t,n){return e`
|
|
2
|
-
<div
|
|
3
|
-
class="table-row"
|
|
4
|
-
style="cursor: pointer; ${o}"
|
|
5
|
-
@click=${()=>n.onLoadRuns(t.id)}
|
|
6
|
-
>
|
|
7
|
-
<span
|
|
8
|
-
style="font-family: var(--mono); color: var(--text); display: flex; align-items: center; gap: 8px;"
|
|
9
|
-
>
|
|
10
|
-
<span class="status-dot ${t.enabled?`status-dot--ok`:`status-dot--idle`}"></span>
|
|
11
|
-
${t.name}
|
|
12
|
-
</span>
|
|
13
|
-
<span class="muted" style="font-family: var(--mono);">${a(t)}</span>
|
|
14
|
-
<span class="muted">${c(n,t)}</span>
|
|
15
|
-
<span class="muted" style="font-family: var(--mono);"
|
|
16
|
-
>${s(t.state?.nextRunAtMs)}</span
|
|
17
|
-
>
|
|
18
|
-
<span class="muted" style="font-family: var(--mono);"
|
|
19
|
-
>${s(t.state?.lastRunAtMs)}</span
|
|
20
|
-
>
|
|
21
|
-
<span class="muted">${t.enabled?`Active`:`Paused`}</span>
|
|
22
|
-
</div>
|
|
23
|
-
`}function u(r){let a=r.jobs,s=a.filter(e=>e.enabled).length,c=a.length-s;return e`
|
|
24
|
-
<section class="card" style="border: none; background: transparent; padding: 0;">
|
|
25
|
-
<div class="row" style="justify-content: space-between; align-items: flex-start; gap: 16px;">
|
|
26
|
-
<div>
|
|
27
|
-
<div class="view-title">${n(`tabs.cron`)}</div>
|
|
28
|
-
<div class="view-sub">${s} scheduled · ${c} paused</div>
|
|
29
|
-
</div>
|
|
30
|
-
<div class="row" style="gap: 12px; flex: none;">
|
|
31
|
-
<div class="data-table-search" style="width: 220px;">
|
|
32
|
-
${i.search}
|
|
33
|
-
<input
|
|
34
|
-
type="search"
|
|
35
|
-
.value=${r.jobsQuery}
|
|
36
|
-
placeholder="Search jobs"
|
|
37
|
-
@input=${e=>r.onJobsFiltersChange({cronJobsQuery:e.target.value})}
|
|
38
|
-
/>
|
|
39
|
-
</div>
|
|
40
|
-
${r.onQuickCreate?e`
|
|
41
|
-
<button class="btn primary" @click=${r.onQuickCreate}>
|
|
42
|
-
<span class="btn__icon">${i.plus}</span>
|
|
43
|
-
New
|
|
44
|
-
</button>
|
|
45
|
-
`:t}
|
|
46
|
-
</div>
|
|
47
|
-
</div>
|
|
48
|
-
|
|
49
|
-
${r.error?e`<div class="callout danger" style="margin-top: 16px;">${r.error}</div>`:t}
|
|
50
|
-
${a.length===0?e`<div class="muted" style="padding: 16px;">
|
|
51
|
-
${r.loading?n(`cron.jobs.loading`):n(`cron.jobs.noMatching`)}
|
|
52
|
-
</div>`:e`
|
|
53
|
-
<div class="table" style="margin-top: 20px;">
|
|
54
|
-
<div class="table-head" style=${o}>
|
|
55
|
-
<span>JOB</span>
|
|
56
|
-
<span>SCHEDULE</span>
|
|
57
|
-
<span>AGENT</span>
|
|
58
|
-
<span>NEXT RUN</span>
|
|
59
|
-
<span>LAST RUN</span>
|
|
60
|
-
<span>STATUS</span>
|
|
61
|
-
</div>
|
|
62
|
-
${a.map(e=>l(e,r))}
|
|
63
|
-
</div>
|
|
64
|
-
${r.jobsHasMore?e`
|
|
65
|
-
<div class="row" style="margin-top: 12px;">
|
|
66
|
-
<button
|
|
67
|
-
class="btn"
|
|
68
|
-
?disabled=${r.loading||r.jobsLoadingMore}
|
|
69
|
-
@click=${r.onLoadMoreJobs}
|
|
70
|
-
>
|
|
71
|
-
${r.jobsLoadingMore?n(`cron.jobs.loading`):n(`cron.jobs.loadMore`)}
|
|
72
|
-
</button>
|
|
73
|
-
</div>
|
|
74
|
-
`:t}
|
|
75
|
-
`}
|
|
76
|
-
</section>
|
|
77
|
-
`}export{u as renderCron};
|
|
78
|
-
//# sourceMappingURL=cron-BL9vNTgH.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./i18n-DLwqUqi0.js";import{A as t,M as n,N as r,j as i}from"./index-Chv-rDKB.js";function a(t){let r=t.ts??null;return r?n(r):e(`common.na`)}function o(r){return r?`${new Date(r).toLocaleDateString(void 0,{weekday:`short`})}, ${t(r)} (${n(r)})`:e(`common.na`)}function s(t){if(t.totalTokens==null)return e(`common.na`);let n=t.totalTokens??0,r=t.contextTokens??0;return r?`${n} / ${r}`:String(n)}function c(e){if(e==null)return``;try{return JSON.stringify(e,null,2)}catch{return i(e)}}function l(n){let r=n.state??{},i=r.nextRunAtMs?t(r.nextRunAtMs):e(`common.na`),a=r.lastRunAtMs?t(r.lastRunAtMs):e(`common.na`);return`${r.lastStatus??e(`common.na`)} · next ${i} · last ${a}`}function u(e){let n=e.schedule;if(n.kind===`at`){let e=Date.parse(n.at);return Number.isFinite(e)?`At ${t(e)}`:`At ${n.at}`}return n.kind===`every`?`Every ${r(n.everyMs)}`:`Cron ${n.expr}${n.tz?` (${n.tz})`:``}`}function d(e){let t=e.payload;if(t.kind===`systemEvent`)return`System: ${t.text}`;let n=`Agent: ${t.message}`,r=e.delivery;if(r&&r.mode!==`none`){let e=r.mode===`webhook`?r.to?` (${r.to})`:``:r.channel||r.to?` (${r.channel??`last`}${r.to?` -> ${r.to}`:``})`:``;return`${n} · ${r.mode}${e}`}return n}export{o as a,c as i,u as n,a as o,l as r,s,d as t};
|
|
2
|
-
//# sourceMappingURL=presenter-DQKXVTz4.js.map
|