@kenhkl/agent-moss 0.11.0 → 0.11.3
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/cli.js +157 -72
- package/dist/cli.js.map +1 -1
- package/dist/engine/coordinator.js +125 -40
- package/dist/engine/coordinator.js.map +1 -1
- package/dist/server.js +145 -60
- package/dist/server.js.map +1 -1
- package/dist/static/index.html +21 -5
- package/package.json +1 -1
package/dist/static/index.html
CHANGED
|
@@ -698,12 +698,28 @@ function render_agents() {
|
|
|
698
698
|
el('page-agents').innerHTML = html;
|
|
699
699
|
}
|
|
700
700
|
function renderAgentRuleItem(agentId, catName, r) {
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
701
|
+
// Agent 定制规则按类别字段不同,分别提取展示维度:
|
|
702
|
+
// builtin_safe_action_types / builtin_safe_skills → value(白名单,无 risk)
|
|
703
|
+
// extra_command_patterns → pattern + risk_level + risk_type + reason
|
|
704
|
+
// extra_injection_keywords → keyword + risk_level + lang
|
|
705
|
+
// extra_sensitive_paths → path + risk_level + desc
|
|
706
|
+
const isValue = catName === 'builtin_safe_action_types' || catName === 'builtin_safe_skills';
|
|
707
|
+
const patternDisplay = r.value || r.pattern || r.keyword || r.path || r.id || JSON.stringify(r).slice(0, 60);
|
|
708
|
+
const reasonDisplay = r.reason || r.desc || r.lang || '';
|
|
709
|
+
const tagLine = (r.builtin !== false ? '<span class="ag-badge ag-badge-builtin" title="源码内置规则">内置</span>' : '<span class="ag-badge ag-badge-custom">自定义</span>')
|
|
710
|
+
+ (r.source_removed ? '<span class="ag-badge ag-badge-removed" title="此规则已从默认规则集移除,仅作历史保留">已移除</span>' : '')
|
|
711
|
+
+ (isValue ? '' : (riskBadge(r.risk_level) + (r.risk_type ? riskTypeBadge(r.risk_type) : '')));
|
|
712
|
+
const patternLabel = isValue ? '白名单' : (r.path ? '敏感路径' : (r.keyword ? '触发关键词' : (r.pattern ? '规则' : '规则')));
|
|
713
|
+
const reasonLabel = r.reason || r.desc ? '原因' : (r.lang ? '语言' : '说明');
|
|
714
|
+
const tooltip = `${patternLabel}: ${patternDisplay}\n${reasonLabel}: ${reasonDisplay || '(无)'}`;
|
|
704
715
|
const delBtn = r.builtin ? '' : `<button class="ag-btn ag-btn-ghost ag-btn-sm" onclick="deleteAgentRule('${agentId}','${catName}',${JSON.stringify(r).replace(/"/g,'"')})">删除</button>`;
|
|
705
|
-
return `<div class="ag-rule-item">
|
|
706
|
-
<div class="ag-rule-
|
|
716
|
+
return `<div class="ag-rule-item" title="${escapeHtml(tooltip)}">
|
|
717
|
+
<div class="ag-rule-body">
|
|
718
|
+
<div class="ag-rule-tags">${tagLine}</div>
|
|
719
|
+
<div class="ag-rule-pattern"><span class="ag-rule-field-label">${patternLabel}:</span> ${escapeHtml(patternDisplay)}</div>
|
|
720
|
+
${reasonDisplay ? `<div class="ag-rule-reason"><span class="ag-rule-field-label">${reasonLabel}:</span> ${escapeHtml(reasonDisplay)}</div>` : ''}
|
|
721
|
+
${r.id ? `<div class="ag-rule-id">ID: ${escapeHtml(r.id)}</div>` : ''}
|
|
722
|
+
</div>
|
|
707
723
|
<div class="ag-rule-controls">${toggle(r.enabled, false, `toggleAgentRule('${agentId}','${catName}',${JSON.stringify(r).replace(/"/g,'"')},${!r.enabled})`)}${delBtn}</div>
|
|
708
724
|
</div>`;
|
|
709
725
|
}
|