集成 OpenHub 与 WeKnora Page AI

This commit is contained in:
Agent Board
2026-06-26 20:01:02 +08:00
parent dabaf03bd7
commit e433c07061
63 changed files with 12678 additions and 332 deletions
@@ -2530,9 +2530,536 @@
}
.mnote-knowledge-rag-settings-panel {
width: min(440px, calc(100vw - 24px));
width: min(1120px, calc(100vw - 24px));
max-height: calc(100vh - 72px);
overflow-y: auto;
overflow: hidden;
}
.mnote-weknora-kb-page {
gap: 0;
padding: 0;
border-radius: 10px;
background: #F6F7F9;
}
.mnote-weknora-kb-page-header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 16px 18px;
border-bottom: 1px solid #E5E7EB;
background: #FFFFFF;
}
.mnote-weknora-kb-page-title {
display: flex;
min-width: 0;
flex-direction: column;
gap: 2px;
}
.mnote-weknora-kb-page-eyebrow {
color: #2F7D4A;
font: 11px/16px "JetBrains Mono", "SFMono-Regular", Consolas, monospace;
letter-spacing: 0;
text-transform: uppercase;
}
.mnote-weknora-kb-page-title strong {
color: #111827;
font-size: 20px;
line-height: 28px;
}
.mnote-weknora-kb-page-title span:last-child {
color: #6B7280;
font-size: 12px;
line-height: 18px;
}
.mnote-weknora-kb-page-actions {
display: flex;
gap: 8px;
align-items: center;
}
.mnote-weknora-kb-page-actions button {
display: inline-flex;
width: 32px;
height: 32px;
align-items: center;
justify-content: center;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
color: #4B5563;
cursor: pointer;
}
.mnote-weknora-kb-page-actions button:hover:not(:disabled) {
background: #F3F4F6;
color: #111827;
}
.mnote-weknora-kb-page-status {
padding: 10px 18px;
border-bottom: 1px solid #E5E7EB;
background: #F9FAFB;
color: #4B5563;
font-size: 12px;
line-height: 18px;
}
.mnote-weknora-kb-page-body {
display: grid;
grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
min-height: 620px;
max-height: calc(100vh - 150px);
}
.mnote-weknora-kb-list-pane,
.mnote-weknora-kb-detail-pane {
min-height: 0;
overflow: auto;
}
.mnote-weknora-kb-list-pane {
display: flex;
flex-direction: column;
gap: 12px;
padding: 14px;
border-right: 1px solid #E5E7EB;
background: #FFFFFF;
}
.mnote-weknora-kb-list-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.mnote-weknora-kb-list-head div {
display: flex;
gap: 8px;
align-items: center;
min-width: 0;
}
.mnote-weknora-kb-list-head strong {
color: #111827;
font-size: 14px;
line-height: 20px;
}
.mnote-weknora-kb-list-head span {
min-width: 22px;
border-radius: 999px;
background: #EEF2FF;
color: #3730A3;
font-size: 11px;
line-height: 18px;
text-align: center;
}
.mnote-weknora-kb-list-head button,
.mnote-weknora-doc-toolbar button,
.mnote-weknora-doc-actions button {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 6px;
min-height: 30px;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
color: #374151;
cursor: pointer;
font-size: 12px;
line-height: 18px;
padding: 0 10px;
}
.mnote-weknora-kb-list-head button {
width: 30px;
padding: 0;
}
.mnote-weknora-kb-list-head button:hover,
.mnote-weknora-doc-toolbar button:hover,
.mnote-weknora-doc-actions button:hover {
background: #F3F4F6;
color: #111827;
}
.mnote-weknora-kb-card-wrap {
display: flex;
flex-direction: column;
gap: 8px;
}
.mnote-weknora-kb-card {
display: grid;
grid-template-columns: 28px minmax(0, 1fr) auto;
gap: 10px;
align-items: start;
width: 100%;
padding: 12px;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
color: inherit;
cursor: pointer;
text-align: left;
}
.mnote-weknora-kb-card.is-active {
border-color: #2F7D4A;
background: #F0F9F4;
box-shadow: inset 3px 0 0 #2F7D4A;
}
.mnote-weknora-kb-card-star {
display: inline-flex;
width: 28px;
height: 28px;
align-items: center;
justify-content: center;
border-radius: 8px;
background: #EEF2FF;
color: #3730A3;
}
.mnote-weknora-kb-card-main {
display: flex;
min-width: 0;
flex-direction: column;
gap: 3px;
}
.mnote-weknora-kb-card-main strong,
.mnote-weknora-kb-card-main em {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.mnote-weknora-kb-card-main strong {
color: #111827;
font-size: 13px;
font-style: normal;
font-weight: 600;
line-height: 19px;
}
.mnote-weknora-kb-card-main em {
color: #6B7280;
font-size: 11px;
font-style: normal;
line-height: 16px;
}
.mnote-weknora-kb-card-main span {
display: flex;
flex-wrap: wrap;
gap: 6px;
align-items: center;
}
.mnote-weknora-kb-card-main i {
display: inline-flex;
align-items: center;
gap: 3px;
color: #6B7280;
font-size: 11px;
font-style: normal;
line-height: 16px;
}
.mnote-weknora-kb-card-main i.is-processing {
color: #B45309;
}
.mnote-weknora-kb-card-main .material-symbols-outlined {
font-size: 14px;
}
.mnote-weknora-kb-card-status,
.mnote-weknora-kb-type-pill {
display: inline-flex;
align-items: center;
gap: 4px;
border-radius: 999px;
background: #ECFDF5;
color: #047857;
font-size: 11px;
line-height: 18px;
padding: 0 7px;
white-space: nowrap;
}
.mnote-weknora-kb-create-card {
display: flex;
flex-direction: column;
gap: 8px;
padding: 12px;
border: 1px dashed #D1D5DB;
border-radius: 8px;
background: #F9FAFB;
}
.mnote-weknora-kb-create-title {
display: flex;
align-items: center;
gap: 6px;
color: #111827;
font-size: 13px;
line-height: 19px;
}
.mnote-weknora-kb-detail-pane {
display: flex;
flex-direction: column;
gap: 12px;
padding: 16px;
}
.mnote-weknora-kb-detail-hero {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(210px, 280px);
gap: 16px;
align-items: start;
padding: 16px;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
}
.mnote-weknora-kb-detail-hero h2 {
margin: 8px 0 4px;
color: #111827;
font-size: 22px;
line-height: 30px;
}
.mnote-weknora-kb-breadcrumb {
display: flex;
align-items: center;
gap: 7px;
min-width: 0;
color: #6B7280;
font-size: 12px;
line-height: 18px;
}
.mnote-weknora-kb-breadcrumb strong {
min-width: 0;
overflow: hidden;
color: #111827;
font-weight: 600;
text-overflow: ellipsis;
white-space: nowrap;
}
.mnote-weknora-kb-detail-hero p {
margin: 0;
color: #6B7280;
font-size: 12px;
line-height: 18px;
}
.mnote-weknora-doc-toolbar,
.mnote-weknora-doc-actions {
display: flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
}
.mnote-weknora-doc-layout {
display: grid;
grid-template-columns: 184px minmax(0, 1fr);
gap: 12px;
align-items: start;
}
.mnote-weknora-doc-sidebar {
display: flex;
flex-direction: column;
gap: 10px;
min-height: 260px;
padding: 12px;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
}
.mnote-weknora-doc-sidebar-head {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 8px;
}
.mnote-weknora-doc-sidebar-head strong {
color: #111827;
font-size: 12px;
line-height: 18px;
}
.mnote-weknora-doc-sidebar-head span {
color: #9CA3AF;
font-size: 10px;
line-height: 14px;
}
.mnote-weknora-doc-source-tags,
.mnote-weknora-doc-tags {
display: flex;
flex-direction: column;
gap: 6px;
}
.mnote-weknora-doc-source-tags button,
.mnote-weknora-doc-tags span {
display: inline-flex;
align-items: center;
gap: 7px;
min-height: 28px;
border: 1px solid #E5E7EB;
border-radius: 7px;
background: #FFFFFF;
color: #4B5563;
font-size: 12px;
line-height: 18px;
padding: 0 9px;
text-align: left;
}
.mnote-weknora-doc-source-tags button {
cursor: pointer;
}
.mnote-weknora-doc-source-tags button[data-active="true"] {
border-color: #A7D8B8;
background: #F0F9F4;
color: #166534;
}
.mnote-weknora-doc-source-tags .material-symbols-outlined {
font-size: 16px;
}
.mnote-weknora-doc-main {
display: flex;
min-width: 0;
flex-direction: column;
gap: 10px;
}
.mnote-weknora-view-switch {
display: inline-flex;
align-items: center;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
padding: 2px;
}
.mnote-weknora-view-switch button {
width: 28px;
min-height: 26px;
border: 0;
border-radius: 6px;
background: transparent;
color: #6B7280;
padding: 0;
}
.mnote-weknora-view-switch button.is-active {
background: #EAF7EA;
color: #166534;
}
.mnote-weknora-doc-search {
display: flex;
flex: 1 1 260px;
min-width: 220px;
align-items: center;
gap: 8px;
height: 34px;
padding: 0 10px;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
}
.mnote-weknora-doc-search input {
min-width: 0;
flex: 1;
border: 0;
outline: none;
background: transparent;
color: #111827;
font-size: 12px;
}
.mnote-weknora-doc-table {
overflow: hidden;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
}
.mnote-weknora-doc-table[data-weknora-document-view="grid"] {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 10px;
padding: 10px;
}
.mnote-weknora-doc-table::before {
display: grid;
grid-template-columns: minmax(0, 1fr) 104px 104px 124px;
gap: 8px;
padding: 9px 12px;
border-bottom: 1px solid #E5E7EB;
background: #F9FAFB;
color: #6B7280;
content: "文档 状态 Chunk 操作";
font-size: 11px;
line-height: 16px;
white-space: pre;
}
.mnote-weknora-doc-table[data-weknora-document-view="grid"]::before {
display: none;
}
.mnote-weknora-placeholder-panel {
display: flex;
min-height: 220px;
flex-direction: column;
justify-content: center;
gap: 8px;
padding: 18px;
border: 1px solid #E5E7EB;
border-radius: 8px;
background: #FFFFFF;
color: #6B7280;
}
.mnote-weknora-placeholder-panel strong {
color: #111827;
font-size: 16px;
line-height: 24px;
}
.mnote-weknora-placeholder-panel span {
max-width: 560px;
font-size: 12px;
line-height: 19px;
}
.mnote-knowledge-rag-meta {
@@ -2663,6 +3190,27 @@
white-space: nowrap;
}
.mnote-knowledge-rag-source-main .mnote-weknora-source-aux {
display: flex;
flex-wrap: wrap;
gap: 6px;
font-family: inherit;
}
.mnote-weknora-source-aux i {
display: inline-flex;
max-width: 180px;
overflow: hidden;
border-radius: 999px;
background: #F3F4F6;
color: #4B5563;
font-style: normal;
line-height: 18px;
padding: 0 7px;
text-overflow: ellipsis;
white-space: nowrap;
}
.mnote-knowledge-rag-source-progress {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
@@ -2747,5 +3295,3 @@
color: #1B1C1C;
font-weight: 600;
}
@@ -2221,10 +2221,71 @@ button.wolai-page-ai-history-main span {
overflow: hidden;
}
.wolai-page-ai-drawer[data-page-ai-openhub-host="true"] .wolai-page-ai-panel {
display: flex;
flex-direction: column;
gap: 0;
padding: 0;
border: 0;
overflow: hidden;
}
.wolai-page-ai-drawer[data-page-ai-openhub-host="true"] .wolai-page-ai-resize-handle {
left: -12px;
}
.wolai-page-ai-opencode-header {
flex: 0 0 auto;
}
.wolai-page-ai-openhub-diagnostics {
flex: 0 0 auto;
max-height: 32px;
overflow: hidden;
border-bottom: 1px solid rgba(27, 28, 28, 0.08);
background: rgba(247, 247, 245, 0.78);
color: rgba(27, 28, 28, 0.58);
font-size: 12px;
}
.wolai-page-ai-openhub-diagnostics[hidden] {
display: none !important;
}
.wolai-page-ai-openhub-diagnostics summary {
min-height: 32px;
display: flex;
align-items: center;
padding: 0 12px;
cursor: pointer;
list-style: none;
}
.wolai-page-ai-openhub-diagnostics summary::-webkit-details-marker {
display: none;
}
.wolai-page-ai-openhub-diagnostics:not([open]) > :not(summary) {
display: none !important;
}
.wolai-page-ai-openhub-diagnostics[open] {
max-height: min(36vh, 220px);
overflow: auto;
padding-bottom: 10px;
}
.wolai-page-ai-openhub-diagnostics[open] summary {
margin-bottom: 6px;
}
.wolai-page-ai-openhub-diagnostics .wolai-page-ai-opencode-row,
.wolai-page-ai-openhub-diagnostics .wolai-page-ai-opencode-empty,
.wolai-page-ai-openhub-diagnostics .wolai-page-ai-opencode-badges {
margin-right: 12px;
margin-left: 12px;
}
.wolai-page-ai-opencode-chrome {
display: flex;
flex: 0 0 auto;