@memtensor/memos-local-openclaw-plugin 0.3.20 → 1.0.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 +232 -22
- package/dist/capture/index.d.ts +1 -1
- package/dist/capture/index.d.ts.map +1 -1
- package/dist/capture/index.js +33 -8
- package/dist/capture/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/ingest/providers/anthropic.d.ts.map +1 -1
- package/dist/ingest/providers/anthropic.js +22 -8
- package/dist/ingest/providers/anthropic.js.map +1 -1
- package/dist/ingest/providers/bedrock.d.ts.map +1 -1
- package/dist/ingest/providers/bedrock.js +22 -8
- package/dist/ingest/providers/bedrock.js.map +1 -1
- package/dist/ingest/providers/gemini.d.ts.map +1 -1
- package/dist/ingest/providers/gemini.js +22 -8
- package/dist/ingest/providers/gemini.js.map +1 -1
- package/dist/ingest/providers/index.d.ts +13 -18
- package/dist/ingest/providers/index.d.ts.map +1 -1
- package/dist/ingest/providers/index.js +213 -139
- package/dist/ingest/providers/index.js.map +1 -1
- package/dist/ingest/providers/openai.d.ts +1 -1
- package/dist/ingest/providers/openai.d.ts.map +1 -1
- package/dist/ingest/providers/openai.js +37 -17
- package/dist/ingest/providers/openai.js.map +1 -1
- package/dist/ingest/task-processor.d.ts +28 -3
- package/dist/ingest/task-processor.d.ts.map +1 -1
- package/dist/ingest/task-processor.js +166 -67
- package/dist/ingest/task-processor.js.map +1 -1
- package/dist/ingest/worker.d.ts.map +1 -1
- package/dist/ingest/worker.js +97 -75
- package/dist/ingest/worker.js.map +1 -1
- package/dist/shared/llm-call.d.ts +26 -0
- package/dist/shared/llm-call.d.ts.map +1 -0
- package/dist/shared/llm-call.js +163 -0
- package/dist/shared/llm-call.js.map +1 -0
- package/dist/skill/evaluator.d.ts +0 -3
- package/dist/skill/evaluator.d.ts.map +1 -1
- package/dist/skill/evaluator.js +34 -59
- package/dist/skill/evaluator.js.map +1 -1
- package/dist/skill/evolver.d.ts +22 -1
- package/dist/skill/evolver.d.ts.map +1 -1
- package/dist/skill/evolver.js +191 -32
- package/dist/skill/evolver.js.map +1 -1
- package/dist/skill/generator.d.ts +0 -3
- package/dist/skill/generator.d.ts.map +1 -1
- package/dist/skill/generator.js +15 -50
- package/dist/skill/generator.js.map +1 -1
- package/dist/skill/upgrader.d.ts +0 -2
- package/dist/skill/upgrader.d.ts.map +1 -1
- package/dist/skill/upgrader.js +4 -39
- package/dist/skill/upgrader.js.map +1 -1
- package/dist/skill/validator.d.ts +0 -2
- package/dist/skill/validator.d.ts.map +1 -1
- package/dist/skill/validator.js +14 -44
- package/dist/skill/validator.js.map +1 -1
- package/dist/storage/sqlite.d.ts +13 -2
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js +72 -6
- package/dist/storage/sqlite.js.map +1 -1
- package/dist/tools/memory-get.d.ts.map +1 -1
- package/dist/tools/memory-get.js +5 -1
- package/dist/tools/memory-get.js.map +1 -1
- package/dist/tools/memory-search.d.ts.map +1 -1
- package/dist/tools/memory-search.js +5 -0
- package/dist/tools/memory-search.js.map +1 -1
- package/dist/tools/memory-timeline.d.ts.map +1 -1
- package/dist/tools/memory-timeline.js +11 -2
- package/dist/tools/memory-timeline.js.map +1 -1
- package/dist/types.d.ts +2 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/dist/viewer/html.d.ts +1 -1
- package/dist/viewer/html.d.ts.map +1 -1
- package/dist/viewer/html.js +233 -9
- package/dist/viewer/html.js.map +1 -1
- package/dist/viewer/server.d.ts +5 -0
- package/dist/viewer/server.d.ts.map +1 -1
- package/dist/viewer/server.js +383 -177
- package/dist/viewer/server.js.map +1 -1
- package/index.ts +9 -3
- package/package.json +2 -1
- package/src/capture/index.ts +39 -10
- package/src/index.ts +3 -2
- package/src/ingest/providers/anthropic.ts +22 -8
- package/src/ingest/providers/bedrock.ts +22 -8
- package/src/ingest/providers/gemini.ts +22 -8
- package/src/ingest/providers/index.ts +192 -142
- package/src/ingest/providers/openai.ts +37 -17
- package/src/ingest/task-processor.ts +183 -65
- package/src/ingest/worker.ts +98 -77
- package/src/shared/llm-call.ts +144 -0
- package/src/skill/evaluator.ts +35 -64
- package/src/skill/evolver.ts +201 -33
- package/src/skill/generator.ts +16 -59
- package/src/skill/upgrader.ts +5 -43
- package/src/skill/validator.ts +15 -47
- package/src/storage/sqlite.ts +88 -6
- package/src/tools/memory-get.ts +6 -1
- package/src/tools/memory-search.ts +6 -0
- package/src/tools/memory-timeline.ts +13 -1
- package/src/types.ts +2 -1
- package/src/viewer/html.ts +233 -9
- package/src/viewer/server.ts +368 -187
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,mxvPAwgIf,CAAC"}
|
package/dist/viewer/html.js
CHANGED
|
@@ -417,7 +417,7 @@ input,textarea,select{font-family:inherit;font-size:inherit}
|
|
|
417
417
|
|
|
418
418
|
/* ─── Analytics / 统计 ─── */
|
|
419
419
|
.nav-tabs{display:flex;align-items:center;gap:2px;background:rgba(255,255,255,.06);border-radius:10px;padding:3px}
|
|
420
|
-
.nav-tabs .tab{padding:6px 20px;border-radius:8px;font-size:13px;font-weight:600;color:var(--text-sec);background:transparent;border:1px solid
|
|
420
|
+
.nav-tabs .tab{padding:6px 20px;border-radius:8px;font-size:13px;font-weight:600;color:var(--text-sec);background:transparent;border:1px solid rgba(0,0,0,0);cursor:pointer;transition:color .2s,background .2s,box-shadow .2s;white-space:nowrap}
|
|
421
421
|
.nav-tabs .tab:hover{color:var(--text)}
|
|
422
422
|
.nav-tabs .tab.active{color:var(--text);background:rgba(255,255,255,.1);border-color:var(--border);box-shadow:0 1px 4px rgba(0,0,0,.15)}
|
|
423
423
|
[data-theme="light"] .nav-tabs{background:rgba(0,0,0,.05)}
|
|
@@ -819,6 +819,7 @@ input,textarea,select{font-family:inherit;font-size:inherit}
|
|
|
819
819
|
<div class="task-detail-summary" id="taskDetailSummary"></div>
|
|
820
820
|
<div class="task-detail-chunks-title" data-i18n="tasks.chunks">Related Memories</div>
|
|
821
821
|
<div class="task-detail-chunks" id="taskDetailChunks"></div>
|
|
822
|
+
<div id="taskDetailActions" style="display:flex;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid var(--border)"></div>
|
|
822
823
|
</div>
|
|
823
824
|
</div>
|
|
824
825
|
</div>
|
|
@@ -867,6 +868,7 @@ input,textarea,select{font-family:inherit;font-size:inherit}
|
|
|
867
868
|
<div class="task-detail-chunks" id="skillVersionsList" style="gap:10px"></div>
|
|
868
869
|
<div class="task-detail-chunks-title" style="margin-top:16px" data-i18n="skills.related">Related Tasks</div>
|
|
869
870
|
<div class="task-detail-chunks" id="skillRelatedTasks" style="gap:8px"></div>
|
|
871
|
+
<div id="skillDetailActions" style="display:flex;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid var(--border)"></div>
|
|
870
872
|
</div>
|
|
871
873
|
</div>
|
|
872
874
|
<div class="analytics-view" id="analyticsView">
|
|
@@ -1122,8 +1124,20 @@ input,textarea,select{font-family:inherit;font-size:inherit}
|
|
|
1122
1124
|
<div id="migrateActions" style="display:flex;gap:12px;align-items:center;flex-wrap:wrap">
|
|
1123
1125
|
<button class="btn btn-ghost" onclick="migrateScan()" id="migrateScanBtn" data-i18n="migrate.scan">Scan Data Sources</button>
|
|
1124
1126
|
<button class="btn btn-primary" onclick="migrateStart()" id="migrateStartBtn" style="display:none" data-i18n="migrate.start">Start Import</button>
|
|
1127
|
+
<span id="migrateConcurrencyRow" style="display:none;align-items:center;gap:6px">
|
|
1128
|
+
<span style="font-size:11px;color:var(--text-muted)" data-i18n="migrate.concurrency.label">Concurrent agents</span>
|
|
1129
|
+
<select id="migrateConcurrency" class="filter-select" style="min-width:auto;padding:3px 10px;font-size:11px">
|
|
1130
|
+
<option value="1" selected>1</option>
|
|
1131
|
+
<option value="2">2</option>
|
|
1132
|
+
<option value="4">4</option>
|
|
1133
|
+
<option value="8">8</option>
|
|
1134
|
+
</select>
|
|
1135
|
+
</span>
|
|
1125
1136
|
<span id="migrateStatus" style="font-size:11px;color:var(--text-muted)"></span>
|
|
1126
1137
|
</div>
|
|
1138
|
+
<div id="migrateConcurrencyWarn" style="display:none;margin-top:8px;padding:8px 12px;background:rgba(245,158,11,.06);border:1px solid rgba(245,158,11,.2);border-radius:8px;font-size:11px;color:#f59e0b;line-height:1.5">
|
|
1139
|
+
<span data-i18n="migrate.concurrency.warn">\u26A0 Increasing concurrency raises LLM API call frequency, which may trigger rate limits and cause failures.</span>
|
|
1140
|
+
</div>
|
|
1127
1141
|
|
|
1128
1142
|
<!-- Post-process section: shown after import completes -->
|
|
1129
1143
|
<div id="postprocessSection" style="display:none;margin-top:16px">
|
|
@@ -1146,11 +1160,23 @@ input,textarea,select{font-family:inherit;font-size:inherit}
|
|
|
1146
1160
|
</div>
|
|
1147
1161
|
</label>
|
|
1148
1162
|
</div>
|
|
1149
|
-
<div style="display:flex;gap:10px;align-items:center">
|
|
1163
|
+
<div style="display:flex;gap:10px;align-items:center;flex-wrap:wrap">
|
|
1150
1164
|
<button class="btn btn-primary" id="ppStartBtn" onclick="ppStart()" data-i18n="pp.start">Start Processing</button>
|
|
1151
1165
|
<button class="btn btn-sm" id="ppStopBtn" onclick="ppStop()" style="display:none;background:rgba(239,68,68,.12);color:#ef4444;border:1px solid rgba(239,68,68,.3);font-size:12px;padding:5px 16px;font-weight:600" data-i18n="migrate.stop">\u25A0 Stop</button>
|
|
1166
|
+
<span style="display:inline-flex;align-items:center;gap:6px">
|
|
1167
|
+
<span style="font-size:11px;color:var(--text-muted)" data-i18n="pp.concurrency.label">Concurrent agents</span>
|
|
1168
|
+
<select id="ppConcurrency" class="filter-select" style="min-width:auto;padding:3px 10px;font-size:11px">
|
|
1169
|
+
<option value="1" selected>1</option>
|
|
1170
|
+
<option value="2">2</option>
|
|
1171
|
+
<option value="4">4</option>
|
|
1172
|
+
<option value="8">8</option>
|
|
1173
|
+
</select>
|
|
1174
|
+
</span>
|
|
1152
1175
|
<span id="ppStatus" style="font-size:11px;color:var(--text-muted)"></span>
|
|
1153
1176
|
</div>
|
|
1177
|
+
<div id="ppConcurrencyWarn" style="display:none;margin-top:8px;padding:8px 12px;background:rgba(245,158,11,.06);border:1px solid rgba(245,158,11,.2);border-radius:8px;font-size:11px;color:#f59e0b;line-height:1.5">
|
|
1178
|
+
<span data-i18n="pp.concurrency.warn">\u26A0 Increasing concurrency raises LLM API call frequency, which may trigger rate limits and cause failures.</span>
|
|
1179
|
+
</div>
|
|
1154
1180
|
<div id="ppProgress" style="display:none;margin-top:12px">
|
|
1155
1181
|
<div style="display:flex;align-items:center;gap:12px;margin-bottom:8px">
|
|
1156
1182
|
<div style="font-size:12px;font-weight:600;color:var(--text)" id="ppPhaseLabel"></div>
|
|
@@ -1455,6 +1481,8 @@ const I18N={
|
|
|
1455
1481
|
'migrate.config.warn.desc':'Please configure both Embedding Model and Summarizer Model above before importing. These are required for processing memories.',
|
|
1456
1482
|
'migrate.sqlite.label':'Memory Index (SQLite)',
|
|
1457
1483
|
'migrate.sessions.label':'Conversation History',
|
|
1484
|
+
'migrate.concurrency.label':'Concurrent agents',
|
|
1485
|
+
'migrate.concurrency.warn':'\u26A0 Increasing concurrency raises LLM API call frequency, which may trigger rate limits and cause failures.',
|
|
1458
1486
|
'migrate.scan':'Scan Data Sources',
|
|
1459
1487
|
'migrate.start':'Start Import',
|
|
1460
1488
|
'migrate.scanning':'Scanning...',
|
|
@@ -1478,6 +1506,8 @@ const I18N={
|
|
|
1478
1506
|
'pp.tasks.hint':'Group imported messages into tasks and generate a structured summary (title, goal, steps, result) for each one. Makes it easier to search and recall past work.',
|
|
1479
1507
|
'pp.skills.label':'Trigger skill evolution',
|
|
1480
1508
|
'pp.skills.hint':'Analyze completed tasks and automatically create or upgrade reusable skills (SKILL.md). Requires task summaries to be enabled. May take longer due to LLM evaluation.',
|
|
1509
|
+
'pp.concurrency.label':'Concurrent agents',
|
|
1510
|
+
'pp.concurrency.warn':'\u26A0 Increasing concurrency raises LLM API call frequency, which may trigger rate limits and cause failures.',
|
|
1481
1511
|
'pp.start':'Start Processing',
|
|
1482
1512
|
'pp.resume':'Resume Processing',
|
|
1483
1513
|
'pp.running':'Processing',
|
|
@@ -1526,7 +1556,25 @@ const I18N={
|
|
|
1526
1556
|
'tasks.role.assistant':'Assistant',
|
|
1527
1557
|
'tasks.error':'Error',
|
|
1528
1558
|
'tasks.error.detail':'Failed to load task details',
|
|
1529
|
-
'tasks.untitled.related':'Untitled'
|
|
1559
|
+
'tasks.untitled.related':'Untitled',
|
|
1560
|
+
'task.edit':'Edit',
|
|
1561
|
+
'task.delete':'Delete',
|
|
1562
|
+
'task.save':'Save',
|
|
1563
|
+
'task.cancel':'Cancel',
|
|
1564
|
+
'task.delete.confirm':'Are you sure you want to delete this task? This cannot be undone.',
|
|
1565
|
+
'task.delete.error':'Failed to delete task: ',
|
|
1566
|
+
'task.save.error':'Failed to save task: ',
|
|
1567
|
+
'task.retrySkill':'Retry Skill Generation',
|
|
1568
|
+
'task.retrySkill.short':'Retry Skill',
|
|
1569
|
+
'task.retrySkill.confirm':'Re-trigger skill generation for this task?',
|
|
1570
|
+
'task.retrySkill.error':'Failed to retry skill generation: ',
|
|
1571
|
+
'skill.edit':'Edit',
|
|
1572
|
+
'skill.delete':'Delete',
|
|
1573
|
+
'skill.save':'Save',
|
|
1574
|
+
'skill.cancel':'Cancel',
|
|
1575
|
+
'skill.delete.confirm':'Are you sure you want to delete this skill? This will also remove all associated files and cannot be undone.',
|
|
1576
|
+
'skill.delete.error':'Failed to delete skill: ',
|
|
1577
|
+
'skill.save.error':'Failed to save skill: '
|
|
1530
1578
|
},
|
|
1531
1579
|
zh:{
|
|
1532
1580
|
'title':'OpenClaw 记忆',
|
|
@@ -1726,6 +1774,8 @@ const I18N={
|
|
|
1726
1774
|
'migrate.config.warn.desc':'请先在上方配置好 Embedding 模型和 Summarizer 模型,这两项是处理记忆所必需的。',
|
|
1727
1775
|
'migrate.sqlite.label':'记忆索引 (SQLite)',
|
|
1728
1776
|
'migrate.sessions.label':'对话历史',
|
|
1777
|
+
'migrate.concurrency.label':'并行 Agent 数',
|
|
1778
|
+
'migrate.concurrency.warn':'\u26A0 提高并行数会增加 LLM API 调用频率,可能触发限流而导致失败。',
|
|
1729
1779
|
'migrate.scan':'扫描数据源',
|
|
1730
1780
|
'migrate.start':'开始导入',
|
|
1731
1781
|
'migrate.scanning':'扫描中...',
|
|
@@ -1749,6 +1799,8 @@ const I18N={
|
|
|
1749
1799
|
'pp.tasks.hint':'将导入的消息按任务分组,为每个任务生成结构化摘要(标题、目标、步骤、结果),方便日后搜索和回忆。',
|
|
1750
1800
|
'pp.skills.label':'触发技能进化',
|
|
1751
1801
|
'pp.skills.hint':'分析已完成的任务,自动创建或升级可复用的技能(SKILL.md)。需要先启用任务摘要。由于需要 LLM 评估,耗时较长。',
|
|
1802
|
+
'pp.concurrency.label':'并行 Agent 数',
|
|
1803
|
+
'pp.concurrency.warn':'\u26A0 提高并行数会增加 LLM API 调用频率,可能触发限流而导致失败。',
|
|
1752
1804
|
'pp.start':'开始处理',
|
|
1753
1805
|
'pp.resume':'继续处理',
|
|
1754
1806
|
'pp.running':'正在处理',
|
|
@@ -1797,7 +1849,25 @@ const I18N={
|
|
|
1797
1849
|
'tasks.role.assistant':'助手',
|
|
1798
1850
|
'tasks.error':'出错了',
|
|
1799
1851
|
'tasks.error.detail':'加载任务详情失败',
|
|
1800
|
-
'tasks.untitled.related':'未命名'
|
|
1852
|
+
'tasks.untitled.related':'未命名',
|
|
1853
|
+
'task.edit':'编辑',
|
|
1854
|
+
'task.delete':'删除',
|
|
1855
|
+
'task.save':'保存',
|
|
1856
|
+
'task.cancel':'取消',
|
|
1857
|
+
'task.delete.confirm':'确定要删除此任务吗?此操作不可撤销。',
|
|
1858
|
+
'task.delete.error':'删除任务失败:',
|
|
1859
|
+
'task.save.error':'保存任务失败:',
|
|
1860
|
+
'task.retrySkill':'重新生成技能',
|
|
1861
|
+
'task.retrySkill.short':'重试技能',
|
|
1862
|
+
'task.retrySkill.confirm':'确定要为此任务重新触发技能生成吗?',
|
|
1863
|
+
'task.retrySkill.error':'重新生成技能失败:',
|
|
1864
|
+
'skill.edit':'编辑',
|
|
1865
|
+
'skill.delete':'删除',
|
|
1866
|
+
'skill.save':'保存',
|
|
1867
|
+
'skill.cancel':'取消',
|
|
1868
|
+
'skill.delete.confirm':'确定要删除此技能吗?关联的文件也会被删除,此操作不可撤销。',
|
|
1869
|
+
'skill.delete.error':'删除技能失败:',
|
|
1870
|
+
'skill.save.error':'保存技能失败:'
|
|
1801
1871
|
}
|
|
1802
1872
|
};
|
|
1803
1873
|
const LANG_KEY='memos-viewer-lang';
|
|
@@ -2216,6 +2286,12 @@ async function loadTasks(){
|
|
|
2216
2286
|
'<span class="tag"><span class="icon">\\u{1F4DD}</span> '+task.chunkCount+' '+t('tasks.chunks.label')+'</span>'+
|
|
2217
2287
|
'<span class="tag"><span class="icon">\\u{1F4C2}</span> '+(task.sessionKey||'').slice(0,12)+'</span>'+
|
|
2218
2288
|
'</div>'+
|
|
2289
|
+
'<div class="card-actions" onclick="event.stopPropagation()">'+
|
|
2290
|
+
'<button class="btn btn-sm btn-ghost" onclick="openTaskDetail(\\''+task.id+'\\')">'+t('card.expand')+'</button>'+
|
|
2291
|
+
'<button class="btn btn-sm btn-ghost" onclick="editTaskInline(\\''+task.id+'\\')">'+t('card.edit')+'</button>'+
|
|
2292
|
+
(task.status==='completed'&&(!task.skillStatus||task.skillStatus==='not_generated'||task.skillStatus==='skipped')?'<button class="btn btn-sm btn-ghost" onclick="retrySkillGen(\\''+task.id+'\\')">'+t('task.retrySkill.short')+'</button>':'')+
|
|
2293
|
+
'<button class="btn btn-sm btn-ghost" style="color:var(--accent)" onclick="deleteTask(\\''+task.id+'\\')">'+t('task.delete')+'</button>'+
|
|
2294
|
+
'</div>'+
|
|
2219
2295
|
'</div>';
|
|
2220
2296
|
}).join('');
|
|
2221
2297
|
|
|
@@ -2240,7 +2316,10 @@ function renderTasksPagination(total){
|
|
|
2240
2316
|
el.innerHTML=html;
|
|
2241
2317
|
}
|
|
2242
2318
|
|
|
2319
|
+
var _currentTaskId=null;
|
|
2320
|
+
var _currentTaskData=null;
|
|
2243
2321
|
async function openTaskDetail(taskId){
|
|
2322
|
+
_currentTaskId=taskId;
|
|
2244
2323
|
const overlay=document.getElementById('taskDetailOverlay');
|
|
2245
2324
|
overlay.classList.add('show');
|
|
2246
2325
|
document.getElementById('taskDetailTitle').textContent=t('tasks.loading');
|
|
@@ -2249,6 +2328,7 @@ async function openTaskDetail(taskId){
|
|
|
2249
2328
|
document.getElementById('taskSkillSection').className='task-skill-section';
|
|
2250
2329
|
document.getElementById('taskDetailSummary').textContent='';
|
|
2251
2330
|
document.getElementById('taskDetailChunks').innerHTML='<div class="spinner"></div>';
|
|
2331
|
+
document.getElementById('taskDetailActions').innerHTML='';
|
|
2252
2332
|
|
|
2253
2333
|
try{
|
|
2254
2334
|
const r=await fetch('/api/task/'+taskId);
|
|
@@ -2266,9 +2346,13 @@ async function openTaskDetail(taskId){
|
|
|
2266
2346
|
meta.push('<div style="width:100%;margin-top:4px"><span class="meta-item" style="width:100%">'+t('tasks.taskid')+'<span class="task-id-full">'+esc(task.id)+'</span></span></div>');
|
|
2267
2347
|
document.getElementById('taskDetailMeta').innerHTML=meta.join('');
|
|
2268
2348
|
|
|
2349
|
+
_currentTaskData=task;
|
|
2350
|
+
|
|
2269
2351
|
// ── Skill status section ──
|
|
2270
2352
|
renderTaskSkillSection(task);
|
|
2271
2353
|
|
|
2354
|
+
document.getElementById('taskDetailActions').innerHTML='';
|
|
2355
|
+
|
|
2272
2356
|
var summaryEl=document.getElementById('taskDetailSummary');
|
|
2273
2357
|
if(task.status==='skipped'){
|
|
2274
2358
|
summaryEl.innerHTML='<div style="color:var(--text-muted);font-style:italic;display:flex;align-items:flex-start;gap:8px"><span style="font-size:18px">\\u26A0\\uFE0F</span><span>'+esc(task.summary||t('tasks.skipped.default'))+'</span></div>';
|
|
@@ -2322,19 +2406,31 @@ function renderTaskSkillSection(task){
|
|
|
2322
2406
|
}else if(ss==='not_generated'){
|
|
2323
2407
|
section.className='task-skill-section status-not_generated';
|
|
2324
2408
|
section.innerHTML='<div class="skill-status-header">\\u274C \u672A\u751F\u6210\u6280\u80FD</div>'+
|
|
2325
|
-
'<div class="skill-status-reason">\u539F\u56E0\uFF1A'+esc(task.skillReason||'\u7ECF LLM \u8BC4\u4F30\uFF0C\u8BE5\u4EFB\u52A1\u4E0D\u9002\u5408\u63D0\u70BC\u4E3A\u53EF\u590D\u7528\u6280\u80FD\u3002')+'</div>'
|
|
2409
|
+
'<div class="skill-status-reason">\u539F\u56E0\uFF1A'+esc(task.skillReason||'\u7ECF LLM \u8BC4\u4F30\uFF0C\u8BE5\u4EFB\u52A1\u4E0D\u9002\u5408\u63D0\u70BC\u4E3A\u53EF\u590D\u7528\u6280\u80FD\u3002')+'</div>'+
|
|
2410
|
+
(task.status==='completed'?'<button class="btn btn-primary" onclick="retrySkillGen(\\''+esc(task.id)+'\\')" style="margin-top:8px;font-size:12px">'+t('task.retrySkill')+'</button>':'');
|
|
2326
2411
|
}else if(ss==='skipped'){
|
|
2327
2412
|
section.className='task-skill-section status-skipped';
|
|
2328
2413
|
section.innerHTML='<div class="skill-status-header">\\u23ED \u8DF3\u8FC7\u6280\u80FD\u8BC4\u4F30</div>'+
|
|
2329
|
-
'<div class="skill-status-reason">\u539F\u56E0\uFF1A'+esc(task.skillReason||'')+'</div>'
|
|
2414
|
+
'<div class="skill-status-reason">\u539F\u56E0\uFF1A'+esc(task.skillReason||'')+'</div>'+
|
|
2415
|
+
(task.status==='completed'?'<button class="btn btn-primary" onclick="retrySkillGen(\\''+esc(task.id)+'\\')" style="margin-top:8px;font-size:12px">'+t('task.retrySkill')+'</button>':'');
|
|
2416
|
+
}else if(ss==='queued'){
|
|
2417
|
+
section.className='task-skill-section status-generating';
|
|
2418
|
+
section.innerHTML='<div class="skill-status-header">\\u{1F4CB} \u6392\u961F\u4E2D</div>'+
|
|
2419
|
+
'<div class="skill-status-reason">'+esc(task.skillReason||'\u7B49\u5F85\u6280\u80FD\u8BC4\u4F30\uFF0C\u524D\u65B9\u4EFB\u52A1\u5904\u7406\u5B8C\u6210\u540E\u81EA\u52A8\u5F00\u59CB\u3002')+'</div>';
|
|
2330
2420
|
}else if(task.status==='active'){
|
|
2331
2421
|
section.className='task-skill-section status-skipped';
|
|
2332
2422
|
section.innerHTML='<div class="skill-status-header">\\u23F8 \u4EFB\u52A1\u8FDB\u884C\u4E2D</div>'+
|
|
2333
2423
|
'<div class="skill-status-reason">\u6280\u80FD\u8BC4\u4F30\u5728\u4EFB\u52A1\u5B8C\u6210\u540E\u81EA\u52A8\u8FD0\u884C\u3002</div>';
|
|
2424
|
+
}else if(task.status==='completed'){
|
|
2425
|
+
section.className='task-skill-section status-generating';
|
|
2426
|
+
section.innerHTML='<div class="skill-status-header">\\u23F3 \u7B49\u5F85\u8BC4\u4F30</div>'+
|
|
2427
|
+
'<div class="skill-status-reason">\u4EFB\u52A1\u5DF2\u5B8C\u6210\uFF0C\u6280\u80FD\u8BC4\u4F30\u5373\u5C06\u5F00\u59CB\u3002</div>'+
|
|
2428
|
+
'<button class="btn btn-primary" onclick="retrySkillGen(\\''+esc(task.id)+'\\')" style="margin-top:8px;font-size:12px">'+t('task.retrySkill')+'</button>';
|
|
2334
2429
|
}else{
|
|
2335
2430
|
section.className='task-skill-section status-skipped';
|
|
2336
2431
|
section.innerHTML='<div class="skill-status-header">\\u2014 \u65E0\u6280\u80FD\u4FE1\u606F</div>'+
|
|
2337
|
-
'<div class="skill-status-reason">\u8BE5\u4EFB\u52A1\
|
|
2432
|
+
'<div class="skill-status-reason">\u8BE5\u4EFB\u52A1\u672A\u8FDB\u884C\u6280\u80FD\u8BC4\u4F30\u3002</div>'+
|
|
2433
|
+
(task.status==='completed'?'<button class="btn btn-primary" onclick="retrySkillGen(\\''+esc(task.id)+'\\')" style="margin-top:8px;font-size:12px">'+t('task.retrySkill')+'</button>':'');
|
|
2338
2434
|
}
|
|
2339
2435
|
}
|
|
2340
2436
|
|
|
@@ -2343,6 +2439,55 @@ function closeTaskDetail(event){
|
|
|
2343
2439
|
document.getElementById('taskDetailOverlay').classList.remove('show');
|
|
2344
2440
|
}
|
|
2345
2441
|
|
|
2442
|
+
async function retrySkillGen(taskId){
|
|
2443
|
+
if(!confirm(t('task.retrySkill.confirm'))) return;
|
|
2444
|
+
try{
|
|
2445
|
+
const r=await fetch('/api/task/'+taskId+'/retry-skill',{method:'POST'});
|
|
2446
|
+
const d=await r.json();
|
|
2447
|
+
if(!r.ok) throw new Error(d.error||'unknown');
|
|
2448
|
+
openTaskDetail(taskId);
|
|
2449
|
+
}catch(e){ alert(t('task.retrySkill.error')+e.message); }
|
|
2450
|
+
}
|
|
2451
|
+
|
|
2452
|
+
async function deleteTask(taskId){
|
|
2453
|
+
if(!confirm(t('task.delete.confirm'))) return;
|
|
2454
|
+
try{
|
|
2455
|
+
const r=await fetch('/api/task/'+taskId,{method:'DELETE'});
|
|
2456
|
+
const d=await r.json();
|
|
2457
|
+
if(!r.ok) throw new Error(d.error||'unknown');
|
|
2458
|
+
closeTaskDetail();
|
|
2459
|
+
document.getElementById('taskDetailOverlay').classList.remove('show');
|
|
2460
|
+
loadTasks();
|
|
2461
|
+
}catch(e){ alert(t('task.delete.error')+e.message); }
|
|
2462
|
+
}
|
|
2463
|
+
|
|
2464
|
+
async function editTaskInline(){
|
|
2465
|
+
if(!_currentTaskData) return;
|
|
2466
|
+
var task=_currentTaskData;
|
|
2467
|
+
var titleEl=document.getElementById('taskDetailTitle');
|
|
2468
|
+
var summaryEl=document.getElementById('taskDetailSummary');
|
|
2469
|
+
var actionsEl=document.getElementById('taskDetailActions');
|
|
2470
|
+
|
|
2471
|
+
titleEl.innerHTML='<input id="editTaskTitle" class="filter-input" style="width:100%;font-size:16px;font-weight:600" value="'+esc(task.title||'')+'"/>';
|
|
2472
|
+
summaryEl.innerHTML='<textarea id="editTaskSummary" class="filter-input" style="width:100%;min-height:80px;font-size:13px;resize:vertical">'+esc(task.summary||'')+'</textarea>';
|
|
2473
|
+
actionsEl.innerHTML=
|
|
2474
|
+
'<button class="btn btn-primary" onclick="saveTaskEdit()" style="font-size:12px">'+t('task.save')+'</button>'+
|
|
2475
|
+
'<button class="btn btn-ghost" onclick="openTaskDetail(\\''+esc(task.id)+'\\')" style="font-size:12px">'+t('task.cancel')+'</button>';
|
|
2476
|
+
}
|
|
2477
|
+
|
|
2478
|
+
async function saveTaskEdit(){
|
|
2479
|
+
if(!_currentTaskId) return;
|
|
2480
|
+
var title=document.getElementById('editTaskTitle').value.trim();
|
|
2481
|
+
var summary=document.getElementById('editTaskSummary').value.trim();
|
|
2482
|
+
try{
|
|
2483
|
+
const r=await fetch('/api/task/'+_currentTaskId,{method:'PUT',headers:{'Content-Type':'application/json'},body:JSON.stringify({title:title,summary:summary})});
|
|
2484
|
+
const d=await r.json();
|
|
2485
|
+
if(!r.ok) throw new Error(d.error||'unknown');
|
|
2486
|
+
openTaskDetail(_currentTaskId);
|
|
2487
|
+
loadTasks();
|
|
2488
|
+
}catch(e){ alert(t('task.save.error')+e.message); }
|
|
2489
|
+
}
|
|
2490
|
+
|
|
2346
2491
|
/* ─── Skills View Logic ─── */
|
|
2347
2492
|
let skillsStatusFilter='';
|
|
2348
2493
|
|
|
@@ -2400,6 +2545,12 @@ async function loadSkills(){
|
|
|
2400
2545
|
'<span class="tag"><span class="icon">\\u{1F4E6}</span> '+skill.sourceType+'</span>'+
|
|
2401
2546
|
(tags.length>0?'<div class="skill-card-tags">'+tags.map(t=>'<span class="skill-tag">'+esc(t)+'</span>').join('')+'</div>':'')+
|
|
2402
2547
|
'</div>'+
|
|
2548
|
+
'<div class="card-actions" onclick="event.stopPropagation()">'+
|
|
2549
|
+
'<button class="btn btn-sm btn-ghost" onclick="openSkillDetail(\\''+skill.id+'\\')">'+t('card.expand')+'</button>'+
|
|
2550
|
+
'<button class="btn btn-sm btn-ghost" onclick="editSkillInline(\\''+skill.id+'\\')">'+t('card.edit')+'</button>'+
|
|
2551
|
+
(skill.visibility==='public'?'<button class="btn btn-sm btn-ghost" onclick="toggleSkillPublic(\\''+skill.id+'\\',false)">\\u{1F512} '+t('skills.setPrivate')+'</button>':'<button class="btn btn-sm btn-ghost" onclick="toggleSkillPublic(\\''+skill.id+'\\',true)">\\u{1F310} '+t('skills.setPublic')+'</button>')+
|
|
2552
|
+
'<button class="btn btn-sm btn-ghost" style="color:var(--accent)" onclick="deleteSkill(\\''+skill.id+'\\')">'+t('skill.delete')+'</button>'+
|
|
2553
|
+
'</div>'+
|
|
2403
2554
|
'</div>';
|
|
2404
2555
|
}).join('');
|
|
2405
2556
|
}catch(e){
|
|
@@ -2424,6 +2575,7 @@ async function openSkillDetail(skillId){
|
|
|
2424
2575
|
document.getElementById('skillDetailContent').innerHTML='<div class="spinner"></div>';
|
|
2425
2576
|
document.getElementById('skillVersionsList').innerHTML='<div class="spinner"></div>';
|
|
2426
2577
|
document.getElementById('skillRelatedTasks').innerHTML='';
|
|
2578
|
+
document.getElementById('skillDetailActions').innerHTML='';
|
|
2427
2579
|
|
|
2428
2580
|
try{
|
|
2429
2581
|
const r=await fetch('/api/skill/'+skillId);
|
|
@@ -2519,6 +2671,9 @@ async function openSkillDetail(skillId){
|
|
|
2519
2671
|
).join('');
|
|
2520
2672
|
}
|
|
2521
2673
|
|
|
2674
|
+
window._currentSkillData=skill;
|
|
2675
|
+
document.getElementById('skillDetailActions').innerHTML='';
|
|
2676
|
+
|
|
2522
2677
|
}catch(e){
|
|
2523
2678
|
document.getElementById('skillDetailTitle').textContent=t('skills.error');
|
|
2524
2679
|
document.getElementById('skillDetailContent').innerHTML='<div style="color:var(--rose);padding:16px">'+t('skills.error.detail')+esc(String(e))+'</div>';
|
|
@@ -2547,6 +2702,18 @@ async function toggleSkillVisibility(){
|
|
|
2547
2702
|
}
|
|
2548
2703
|
}
|
|
2549
2704
|
|
|
2705
|
+
async function toggleSkillPublic(id,setPublic){
|
|
2706
|
+
const newVis=setPublic?'public':'private';
|
|
2707
|
+
try{
|
|
2708
|
+
const r=await fetch('/api/skill/'+id+'/visibility',{method:'PUT',headers:{'Content-Type':'application/json'},body:JSON.stringify({visibility:newVis})});
|
|
2709
|
+
if(!r.ok) throw new Error('Failed: '+r.status);
|
|
2710
|
+
toast(setPublic?t('toast.setPublic'):t('toast.setPrivate'),'success');
|
|
2711
|
+
loadSkills();
|
|
2712
|
+
}catch(e){
|
|
2713
|
+
toast('Error: '+e.message,'error');
|
|
2714
|
+
}
|
|
2715
|
+
}
|
|
2716
|
+
|
|
2550
2717
|
/* ─── Settings / Config ─── */
|
|
2551
2718
|
async function loadConfig(){
|
|
2552
2719
|
try{
|
|
@@ -2668,6 +2835,41 @@ function closeSkillDetail(event){
|
|
|
2668
2835
|
document.getElementById('skillDetailOverlay').classList.remove('show');
|
|
2669
2836
|
}
|
|
2670
2837
|
|
|
2838
|
+
async function deleteSkill(skillId){
|
|
2839
|
+
if(!confirm(t('skill.delete.confirm'))) return;
|
|
2840
|
+
try{
|
|
2841
|
+
const r=await fetch('/api/skill/'+skillId,{method:'DELETE'});
|
|
2842
|
+
const d=await r.json();
|
|
2843
|
+
if(!r.ok) throw new Error(d.error||'unknown');
|
|
2844
|
+
closeSkillDetail();
|
|
2845
|
+
document.getElementById('skillDetailOverlay').classList.remove('show');
|
|
2846
|
+
loadSkills();
|
|
2847
|
+
}catch(e){ alert(t('skill.delete.error')+e.message); }
|
|
2848
|
+
}
|
|
2849
|
+
|
|
2850
|
+
function editSkillInline(){
|
|
2851
|
+
var skill=window._currentSkillData;
|
|
2852
|
+
if(!skill) return;
|
|
2853
|
+
var descEl=document.getElementById('skillDetailDesc');
|
|
2854
|
+
var actionsEl=document.getElementById('skillDetailActions');
|
|
2855
|
+
descEl.innerHTML='<textarea id="editSkillDesc" class="filter-input" style="width:100%;min-height:60px;font-size:13px;resize:vertical">'+esc(skill.description||'')+'</textarea>';
|
|
2856
|
+
actionsEl.innerHTML=
|
|
2857
|
+
'<button class="btn btn-primary" onclick="saveSkillEdit()" style="font-size:12px">'+t('skill.save')+'</button>'+
|
|
2858
|
+
'<button class="btn btn-ghost" onclick="openSkillDetail(\\''+esc(skill.id)+'\\')" style="font-size:12px">'+t('skill.cancel')+'</button>';
|
|
2859
|
+
}
|
|
2860
|
+
|
|
2861
|
+
async function saveSkillEdit(){
|
|
2862
|
+
if(!currentSkillId) return;
|
|
2863
|
+
var desc=document.getElementById('editSkillDesc').value.trim();
|
|
2864
|
+
try{
|
|
2865
|
+
const r=await fetch('/api/skill/'+currentSkillId,{method:'PUT',headers:{'Content-Type':'application/json'},body:JSON.stringify({description:desc})});
|
|
2866
|
+
const d=await r.json();
|
|
2867
|
+
if(!r.ok) throw new Error(d.error||'unknown');
|
|
2868
|
+
openSkillDetail(currentSkillId);
|
|
2869
|
+
loadSkills();
|
|
2870
|
+
}catch(e){ alert(t('skill.save.error')+e.message); }
|
|
2871
|
+
}
|
|
2872
|
+
|
|
2671
2873
|
function formatDuration(ms){
|
|
2672
2874
|
const s=Math.floor(ms/1000);
|
|
2673
2875
|
if(s<60) return s+'s';
|
|
@@ -3371,6 +3573,19 @@ async function clearAll(){
|
|
|
3371
3573
|
let migrateScanData=null;
|
|
3372
3574
|
let migrateStats={stored:0,skipped:0,merged:0,errors:0};
|
|
3373
3575
|
|
|
3576
|
+
(function(){
|
|
3577
|
+
const sel=document.getElementById('migrateConcurrency');
|
|
3578
|
+
if(sel) sel.addEventListener('change',function(){
|
|
3579
|
+
const w=document.getElementById('migrateConcurrencyWarn');
|
|
3580
|
+
if(w) w.style.display=parseInt(this.value,10)>1?'block':'none';
|
|
3581
|
+
});
|
|
3582
|
+
const ppSel=document.getElementById('ppConcurrency');
|
|
3583
|
+
if(ppSel) ppSel.addEventListener('change',function(){
|
|
3584
|
+
const w=document.getElementById('ppConcurrencyWarn');
|
|
3585
|
+
if(w) w.style.display=parseInt(this.value,10)>1?'block':'none';
|
|
3586
|
+
});
|
|
3587
|
+
})();
|
|
3588
|
+
|
|
3374
3589
|
async function migrateScan(){
|
|
3375
3590
|
const btn=document.getElementById('migrateScanBtn');
|
|
3376
3591
|
btn.disabled=true;
|
|
@@ -3406,6 +3621,7 @@ async function migrateScan(){
|
|
|
3406
3621
|
|
|
3407
3622
|
if(d.totalItems>0 && d.configReady){
|
|
3408
3623
|
document.getElementById('migrateStartBtn').style.display='inline-flex';
|
|
3624
|
+
document.getElementById('migrateConcurrencyRow').style.display='inline-flex';
|
|
3409
3625
|
}
|
|
3410
3626
|
|
|
3411
3627
|
if(d.totalItems===0){
|
|
@@ -3427,10 +3643,15 @@ function migrateStart(){
|
|
|
3427
3643
|
if(!migrateScanData||!migrateScanData.configReady)return;
|
|
3428
3644
|
if(!confirm(t('migrate.start')+'?'))return;
|
|
3429
3645
|
|
|
3646
|
+
const concSel=document.getElementById('migrateConcurrency');
|
|
3647
|
+
const concurrency=concSel?parseInt(concSel.value,10)||1:1;
|
|
3648
|
+
|
|
3430
3649
|
window._migrateRunning=true;
|
|
3431
3650
|
_migrateStatusChecked=false;
|
|
3432
3651
|
document.getElementById('migrateStartBtn').style.display='none';
|
|
3433
3652
|
document.getElementById('migrateScanBtn').disabled=true;
|
|
3653
|
+
document.getElementById('migrateConcurrencyRow').style.display='none';
|
|
3654
|
+
document.getElementById('migrateConcurrencyWarn').style.display='none';
|
|
3434
3655
|
document.getElementById('migrateProgress').style.display='block';
|
|
3435
3656
|
document.getElementById('migrateLiveLog').innerHTML='';
|
|
3436
3657
|
migrateStats={stored:0,skipped:0,merged:0,errors:0};
|
|
@@ -3440,7 +3661,7 @@ function migrateStart(){
|
|
|
3440
3661
|
document.getElementById('migrateBar').style.width='0%';
|
|
3441
3662
|
document.getElementById('migrateBar').style.background='linear-gradient(90deg,#6366f1,#8b5cf6)';
|
|
3442
3663
|
document.getElementById('migrateCounter').textContent='';
|
|
3443
|
-
const body=JSON.stringify({sources:['sqlite','sessions']});
|
|
3664
|
+
const body=JSON.stringify({sources:['sqlite','sessions'],concurrency});
|
|
3444
3665
|
connectMigrateSSE('/api/migrate/start','POST',body);
|
|
3445
3666
|
}
|
|
3446
3667
|
|
|
@@ -3645,6 +3866,9 @@ function ppStart(){
|
|
|
3645
3866
|
var enableSkills=document.getElementById('ppEnableSkills').checked;
|
|
3646
3867
|
if(!enableTasks&&!enableSkills){toast(t('pp.select.warn'),'error');return;}
|
|
3647
3868
|
|
|
3869
|
+
var ppConcSel=document.getElementById('ppConcurrency');
|
|
3870
|
+
var ppConcurrency=ppConcSel?parseInt(ppConcSel.value,10)||1:1;
|
|
3871
|
+
|
|
3648
3872
|
window._ppRunning=true;
|
|
3649
3873
|
_ppSSEConnected=false;
|
|
3650
3874
|
ppStats={tasks:0,skills:0,errors:0,skipped:0};
|
|
@@ -3661,7 +3885,7 @@ function ppStart(){
|
|
|
3661
3885
|
document.getElementById('ppLiveLog').innerHTML='';
|
|
3662
3886
|
updatePPStats();
|
|
3663
3887
|
|
|
3664
|
-
var body=JSON.stringify({enableTasks:enableTasks,enableSkills:enableSkills});
|
|
3888
|
+
var body=JSON.stringify({enableTasks:enableTasks,enableSkills:enableSkills,concurrency:ppConcurrency});
|
|
3665
3889
|
fetch('/api/migrate/postprocess',{method:'POST',headers:{'Content-Type':'application/json'},body:body})
|
|
3666
3890
|
.then(function(r){
|
|
3667
3891
|
if(!r.ok){
|
package/dist/viewer/html.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG
|
|
1
|
+
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/viewer/html.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAwgIlB,CAAC"}
|
package/dist/viewer/server.d.ts
CHANGED
|
@@ -58,6 +58,11 @@ export declare class ViewerServer {
|
|
|
58
58
|
private walkDir;
|
|
59
59
|
private serveSkillDownload;
|
|
60
60
|
private handleSkillVisibility;
|
|
61
|
+
private handleTaskRetrySkill;
|
|
62
|
+
private handleTaskDelete;
|
|
63
|
+
private handleTaskUpdate;
|
|
64
|
+
private handleSkillDelete;
|
|
65
|
+
private handleSkillUpdate;
|
|
61
66
|
private handleCreate;
|
|
62
67
|
private serveMemoryDetail;
|
|
63
68
|
private handleUpdate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/viewer/server.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAQ7C,OAAO,KAAK,EAAE,MAAM,EAAS,aAAa,EAAE,MAAM,UAAU,CAAC;AAI7D,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,aAAa,CAAC;CACrB;AAOD,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAgB;IAErC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAuB;IAC1D,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAW8G;IACpI,OAAO,CAAC,mBAAmB,CAA6B;IAExD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CACyG;IACxH,OAAO,CAAC,YAAY,CAA6B;gBAErC,IAAI,EAAE,mBAAmB;IAarC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAmBxB,IAAI,IAAI,IAAI;IAKZ,aAAa,IAAI,MAAM;IAMvB,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,cAAc;IAUtB,OAAO,KAAK,UAAU,GAErB;IAID,OAAO,CAAC,aAAa;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/viewer/server.ts"],"names":[],"mappings":"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"}
|