aimeat 1.16.2 → 1.18.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/dist/.env.example +6 -1
- package/dist/locales/en.json +166 -4
- package/dist/locales/fi.json +166 -4
- package/dist/public/components/Card.js +17 -3
- package/dist/public/components/Collapsible.js +39 -0
- package/dist/public/components/CopyButton.js +55 -24
- package/dist/public/components/DataTable.js +57 -0
- package/dist/public/components/EmptyState.js +28 -0
- package/dist/public/components/KeyValueRow.js +37 -0
- package/dist/public/components/Modal.js +22 -5
- package/dist/public/components/Pagination.js +70 -0
- package/dist/public/components/SearchBar.js +44 -0
- package/dist/public/components/StatusDot.js +29 -0
- package/dist/public/components/TagList.js +53 -0
- package/dist/public/components/ToggleSwitch.js +28 -0
- package/dist/public/components/index.js +41 -1
- package/dist/public/css/components/tags.css +24 -0
- package/dist/public/css/style-testbed.css +135 -0
- package/dist/public/css/theme.css +556 -34
- package/dist/public/css/views/admin-agent-integration.css +2 -33
- package/dist/public/css/views/admin.css +730 -686
- package/dist/public/css/views/agents-detail.css +402 -14
- package/dist/public/css/views/help.css +2 -1
- package/dist/public/css/views/hobbies.css +53 -33
- package/dist/public/css/views/marketplace.css +73 -60
- package/dist/public/css/views/openclaw.css +12 -6
- package/dist/public/css/views/portal-classic.css +34 -26
- package/dist/public/css/views/portal-dev.css +41 -32
- package/dist/public/css/views/portal.css +14 -18
- package/dist/public/css/views/profile.css +252 -164
- package/dist/public/css/views/public-knowledge-viewer.css +18 -6
- package/dist/public/css/views/scheduler.css +100 -0
- package/dist/public/js/format.js +41 -0
- package/dist/public/js/services/agent-tasks.js +14 -1
- package/dist/public/js/services/generator-spec-validate.js +5 -1
- package/dist/public/js/services/schedules.js +53 -0
- package/dist/public/js/style-testbed.js +170 -0
- package/dist/public/js/theme.js +114 -0
- package/dist/public/spa.html +74 -16
- package/dist/public/style-testbed.html +420 -0
- package/dist/public/views/admin/agent-integration-tab.js +23 -38
- package/dist/public/views/admin/agent-tasks-tab.js +14 -21
- package/dist/public/views/admin/chat-instances-tab.js +1 -1
- package/dist/public/views/admin/config-tab.js +7 -2
- package/dist/public/views/admin/cortex-tab.js +20 -14
- package/dist/public/views/admin/csm-tab.js +22 -18
- package/dist/public/views/admin/directory-tab.js +3 -3
- package/dist/public/views/admin/email-tab.js +23 -28
- package/dist/public/views/admin/federation-tab.js +15 -5
- package/dist/public/views/admin/generator-debug-tab.js +10 -8
- package/dist/public/views/admin/genesis-tab.js +4 -4
- package/dist/public/views/admin/ghii-tab.js +3 -3
- package/dist/public/views/admin/knowledge-tab.js +15 -5
- package/dist/public/views/admin/matching-tab.js +3 -3
- package/dist/public/views/admin/memory-tab.js +16 -20
- package/dist/public/views/admin/msm-tab.js +30 -17
- package/dist/public/views/admin/overview-tab.js +7 -7
- package/dist/public/views/admin/packages-tab.js +10 -9
- package/dist/public/views/admin/portal-tab.js +14 -4
- package/dist/public/views/admin/prompts-tab.js +5 -5
- package/dist/public/views/admin/push-tab.js +15 -4
- package/dist/public/views/admin/realtime-tab.js +3 -3
- package/dist/public/views/admin/services-tab.js +18 -27
- package/dist/public/views/admin/shared.js +48 -58
- package/dist/public/views/admin/sharing-groups-tab.js +5 -10
- package/dist/public/views/admin/stats-tab.js +3 -3
- package/dist/public/views/guides.js +9 -13
- package/dist/public/views/help.js +3 -24
- package/dist/public/views/hobbies.js +47 -41
- package/dist/public/views/marketplace.js +42 -34
- package/dist/public/views/openclaw.js +0 -1
- package/dist/public/views/portal-classic.js +4 -15
- package/dist/public/views/portal-dev.js +28 -30
- package/dist/public/views/portal.js +16 -21
- package/dist/public/views/portfolio.js +11 -12
- package/dist/public/views/profile/access-tab.js +250 -1
- package/dist/public/views/profile/agents/agent-card.js +75 -4
- package/dist/public/views/profile/agents/tab-activity.js +15 -13
- package/dist/public/views/profile/agents/tab-agent-config.js +60 -6
- package/dist/public/views/profile/agents/tab-integration.js +37 -60
- package/dist/public/views/profile/agents/tab-messages.js +10 -1
- package/dist/public/views/profile/agents/tab-quality.js +25 -19
- package/dist/public/views/profile/agents/tab-schedules.js +110 -0
- package/dist/public/views/profile/agents-activity-subtab.js +4 -4
- package/dist/public/views/profile/agents-services-subtab.js +5 -4
- package/dist/public/views/profile/agents-tab.js +141 -37
- package/dist/public/views/profile/agents-tasks-subtab.js +221 -26
- package/dist/public/views/profile/calibrator-batch.js +5 -11
- package/dist/public/views/profile/calibrator-tab.js +4 -9
- package/dist/public/views/profile/chat-sessions-tab.js +9 -5
- package/dist/public/views/profile/email-tab.js +2 -2
- package/dist/public/views/profile/extensions-tab.js +27 -22
- package/dist/public/views/profile/federation-tab.js +4 -1
- package/dist/public/views/profile/foundry-detail.js +22 -23
- package/dist/public/views/profile/foundry-tab.js +12 -13
- package/dist/public/views/profile/generator-dashboard/DebugPanel.js +4 -7
- package/dist/public/views/profile/generator-dashboard/use-dashboard-core.js +4 -1
- package/dist/public/views/profile/generator-dashboard/use-edit-mode.js +3 -2
- package/dist/public/views/profile/generator-detail.js +26 -30
- package/dist/public/views/profile/generator-tab.js +5 -5
- package/dist/public/views/profile/knowledge-tab.js +12 -12
- package/dist/public/views/profile/landing-page.js +100 -149
- package/dist/public/views/profile/memory-tab.js +15 -11
- package/dist/public/views/profile/node-stats-tab.js +3 -3
- package/dist/public/views/profile/nodes-tab.js +10 -3
- package/dist/public/views/profile/notifications-tab.js +3 -3
- package/dist/public/views/profile/packages-tab.js +14 -14
- package/dist/public/views/profile/scheduler-tab.js +340 -0
- package/dist/public/views/profile/services-tab.js +1 -1
- package/dist/public/views/profile/shared.js +16 -12
- package/dist/public/views/profile/wallet-tab.js +27 -50
- package/dist/public/views/profile/work-tab.js +29 -31
- package/dist/public/views/profile.js +24 -0
- package/dist/public/views/public-knowledge-viewer.js +9 -18
- package/dist/src/auth/middleware.d.ts +3 -2
- package/dist/src/auth/middleware.d.ts.map +1 -1
- package/dist/src/auth/middleware.js +78 -3
- package/dist/src/auth/middleware.js.map +1 -1
- package/dist/src/cli/init-wizard.d.ts.map +1 -1
- package/dist/src/cli/init-wizard.js +13 -1
- package/dist/src/cli/init-wizard.js.map +1 -1
- package/dist/src/config.d.ts +6 -0
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +12 -1
- package/dist/src/config.js.map +1 -1
- package/dist/src/generated/api-types.d.ts +708 -8
- package/dist/src/generated/api-types.d.ts.map +1 -1
- package/dist/src/mcp/agent-schedules.d.ts +23 -0
- package/dist/src/mcp/agent-schedules.d.ts.map +1 -0
- package/dist/src/mcp/agent-schedules.js +175 -0
- package/dist/src/mcp/agent-schedules.js.map +1 -0
- package/dist/src/mcp/annotations.d.ts.map +1 -1
- package/dist/src/mcp/annotations.js +6 -0
- package/dist/src/mcp/annotations.js.map +1 -1
- package/dist/src/mcp/catalog/definitions.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions.js +55 -0
- package/dist/src/mcp/catalog/definitions.js.map +1 -1
- package/dist/src/mcp/catalog/scopes.d.ts.map +1 -1
- package/dist/src/mcp/catalog/scopes.js +12 -0
- package/dist/src/mcp/catalog/scopes.js.map +1 -1
- package/dist/src/mcp/catalog/surfaces.d.ts.map +1 -1
- package/dist/src/mcp/catalog/surfaces.js +2 -0
- package/dist/src/mcp/catalog/surfaces.js.map +1 -1
- package/dist/src/mcp/index.d.ts.map +1 -1
- package/dist/src/mcp/index.js +2 -0
- package/dist/src/mcp/index.js.map +1 -1
- package/dist/src/models/agent-task-schemas.d.ts +6 -0
- package/dist/src/models/agent-task-schemas.d.ts.map +1 -1
- package/dist/src/models/agent-task-schemas.js +6 -0
- package/dist/src/models/agent-task-schemas.js.map +1 -1
- package/dist/src/models/schemas.d.ts +1 -0
- package/dist/src/models/schemas.d.ts.map +1 -1
- package/dist/src/models/schemas.js +4 -0
- package/dist/src/models/schemas.js.map +1 -1
- package/dist/src/routes/access-tokens.d.ts +17 -0
- package/dist/src/routes/access-tokens.d.ts.map +1 -0
- package/dist/src/routes/access-tokens.js +164 -0
- package/dist/src/routes/access-tokens.js.map +1 -0
- package/dist/src/routes/agent-tasks.d.ts +2 -0
- package/dist/src/routes/agent-tasks.d.ts.map +1 -1
- package/dist/src/routes/agent-tasks.js +118 -23
- package/dist/src/routes/agent-tasks.js.map +1 -1
- package/dist/src/routes/agents.d.ts.map +1 -1
- package/dist/src/routes/agents.js +46 -0
- package/dist/src/routes/agents.js.map +1 -1
- package/dist/src/routes/ai.d.ts +6 -9
- package/dist/src/routes/ai.d.ts.map +1 -1
- package/dist/src/routes/ai.js +26 -175
- package/dist/src/routes/ai.js.map +1 -1
- package/dist/src/routes/apps.d.ts.map +1 -1
- package/dist/src/routes/apps.js +104 -34
- package/dist/src/routes/apps.js.map +1 -1
- package/dist/src/routes/auth.d.ts.map +1 -1
- package/dist/src/routes/auth.js +77 -4
- package/dist/src/routes/auth.js.map +1 -1
- package/dist/src/routes/cortex.d.ts +2 -1
- package/dist/src/routes/cortex.d.ts.map +1 -1
- package/dist/src/routes/cortex.js +13 -8
- package/dist/src/routes/cortex.js.map +1 -1
- package/dist/src/routes/extensions.d.ts.map +1 -1
- package/dist/src/routes/extensions.js +85 -51
- package/dist/src/routes/extensions.js.map +1 -1
- package/dist/src/routes/generator.d.ts.map +1 -1
- package/dist/src/routes/generator.js +109 -43
- package/dist/src/routes/generator.js.map +1 -1
- package/dist/src/routes/ghii.d.ts.map +1 -1
- package/dist/src/routes/ghii.js +34 -13
- package/dist/src/routes/ghii.js.map +1 -1
- package/dist/src/routes/libs.d.ts +15 -0
- package/dist/src/routes/libs.d.ts.map +1 -1
- package/dist/src/routes/libs.js +178 -55
- package/dist/src/routes/libs.js.map +1 -1
- package/dist/src/routes/portal.d.ts.map +1 -1
- package/dist/src/routes/portal.js +1 -0
- package/dist/src/routes/portal.js.map +1 -1
- package/dist/src/routes/schedules.d.ts +33 -0
- package/dist/src/routes/schedules.d.ts.map +1 -0
- package/dist/src/routes/schedules.js +380 -0
- package/dist/src/routes/schedules.js.map +1 -0
- package/dist/src/server-bootstrap/config-init.js +2 -2
- package/dist/src/server-bootstrap/config-init.js.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.js +7 -0
- package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
- package/dist/src/server-bootstrap/service-init.d.ts.map +1 -1
- package/dist/src/server-bootstrap/service-init.js +2 -1
- package/dist/src/server-bootstrap/service-init.js.map +1 -1
- package/dist/src/services/access-token.d.ts +28 -0
- package/dist/src/services/access-token.d.ts.map +1 -0
- package/dist/src/services/access-token.js +37 -0
- package/dist/src/services/access-token.js.map +1 -0
- package/dist/src/services/ai-completion.d.ts +83 -0
- package/dist/src/services/ai-completion.d.ts.map +1 -0
- package/dist/src/services/ai-completion.js +187 -0
- package/dist/src/services/ai-completion.js.map +1 -0
- package/dist/src/services/config-schema.d.ts.map +1 -1
- package/dist/src/services/config-schema.js +3 -0
- package/dist/src/services/config-schema.js.map +1 -1
- package/dist/src/services/generator-prompt-seeds.d.ts.map +1 -1
- package/dist/src/services/generator-prompt-seeds.js +6 -3
- package/dist/src/services/generator-prompt-seeds.js.map +1 -1
- package/dist/src/services/generator-prompts/spec-validate.d.ts.map +1 -1
- package/dist/src/services/generator-prompts/spec-validate.js +6 -2
- package/dist/src/services/generator-prompts/spec-validate.js.map +1 -1
- package/dist/src/services/generator-registration.d.ts +12 -4
- package/dist/src/services/generator-registration.d.ts.map +1 -1
- package/dist/src/services/generator-registration.js +71 -0
- package/dist/src/services/generator-registration.js.map +1 -1
- package/dist/src/services/generator-validate.d.ts +10 -0
- package/dist/src/services/generator-validate.d.ts.map +1 -1
- package/dist/src/services/generator-validate.js +180 -36
- package/dist/src/services/generator-validate.js.map +1 -1
- package/dist/src/services/owner-session.d.ts +43 -0
- package/dist/src/services/owner-session.d.ts.map +1 -0
- package/dist/src/services/owner-session.js +175 -0
- package/dist/src/services/owner-session.js.map +1 -0
- package/dist/src/services/schedule-constraints.d.ts +65 -0
- package/dist/src/services/schedule-constraints.d.ts.map +1 -0
- package/dist/src/services/schedule-constraints.js +106 -0
- package/dist/src/services/schedule-constraints.js.map +1 -0
- package/dist/src/services/scheduler.d.ts +34 -0
- package/dist/src/services/scheduler.d.ts.map +1 -1
- package/dist/src/services/scheduler.js +266 -22
- package/dist/src/services/scheduler.js.map +1 -1
- package/dist/src/services/skill-bundle/generator.js +19 -0
- package/dist/src/services/skill-bundle/generator.js.map +1 -1
- package/dist/src/storage/interface.d.ts +48 -4
- package/dist/src/storage/interface.d.ts.map +1 -1
- package/dist/src/storage/interface.js.map +1 -1
- package/dist/src/storage/providers/mongodb/index.d.ts +31 -0
- package/dist/src/storage/providers/mongodb/index.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.js +187 -9
- package/dist/src/storage/providers/mongodb/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/index.d.ts +31 -0
- package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/index.js +131 -8
- package/dist/src/storage/providers/sqlite/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent-task.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent-task.js +6 -4
- package/dist/src/storage/providers/sqlite/repos/agent-task.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.js +79 -8
- package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
- package/dist/src/storage/repositories/pat.repository.d.ts +40 -0
- package/dist/src/storage/repositories/pat.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/pat.repository.js +14 -0
- package/dist/src/storage/repositories/pat.repository.js.map +1 -0
- package/dist/src/storage/repositories/scheduler.repository.d.ts +2 -0
- package/dist/src/storage/repositories/scheduler.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/session.repository.d.ts +51 -0
- package/dist/src/storage/repositories/session.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/session.repository.js +12 -0
- package/dist/src/storage/repositories/session.repository.js.map +1 -1
- package/dist/src/utils/env-config.d.ts.map +1 -1
- package/dist/src/utils/env-config.js +25 -1
- package/dist/src/utils/env-config.js.map +1 -1
- package/dist/src/utils/env-validator.d.ts.map +1 -1
- package/dist/src/utils/env-validator.js +4 -0
- package/dist/src/utils/env-validator.js.map +1 -1
- package/package.json +1 -1
- package/prisma/schema.prisma +48 -0
|
@@ -6,12 +6,16 @@
|
|
|
6
6
|
* @version-history
|
|
7
7
|
* v1.0.0 — 2026-03-16 — Initial work tab
|
|
8
8
|
* v1.1.0 — 2026-03-17 — Replace inline styles with CSS classes; i18n for action labels
|
|
9
|
+
* v1.2.0 — 2026-06-02 — Component unification (#2): Rate + Deliver modals use the
|
|
10
|
+
* canonical <Modal> component (Escape/backdrop close + header ✕) instead of
|
|
11
|
+
* hand-rolled .modal-overlay markup.
|
|
9
12
|
*/
|
|
10
13
|
import { h } from 'preact';
|
|
11
14
|
import { useState, useEffect, useRef } from 'preact/hooks';
|
|
12
15
|
import htm from 'htm';
|
|
13
16
|
const html = htm.bind(h);
|
|
14
17
|
import { t } from '/js/i18n.js';
|
|
18
|
+
import { Modal } from '/components/Modal.js';
|
|
15
19
|
import { escHtml, timeAgo } from '/js/utils.js';
|
|
16
20
|
import { Spinner } from './shared.js';
|
|
17
21
|
import { listInbox, listSent, submitRating, acceptWork, rejectWork, deliverWork, updateProgress } from '/js/services/work.js';
|
|
@@ -179,42 +183,36 @@ function RateModal({ desc, onSubmit, onCancel }) {
|
|
|
179
183
|
const [rating, setRating] = useState(0);
|
|
180
184
|
const [comment, setComment] = useState('');
|
|
181
185
|
return html`
|
|
182
|
-
|
|
183
|
-
<
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
<
|
|
192
|
-
<
|
|
193
|
-
<button class="btn-primary" onClick=${() => onSubmit(rating, comment)}>${t('profile.work.submitRating')}</button>
|
|
194
|
-
<button class="btn-outline" onClick=${onCancel}>${t('profile.cancel')}</button>
|
|
195
|
-
</div>
|
|
186
|
+
<${Modal} open=${true} onClose=${onCancel} title=${t('profile.work.rateTitle')}>
|
|
187
|
+
<p class="text-meta mb-1">${t('profile.work.rateDesc')} ${escHtml(desc || '')}</p>
|
|
188
|
+
<div class="star-rating mb-1">
|
|
189
|
+
${[1,2,3,4,5].map(i => html`
|
|
190
|
+
<span class="star ${i <= rating ? 'active' : ''}" onClick=${() => setRating(i)}>\u2605</span>
|
|
191
|
+
`)}
|
|
192
|
+
</div>
|
|
193
|
+
<div class="form-row"><label>${t('profile.work.commentLabel')}</label><textarea class="input-field" rows="2" value=${comment} onInput=${e => setComment(e.target.value)}></textarea></div>
|
|
194
|
+
<div class="form-actions">
|
|
195
|
+
<button class="btn-primary" onClick=${() => onSubmit(rating, comment)}>${t('profile.work.submitRating')}</button>
|
|
196
|
+
<button class="btn-outline" onClick=${onCancel}>${t('profile.cancel')}</button>
|
|
196
197
|
</div>
|
|
197
|
-
|
|
198
|
+
<//>`;
|
|
198
199
|
}
|
|
199
200
|
|
|
200
201
|
function DeliverModal({ desc, loading, onSubmit, onCancel }) {
|
|
201
202
|
const [result, setResult] = useState('');
|
|
202
203
|
return html`
|
|
203
|
-
|
|
204
|
-
<
|
|
205
|
-
|
|
206
|
-
<
|
|
207
|
-
<
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
</button>
|
|
216
|
-
<button class="btn-outline" disabled=${loading} onClick=${onCancel}>${t('profile.cancel')}</button>
|
|
217
|
-
</div>
|
|
204
|
+
<${Modal} open=${true} onClose=${onCancel} title=${t('profile.work.deliver')}>
|
|
205
|
+
<p class="text-meta mb-1">${t('profile.work.delivering')}: ${escHtml(desc || '')}</p>
|
|
206
|
+
<div class="form-row">
|
|
207
|
+
<label>${t('profile.work.commentLabel')}</label>
|
|
208
|
+
<textarea class="input-field" rows="4" placeholder="Describe the completed work or attach results..."
|
|
209
|
+
value=${result} onInput=${e => setResult(e.target.value)}></textarea>
|
|
210
|
+
</div>
|
|
211
|
+
<div class="form-actions">
|
|
212
|
+
<button class="btn-primary" disabled=${loading} onClick=${() => onSubmit(result || undefined)}>
|
|
213
|
+
${loading ? t('profile.work.delivering') : t('profile.work.deliver')}
|
|
214
|
+
</button>
|
|
215
|
+
<button class="btn-outline" disabled=${loading} onClick=${onCancel}>${t('profile.cancel')}</button>
|
|
218
216
|
</div>
|
|
219
|
-
|
|
217
|
+
<//>`;
|
|
220
218
|
}
|
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file profile.js
|
|
3
|
+
* @description Profile SPA shell — the authenticated user dashboard. Owns the
|
|
4
|
+
* tab registry (tier-gated), the active-tab/visited-tab state, live-update
|
|
5
|
+
* wiring, stats aggregation, and a local showToast() passed down to every tab
|
|
6
|
+
* as a prop (one of the codebase's toast pathways; see note at its definition).
|
|
7
|
+
* @structure TABS registry, default Profile() component (state, showToast,
|
|
8
|
+
* updateStats, navigate, renderTab) rendering LandingPage + a toast pill.
|
|
9
|
+
* @usage Lazy-loaded route component for /v1/profile.
|
|
10
|
+
* @version-history
|
|
11
|
+
* v1.1.0 — 2026-06-02 — Component unification (#10 toast): tokenized the
|
|
12
|
+
* shared .toast colors in theme.css (--toast-*) and documented this shell's
|
|
13
|
+
* showToast as a distinct, intentionally-not-migrated toast pathway. Added
|
|
14
|
+
* this header (campsite rule — file previously had none).
|
|
15
|
+
* v1.0.0 — prior — Profile SPA shell.
|
|
16
|
+
*/
|
|
1
17
|
import { h } from 'preact';
|
|
2
18
|
import { useState, useEffect, useCallback, useRef, useMemo } from 'preact/hooks';
|
|
3
19
|
import htm from 'htm';
|
|
@@ -45,6 +61,7 @@ import FoundryTab from './profile/foundry-tab.js';
|
|
|
45
61
|
import CalibratorTab from './profile/calibrator-tab.js';
|
|
46
62
|
import PackagesTab from './profile/packages-tab.js';
|
|
47
63
|
import CapabilitiesTab from './profile/capabilities-tab.js';
|
|
64
|
+
import SchedulerTab from './profile/scheduler-tab.js';
|
|
48
65
|
|
|
49
66
|
// Each tab has a minTier: 'new' | 'active' | 'experienced'
|
|
50
67
|
// Tabs with minTier <= current tier are visible in the tab bar.
|
|
@@ -52,6 +69,7 @@ import CapabilitiesTab from './profile/capabilities-tab.js';
|
|
|
52
69
|
const TABS = [
|
|
53
70
|
{ id: 'portfolio', key: 'portfolio.tabLabel', component: PortfolioTab, minTier: 'active' },
|
|
54
71
|
{ id: 'agents', key: 'profile.tabs.agents', component: AgentsTab, minTier: 'active' },
|
|
72
|
+
{ id: 'scheduler', key: 'profile.tabs.scheduler', component: SchedulerTab, minTier: 'active' },
|
|
55
73
|
{ id: 'chatsessions', key: 'profile.tabs.chatSessions', component: ChatSessionsTab, minTier: 'active' },
|
|
56
74
|
{ id: 'mcp', key: 'profile.tabs.mcp', component: McpTab, minTier: 'active' },
|
|
57
75
|
{ id: 'wallet', key: 'profile.tabs.wallet', component: WalletTab, minTier: 'new' },
|
|
@@ -99,6 +117,12 @@ export default function Profile({ navigate, locale }) {
|
|
|
99
117
|
const [toast, setToast] = useState(null);
|
|
100
118
|
const toastTimer = useRef(null);
|
|
101
119
|
|
|
120
|
+
// NOTE: this is a THIRD toast pathway alongside /components/Toast.js's
|
|
121
|
+
// useToast() and the admin shell's useToast tuple. It renders a distinct
|
|
122
|
+
// <.pf.toast-container> wrapper + <.toast.error> markup (vs Toast.js's bare
|
|
123
|
+
// <.toast.toast-error/.toast-success>), so it is a convergence candidate but
|
|
124
|
+
// is NOT migrated here — adopting Toast.js would change DOM/behavior. The
|
|
125
|
+
// .toast colors are now tokenized in theme.css (--toast-*).
|
|
102
126
|
const showToast = useCallback((msg, isError) => {
|
|
103
127
|
if (toastTimer.current) clearTimeout(toastTimer.current);
|
|
104
128
|
setToast({ msg, isError });
|
|
@@ -4,12 +4,18 @@
|
|
|
4
4
|
* Browse, search, filter, and read public knowledge packages.
|
|
5
5
|
* @version-history v1.0.0 — 2026-05-26 — Initial implementation
|
|
6
6
|
* v1.1.0 — 2026-05-26 — Human-readable entry rendering, Copy as Markdown
|
|
7
|
+
* v1.2.0 — 2026-06-02 — Migrate Copy-as-Markdown button to canonical CopyButton component
|
|
8
|
+
* v1.3.0 — 2026-06-02 — Component unification (#17): migrate the "Load more" button to
|
|
9
|
+
* the canonical LoadMore component (removes an inline style="text-align:center;
|
|
10
|
+
* margin-top:1.5rem;"; identical visual — same .load-more wrapper + .btn-outline).
|
|
7
11
|
*/
|
|
8
12
|
import { h } from 'preact';
|
|
9
13
|
import { useState, useEffect, useCallback, useRef } from 'preact/hooks';
|
|
10
14
|
import htm from 'htm';
|
|
11
15
|
const html = htm.bind(h);
|
|
12
16
|
import { t } from '/js/i18n.js';
|
|
17
|
+
import { CopyButton } from '/components/CopyButton.js';
|
|
18
|
+
import { LoadMore } from '/components/Pagination.js';
|
|
13
19
|
|
|
14
20
|
const NODE_URL = typeof window !== 'undefined' ? window.location.origin : '';
|
|
15
21
|
|
|
@@ -365,9 +371,7 @@ function BrowseView({ onSelect }) {
|
|
|
365
371
|
${loading && html`<div class="pkv-loading">${t('pkv.loading')}</div>`}
|
|
366
372
|
|
|
367
373
|
${!loading && hasMore && html`
|
|
368
|
-
|
|
369
|
-
<button class="btn-outline" onClick=${loadMore}>${t('pkv.loadMore')}</button>
|
|
370
|
-
</div>
|
|
374
|
+
<${LoadMore} onMore=${loadMore} label=${t('pkv.loadMore')} />
|
|
371
375
|
`}
|
|
372
376
|
`;
|
|
373
377
|
}
|
|
@@ -453,22 +457,10 @@ function DetailView({ packageId, onBack }) {
|
|
|
453
457
|
return () => { cancelled = true; };
|
|
454
458
|
}, [packageId]);
|
|
455
459
|
|
|
456
|
-
const [copied, setCopied] = useState(false);
|
|
457
|
-
|
|
458
460
|
const toggleEntry = useCallback((entryKey) => {
|
|
459
461
|
setExpandedEntries(prev => ({ ...prev, [entryKey]: !prev[entryKey] }));
|
|
460
462
|
}, []);
|
|
461
463
|
|
|
462
|
-
const handleCopyMarkdown = useCallback(() => {
|
|
463
|
-
if (!manifest) return;
|
|
464
|
-
const publicE = (manifest.entries || []).filter(e => e.visibility === 'public');
|
|
465
|
-
const md = buildFullMarkdown(manifest, publicE, entryData);
|
|
466
|
-
navigator.clipboard.writeText(md).then(() => {
|
|
467
|
-
setCopied(true);
|
|
468
|
-
setTimeout(() => setCopied(false), 2000);
|
|
469
|
-
});
|
|
470
|
-
}, [manifest, entryData]);
|
|
471
|
-
|
|
472
464
|
const handleExport = useCallback(async () => {
|
|
473
465
|
try {
|
|
474
466
|
const result = await exportPackage(packageId);
|
|
@@ -640,9 +632,8 @@ function DetailView({ packageId, onBack }) {
|
|
|
640
632
|
`}
|
|
641
633
|
|
|
642
634
|
<div class="pkv-actions">
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
</button>
|
|
635
|
+
<${CopyButton} text=${buildFullMarkdown(manifest, publicEntries, entryData)} className="btn-primary"
|
|
636
|
+
label=${t('pkv.copyMarkdown')} copiedLabel=${t('pkv.copied')} />
|
|
646
637
|
<button class="btn-outline" onClick=${handleExport}>${t('pkv.exportJson')}</button>
|
|
647
638
|
</div>
|
|
648
639
|
</div>
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { Request, Response, NextFunction } from 'express';
|
|
2
2
|
import { type VerifiedToken } from './jwt.js';
|
|
3
|
+
import type { AimeatConfig } from '../config.js';
|
|
3
4
|
import type { Storage } from '../storage/interface.js';
|
|
4
5
|
/** Initialize session-aware auth middleware. Called once during server startup. */
|
|
5
|
-
export declare function initSessionAuth(storage: Storage): void;
|
|
6
|
+
export declare function initSessionAuth(storage: Storage, config?: AimeatConfig): void;
|
|
6
7
|
/** Called by server.ts after anonymous setup to enable anonymous fallback in auth middleware */
|
|
7
8
|
export declare function enableAnonymousAuth(gaii: string, owner: string): void;
|
|
8
9
|
/** Check if anonymous mode is enabled */
|
|
@@ -23,7 +24,7 @@ declare global {
|
|
|
23
24
|
* Optional auth middleware — parses JWT if present, does not reject if absent.
|
|
24
25
|
* Use requireAuth() or requireRole() for endpoints that need auth.
|
|
25
26
|
*/
|
|
26
|
-
export declare function optionalAuth(): (req: Request,
|
|
27
|
+
export declare function optionalAuth(): (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
27
28
|
/**
|
|
28
29
|
* Require authentication. Returns 401 if no valid JWT.
|
|
29
30
|
* If req.auth is already set (e.g. by optionalAuth() in anonymous mode), skips token check.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/auth/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAGpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/auth/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAGpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAOvD,mFAAmF;AACnF,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAG7E;AA6DD,gGAAgG;AAChG,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAIrE;AAED,yCAAyC;AACzC,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,2FAA2F;AAC3F,wBAAgB,uBAAuB,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAEzE;AAGD,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,OAAO,CAAC;QAChB,UAAU,OAAO;YACf,IAAI,CAAC,EAAE,aAAa,CAAC;SACtB;KACF;CACF;AAED;;;GAGG;AACH,wBAAgB,YAAY,KACZ,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,mBAgC9D;AAED;;;GAGG;AACH,wBAAgB,WAAW,KACX,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,mBAkF9D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,KAC5B,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UAQxD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,IAC9B,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UA6BxD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAkBnD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,KACzB,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UAOxD;AAOD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,cAAc,EAAE,MAAM,EAAE,IAC9C,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UAmCxD"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { verifyJWT, isRevoked } from './jwt.js';
|
|
2
|
+
import { setRefreshCookie, readRefreshCookie } from '../services/owner-session.js';
|
|
3
|
+
import { resolvePat, PAT_PREFIX } from '../services/access-token.js';
|
|
2
4
|
import { getStats } from '../services/stats.js';
|
|
3
5
|
import { getPromMetrics } from '../services/prometheus.js';
|
|
4
6
|
import { logger } from '../utils/logger.js';
|
|
5
7
|
// P3-7: Reference to storage for session revocation checks
|
|
6
8
|
let _sessionStorage = null;
|
|
9
|
+
let _config = null;
|
|
7
10
|
/** Initialize session-aware auth middleware. Called once during server startup. */
|
|
8
|
-
export function initSessionAuth(storage) {
|
|
11
|
+
export function initSessionAuth(storage, config) {
|
|
9
12
|
_sessionStorage = storage;
|
|
13
|
+
_config = config ?? null;
|
|
10
14
|
}
|
|
11
15
|
const _lastSeenCache = new Map();
|
|
12
16
|
const LAST_SEEN_THROTTLE_MS = 5 * 60_000;
|
|
@@ -23,6 +27,50 @@ function touchAgentLastSeen(auth) {
|
|
|
23
27
|
_lastSeenCache.set(gaii, now);
|
|
24
28
|
_sessionStorage.updateAgent(gaii, { lastSeen: new Date(now).toISOString() }).catch(() => { });
|
|
25
29
|
}
|
|
30
|
+
// Personal Access Tokens are presented as a Bearer credential (Authorization: Bearer
|
|
31
|
+
// aimeat_pat_...). They are recognised transparently by the auth middleware so an agent
|
|
32
|
+
// is authenticated by the header alone — like a logged-in user — with no app/client changes.
|
|
33
|
+
/**
|
|
34
|
+
* Resolve a Personal Access Token to a verified identity (operator/owner act as the owner
|
|
35
|
+
* GHII; otherwise a scoped agent identity; roles re-derived from the owner's CURRENT roles).
|
|
36
|
+
* Returns null if missing/revoked/expired. Records usage without blocking the request.
|
|
37
|
+
*/
|
|
38
|
+
async function resolvePatToken(token) {
|
|
39
|
+
if (!_sessionStorage)
|
|
40
|
+
return null;
|
|
41
|
+
const r = await resolvePat(_sessionStorage, token);
|
|
42
|
+
if (!r)
|
|
43
|
+
return null;
|
|
44
|
+
_sessionStorage.touchPat(r.patId, new Date().toISOString()).catch(() => { });
|
|
45
|
+
return {
|
|
46
|
+
sub: r.sub,
|
|
47
|
+
owner: r.owner,
|
|
48
|
+
node: '',
|
|
49
|
+
roles: r.roles,
|
|
50
|
+
scopes: r.scopes,
|
|
51
|
+
exp: r.expiresAt ? Math.floor(Date.parse(r.expiresAt) / 1000) : Math.floor(Date.now() / 1000) + 3600,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* For a BROWSER request carrying an owner/operator PAT, set the httpOnly refresh cookie to the
|
|
56
|
+
* PAT itself (once) so the webapp boots "logged in" via the cookie — like a normal login,
|
|
57
|
+
* without re-sending the header on every request. The refresh endpoint validates the PAT
|
|
58
|
+
* cookie on every refresh, so revoking the token takes effect immediately. Skipped for scoped
|
|
59
|
+
* tokens, non-browsers, /v1/auth/* (which manage their own cookies), and when a cookie exists.
|
|
60
|
+
*/
|
|
61
|
+
function maybeSetPatBrowserSession(req, res, rawToken, patAuth) {
|
|
62
|
+
if (!_config)
|
|
63
|
+
return;
|
|
64
|
+
if (!patAuth.roles.includes('owner'))
|
|
65
|
+
return;
|
|
66
|
+
if (req.path.startsWith('/v1/auth/'))
|
|
67
|
+
return;
|
|
68
|
+
if (!String(req.headers['user-agent'] || '').includes('Mozilla'))
|
|
69
|
+
return;
|
|
70
|
+
if (readRefreshCookie(req))
|
|
71
|
+
return;
|
|
72
|
+
setRefreshCookie(req, res, _config, rawToken);
|
|
73
|
+
}
|
|
26
74
|
// Anonymous mode: when enabled, inject this identity for unauthenticated requests
|
|
27
75
|
let _anonymousMode = false;
|
|
28
76
|
let _anonymousGaii = '';
|
|
@@ -46,10 +94,17 @@ export function getAnonymousCredentials() {
|
|
|
46
94
|
* Use requireAuth() or requireRole() for endpoints that need auth.
|
|
47
95
|
*/
|
|
48
96
|
export function optionalAuth() {
|
|
49
|
-
return async (req,
|
|
97
|
+
return async (req, res, next) => {
|
|
50
98
|
const token = extractToken(req);
|
|
51
99
|
if (token) {
|
|
52
|
-
if (
|
|
100
|
+
if (token.startsWith(PAT_PREFIX)) {
|
|
101
|
+
const patAuth = await resolvePatToken(token);
|
|
102
|
+
if (patAuth) {
|
|
103
|
+
req.auth = patAuth;
|
|
104
|
+
maybeSetPatBrowserSession(req, res, token, patAuth);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
else if (await isRevoked(token)) {
|
|
53
108
|
req.auth = undefined;
|
|
54
109
|
}
|
|
55
110
|
else {
|
|
@@ -108,6 +163,26 @@ export function requireAuth() {
|
|
|
108
163
|
res.status(401).json(errorEnvelope('AUTH_REQUIRED', 'Authentication required'));
|
|
109
164
|
return;
|
|
110
165
|
}
|
|
166
|
+
// Personal Access Token presented as a Bearer credential — authenticate via the
|
|
167
|
+
// header transparently (no app/client changes; acts like a logged-in user).
|
|
168
|
+
if (token.startsWith(PAT_PREFIX)) {
|
|
169
|
+
const patAuth = await resolvePatToken(token);
|
|
170
|
+
if (!patAuth) {
|
|
171
|
+
const stats = getStats();
|
|
172
|
+
if (stats)
|
|
173
|
+
stats.increment('auth_failures_total');
|
|
174
|
+
const prom = getPromMetrics();
|
|
175
|
+
if (prom)
|
|
176
|
+
prom.authFailuresTotal.inc();
|
|
177
|
+
res.status(401).json(errorEnvelope('AUTH_REQUIRED', 'Invalid or revoked access token'));
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
req.auth = patAuth;
|
|
181
|
+
maybeSetPatBrowserSession(req, res, token, patAuth);
|
|
182
|
+
touchAgentLastSeen(patAuth);
|
|
183
|
+
next();
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
111
186
|
if (await isRevoked(token)) {
|
|
112
187
|
const stats = getStats();
|
|
113
188
|
if (stats)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/auth/middleware.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/auth/middleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-wizard.d.ts","sourceRoot":"","sources":["../../../src/cli/init-wizard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"init-wizard.d.ts","sourceRoot":"","sources":["../../../src/cli/init-wizard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AA6qDjD,wBAAsB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAoSvE"}
|
|
@@ -61,6 +61,10 @@ const CONFIG_DEFAULTS = {
|
|
|
61
61
|
AIMEAT_EXTENDED_FEATURES: 'true',
|
|
62
62
|
AIMEAT_KEYED_BROWSE: 'true',
|
|
63
63
|
AIMEAT_JWT_TTL: '3600',
|
|
64
|
+
AIMEAT_ACCESS_TTL: '900',
|
|
65
|
+
AIMEAT_REFRESH_IDLE_DAYS: '30',
|
|
66
|
+
AIMEAT_REFRESH_ABSOLUTE_DAYS: '90',
|
|
67
|
+
AIMEAT_REFRESH_GRACE_MS: '60000',
|
|
64
68
|
AIMEAT_WELCOME_BONUS: '100',
|
|
65
69
|
AIMEAT_DAILY_ALLOWANCE: '50',
|
|
66
70
|
AIMEAT_DAILY_ALLOWANCE_CAP: '500',
|
|
@@ -272,7 +276,11 @@ function generateEnvContent(settings) {
|
|
|
272
276
|
{
|
|
273
277
|
title: 'Auth & Tokens',
|
|
274
278
|
vars: [
|
|
275
|
-
{ key: 'AIMEAT_JWT_TTL', comment: 'JWT lifetime in seconds (default: 1h)' },
|
|
279
|
+
{ key: 'AIMEAT_JWT_TTL', comment: 'Legacy / agent JWT lifetime in seconds (default: 1h)' },
|
|
280
|
+
{ key: 'AIMEAT_ACCESS_TTL', comment: 'Owner access-token lifetime in seconds (default: 15min)' },
|
|
281
|
+
{ key: 'AIMEAT_REFRESH_IDLE_DAYS', comment: 'Owner refresh-cookie idle window in days (default: 30)' },
|
|
282
|
+
{ key: 'AIMEAT_REFRESH_ABSOLUTE_DAYS', comment: 'Owner refresh-cookie hard cap in days (default: 90)' },
|
|
283
|
+
{ key: 'AIMEAT_REFRESH_GRACE_MS', comment: 'Refresh-rotation grace window in ms (default: 60s)' },
|
|
276
284
|
],
|
|
277
285
|
},
|
|
278
286
|
{
|
|
@@ -452,6 +460,10 @@ function generateJsonContent(settings) {
|
|
|
452
460
|
AIMEAT_DEV_MODE: 'devMode',
|
|
453
461
|
AIMEAT_ANONYMOUS: 'anonymousMode',
|
|
454
462
|
AIMEAT_JWT_TTL: 'jwtTtlSeconds',
|
|
463
|
+
AIMEAT_ACCESS_TTL: 'accessTtlSeconds',
|
|
464
|
+
AIMEAT_REFRESH_IDLE_DAYS: 'refreshIdleDays',
|
|
465
|
+
AIMEAT_REFRESH_ABSOLUTE_DAYS: 'refreshAbsoluteDays',
|
|
466
|
+
AIMEAT_REFRESH_GRACE_MS: 'refreshGraceMs',
|
|
455
467
|
AIMEAT_WELCOME_BONUS: 'welcomeBonus',
|
|
456
468
|
AIMEAT_DAILY_ALLOWANCE: 'dailyAllowance',
|
|
457
469
|
AIMEAT_DAILY_ALLOWANCE_CAP: 'dailyAllowanceCap',
|